Product Catalogue

Manage product catalogue

List catalogues

get
​

β€Žhttps://<domain>/<api prefix>/<version>/commerce/product/list/catalogue/
This API endpoint will return a list of product catalogue
Request
Response
Request
Headers
apikey
required
string
apikey
Authorization
required
string
Bearer access token
Query Parameters
offset
optional
string
The offset indicates the starting position of the query in relation to the complete set of unpaginated items.
limit
optional
string
The limit indicates the maximum number of items to return, default maximum number is 50, and maximum limit is 100.
Response
200: OK
HTTP/1.1 200 OK
Content-Type: application/json
​
Body:
{
"status_code": 200,
"errors": {},
"data": {
"results": [
{
"id": <catalogue_id>,
"name": "<catalogue_name>",
"parent_id": <parent_id>,
"image": "<image_path>",
"parent": {
"id": <parent_id>,
"name": "<parent_name>"
},
"translation": [
{
"name": "<catalogue_name>",
"language_code": "<language_code>",
"entity_id": <entity_id>
}
...
]
},
...
],
"count": <list_count>,
"previous": "<link_for_previous_page_list>",
"next": "<link_for_next_page_list>"
}
}

Sample Code

Node

var request = require('request');
var options = {
'method': 'GET',
'url': 'https://<domain>/<api prefix>/<version>/commerce/product/list/catalogue/',
'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/catalogue/",
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;
​

Create Catalogue

post
​

β€Žhttps://<domain>/<api prefix>/<version>/commerce/product/create/catalogue/
This API endpoint will create a product catalogue
Request
Response
Request
Headers
apikey
required
string
apikey
Authorization
required
string
Bearer acces token
Body Parameters
name
required
string
Name of catalogue
parent_id
required
string
Parent id of catalogue
Response
200: OK
​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>/commerce/product/create/catalogue/',
'headers': {
'apikey': '<apikey>',
'Authorization': 'Bearer <access token>',
},
formData: {
'name ': '<catalogue_name>',
'parent_id': '<parent_id>'
}
};
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/catalogue/",
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('name ' => '<catalogue_name>','parent_id' => '<parent_name>'),
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

name

This field is required.

This field may not be blank.

Ensure this field has no more than 200 characters.

"\"Catalogue name already selected. Please choose different name !"

400

Validation Error

parent_id

Parent id is required

This field may not be blank

Incorrect type. Expected pk value, received str.

Invalid pk \"parent_id\" - object does not exist.

Update Catalogue

post
​

β€Žhttps://<domain>/<api prefix>/<version>/commerce/product/update/catalogue/
This API endpoint will update a product catalogue.
Request
Response
Request
Headers
apikey
required
string
apikey
Authorization
required
string
Bearer access token
Body Parameters
id
required
string
Catalogue id
name
required
string
New name or existing name of catalogue.
parent_id
required
string
Parent id
Response
200: OK
​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>/commerce/product/update/catalogue/',
'headers': {
'apikey': '<apikey>',
'Authorization': 'Bearer <access token>',
},
formData: {
'id': '<catalogue_id>',
'name': '<name>',
'parent_id': '<parent_catalogue_id>'
}
};
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/catalogue/",
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('id' => '<catalogue_id>','name' => '<name>','parent_id' => '<parent_catalogue_id>'),
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

Invalid Input

id

Catalogue id is required.

This field may not be blank.

Catalogue id is not valid.

Catalogue does not exist.

All other error responses of create catalogue.

​

​

​

Delete Catalogue

delete
​

β€Žhttps://<domain>/<api prefix>/<version>/commerce/product/delete/catalogue/?id=<id>
This API endpoint will delete a product catalogue.
Request
Response
Request
Headers
apikey
required
string
apikey
Authorization
required
string
Bearer access token
Query Parameters
id
required
string
Catalogue id
Response
200: OK
​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': 'DELETE',
'url': 'https://<domain>/<api prefix>/<version>/commerce/product/delete/catalogue/?id=<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/catalogue/?id=<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;

Error Responses

Status Code

Error Type

FIeld

Description

401

Request Failed

​

Catalogue can't delete or remove

400

Invalid Input

id

Catalogue id is not valid.

Catalogue does not exist. This field may not be blank Catalogue id is required.

​

​