Auth
- POSTAnonymous user
- POSTLogin with phone
- POSTLogin with email
- POSTLogin with whatsapp
- POSTLogin with password
- POSTVerify OTP
- POSTRegister with phone
- POSTRegister with email
- POSTRegister with whatsapp
- POSTRegister with password
- GETRetrieve a user
- PUTUpdate a user
- GETRetrieve a profile image
- PUTUpdate profile image
- POSTAdd profile image
- DELDelete profile image
- PUTDeactivate account
- POSTRefresh access token
- POSTChange password
- POSTForgot password
- POSTReset password
- GETRetrieve user notification preferences
- PUTUpdate user notification preferences
- POSTCreate user notification preferences
- POSTGenerate OTP
- POSTLogout user
- POSTCheck email/phone verification status
Catalog
Carts
- POSTCreate cart
- GETRetrieve cart detail
- DELDelete cart
- GETRetrieve cart using user id
- DELDelete cart using user id
- POSTAdd/delete cart item
- POSTUpdate cart address
- POSTApply coupon
- DELRemove coupon
- POSTRedeem loyalty points
- DELRemove loyalty points
- POSTUse credit balance
- DELRemove credit balance
- POSTRedeem gift card
- DELRemove gift card
- GETRetrieve wishlist
- POSTAdd product to wishlist
- DELDelete product from wishlist
Coupons & promotions
Customers
Orders
Shipping
Analytics
Campaigns
Verify OTP
This API endpoint allows you to verify a one-time password (OTP) for authentication purposes. By sending a request to this endpoint with the necessary parameters, you can confirm the validity of the OTP provided by the user.
curl --request POST \
--url https://staging.api.commercengine.io/api/v1/{store_id}/storefront/auth/verify-otp \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"otp": "<string>",
"otp_token": "<string>",
"otp_action": "login"
}'
{
"message": "<string>",
"success": true,
"content": {
"user": {
"id": "<string>",
"first_name": "<string>",
"last_name": "<string>",
"email": "[email protected]",
"is_email_verified": true,
"phone": "<string>",
"country_code": "<string>",
"is_phone_verified": true,
"profile_image_url": "<string>",
"is_anonymous": true,
"is_logged_in": true,
"login_methods": [
"email"
],
"notification_preferences": {
"transactional": {
"email": true,
"sms": true,
"whatsapp": true
},
"promotional": {
"email": true,
"sms": true,
"whatsapp": true
},
"newsletter": {
"email": true,
"sms": true,
"whatsapp": true
}
},
"created_at": "<string>",
"modified_at": "<string>"
},
"access_token": "<string>",
"refresh_token": "<string>"
}
}
Authorizations
Access token
Body
A string representing the one-time password.
A string representing the OTP token.
A string indicating the action to be performed.
login
, register
, reset-password
, verify-phone
, verify-email
, update-phone
, update-email
Response
A string providing additional information about the response.
A boolean indicating whether the operation was successful or not.
An object containing the response content.
An object representing user details.
The unique ID of the user.
User’s first name.
User’s last name.
User’s email I’d.
Boolean indicating whether the email is verified.
10 digit phone number without country code.
Two-letter code begin with a plus sign prefix that identifies different countries. By default it will be +91 if not provided. Use this key along with phone. Not necessary for email.
Boolean indicating whether the phone is verified.
URL to the user's profile image.
Indicates whether the user is anonymous.
Indicates whether the user is currently logged in.
email
, phone
, whatsapp
, password
User's notification preferences are categorized by transactional, promotional, and newsletter types.
These notifications are typically critical for user engagement, providing updates, confirmations, or alerts related to their account activities.
Indicates whether the user has opted to receive notifications via email.
Indicates whether the user has opted to receive notifications via SMS.
Indicates whether the user has opted to receive notifications via WhatsApp.
These notifications aim to engage users with promotional content and enhance their overall experience with the platform.
Indicates whether the user has opted to receive notifications via email.
Indicates whether the user has opted to receive notifications via SMS.
Indicates whether the user has opted to receive notifications via WhatsApp.
These notifications are often sent periodically as part of a subscription service.
Indicates whether the user has opted to receive notifications via email.
Indicates whether the user has opted to receive notifications via SMS.
Indicates whether the user has opted to receive notifications via WhatsApp.
Timestamps indicate when the user's account was created.
Timestamps indicating when the user account was last modified.
A string representing the access token.
A string representing the refresh token.
curl --request POST \
--url https://staging.api.commercengine.io/api/v1/{store_id}/storefront/auth/verify-otp \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"otp": "<string>",
"otp_token": "<string>",
"otp_action": "login"
}'
{
"message": "<string>",
"success": true,
"content": {
"user": {
"id": "<string>",
"first_name": "<string>",
"last_name": "<string>",
"email": "[email protected]",
"is_email_verified": true,
"phone": "<string>",
"country_code": "<string>",
"is_phone_verified": true,
"profile_image_url": "<string>",
"is_anonymous": true,
"is_logged_in": true,
"login_methods": [
"email"
],
"notification_preferences": {
"transactional": {
"email": true,
"sms": true,
"whatsapp": true
},
"promotional": {
"email": true,
"sms": true,
"whatsapp": true
},
"newsletter": {
"email": true,
"sms": true,
"whatsapp": true
}
},
"created_at": "<string>",
"modified_at": "<string>"
},
"access_token": "<string>",
"refresh_token": "<string>"
}
}