Verify contact email (OTP)

Verifies the app's contact email using the verification code (OTP) sent bySet Contact details for an App or Resend verification link.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…

Notes

  • verificationToken is sent as a query parameter; the request has no body.- A code can only be used while it is valid.
  • An expired code returnsOOPS..!! Token Has Expired.; request a fresh one with Resend verification link.
  • Once an email is verified, further calls return Mail Was Verified Previously.
  • Rate limit: 10 requests per second per app. Repeated verification attempts for the same app are also throttled by the upstream service, which answers 400 Too Many Requests.

Request parameters

ParameterTypeRequiredInDescription
AuthorizationstringYes*headerApp token (sk_…) from GET /partner/app/{appId}/token. Accepted with or without the Bearer prefix.
tokenstringYes*headerPartner token from POST /partner/account/login. Use instead of Authorization.
appIdstring (uuid)YespathID of the app whose contact email is being verified.
verificationTokenstringYesqueryThe verification code (OTP) received on the app's contact email.

* Send either Authorization or token.



Sample request

curl --request POST \
  --url 'https://partner.gupshup.io/partner/app/{appId}/onboarding/verify?verificationToken=123456' \
  --header 'Authorization: {APP_TOKEN}' \
  --header 'Accept: application/json'

Response parameters

ParameterTypeDescription
statusstringsuccess when the email is verified, error otherwise.
messagestringReason for the failure. Present on error responses only.
codestringPlatform error code. Present on internal errors only.

Sample response

{
  "status": "success"
}

Errors

StatusWhenResponse body
400verificationToken query parameter not sent{"status":"error","message":"Required request parameter 'verificationToken' for method parameter type String is not present"}
400Verification code (OTP) has expired{"status":"error","message":"OOPS..!! Token Has Expired."}
400Contact email is already verified{"status":"error","message":"Mail Was Verified Previously"}
400Partner token used with an unknown appId or another partner's app{"status":"error","message":"Application is not linked to the partner"}
401Missing or invalid token, or an app token used for a different appId{"status":"error","message":"Unauthorised access to the resource. Please review request parameters and headers and retry"}
405HTTP method other than POST{"status":"error","message":"Request method 'GET' is not supported"}
429More than 10 requests per second for the app{"status":"error","message":"Too Many Requests"}
500Internal server error{"status":"error","message":"Internal server error. Please try again later and If Issue still persist then contact Gupshup Dev Support","code":"PP-ERR-API-002"}
Path Params
uuid
required

ID of the app whose contact email is being verified.

Query Params
string
required

The verification code (OTP) received on the app's contact email.

Responses

Language
Credentials
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json