Update mobile - send OTP
Starts a mobile number change for a logged-in ABHA user (X-token). ABDM sends an OTP to the new mobile number.
Endpoint: POST /abha/api/v3/profile/account/request/otp
Flow: Profile - Update Mobile - step 1 of 2
- Previous: none (first call of this flow)
- Next: Update mobile - verify OTP
Headers (plus Authorization: Bearer <gateway token>):
| Header | Required | Description |
|---|---|---|
| X-token | yes | User token (Bearer <token>) received after ABHA creation / login. |
| REQUEST-ID | yes | Unique UUID for every request. |
| TIMESTAMP | yes | Current UTC timestamp in ISO-8601 format. |
Request body for this use case:
| Field | Value / Type | Required | Description |
|---|---|---|---|
scope |
["ABHA-profile", "mobile-verify"] |
yes | Scope that selects this use case. Send exactly the values listed for this API. |
loginHint |
"mobile" |
yes | Type of identifier sent in loginId. |
loginId |
string | yes | Identifier value, RSA-encrypted with the ABHA public certificate. |
otpSystem |
"ABDM" |
yes | System that generates and delivers the OTP (Aadhaar = UIDAI, ABDM = ABDM). |
Responses
200Success: Update Mobile-Positive flow
txnIdstringmessagestring400Bad Request (request validation failed): Update Mobile- Invalid Scope; Update Mobile- Invalid LoginId; Update Mobile- Invalid Login Hint; Update Mobile-Already verified mobile number
Invalid Scopestringtimestampstring401Unauthorized (invalid / expired gateway token, X-token or benefit access): Invalid access token
codestringmessagestringdescriptionstring