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.
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.
Request Body
Required when user update mail id,
Required when user update mail id,
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
Enter a valid email address.
This field is required.
Phone number must be entered in the format: '999999999'. Up to 15 digits allowed.
Ensure this field has no more than 255 characters.
Ensure this field has no more than 255 characters.
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
Request Body
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
Upload a valid image. The file you uploaded was either not an image or a corrupted image.
Upload a valid image. The file you uploaded was either not an image or a corrupted image.
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.
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;