Skip to main content
POST
/
merchant
/
auth
/
sso
/
oauth
/
register
Register OAuth
curl --request POST \
  --url https://api.unibee.dev/merchant/auth/sso/oauth/register \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "email": "<string>",
  "companyName": "<string>",
  "countryCode": "<string>",
  "countryName": "<string>",
  "firstName": "<string>",
  "lastName": "<string>",
  "metadata": {},
  "password": "<string>",
  "phone": "<string>",
  "userName": "<string>"
}
'
{
  "code": 123,
  "data": {
    "merchantMember": {
      "MemberGroupPermission": {},
      "MemberRoles": [
        {
          "createTime": 123,
          "id": 123,
          "merchantId": 123,
          "permissions": [
            {
              "group": "<string>",
              "permissions": [
                "<string>"
              ]
            }
          ],
          "role": "<string>"
        }
      ],
      "createTime": 123,
      "currentDeviceIdentity": "<string>",
      "deviceList": [
        {
          "currentDevice": true,
          "identity": "<string>",
          "ipAddress": "<string>",
          "lastActiveTime": 123,
          "lastLoginTime": 123,
          "lastTotpVerificationTime": 123,
          "name": "<string>",
          "status": true
        }
      ],
      "email": "<string>",
      "firstName": "<string>",
      "id": 123,
      "isBlankPasswd": true,
      "isOwner": true,
      "lastName": "<string>",
      "merchantId": 123,
      "mobile": "<string>",
      "oauthAccounts": [
        {
          "email": "<string>",
          "emailVerified": true,
          "image": "<string>",
          "name": "<string>",
          "provider": "<string>",
          "providerId": "<string>"
        }
      ],
      "status": 123,
      "totpType": 123
    },
    "token": "<string>"
  },
  "merchantId": 123,
  "message": "<string>",
  "redirect": "<string>",
  "requestId": "<string>"
}

Endpoint Overview

POST https://api.unibee.dev/merchant/auth/sso/oauth/register Merchant OAuth Register. Pass OAuth token in request header (Auth.js JWT). Headers: X-Auth-JS-Token | X-Auth-Token | X-OAuth-Token

Authorization

All UniBee Merchant API requests require authentication via API key.
HeaderRequiredDescription
AuthorizationYesBearer <your_api_key>
Content-TypeYesapplication/json (for request body)

Parameters

Parameters for this endpoint are listed below. The schema is also shown in the Try it panel.

Request body

NameTypeRequiredDescription
companyNamestringNoCompany Name
countryCodestringNoCountry Code
countryNamestringNoCountry Name
emailstringYesThe merchant member email address
firstNamestringNoThe merchant owner’s first name
lastNamestringNoThe merchant owner’s last name
metadataobjectNoMetadata,Map
passwordstringNoThe owner’s password
phonestringNoThe owner’s Phone
userNamestringNoThe owner’s UserName

Request examples

cURL

curl -X POST "https://api.unibee.dev/merchant/auth/sso/oauth/register" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "companyName": "",
  "countryCode": "",
  "countryName": "",
  "email": "user@example.com",
  "firstName": "",
  "lastName": "",
  "metadata": {},
  "password": "",
  "phone": "",
  "userName": ""
}'

Sandbox

curl -X POST "https://api-sandbox.unibee.top/merchant/auth/sso/oauth/register" \
  -H "Authorization: Bearer YOUR_SANDBOX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "companyName": "",
  "countryCode": "",
  "countryName": "",
  "email": "user@example.com",
  "firstName": "",
  "lastName": "",
  "metadata": {},
  "password": "",
  "phone": "",
  "userName": ""
}'

Response

Success responses return a JSON envelope with code, data, message, redirect, and requestId. code 0 indicates success.
FieldTypeDescription
codeintegerResponse code. 0 = success
dataobjectResponse payload
data.merchantMemberobject
data.tokenstringAccess token of admin portal
messagestringHuman-readable message
requestIdstringRequest ID for support

Error handling

HTTP statusMeaning
400Bad request — invalid or missing parameters. Check message in the body.
401Unauthorized — missing or invalid API key.
404Not found — invalid path or resource.
500Server error — retry with backoff.
When code in the response body is non-zero, check message for details. Use requestId when contacting support.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json

Merchant OAuth Register. Pass OAuth token in request header (Auth.js JWT). Headers: X-Auth-JS-Token | X-Auth-Token | X-OAuth-Token

email
string<string>
required

The merchant member email address

companyName
string<string>

Company Name

countryCode
string<string>

Country Code

countryName
string<string>

Country Name

firstName
string<string>

The merchant owner's first name

lastName
string<string>

The merchant owner's last name

metadata
object

Metadata,Map

password
string<string>

The owner's password

phone
string<string>

The owner's Phone

userName
string<string>

The owner's UserName

Response

200 - application/json
code
integer<int>
data
object
merchantId
integer<int64>
message
string<string>
redirect
string<string>
requestId
string<string>