Create attribute
POST
‎‎ https://<domain>/<api prefix>/<version>/commerce/product/create/attribute/
This endpoint will help to create a new attribute to the system
Request Body
{
"status_code": 200,
"errors": {},
"data": {}
}
Sample Code
Node
var request = require('request');
var options = {
'method': 'POST',
'url': '‎ https://<domain>/<api prefix>/<version>/commerce/product/create/attribute/',
'headers': {
'apikey': '<apikey>',
'Authorization': 'Bearer <access token>'
},
body: JSON.stringify({"name":{"en":"<name in english>","de":"<name in german>"},"data_type":"<attribute data type>","attribute_for":"<attribute for>","widget":"<widget type>","description":{"en":"<description in english>","de":"<description in german>"},"is_unique":"<is unique value>","is_required":"<is required>","is_display":"<need to display>","options":[{"status":"<attribute option status>","label":"<attribute option label>","value":"<attirbute option value>","weight":"<attirbute option weight>"},{"status":"<attribute option status>","label":"<attribute option label>","value":"<attirbute option value>","weight":"<attirbute option weight>"}]})
};
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>/commerce/product/create/attribute/",
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 =>"{\"name\":{\"en\":\"<name in english>\",\"de\":\"<name in german>\"},\"data_type\":\"<attribute data type>\",\"attribute_for\":\"<attribute for>\",\"widget\":\"<widget type>\",\"description\":{\"en\":\"<description in english>\",\"de\":\"<description in german>\"},\"is_unique\":\"<is unique value>\",\"is_required\":\"<is required>\",\"is_display\":\"<need to display>\",\"options\":[{\"status\":\"<attribute option status>\",\"label\":\"<attribute option label>\",\"value\":\"<attirbute option value>\",\"weight\":\"<attirbute option weight>\"},{\"status\":\"<attribute option status\",\"label\":\"<attribute option label>\",\"value\":\"<attirbute option value>\",\"weight\":\"<attirbute option weight>\"}]}",
CURLOPT_HTTPHEADER => array(
"apikey: <apikey>",
"Authorization: Bearer <access token>"
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Error Responses
List Attributes
GET
‎‎ https://<domain>/<api prefix>/<version>/commerce/product/list/attributes/
This endpoint will return list of available product attributes
Query Parameters
{
"status_code": 200,
"errors": {},
"data": {
"results": [
{
"id": <id>,
"name": {
"en": "<name in english>",
"de": "<name in german>"
},
"description": {
"en": "<description in english>",
"de": "<description in german>"
},
"widget": "<widget type>",
"attribute_for": "<attribute for>",
"is_unique": <is unique value>,
"is_required": <is required>,
"is_display": <need to display>,
"options": [
{
"label": "<attribute option label>",
"value": "<attirbute option value>",
"status": <attribute option status>,
"weight": <attirbute option weight>
},
{
"label": "<attribute option label>",
"value": "<attirbute option value>",
"status": <attribute option status>,
"weight": <attirbute option weight>
}
],
"data_type": "<attribute data type>",
"status": 1
}
],
"count": <total attibutes count>,
"previous": <previous url>,
"next": <next url>
}
}
Sample Node
Node
var request = require('request');
var options = {
'method': 'GET',
'url': '‎ https://<domain>/<api prefix>/<version>/commerce/product/list/attributes/',
'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>/commerce/product/list/attributes/",
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;
Get A Attribute
GET
‎https://<domain>/<api prefix>/<version>/commerce/product/get/attribute/<attribute id>/
This endpoint will return a single attribute details
{
"status_code": 200,
"errors": {},
"data": {
"id": <id>,
"name": {
"en": "<name in english>",
"de": "<name in german>"
},
"description": {
"en": "<description in english>",
"de": "<description in german>"
},
"widget": "<widget type>",
"attribute_for": "<attribute for>",
"is_unique": <is unique value>,
"is_required": <is required>,
"is_display": <need to display>,
"options": [
{
"label": "<attribute option label>",
"value": "<attirbute option value>",
"status": <attribute option status>,
"weight": <attirbute option weight>
},
{
"label": "<attribute option label>",
"value": "<attirbute option value>",
"status": <attribute option status>,
"weight": <attirbute option weight>
}
],
"data_type": "<attribute data type>",
"status": 1
}
}
Sample code
Node
var request = require('request');
var options = {
'method': 'GET',
'url': '‎https://<domain>/<api prefix>/<version>/commerce/product/get/attribute/<attribute id>/',
'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>/commerce/product/get/attribute/<attribute_id>/",
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;
Delete Attribute
DELETE
‎https://<domain>/<api prefix>/<version>/commerce/product/delete/attribute/<attribute id>/
This endpoint will help to delete a product attribute from the system.
{
"status_code": 200,
"errors": {},
"data": {}
}
Sample code
Node
var request = require('request');
var options = {
'method': 'DELETE',
'url': 'https://<domain>/<api prefix>/<version>/commerce/product/delete/attribute/<attribute_id>/',
'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>/commerce/product/delete/attribute/<attribute_id>/',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'DELETE',
CURLOPT_HTTPHEADER => array(
'apikey: <apikey>',
'Authorization: Bearer <access token>',
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Update Attribute
POST
‎https://<domain>/<api prefix>/<version>/commerce/product/update/attribute/<attribute id>/
This endpoint will help to edit a product attribute details.
Request Body
{
"status_code": 200,
"errors": {},
"data": {}
}
Sample code
Node
var request = require('request');
var options = {
'method': 'POST',
'url': 'https://<domain>/<api prefix>/<version>/commerce/product/update/attribute/<attribute_id>/',
'headers': {
'apikey': '<apikey>',
'Authorization': 'Bearer <access token>',
},
body: JSON.stringify({"name":{"en":"<name in english>","de":"<name in german>"},"data_type":"<attribute data type>","attribute_for":"<attribute for>","widget":"<widget type>","description":{"en":"<description in english>","de":"<description in german>"},"is_unique":"<is unique value>","is_required":"<is required>","is_display":"<need to display>","options":[{"status":"<attribute option status>","label":"<attribute option label>","value":"<attirbute option value>","weight":"<attirbute option weight>"},{"status":"<attribute option status>","label":"<attribute option label>","value":"<attirbute option value>","weight":"<attirbute option weight>"}]})
};
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>/commerce/product/update/attribute/<attribute_id>/",
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 =>'{
"name":{"en":"<name>"},
"description":{"en":"<description>"},
"data_type":"<data_type>",
"widget":"<widget>",
"options":[{"status": <status>,"label":"<attribute_option_label>","value":"<value>","weight":<weight>}]
}',
CURLOPT_HTTPHEADER => array(
'apikey: <apikey>',
'Authorization: Bearer <access token>'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;