In short
- Get an access token once, then paste it into the Bearer field of each playground.
- Six calls: log in, send the Aadhaar number, verify the OTP, pick an address, check it is free, create the ABHA.
- You end with a 14-digit ABHA number, an ABHA address and Eka’s patient id,
eka.oid. - There is no encryption step. You send the Aadhaar number as plain text and Eka handles ABDM’s encryption for you.
- This page walks one case: the patient has no ABHA, and the mobile you send is the one linked to their Aadhaar.
Create your first ABHA here
Enter your sandbox credentials and a test Aadhaar below; each step calls the sandbox from this page and shows the request and response. Prefer to call each API yourself? The same calls, step by step:Before you start
- Sandbox credentials. Create an Eka account, then create an API client in the Eka Developer Console under Manage API Credentials. Copy the
client_idandclient_secret. See Sandbox credentials. - The sandbox server. Calls go to
https://api.dev.eka.care. If a playground offers a server choice, pick Stage/Sandbox. - A sandbox Aadhaar number, and the phone registered to it. The OTP goes to that phone.
1. Get an access token
This logs your client in and returns the token every later call sends. Open Connect Login and press Try it. Paste this body and send it.access_token from the response. On each page below, paste it into the playground’s Authorization Bearer field. expires_in is the token’s lifetime in seconds. If a call returns 401, run this step again.
Prefer curl?
Prefer curl?
2. Send the Aadhaar number
ABDM sends an OTP to the mobile linked to this Aadhaar. Open Generate OTP and press Try it.txn_id. hint shows the masked number the OTP went to.
Prefer curl?
Prefer curl?
3. Verify the Aadhaar OTP
This proves the patient’s identity against Aadhaar and sets the mobile the ABHA will use. Open Verify OTP and press Try it. Use the Aadhaar-linked mobile formobile.
txn_id. Check that skip_state is abha_create and abha_profiles is empty. Any other result is a branch covered on the workflow page.
Prefer curl?
Prefer curl?
4. Get suggested ABHA addresses
Eka returns addresses that are free to take. This call has no body. Open Suggest ABHA Address and press Try it. Set thetransactionId query parameter to TXN_ID_FROM_STEP_3.
Copy one entry from suggestions. You can type your own address instead.
Prefer curl?
Prefer curl?
5. Check the address is free
This confirms nobody holds the address before you create it. Open Does ABHA Address Exist and press Try it.exists should be false. If it is true, pick another address and check again.
Prefer curl?
Prefer curl?
6. Create the ABHA
This registers the ABHA with ABDM. It creates a real sandbox account, so send it once. Open Create and press Try it. Send thetxn_id from step 3.
profile.abha_number, profile.abha_address and eka.oid. Later calls for this patient send eka.oid in the X-Pt-Id header.
Prefer curl?
Prefer curl?
How this fits your product
These calls are the identity step of Register a walk-in patient and link the visit, the registration desk journey for a HIP. They cover Milestone 1. Linking the visit to the new ABHA is Milestone 2.If a call fails
Start with By symptom on the errors page. It covers OTPs that never arrive, lockouts and401 responses. For each failure in this flow, the workflow’s failure table says what to do. Which code each call returns is not yet confirmed, so log the code you actually receive.
Next
- Create an ABHA with Aadhaar OTP: the other branches, resend, the
abha.createdwebhook and the state to persist. - Link a care context as a HIP: link the patient’s visit to the new ABHA.
- Testing: the happy path for every journey before you go live.

