Participant registry
Every NHCX API call, whether a registry lookup, a certificate fetch or a claim submission, is rejected unless it carries a valid Bearer token, so this is the first call any integration makes and...
Calls
| Call | Method and path | What it does |
|---|---|---|
| Get session token | POST /get/session | Exchanges the participant's client_id and client_secret (OAuth 2.0 client credentials) for a Bearer access_token valid for 1200 seconds. |
| Participant update (v1) | POST /participant/update | Updates a participant's registry record; participant_code and roles are mandatory, every other field (certificate, endpoint, contacts, status) is optional. |
| Participant certificate and bridge update (v2) | POST /v2/participant/update | Stages a change to a participant encryption certificate and/or endpoint URL; returns a transactionid for passcode confirmation via /update/validate. |
| Participant search | POST /participant/search | Reads a participant's full registry record by participant_code, including roles, status, encryption_cert and endpoint_url. |
| Participant details (v2 search) | POST /participant/details | V2 variant of participant search: takes participant_code and returns the matching full registry records. |
| Fetch participants list | POST /fetch/participants/list | Payer discovery: lists participants filtered by role, registration date window and optional entity type; the first step of the cashless workflow. |
| Fetch certificate | POST /fetch/certs | Returns a participant's public encryption certificate (PEM X.509 or SPKI key) by participantid; cache it for 24 hours and use it to build the JWE. |
| Fetch certificate path | POST /fetch/certs/path | Companion to /fetch/certs: takes the same participantid body and returns a string described as the participant's certificate path. |
| Update certificate (v2, no passcode) | POST /v2/update/cert | Replaces a participant's public encryption certificate by participantId without passcode validation; the same schema is echoed back on success. |
| Get linked registry master (internal) | POST /get/linked/registry/mst | Internal-use participant-service operation that fetches the linked registry master; listed in the OpenAPI but not intended for integrators. |
| Link ABHA number to policies | POST /participant/link/abha/policy | Payer-side write that links a beneficiary's ABHA number and member id to one or more products, so provider policy lookups can find them. |
| Link ABHA number to policies (V2) | POST /V2/participant/link/abha/policy | V2 variant of the ABHA policy link; same ParticipantLinkAbhaRequest body and ParticipantLinkAbhaResponse as the unversioned call. |
| Initiate ABHA policy link (v2) | POST /v2/participant/link/abha/policy/init | First half of the two-step v2 link: submits the ABHA policy link request, to be confirmed with a passcode via the validate endpoint. |
| Validate ABHA policy link (v2) | GET /v2/participant/link/abha/policy/validate | Second half of the two-step v2 link: confirms an initiated ABHA policy link with the passcode and transactionId query parameters. |
| De-link ABHA policies | POST /participant/delink/abha/policy | Removes specific products from a member's policy link for a payer, keyed on payerid, memberid and the products listed. |
| De-link ABHA policies (V2) | POST /V2/participant/delink/abha/policy | V2 variant of the ABHA policy de-link; same ParticipantDeLinkAbhaRequest body and response as the unversioned call. |
| Get beneficiary policies | POST /participant/get/policies | Looks up the policies linked to a beneficiary by ABHA number, member id or mobile number, returning the payer and product details needed for claims. |
| Get beneficiary policies (V2) | POST /V2/participant/get/policies | V2 variant of the beneficiary policy lookup; same FetchParticipantPoliciesRequest body and ParticipantListResponse as the unversioned call. |
| Update ABHA number | POST /update/abhanumber | Replaces a placeholder (dummy) ABHA number with the beneficiary's real ABHA number in the ABHA_AUTH_TRANSACTION table. |
| Link payer product | POST /product/link | Registers a product (product id and name) against a payer's participant code, so that it can be referenced in ABHA policy links. |
| De-link payer product | POST /product/delink | Removes a product (product id and name) from a payer's participant code in the registry. |
| Get product owner | POST /product/getowner | Resolves a product id to the participant code of the payer that owns it. |
| Get product id and name | POST /participant/getProductIdName | Retrieving API described as generating the product id and product name; declared with a bare string request body and a participant-code response. |
Base URLs
| Environment | Base URL |
|---|---|
| Sandbox, Participant service. | https://apisbx.abdm.gov.in/pmjay/sbxhcx/participanthcxservice |
| Production. | https://apisprod.nha.gov.in/pmjay/hcx/participanthcxservice |
Guides that use these calls
- Creating and updating a participant
- Finding participants and policies
- Fetching a recipient certificate
- Get your sandbox credentials
- Quickstart
- The recipient cannot decrypt your message
The whole specification, with a request you can send from the page, is the Participant registry API reference.