Skip to content

Customer

Summary

Get the user's basic profile information: their SkyJoyID, information, and balance

Methods


Customer Info

GET https://api.skyjoy.vn/api-user/partner/v1/user-profile/{skyjoyId}

Path Parameters

NameTypeDescription
skyjoyId*string

Headers

NameTypeDescription
Authorization*stringBearer <YOUR_ACCESS_TOKEN>
Content-Type*stringapplication/json
json
{
    "statusCode": 200,
    "message": "SUCCESS",
    "data": {
        "skyjoyId": "SJ3609438573",
        "dateOfBirth": "01-01-1990",
        "dateOfJoin": "17-01-2023",
        "email": "vpquoi@yopmail.com",
        "firstName": "NGUYEN VAN",
        "lastName": "A",
        "fullName": "NGUYEN VAN A",
        "eKycStatus": "COMPLETE",
        "status": "ACTIVE",
        "phone": "+84979921380"
    }
}
sh
curl -X GET \
 --header 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \
 --header 'Content-Type: application/json' \
 'https://api.skyjoy.vn/api-user/partner/v1/user-profile/{skyjoyId}'

Customer Profile

GET https://api.skyjoy.vn/api-user/partner/v1/user-profile-ext/{skyjoyId}

Path Parameters

NameTypeDescription
skyjoyId*string

Headers

NameTypeDescription
Authorization*stringBearer <YOUR_ACCESS_TOKEN>
Content-Type*stringapplication/json
json
{
    "statusCode": 200,
    "message": "SUCCESS",
    "data": {
        "enrollingSponsor": "SkyJoy",
        "passportNumber": "P0XXXXXXX1",
        "nationalId": "N0XXXXXXXX1",
        "tierClass": "Diamond",
        "skyjoyId": "SJ3609438573"
    }
}
sh
curl -X GET \
 --header 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \
 --header 'Content-Type: application/json' \
 'https://api.skyjoy.vn/api-user/partner/v1/user-profile-ext/{skyjoyId}'

User Onboarding

POST https://api.skyjoy.vn/api-user/partner/v1/user/onboard

Headers

NameTypeDescription
Authorization*stringBearer <YOUR_ACCESS_TOKEN>
Content-Type*stringapplication/json

Request Body

NameTypeDescription
phone*stringPhone number
fullName*stringFull name
firstNamestringFirst name
lastNamestringLast name
gender*stringGender choose from [male, female, other]
birthday*stringBirthday in ISO8601 format (YYYY-MM-DD)
emailstringEmail address
isKYC*booleanIs KYC or not
idNumber*stringID number that is used for eKYC / Required if passportNumber is null
passportNumber*stringPassport number that is used for eKYC / Required if idNumber is null
placeOfIssue*stringPlace of issue in eKYC document
placeOfBirth*stringPlace of birth in eKYC document
issueDate*stringIdentity Card or Passport issue date in ISO8601 format (YYYY-MM-DD)
expireDate*stringIdentity Card or Passport expire date in ISO8601 format (YYYY-MM-DD)
nationality*stringCountry code in ISO 3166-1 alpha-3 format
address*stringAddress in eKYC document
externalId*stringUnique partner member ID
json
{
    "statusCode": 200,
    "message": "SUCCESS",
    "data": {
        "phone": "+84387255954",
        "fullName": "Nguyen Van A",
        "firstName": "Van A",
        "lastName": "Nguyen",
        "memberCode": "SJ0123456789",
        "createdAt": "2024-02-21T08:29:21.686Z"
    }
}
json
{
    "statusCode": 400,
    "message": "Bad Request",
    "errors": {
        "code": "0001",
        "message": "Bad Request",
        "errorCode": "BAD_REQUEST"
    },
    "data": {
        "resultUrl": "https://partner-app.skyjoy.vn?errorCode=0066"
    }
}
sh
curl -X POST \
 --header 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \
 --header 'Content-Type: application/json' \
 -d '{"phone":"+84387255954","fullName":"Nguyen Van A","firstName":"Van A","lastName":"Nguyen","gender":"Nguyen","memberCode":"SJ84387255954","birthday":"1970-01-01","email":"a.nguyenvan@galaxyjoy.vn","isKYC":"true","idNumber":"0123456789","passportNumber":"0123456789","placeOfIssue":"CQLTTVHCXH","placeOfBirth":"Sai Gon","issueDate":"2023-08-09","expireDate":"2033-08-09","nationality":"VNM","address":"Q8, HCM, Viet Nam","externalId":"41987712"}' \
 'https://api.skyjoy.vn/api-user/partner/v1/user/onboard'

POST https://api.skyjoy.vn/api-user/partner/v1/user/link-member

Headers

NameTypeDescription
Authorization*stringBearer <YOUR_ACCESS_TOKEN>
Content-Type*stringapplication/json

Request Body

NameTypeDescription
skyjoyId*stringSkyJoy member ID
partnerMemberId*stringPartner unique member ID
json
{
    "statusCode": 200,
    "message": "SUCCESS",
    "data":  {
        "phone": "+84123456789",
        "skyjoyId": "SJ0123456789"
    }
}
json
{
    "statusCode": 400,
    "message": "Bad Request",
    "errors": {
        "code": "MEMBER_IS_LINKED",
        "message": "This account has been linked.",
        "name": "MemberIsLinkedException"
    }
}
sh
curl -X POST \
 --header 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \
 --header 'Content-Type: application/json' \
 -d '{ "skyjoyId": "SJ2055871926", "partnerMemberId": "VK084282" }' \
 'https://api.skyjoy.vn/api-user/partner/v1/user/link-member'

POST https://api.skyjoy.vn/api-user/partner/v1/user/unlink-member

Headers

NameTypeDescription
Authorization*stringBearer <YOUR_ACCESS_TOKEN>
Content-Type*stringapplication/json

Request Body

NameTypeDescription
skyjoyId*stringSkyJoy member ID
partnerMemberId*stringPartner unique member ID
json
{
    "statusCode": 200,
    "message": "SUCCESS",
    "data": true
}
json
{
    "statusCode": 400,
    "message": "Bad Request",
    "errors": {
        "code": "MEMBER_IS_NOT_LINKED_YET",
        "message": "This account is not linked yet.",
        "name": "MemberIsNotLinkedException"
    }
    
}
sh
curl -X POST \
 --header 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \
 --header 'Content-Type: application/json' \
 -d '{ "skyjoyId": "SJ2055871926", "partnerMemberId": "VK084282" }' \
 'https://api.skyjoy.vn/api-user/partner/v1/user/unlink-member'

SkyJoy Integration Documentation