Product Stock
This article provides comprehensive information and documentation on a set of API methods specifically designed to handle product stocks. By leveraging these methods, users can retrieve, search, and create product stocks, allowing for seamless integration and management of product stock data within the system.
The article includes detailed explanations, parameter descriptions, and usage examples for each API method, empowering developers to effectively utilize the capabilities provided by the product stock API.
Get Product Stock
Product Stock is responsible for keeping track of stock details of the related product within the specified stock list. There might be more than one piece of stock information for a product. Each product and stock list key pair is unique.
Parameter | Data Type | Default | In | Description |
api_token | string | header | The API key of the customer account | |
limit | integer | 10 | query | Amount of line items per page that will be returned |
page | integer | 1 | query | Page number to return |
Request GET
This request is used to retrieve all product stock data according to the limit and page parameters.
‘content_type’ header represents the response type.
‘Authorization’ header is a required header for authentication. You can retrieve api_token with login.
Path: <code>product_stock/</code></strong>
import requests
url = "https://{customer_api_url}/api/i1/product_stock/"
api_token = "f532eXXXXXXXXXXXXXXXXX201XXXXX9332d"
headers = {
'content-type': 'application/json',
'Authorization': 'Token {}'.format(api_token)
}
params = {
'limit': '4',
'page': '1'
}
response = requests.get(url, headers=headers , params=params)
print(response.text)
Response
Response contains all stock data with given parameters. Response status is expected to be HTTP-200 Successful. Resource properties are in Python format.
Property | Data Type | Description |
product_sku | string | Product SKU |
stock_list | id | Price list which includes the product |
stock | integer | Amount of stock |
unit_type | string | Stocked quantity type. qty: Quantity, kg: Kilogram |
“count” shows how many product stocks exist in the system.
“next” shows the next cursor url to retrieve the desired product stocks.
“previous” shows the previous cursor url to retrieve the desired product stocks.
“results” shows every product stock detail.
{
"count": 1012,
"next": "https://{customer_api_url}/api/i1/product_stock/?limit=4&page=2",
"previous": null,
"results": [
{
"id": 340,
"product_sku": "1116131001",
"stock": 100,
"stock_list": 1,
"unit_type": "qty"
},
{
"id": 887,
"product_sku": "1133718010",
"stock": 100,
"stock_list": 1,
"unit_type": "qty"
},
{
"id": 342,
"product_sku": "1116131003",
"stock": 100,
"stock_list": 1,
"unit_type": "qty"
},
{
"id": 343,
"product_sku": "1116131004",
"stock": 100,
"stock_list": 1,
"unit_type": "qty"
}
]
}
Create or Update Stock
This service has the upsert logic. If the stock list has the product SKU, the stock of the product will be updated with the given parameters. If there is no product SKU available in the stock list, a stock will be created in the list with the product SKU.
To create or update the stock of the product, it is necessary to know the ID of the stock list. How to get stock list ID and other details are explained under this section.
Parameter | Data Type | Default | In | Required | Description |
api_token | string | header | YES | The API key of the customer account | |
product_sku | string | body | YES | Product SKU | |
stock_list | id | body | YES | Stock list which includes the product | |
stock | integer | 0 | body | NO | Amount of stock |
unit_type | enum(string) | qty | body | NO | Stocked quantity type qty: Quantity kg: Kilogram |
Request POST
This request is used to create a new product stock according to the given body.
‘content_type’ header represents the response type.
‘Authorization’ header is a required header for authentication. You can retrieve api_token with login.
Path:<code>product_stock/</code></strong>
import requests
import json
url = "https://{customer_api_url}/api/i1/product_stock/"
api_token = "f532eXXXXXXXXXXXXXXXXX201XXXXX9332d"
headers = {
'content-type': 'application/json',
'Authorization': 'Token {}'.format(api_token)
}
data = {
'product_sku': '1116131001',
'stock': 500,
'stock_list': 2,
'unit_type': 'qty'
}
response = requests.post(url, headers=headers, data=json.dumps(data))
print(response.text)
Response
Returns the created stock data after successfully creating the stock. Successful response status is expected to be HTTP-201 Created.
{
"id": 1270,
"product_sku": "1116131001",
"stock": 500,
"stock_list": 2,
"unit_type": "qty"
}