User Profile
Get user profile details and update profile details.
Get Profile Details
GET
‎‎https://<domain>/<api prefix>/<version>/user/get/profile/
This API endpoint will give you the user profile details.
Headers
apikey*
string
apikey
Authorization*
string
Bearer access-token
HTTP/1.1 200 OK
Content-Type: application/json
Body:
{
"status_code": 200,
"errors": {},
"data": {
"UserProfile": [
{
"username": "<username>",
"first_name": "<first name>",
"last_name": "<last name>",
"email": "<email>",
"phone_code": "<phone code>",
"phone_number": "<phone number>",
"country_code": "<country code>"
}
]
"ProfileImage": "<image_path>",
"UserLocInfo":{
"lan": "<language_key>",
"tz": "<timezone>",
"currency": "<currency_code>"
}
}
}
Sample code
Node
var request = require('request');
var options = {
'method': 'GET',
'url': 'https://<domain>/<api prefix>/<version>/user/get/profile/',
'headers': {
'apikey': '<apikey>',
'Authorization': 'Bearer <access-token>',
},
formData: {}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
PHP
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://<domain>/<api prefix>/<version>/user/get/profile/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => array(
"apikey: <apikey>",
"Authorization: Bearer <access-token>"
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Update Profile Details
POST
‎‎‎‎‎‎‎‎https://<domain>/<api prefix>/<version>/user/update/profile/
This API endpoint will update user profile details.
If the email address is changed, need to add token checksum field and token field for verification.
Headers
apikey*
string
apikey
Authorization*
string
Bearer access-token
Request Body
first_name
string
first name
last_name
string
last name
email*
string
email address
phone_number
string
phone number
HTTP/1.1 200 OK
Content-Type: application/json
Body:
{
"status_code": 200,
"errors": {},
"data": {}
}
Sample code
Node
var request = require('request');
var options = {
'method': 'POST',
'url': 'https://<domain>/<api prefix>/<version>/user/update/profile/',
'headers': {
'apikey': '<apikey>',
'Authorization': 'Bearer <access-token>',
},
formData: {
'first_name': '<first_name>',
'last_name': '<last_name>',
'email': '<email>',
'phone_number': '<phone_number>'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
PHP
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://<domain>/<api prefix>/<version>/user/update/profile/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => array('first_name' => '<first_name>','last_name' => '<last_name>','email' => '<email>','phone_number' => '<phone_number>'),
CURLOPT_HTTPHEADER => array(
"apikey: <apikey>",
"Authorization: Bearer <access-token>"
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Error Responses
Status Code
Error Type
Field
Description
400
Validation Error
Enter a valid email address.
This field is required.
400
Validation Error
phone_number
Phone number must be entered in the format: '999999999'. Up to 15 digits allowed.
400
Validation Error
first_name
Ensure this field has no more than 255 characters.
400
Validation Error
last_name
Ensure this field has no more than 255 characters.
400
Validation Error
token_checksum_field
This field is required.
400
Validation Error
token_field
This field is required.
Token is not matching.
Upload profile image
POST
‎‎‎‎https://<domain>/<api prefix>/<version>/user/profile-image/
This API endpoint is for uploading a user profile image
Headers
apikey*
string
apikey
Authorization*
string
Bearer access-token
Request Body
image*
object
image file(Type file)
cropped_image*
object
image file(Type file)
HTTP/1.1 200 OK
Content-Type: application/json
Body:
{
"status_code": 200,
"errors": {},
"data": {
"image_url": "<image_url>"
}
}
Sample code
Node
var request = require('request');
var options = {
'method': 'POST',
'url': 'https://<domain>/<api prefix>/<version>/user/profile/profile-image/',
'headers': {
'apikey': '<apikey>',
'Authorization': 'Bearer <access-token>',
},
formData: {
'image': {
'value': <image uri>,
'options': {
'filename': '<image name>',
'contentType': null
},
'cropped_image': {
'value': <cropped_image uri>,
'options': {
'filename': '<cropped_image name>',
'contentType': null
}
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
PHP
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://<domain>/<api prefix>/<version>/user/profile/profile-image/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => array('image'=> new CURLFILE('<image root path>'), 'cropped_image'=> new CURLFILE('<cropped_image root path>')),
CURLOPT_HTTPHEADER => array(
"apikey: <apikey>",
"Authorization: Bearer <access-token>"
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Error Responses
Status Code
Error Type
Field
Description
400
Validation Error
image
Upload a valid image. The file you uploaded was either not an image or a corrupted image.
400
Validation Error
cropped_image
Upload a valid image. The file you uploaded was either not an image or a corrupted image.
429
Throttled
Your daily profile update limit exceeded. Expected available in <HH> hours <M minutes and ss seconds.
Get Local Info
GET
‎https://<domain>/<api prefix>/<version>/get/local-info/
This API endpoint will return list site-local info such as currency list, language list, and timezones list.
Headers
apikey*
string
Apikey
Authorization*
string
Bearer access token
HTTP/1.1 200 OK
Content-Type: application/json
{
"status_code": 200,
"errors": {},
"data": {
"languages": [
{
"key": "<language_key>",
"name": "<language_name>"
},
...
],
"currencies": [
{
"key": "<currency_code>",
"name": "<currency_name>"
},
...
],
"timezones": [
{
"key": "<timezone_key>",
"name": "<timezone_name>"
},
]
}
}
Sample Code
Node
var request = require('request');
var options = {
'method': 'GET',
'url': 'https://<domain>/<api prefix>/<version>/get/local-info/',
'headers': {
'apikey': '<apikey>',
'Authorization': 'Bearer <access token>',
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
PHP
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://<domain>/<api prefix>/<version>/get/local-info/',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'apikey: <apikey>',
'Authorization: Bearer <access token>'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Last updated
Was this helpful?