Download OpenAPI specification:
Every API request should be sent with a valid token. The token can be fetched by registering
a remote application in your account's Settings -> Users & Groups -> Remote applications.
The token of the remote application should be passed along with the header X-Auth-Token
and also make sure the remote application is authorized with necessary permissions.
Combines one or more split orders belonging to the same parent order.
The selected split orders are merged back into the parent split structure. After combining, the split order sequence is recalculated so that the remaining split orders use consecutive split numbers.
The order_ids path parameter contains the IDs of the
split orders to combine.
Multiple order IDs must be supplied as comma-separated values.
Example:
/aalam/ecomm/order/NZRL6451-1,NZRL6451-2/combine
Split orders are identified using the parent order number followed by a sequential suffix.
For example:
NZRL6451-1NZRL6451-2NZRL6451-3NZRL6451-4When split orders are combined, the remaining split orders are renumbered to maintain a continuous sequence.
For example, combining NZRL6451-1 and NZRL6451-2
results in the remaining split orders being represented
using the reduced split sequence.
All split orders being combined must belong to the same parent order.
Split orders from different parent orders cannot be combined.
All split orders belonging to the same parent order can be combined.
When all splits are combined, the parent order becomes the resulting order and the split structure is removed.
The status query parameter specifies the processing status
to use when combining the orders.
Status values are configured by the administrator and are not restricted to a predefined enum.
order_ids must contain valid split order IDs.Order/manage is needed
| order_ids required | string Comma-separated IDs of the split orders to combine. All specified orders must belong to the same parent order. Example:
|
| status required | string Processing status to assign during the combine operation. Status values are configured by the administrator and are not restricted to a predefined enum. |
{- "parent_id": "NZRL6451",
- "splits": [
- "NZRL6451-1",
- "NZRL6451-2",
- "NZRL6451-3",
- "NZRL6451-4"
]
}Downloads the invoice PDF for one or more orders.
The order IDs are provided as comma-separated values in the
order_ids path parameter.
The order_ids path parameter accepts one or more order
IDs separated by commas.
Example:
/aalam/ecomm/order/ZHKI2831,CILC1923/invoice
Any of the following permissions are needed
Orders/accessOrders/manageOrders/editOrders/process| order_ids required | string Comma-separated IDs of the orders for which invoice PDFs should be downloaded. |
{- "message": "string"
}Downloads the shipping label for one or more orders.
The order IDs are provided as comma-separated values in
the order_ids path parameter.
The order_ids path parameter accepts one or more order
IDs separated by commas.
Example:
/aalam/ecomm/order/CILC1923/shipping_label
Multiple orders can be requested using comma-separated order IDs:
/aalam/ecomm/order/ZHKI2831,CILC1923/shipping_label
Any of the following permissions are needed
Orders/accessOrders/manageOrders/editOrders/process| order_ids required | string Comma-separated IDs of the orders for which shipping labels should be downloaded. |
{- "message": "string"
}Retrieves detailed information for a specific order.
The response includes the current order state, processing history, invoice details, order items, tags, causes, and related split and return orders.
item_fields.The item_fields parameter can be used to control which
item fields are returned in the invoice item details.
Multiple fields can be supplied as a comma-separated list.
Example:
item_fields=id,code,name,type,type_id,uom
order_id must be a valid order number.item_fields parameter applies to item details
returned inside the invoice.direction identifies whether the order is a forward (F)
or reverse (R) order.| order_id required | string Unique order identifier. |
| item_fields | string Comma-separated list of item fields to include in the invoice item details. Example:
|
{- "causes": [ ],
- "contact_id": 85,
- "created_on": "20-08-2026T10:30:00",
- "cur_status": "Confirmed",
- "direction": "F",
- "id": "CCBV9408",
- "invoice": {
- "addons": [ ],
- "app_id": 5,
- "bill_number": "399",
- "bill_type": "sale",
- "cancelled": false,
- "contact_addr_id": 1201,
- "contact_id": 85,
- "contact_name": "Prem Kumar",
- "contact_wallet": 500,
- "coupons": [ ],
- "created": "20-08-2026T10:30:00",
- "created_by": "prem@mail.com",
- "documents": { },
- "due_date": "30-08-2026T10:30:00",
- "item_savings": {
- "coupons": 0,
- "discount": 0,
- "rewards": 0
}, - "items": [
- {
- "item": {
- "code": "titem",
- "coupon_disc": 0,
- "discount_per_item": 0,
- "discount_price": null,
- "id": 11,
- "name": "Test Item",
- "num_variants": 0,
- "offer_id": null,
- "offer_savings": 0,
- "particulars": null,
- "price_per_item": 903,
- "pur_price": null,
- "quantity": 1,
- "ret_flags": 0,
- "ret_reason": null,
- "reward_disc": 0,
- "sp_id": null,
- "sp_name": null,
- "sub_title": null,
- "type": "Mobile Phones",
- "type_id": 1,
- "uom": "unit",
- "uom_type": "fraction"
}, - "row_id": 1698
}
], - "last_updated": "20-08-2026T10:35:00",
- "last_updated_by": "prem@mail.com",
- "loyalty": [ ],
- "loyalty_last_updated": null,
- "manual_disc": {
- "amount": null,
- "rate": null
}, - "params": [ ],
- "settled": 903,
- "settlements": [
- {
- "amount": 903,
- "date": "20-08-2026T10:35:00",
- "deposited_date": null,
- "id": 267,
- "instr_bank": null,
- "instr_date": null,
- "instr_num": null,
- "mode": "NETBANKING",
- "notes": null
}
], - "shipping_addr_id": 1202,
- "total": 903
}, - "invoice_id": 601,
- "is_cod": true,
- "is_stuck": false,
- "logs": [
- {
- "details": { },
- "email_id": null,
- "ended_on": null,
- "mobile_number": null,
- "name": null,
- "proc_items": null,
- "started_on": "20-08-2026T10:35:00",
- "status": "Confirmed",
- "system_name": "__confirmed__"
}, - {
- "details": { },
- "email_id": null,
- "ended_on": "20-08-2026T10:35:00",
- "mobile_number": null,
- "name": null,
- "proc_items": null,
- "started_on": "20-08-2026T10:30:00",
- "status": "New",
- "system_name": "__new__"
}
], - "num_items": 1,
- "on_hold": false,
- "price": 903,
- "return_orders": [ ],
- "settled": 903,
- "sno": 251,
- "split_orders": [ ],
- "tags": [ ],
- "total_quantity": 1
}Updates properties of an existing order.
The endpoint supports updating the order status, tags, custom fields, COD state, pause or resume state, and delivery address based on the supplied parameters and the current order stage.
The tags parameter accepts comma-separated tag names.
- prefix is added to the order.- prefix is removed from the order.For example:
tags=Tag 2,case,try,-tag5,-123
adds Tag 2, case, and try, and removes tag5 and
123.
The status parameter updates the order to the specified
processing stage.
Order stages are configured separately for forward (F) and
reverse (R) orders.
The supplied status must be a valid stage for the order direction. Otherwise, the request results in a 400 Bad Request response.
status, claim, uid, or tags is
required when the request is not authenticated against a
customer contact.tags parameter.- to remove it.status value must be valid for the order's direction.delivery_address cannot be changed by a customer after
the first configured order stage.pause=true pauses the order.resume=true resumes the order.cod=true updates the order as a cash-on-delivery order.| order_id required | string Unique identifier of the order. |
| status | string Updates the order to the specified processing stage. The available stages are configured by the administrator and depend on the order direction. The supplied value must match a valid configured stage for the order. |
| tags | string Comma-separated list of tags to add or remove.
Example:
|
| cod | boolean Updates the cash-on-delivery state of the order. |
| pause | boolean Pauses the order when set to |
| resume | boolean Resumes the order when set to |
| claim | string Claim value associated with the order. |
| uid | string User identifier associated with the order. |
| Field 1 | string <date> Field 1 associated with the order. |
| Field 2 | string Custom order field value. |
{ }Applies a coupon to an existing order.
The supplied coupon code is validated and applied to the order. After applying the coupon, the order and invoice details are recalculated and the updated order details are returned.
The coupon query parameter is mandatory.
The coupon value should contain the configured coupon code.
Example:
coupon=TEST6
Multiple coupons can be applied to the same order by calling this endpoint with additional valid coupon codes.
Previously applied coupons remain associated with the order.
coupon parameter is mandatory.coupons array contains coupons currently applied to
the order.item_savings.coupons contains the coupon savings applied
to order items.| order_id required | string Unique identifier of the order. |
| coupon required | string Coupon code to apply to the order. Example:
|
{- "causes": [ ],
- "contact_id": 173,
- "created_on": "20-08-2026T14:29:20",
- "cur_status": "New",
- "direction": "F",
- "id": "WWDU5805",
- "invoice": {
- "addons": [
- {
- "amount": 50,
- "coupon_disc": 0,
- "is_preset": null,
- "reward_disc": 0,
- "title": "South India Shipping Charges",
- "value": 50
}
], - "app_id": 3,
- "bill_number": "P",
- "bill_type": "sale",
- "cancelled": false,
- "contact_addr_id": null,
- "contact_id": 173,
- "contact_name": "Prem Kumar",
- "contact_wallet": 0,
- "coupons": [
- {
- "amount": 25.66,
- "code": "TEST5",
- "valid_to": null
}, - {
- "amount": 29.32,
- "code": "TEST6",
- "valid_to": null
}
], - "created": "20-08-2026T14:29:19",
- "created_by": "prem@mail.com",
- "documents": { },
- "due_date": "30-08-2026T14:29:19",
- "item_savings": {
- "coupons": 54.98,
- "discount": 0,
- "rewards": 73.3
}, - "items": [
- {
- "item": {
- "code": "beauty-50",
- "coupon_disc": 54.98,
- "discount_per_item": 0,
- "discount_price": null,
- "id": 50,
- "name": "Beauty Care Set",
- "num_variants": 0,
- "offer_id": null,
- "offer_savings": 0,
- "particulars": null,
- "price_per_item": 733,
- "pur_price": 924.42,
- "quantity": 1,
- "ret_flags": 0,
- "ret_reason": "Not Delivered",
- "reward_disc": 73.3,
- "sp_id": null,
- "sp_name": null,
- "sub_title": null,
- "type": "Beauty Products",
- "type_id": 2,
- "uom": "unit",
- "uom_type": "fraction"
}, - "row_id": 8532
}
], - "last_updated": "20-08-2026T14:33:24",
- "last_updated_by": "prem@mail.com",
- "loyalty": [
- {
- "acr_points": 10,
- "acr_rfrl_points": 0,
- "amount": 78.3,
- "code": "Electronics",
- "id": 35,
- "last_updated": "13-06-2025T16:07:08",
- "rdm_points": 0,
- "rdm_rfrl_points": 0
}, - {
- "acr_points": 0.14,
- "acr_rfrl_points": 0,
- "amount": 0,
- "code": "Purchase-Loyalty",
- "id": 36,
- "last_updated": "13-06-2025T16:07:08",
- "rdm_points": 0,
- "rdm_rfrl_points": 0
}
], - "loyalty_last_updated": "13-06-2025T16:07:08",
- "loyalty_revised": false,
- "manual_disc": {
- "amount": null,
- "rate": null
}, - "params": [
- {
- "key": "Order Id",
- "show": true,
- "type": "barcode",
- "value": "WWDU5805"
}
], - "settled": null,
- "settlements": [ ],
- "shipping_addr_id": 99,
- "total": 654.72
}, - "invoice_id": 2418,
- "is_cod": false,
- "is_stuck": false,
- "logs": [
- {
- "details": { },
- "ended_on": "20-08-2026T14:29:20",
- "proc_items": null,
- "started_on": "20-08-2026T14:29:20",
- "status": "New",
- "system_name": "__new__"
}
], - "num_items": 1,
- "on_hold": false,
- "price": 654.72,
- "settled": 0,
- "sno": 11179,
- "tags": [ ],
- "total_quantity": 1
}Processes an individual item in an order during the current order processing stage.
The endpoint records the processing result for the specified item, including successfully processed quantity and any configured processing causes.
The processing stage must already be claimed for the order before an item can be processed.
The request accepts only the following query parameters:
success - Quantity successfully processed.cause.<id> - Quantity associated with a configured
processing cause.amount - COD amount to be set during the delivery stage.Multiple cause.<id> parameters can be supplied for the same
item.
The value of every quantity parameter must be numeric.
When an item ID is supplied, the total quantity specified by
success and all cause.<id> parameters must exactly match
the quantity ordered for that item.
For example, an item with quantity 5 can be processed as:
success=3&cause.12=2
The total processed quantity is 5.
If the processed quantity does not match the ordered quantity, the request is rejected.
Processing causes are configured for the current processing stage.
Each cause.<id> parameter must reference a valid cause
configured for the current processing stage.
When a non-zero cause quantity is recorded, the corresponding cause is associated with the order and the order is marked as stuck.
Existing causes for the order are preserved while processing additional items.
Use _ as the item_id to indicate that processing of the
current stage is complete.
Before completing the stage, the endpoint verifies that all required items have been processed.
For product-processing stages, every order item must have a corresponding processing entry.
If any required item has not been processed, the stage cannot be completed.
When the stage is successfully completed, the order is moved to the next configured status.
The amount parameter can be supplied when processing the
delivery stage to set the COD amount for the order.
Example:
amount=500
success represents successfully processed quantity.cause.<id> represents quantity associated with a specific
processing cause.cause.<id> must reference a valid cause for the current
processing stage.item_id=_ completes the current processing stage.Any of the following permissions are needed
Orders/manageOrders/process| order_id required | string Unique identifier of the order. |
| item_id required | string ID of the order item to process. Use |
| success | number <float> Quantity successfully processed for the specified item. The value is recorded against the success processing result. |
| cause.<id> | number <float> Quantity associated with a processing cause. Replace Multiple |
| amount | number <float> COD amount to be set during the delivery processing stage. |
{- "contact_id": 85,
- "customer_name": "Prem Kumar",
- "date": "20-08-2026T11:23:07",
- "direction": "F",
- "new_status": "Shipped",
- "num_items": 2,
- "order_id": "NZRL6451",
- "price": 120000,
- "settled": 50000
}Updates the items of an existing e-commerce order.
This endpoint allows the quantity, price, and discount of existing order items to be updated.
| order_id required | string Unique ID of the order to update. |
required | Array of objects List of order items to add or update. |
{- "items": [
- {
- "discount": 50,
- "id": 11,
- "price": 600,
- "quantity": 2
}, - {
- "discount": 0,
- "id": 14,
- "price": 51.5,
- "quantity": 1
}
]
}{- "addons": [
- {
- "amount": 50,
- "coupon_disc": 0,
- "is_preset": null,
- "reward_disc": 0,
- "title": "Standard Shipping Charges",
- "value": 50
}
], - "app_id": 3,
- "bill_number": "__p__",
- "bill_type": "sale",
- "cancelled": false,
- "contact_addr_id": 12,
- "contact_id": 70,
- "contact_name": "Karthik Kumar",
- "contact_wallet": 500,
- "coupons": [ ],
- "created": "20-08-2026T11:23:07",
- "created_by": "prem@mail.com",
- "documents": { },
- "due_date": "30-08-2026T11:23:07",
- "item_savings": {
- "coupons": 0,
- "discount": 125,
- "rewards": 0
}, - "items": [
- {
- "item": {
- "code": "WK-001",
- "coupon_disc": 0,
- "discount_per_item": 50,
- "discount_price": null,
- "id": 11,
- "name": "Wireless Keyboard",
- "num_variants": 0,
- "offer_id": null,
- "offer_savings": 0,
- "particulars": null,
- "price_per_item": 600,
- "pur_price": 450,
- "quantity": 2,
- "reward_disc": 0,
- "sp_id": null,
- "sp_name": null,
- "sub_title": null,
- "type": "Computer Accessories",
- "type_id": 1,
- "uom": "unit",
- "uom_type": "whole"
}, - "row_id": 8526
}, - {
- "item": {
- "code": "WM-001",
- "coupon_disc": 0,
- "discount_per_item": 25,
- "discount_price": null,
- "id": 14,
- "name": "Wireless Mouse",
- "num_variants": 0,
- "offer_id": null,
- "offer_savings": 0,
- "particulars": null,
- "price_per_item": 450,
- "pur_price": 300,
- "quantity": 1,
- "reward_disc": 0,
- "sp_id": null,
- "sp_name": null,
- "sub_title": null,
- "type": "Computer Accessories",
- "type_id": 1,
- "uom": "unit",
- "uom_type": "whole"
}, - "row_id": 8527
}
], - "last_updated": "20-08-2026T11:39:07",
- "last_updated_by": "prem@mail.com",
- "loyalty": [ ],
- "loyalty_last_updated": null,
- "loyalty_revised": false,
- "manual_disc": {
- "amount": null,
- "rate": null
}, - "offers": [ ],
- "params": [
- {
- "key": "Order Id",
- "show": true,
- "type": "barcode",
- "value": "NZRL6451"
}
], - "settled": null,
- "settlements": [ ],
- "shipping_addr_id": 18,
- "total": 1425,
- "total_logic": "sum(price(items())) + {{Shipping Tax}}"
}Updates custom parameters associated with an existing order.
Order parameters are supplied as query parameters using the
param. prefix. Each parameter name after the prefix is
stored against the order.
Order parameters must use the following format:
param.<parameter_name>=<value>
Multiple parameters can be supplied in the same request.
Example:
param.student type=Foundation
param.batch=11
param.multichoice=C2,C1,C3
The param. prefix identifies the parameter as an order
parameter.
param. prefix are dynamic.param.* parameters can be supplied in the same
request.| order_id required | string Unique identifier of the order. |
{- "recalc": false
}Creates a return for one or more items from an existing order.
The endpoint supports both return-only requests and exchanges.
Each return item uses the following fields:
id - ID of the item that was originally purchased in
the order and is being returned.quantity - Quantity of the purchased item being
returned.reason - Reason for returning the item.exch_id - ID of the new item requested as an exchange.exch_quantity - Quantity of the new item requested
for exchange.A return can be created without an exchange by providing only the original item ID, return quantity, and reason.
Example:
/aalam/ecomm/order/HIFU7298/returns
{
"items": [
{
"id": 267,
"quantity": 1,
"reason": "Damaged"
}
]
}
When an exchange is requested, exch_id identifies the
newly selected item and exch_quantity specifies the
quantity required.
Example:
{
"items": [
{
"id": 294,
"quantity": 1,
"exch_id": 13,
"exch_quantity": 1
}
]
}
id always refers to an item from the original order.reason describes why the original item is being
returned.exch_id and exch_quantity are optional.| order_id required | string Unique identifier of the original order. |
required | Array of objects non-empty Items from the original order to be returned. |
{- "items": [
- {
- "id": 267,
- "quantity": 1,
- "reason": "Damaged"
}
]
}{- "return_id": "R-RLIH6038"
}Splits an existing order into multiple separate orders.
The items from the original order can be distributed between multiple split orders. Each split order can also be assigned an order processing status.
The id in each item refers to the item ID from the
original order being split.
quantity specifies how much of that item should be
included in the particular split order.
All quantities from the original order must be accounted for across the split plan.
Each split entry must contain a status.
The status must be a valid order processing status for the direction of the parent order.
Processing statuses are configured by the administrator and are not restricted to a predefined enum.
An order can be split into multiple orders.
A previously split order can also be split again, provided it has not reached the shipped stage.
This allows multiple levels of splitting.
For example:
NZRL6451 can be split into NZRL6451-1 and
NZRL6451-2.NZRL6451-2 can subsequently be split into additional
child orders.status and items.Orders/manage is needed
| order_id required | string Unique identifier of the order to be split. |
required | Array of objects >= 2 items List of orders to create from the parent order. |
{- "split": [
- {
- "items": [
- {
- "id": 1,
- "quantity": 1
}, - {
- "id": 11,
- "quantity": 1
}
], - "status": "Confirmed"
}, - {
- "items": [
- {
- "id": 11,
- "quantity": 1
}, - {
- "id": 15,
- "quantity": 2
}
], - "status": "Confirmed"
}
]
}[- "NZRL6451-3",
- "NZRL6451-2"
]Retrieves orders matching the supplied filters.
Orders can be filtered, sorted, limited, or downloaded based on the supplied query parameters.
The status value is not restricted to a predefined enum.
Order processing statuses are configured by the administrator and can differ between installations.
F) and reverse (R) order flows.Cancelled is a predefined status and is available for
both forward and reverse orders.Abandoned is a predefined status and is available only
for forward (F) orders.The direction parameter identifies the order flow.
F - Forward order.R - Reverse order.Abandoned status is valid only for F direction.
summary is not available for customer users.download is requested, pagination, field selection,
and sorting parameters are removed.address controls whether address details are included
in downloaded data.items controls whether item details are included in
downloaded data.| status | string Filter orders by order status. Status values are configured by the administrator and are not restricted to a predefined enum.
If the supplied status is not available in the configured order processing flow, an empty array is returned. |
| direction | string Enum: "F" "R" Filter orders by direction.
|
| contact | string Filter orders by customer contact ID. Multiple contact IDs can be supplied as a comma-separated value. For customer users, this filter is automatically derived from the authenticated contact. |
| is_stuck | string Filter orders by stuck state. Use |
| on_hold | string Filter orders by on-hold state. Use |
| fields | string Comma-separated list of fields to include in the response. |
| limit | integer Maximum number of orders to return. |
| sort | string^(id|price|created_date|num_items|total_quant... Comma-separated sorting expressions. Each expression must use the format
Supported fields:
|
| summary | string Returns order summary information. This parameter is not available for customer users. |
| download | string Requests the orders as downloadable data. When specified, |
| address | string Enum: "0" "1" "true" "false" When downloading orders, controls whether address details are included. |
| items | string Enum: "0" "1" "true" "false" When downloading orders, controls whether item details are included. |
[- {
- "causes": null,
- "contact": 85,
- "created_date": "19-08-2026T10:30:00",
- "cur_status_ended": "19-08-2026T10:30:00",
- "cur_status_proc_items": null,
- "cur_status_started": "19-08-2026T10:30:00",
- "direction": "F",
- "id": "ORD-1001",
- "invoice_id": 387,
- "is_cod": false,
- "is_stuck": false,
- "name": "Rajesh",
- "num_items": 2,
- "on_hold": false,
- "params": null,
- "parent_date": null,
- "parent_direction": null,
- "parent_id": null,
- "price": 1466.09,
- "priority": 0,
- "repeat_days": null,
- "settled": 1466.09,
- "sno": 1001,
- "status": "Confirmed",
- "status_sys": "__confirmed__",
- "tags": [
- {
- "colour_code": "#e37d7d",
- "title": "Priority"
}
], - "total_quantity": 2,
- "user": null
}
]Creates a new forward order for a customer.
Internal users can create an order by providing the customer contact ID and the items to be ordered.
Customer users can create an order using the items available in their cart.
F) order.Orders
manage permission.contact_id is required when an internal user creates
an order.items is required when an internal user creates an order.Order Id.F) orders.| contact_id | integer Customer contact ID for whom the order is created. Required when an internal user creates the order. Customer users use their authenticated contact automatically. |
required | Array of objects non-empty Items to be included in the order. |
{- "contact_id": 70,
- "items": [
- {
- "discount": 50,
- "discount_price": null,
- "id": 11,
- "particulars": null,
- "price": 60000,
- "quantity": 3
}, - {
- "discount": 50,
- "discount_price": null,
- "id": 1,
- "particulars": null,
- "price": 60000,
- "quantity": 1
}
]
}{- "id": "NZRL6451"
}Cancels an existing shipment associated with an order.
The endpoint retrieves the shipping service associated with the order and invokes that service's configured shipment cancellation API.
The order must already have shipping details.
If the order has not yet been shipped, the request is rejected.
The shipping service code is obtained from the existing shipment details. If the service code cannot be determined, the request is rejected.
The shipping service associated with the order must
provide a cancelshipment API.
If the configured shipping service does not provide a shipment cancellation API, the request is rejected.
The cancellation request sent to the shipping service contains:
order_id - The order identifier.direction - The order direction (F or R).POST method.order_id identifies the order whose shipment is being
cancelled.500 Internal Server Error.Orders/manage is needed
| order_id required | string Unique identifier of the order whose shipment is being cancelled. |
{- "order_id": "R-LVGP8541",
- "status": "Shipment Cancelled"
}Retrieves tracking information for an existing shipment associated with an order.
The endpoint validates access to the order, verifies that the order has already been shipped, identifies the shipping service used for the shipment, and retrieves the tracking service configured for that shipping provider.
The order must already have shipping details.
If the order has not yet been shipped, the request is rejected.
The shipping service code is obtained from the existing shipment details. A valid shipping service code is required before tracking information can be retrieved.
The configured shipping service must provide a track
API.
If a tracking API is not available for the shipping service, the request is rejected.
order_id identifies the order whose shipment is being
tracked.Orders manage permission.| order_id required | string Unique identifier of the order whose shipment is being tracked. |
{- "order_id": "R-LVGP8541",
- "service": "aalam/bluedart",
- "status": "In Transit",
- "tracking_number": "AWB123456789",
- "tracking_url": null
}Creates a shipment for an existing order using the specified shipping service.
The shipping service is selected using the mandatory
service query parameter. The package dimensions and
serviceability check can also be supplied as query
parameters.
The service parameter identifies the configured shipping
provider to use for shipment creation.
Supported services depend on the shipping providers configured for the installation.
Examples:
aalam/bluedartaalam/shiprocketaalam/shipfastExample using Blue Dart:
/aalam/ecomm/order/TELN2098/shipment?service=aalam%2Fbluedart&check=true&length=80&breadth=30&height=40
Example using Shiprocket:
/aalam/ecomm/order/TELN2098/shipment?service=aalam%2Fshiprocket&check=true&length=80&breadth=30&height=40
The check parameter can be used to check whether the
destination is serviceable by the selected shipping service.
If the destination pincode is not serviceable, the request
returns 406 Not Acceptable.
Package dimensions can be supplied using:
lengthbreadthheightExample:
length=80&breadth=30&height=40
Before creating a shipment:
After shipment creation, the order can contain shipping details such as the cargo company, AWB number, and expected delivery date.
Example:
/aalam/ecomm/order/TELN2098?status=Shipped&Cargo+Company=comp&AWB+No=12345&Expected+DOD=18-08-2026
service is mandatory.check is optional.Orders
manage permission.| order_id required | string Unique identifier of the order for which the shipment is created. |
| service required | string Configured shipping service used to create the shipment. Examples:
|
| check | boolean Checks whether the destination is serviceable by the selected shipping service. |
| length | number <float> Package length. |
| breadth | number <float> Package breadth. |
| height | number <float> Package height. |
{ }Checks the serviceability of available shipping services for an existing order.
The API evaluates the order destination against the configured shipping services and returns whether each service can serve the order.
Each configured shipping service is returned with a
can_serve value.
true means the shipping service can serve the
order destination.false means the shipping service cannot serve the
order destination.Example:
aalam/bluedart can serve the destination.aalam/shipfast cannot serve the destination.aalam/shiprocket cannot serve the destination.order_id.Orders/manage is needed
| order_id required | string Unique identifier of the order for which shipping serviceability is checked. |
[- {
- "can_serve": false,
- "code": "aalam/shipfast",
- "description": null,
- "icon": "/aalam/shipfast/r/s/images/icon.png",
- "name": "Shipfast"
}, - {
- "can_serve": false,
- "code": "aalam/shiprocket",
- "description": null,
- "icon": "/aalam/shiprocket/r/s/images/icon.png",
- "name": "Shiprocket"
}, - {
- "can_serve": true,
- "code": "aalam/bluedart",
- "description": null,
- "icon": "/aalam/bluedart/r/s/images/icon.png",
- "name": "BlueDart"
}
]Marks an existing shipment as cancelled for an order.
The endpoint first verifies that a shipment has already been created for the order and identifies the shipping service that created the shipment.
A shipment must already exist for the specified order.
If no shipping details are available, the request is
rejected with a 400 Bad Request response.
The shipping service code is obtained from the existing shipment details. If the service code cannot be determined, the request is rejected.
The authenticated user or remote shipping service must match the service that originally created the shipment.
A shipment created by one shipping service cannot be acknowledged or cancelled by another shipping service.
order_id identifies the order whose shipment is
being cancelled.| order_id required | string Unique identifier of the order whose shipment is being cancelled. |
{- "order_id": "TELN2098",
- "status": "Shipment Cancelled"
}Marks the shipment associated with an order as delivered.
The endpoint validates the shipment action user and the shipping service associated with the order before updating the order status.
The delivered status is selected automatically based on the order direction.
F) orders are updated to the configured
forward delivered status.R) orders are updated to the configured
reverse delivered status.The caller does not need to provide the status parameter.
The authenticated user or remote shipping service must be authorized for the order shipment.
The endpoint validates the order shipper before updating the order. A request from an unauthorized shipping service is rejected.
order_id identifies the order whose shipment is being
marked as delivered.status parameter is set internally by the endpoint.| order_id required | string Unique identifier of the order whose shipment is being marked as delivered. |
| * | string Additional order parameters to be passed to the order update operation. The endpoint internally determines and sets the appropriate delivered status based on the order direction. |
{- "amount": 0,
- "customer_name": "Prem Kumar",
- "direction": "F",
- "new_status": "Delivered",
- "num_items": 1,
- "order_id": "TELN2098",
- "price": 680.38,
- "settled": 0
}Marks a reverse order shipment as picked.
This endpoint is used after a reverse shipment has been picked from the customer and moves the reverse order to the configured picked status.
This endpoint applies only to reverse (R) orders.
If the supplied order is a forward (F) order, the
endpoint does not perform a status update.
The request must be made by an authorized shipment action user.
The shipment shipper is validated using either the authenticated internal user or the remote shipping service associated with the request.
status parameter is managed internally by the
endpoint and is set to the configured reverse shipment
picked status.| order_id required | string Unique identifier of the reverse order whose shipment is being marked as picked. |
| * | string Additional order parameters that are passed to the order update operation. The endpoint internally sets the order status to the configured reverse shipment picked status. |
{- "amount": 0,
- "customer_name": "Prem Kumar",
- "direction": "R",
- "new_status": "Picked",
- "num_items": 1,
- "order_id": "R-RLIH6038",
- "price": 680.38,
- "settled": 0
}Marks a forward order shipment as stuck with a reason.
This endpoint is used when a shipment cannot proceed normally and requires attention or intervention.
The reason parameter is mandatory.
The endpoint applies only to forward (F) orders.
The order must currently be in the configured forward shipment stage. Orders in any other stage cannot be marked as stuck.
If the order is already marked as stuck, the operation returns without applying the operation again.
order_id identifies the order whose shipment is being
marked as stuck.reason must be supplied as a query parameter.R) orders.| order_id required | string Unique identifier of the order whose shipment is being marked as stuck. |
| reason required | string Reason why the shipment is being marked as stuck. |
{- "is_stuck": true,
- "order_id": "TELN2098",
- "reason": "Shipment delayed"
}Updates the registered shipping services.
The endpoint also supports checking the registered shipping
services by supplying the check parameter.
When the check parameter is present, the registered
shipping services are rechecked.
Example:
/aalam/ecomm/service/shipping?check=1
The response contains the available shipping services.
Each shipping service contains:
name - Shipping service name.code - Shipping service code.description - Shipping service description.icon - Shipping service icon path.cancelshipment - Indicates whether shipment
cancellation is supported.track - Indicates whether shipment tracking is
supported.Example response:
[ { "name":"Shiprocket", "code":"aalam/shiprocket", "description":null, "icon":"/aalam/shiprocket/r/s/images/icon.png", "cancelshipment":true, "track":true }, { "name":"Shipfast", "code":"aalam/shipfast", "description":null, "icon":"/aalam/shipfast/r/s/images/icon.png", "cancelshipment":true, "track":true } ]
The endpoint is also used for updating the registered shipping service configuration.
The exact update parameters depend on the remaining
update logic of the update_shipping_services method.
Any of the following permissions are needed
Settings/configureOrders/manage| check | string Rechecks the registered shipping services when this parameter is present. Example:
|
[- {
- "cancelshipment": true,
- "code": "string",
- "description": "string",
- "icon": "string",
- "name": "string",
- "track": true
}
]Registers a shipping service with the ecommerce system.
The shipping service must provide a name and a
newshipment API. The service can optionally provide
serviceability, tracking, cancellation, icon, and
description details.
The shipping service registration requires internal authentication.
Example:
/aalam/ecomm/service/shipping
Example request:
PUT /aalam/ecomm/service/shipping
Example payload:
{"name":"Shiprocket","icon":"/aalam/shiprocket/r/s/images/icon.png","serviceability":"/aalam/shiprocket/serviceability","track":"/aalam/shiprocket/track","cancelshipment":{"method":"POST","url":"/aalam/shiprocket/cancel"},"newshipment":{"method":"PUT","url":"/aalam/shiprocket/newshipment"}}
The newshipment parameter is mandatory.
It defines the API used to create a new shipment.
The value can be supplied as a URL string.
Example:
"/aalam/shiprocket/newshipment"
A URL can also be supplied as an object with an HTTP method and URL.
Example:
{"method":"PUT","url":"/aalam/shiprocket/newshipment"}
When supplied as a string, the method defaults to GET.
The serviceability parameter defines the API used to
check whether shipping is available.
It can be supplied as a URL string or as an object
containing method and url.
Example:
"/aalam/shiprocket/serviceability"
Example:
{"method":"POST","url":"/aalam/shiprocket/serviceability"}
When supplied as a string, the method defaults to GET.
The track parameter defines the API used to track a
shipment.
It can be supplied as a URL string or as an object
containing method and url.
Example:
"/aalam/shiprocket/track"
When supplied as a string, the method defaults to GET.
The cancelshipment parameter defines the API used to
cancel a shipment.
It can be supplied as a URL string or as an object
containing method and url.
Example:
{"method":"POST","url":"/aalam/shiprocket/cancel"}
When supplied as a string, the method defaults to GET.
The icon parameter can contain the URL or path of the
shipping service icon.
Example:
"/aalam/shiprocket/r/s/images/icon.png"
The description parameter can contain a description of
the shipping service.
| name required | string Name of the shipping service. |
string or object API used to check shipping serviceability. Can be a URL string or an object containing | |
string or object API used for shipment tracking. Can be a URL string or an object containing | |
required | string or object API used to create a new shipment. This parameter is mandatory. Can be a URL string or an object containing |
string or object API used to cancel a shipment. Can be a URL string or an object containing | |
| icon | string URL or path of the shipping service icon. |
| description | string Description of the shipping service. |
string or object | |
| description | string Description of the shipping service. |
| icon | string URL or path of the shipping service icon. |
| name required | string Name of the shipping service. |
required | string or object |
string or object | |
string or object |
{- "cancelshipment": {
- "method": "POST",
- "url": "/aalam/shiprocket/cancel"
}, - "icon": "/aalam/shiprocket/r/s/images/icon.png",
- "name": "Shiprocket",
- "newshipment": {
- "method": "PUT",
- "url": "/aalam/shiprocket/newshipment"
}, - "serviceability": "/aalam/shiprocket/serviceability",
- "track": "/aalam/shiprocket/track"
}{- "message": "string"
}Returns shipping properties for the requested object.
The obj path parameter determines the type of shipping
property being requested.
Supported object types are:
default - Returns the default shipping properties.item_type - Returns shipping properties for one or more
item types.boxes - Returns the configured shipping boxes.Use default as the obj and _ as the obj_id.
Example:
/aalam/ecomm/shipping_properties/default/_
Example response:
{"weight":500.0,"ship_estimate":3,"restrict_regions":null,"restrict_returns":null,"restrict_exchanges":[14,15,17,18],"return_due_days":"5"}
The restrict_regions, restrict_returns, and
restrict_exchanges values contain shipping region IDs.
Use item_type as the obj.
One or more item type IDs can be provided as a comma-separated
value in obj_id.
Example:
/aalam/ecomm/shipping_properties/item_type/1,2,3,4,5
When multiple item type IDs are supplied, the response is an array containing the ID and shipping properties of each item type.
Example response:
[ {"id":1,"props":{"weight":502.0,"ship_estimate":3,"restrict_regions":null,"restrict_returns":null,"restrict_exchanges":null,"return_due_days":null}}, {"id":2,"props":{}}, {"id":3,"props":{"weight":900.0,"ship_estimate":null,"restrict_regions":null,"restrict_returns":null,"restrict_exchanges":null,"return_due_days":null}} ]
If no shipping properties are configured for an item type,
the props object is returned as an empty object.
Use boxes as the obj and * as the obj_id.
Example:
/aalam/ecomm/shipping_properties/boxes/*
Example response:
[ {"name":"packaging box","l":100.0,"b":40.0,"h":50.0}, {"name":"return delivery","l":80.0,"b":30.0,"h":40.0} ]
The l, b, and h values represent the length, breadth,
and height of the shipping box.
Settings/configure is needed
| obj required | string Type of shipping property to retrieve. Supported values:
|
| obj_id required | string Identifier for the requested shipping property. For For For |
[ ]Creates or updates shipping properties for the specified object.
The shipping properties can be updated for an item, item type, the default shipping configuration, or a shipping box.
Use item as the obj and provide the item ID as
obj_id.
Example:
/aalam/ecomm/shipping_properties/item/9?return_due_days=7&restrict_regions=14%2C2&restrict_returns=19%2C3
The following shipping properties can be configured:
weight - Item weight.ship_estimate - Shipping estimate.restrict_regions - Shipping region IDs where shipping
is restricted.restrict_returns - Shipping region IDs where returns
are restricted.restrict_exchanges - Shipping region IDs where
exchanges are restricted.return_due_days - Number of days allowed for return.Multiple shipping region IDs must be supplied as a comma-separated value.
Example:
/aalam/ecomm/shipping_properties/item/10?restrict_exchanges=14%2C15%2C18
A successful update returns an empty response with HTTP
status 200.
Use item_type as the obj and provide the item type ID
as obj_id.
Example:
/aalam/ecomm/shipping_properties/item_type/1?ship_estimate=5&restrict_regions=1%2C12%2C14%2C2%2C3
This updates the shipping properties for item type ID 1.
Multiple item type IDs can also be supplied as a comma-separated value.
Example:
/aalam/ecomm/shipping_properties/item_type/1,2,3?ship_estimate=5
The restrict_regions, restrict_returns, and
restrict_exchanges values contain comma-separated
shipping region IDs.
A successful update returns an empty response with HTTP
status 200.
Use default as the obj and _ as the obj_id.
Example:
/aalam/ecomm/shipping_properties/default/_?restrict_regions=1%2C2
This updates the default shipping properties.
A successful update returns an empty response with HTTP
status 200.
Use boxes as the obj and provide the box name as
obj_id.
If the specified box already exists, its dimensions are updated.
Example:
/aalam/ecomm/shipping_properties/boxes/return%20delivery?l=60&b=50&h=35
The following dimensions are supported:
l - Box length.b - Box breadth.h - Box height.If the specified box does not already exist, a new shipping box is created.
Example:
/aalam/ecomm/shipping_properties/boxes/small%20box?l=50&b=30&h=20
The values supplied for restrict_regions,
restrict_returns, and restrict_exchanges are shipping
region IDs.
Example:
restrict_regions=14,2
restrict_returns=19,3
restrict_exchanges=14,15,18
Settings/configure is needed
| obj required | string Enum: "default" "item" "item_type" "boxes" Type of shipping property to create or update. Supported values:
|
| obj_id required | string Identifier of the shipping property. For For For For |
| weight | number Item or item type weight. |
| ship_estimate | integer Shipping estimate. |
| restrict_regions | string Comma-separated shipping region IDs where shipping is restricted. Example:
|
| restrict_returns | string Comma-separated shipping region IDs where returns are restricted. Example:
|
| restrict_exchanges | string Comma-separated shipping region IDs where exchanges are restricted. Example:
|
| return_due_days | number Number of days allowed for return. |
| l | number Shipping box length. |
| b | number Shipping box breadth. |
| h | number Shipping box height. |
{- "message": "string"
}Deletes the specified shipping region.
The shipping region is identified using its region ID.
Example:
/aalam/ecomm/shipping_region/19
The specified shipping region with ID 19 is deleted.
Settings/configure is needed
| region_id required | integer ID of the shipping region to delete. |
{- "message": "string"
}Updates an existing shipping region.
The region_id in the path identifies the shipping region
to be updated.
At least one shipping region property must be supplied in the request body.
The following properties can be updated:
name - Name of the shipping region.country - Country associated with the shipping region.postcodes - Individual postcodes configured for the
shipping region.postcode_ranges - Postcode ranges configured for the
shipping region.del_estimate - Minimum and maximum delivery estimate.All update fields are optional individually, but at least one of the supported fields must be provided.
The region name, postcode ranges, individual postcodes, and delivery estimate can be updated together.
Example:
/aalam/ecomm/shipping_region/14
Example payload:
{"name":"Australia country","postcode_ranges":[{"name":"","begin":"621000","end":"621999"}],"postcodes":["641004"],"del_estimate":{"min":2,"max":5}}
The postcode_ranges field contains one or more postcode
ranges.
Each postcode range contains:
name - Name associated with the postcode range.begin - Beginning value of the postcode range.end - Ending value of the postcode range.The postcodes field contains individual postcodes
configured for the shipping region.
The del_estimate field contains the minimum and maximum
delivery estimate.
The country and postcode ranges can also be updated without updating the other properties.
Example payload:
{"country":"*","postcode_ranges":[{"name":"","begin":"000","end":"111"}]}
The country value identifies the country associated with
the shipping region.
The country value can also be * for a region that is
not restricted to a specific country.
At least one of the following fields must be supplied:
namepostcodespostcode_rangescountrydel_estimateIf none of these fields are supplied, the API returns
400 Bad Request.
A successful update returns an empty response with HTTP
status 200.
Settings/configure is needed
| region_id required | integer Unique identifier of the shipping region to update. |
| country | string Country associated with the shipping region. Use |
object Delivery estimate configured for the shipping region. | |
| name | string Name of the shipping region. |
Array of objects Postcode ranges configured for the shipping region. | |
| postcodes | Array of strings Individual postcodes configured for the shipping region. |
{- "country": "*",
- "postcode_ranges": [
- {
- "begin": "000",
- "end": "111",
- "name": ""
}
]
}{- "message": "string"
}Deletes an existing shipping rule from the specified shipping region.
Example:
/aalam/ecomm/shipping_region/15/rule/3
The shipping rule is identified using the region_id and
rule_id path parameters.
Settings/configure is needed
| region_id required | integer ID of the shipping region containing the rule. |
| rule_id required | integer ID of the shipping rule to delete. |
{- "message": "string"
}Updates one or more properties of an existing shipping rule for the specified shipping region.
Example:
/aalam/ecomm/shipping_region/15/rule/3?to_value=250
The shipping rule is identified using the region_id and
rule_id path parameters.
The following parameters can be updated:
from_value - Starting value of the shipping rule range.to_value - Ending value of the shipping rule range.amount - Shipping amount applicable to the range.At least one valid parameter must be supplied.
Example:
/aalam/ecomm/shipping_region/15/rule/3?amount=750
Multiple properties can be updated in the same request.
Example:
/aalam/ecomm/shipping_region/15/rule/3?from_value=150&to_value=250&amount=600
Settings/configure is needed
| region_id required | integer ID of the shipping region containing the rule. |
| rule_id required | integer ID of the shipping rule to update. |
| from_value | number Starting value of the shipping rule range. |
| to_value | number Ending value of the shipping rule range. |
| amount | number Shipping amount applicable to the range. |
{- "message": "string"
}Creates a new shipping rule for the specified shipping region.
Example:
/aalam/ecomm/shipping_region/15/rules
Example payload:
{"from_value":100,"to_value":200,"amount":500}
All three fields are mandatory:
from_value - Starting value of the shipping rule range.to_value - Ending value of the shipping rule range.amount - Shipping amount applicable to the range.A successful request creates the shipping rule for the specified region.
Settings/configure is needed
| region_id required | integer ID of the shipping region for which the rule is created. |
| amount required | number Shipping amount applicable to the range. |
| from_value required | number Starting value of the shipping rule range. |
| to_value required | number Ending value of the shipping rule range. |
{- "amount": 500,
- "from_value": 100,
- "to_value": 200
}{- "message": "string"
}Returns all shipping regions configured for the e-commerce application.
Each shipping region contains its identifier, name, country, configured postcodes, postcode ranges, shipping rules, and delivery estimate.
The postcodes field contains individual postcodes
configured for the shipping region.
The postcode_ranges field contains postcode ranges with
their beginning and ending values and an optional name.
The rules field contains the shipping rules configured
for the region.
The del_estimate field contains the minimum and maximum
delivery estimate when configured.
/aalam/ecomm/shipping_regions
Example response:
[ { "id": 1, "name": "North India", "country": "INDIA", "postcodes": ["600000"], "postcode_ranges": [ { "begin": "000000", "end": "599999", "name": "NO" } ], "rules": [], "del_estimate": { "min": "5", "max": "6" } } ]
Settings/configure is needed
[- {
- "country": "INDIA",
- "del_estimate": {
- "max": "6",
- "min": "5"
}, - "id": 1,
- "name": "North India",
- "postcode_ranges": [
- {
- "begin": "000000",
- "end": "599999",
- "name": "NO"
}
], - "postcodes": [
- "600000"
], - "rules": [ ]
}, - {
- "country": "INDIA",
- "del_estimate": {
- "max": "5",
- "min": "1"
}, - "id": 3,
- "name": "South India",
- "postcode_ranges": [
- {
- "begin": "600000",
- "end": "699999",
- "name": ""
}, - {
- "begin": "700000",
- "end": "799999",
- "name": ""
}
], - "postcodes": [
- "621207"
], - "rules": [ ]
}, - {
- "country": "CANADA",
- "del_estimate": { },
- "id": 15,
- "name": "Canada",
- "postcode_ranges": [ ],
- "postcodes": [ ],
- "rules": [
- {
- "amount": 500,
- "from_value": 100,
- "rule_id": 3,
- "to_value": 200
}
]
}
]Creates a new shipping region.
Example:
/aalam/ecomm/shipping_regions
Example payload:
{"name":"chennai","country":"India","del_estimate":{"min":7,"max":10}}
The name and country fields are mandatory.
Individual postcodes can be supplied using the postcodes
field.
Example:
{"name":"Tamil Nadu","country":"India","postcodes":["600001","641004"]}
Postcode ranges can be supplied using the
postcode_ranges field.
Each postcode range can contain:
name - Name of the postcode range.begin - Starting postcode of the range.end - Ending postcode of the range.Example:
{"name":"South India","country":"India","postcode_ranges":[{"name":"","begin":"600000","end":"699999"}]}
The del_estimate field can contain delivery estimate
information.
Example:
{"min":7,"max":10}
A successful request returns the ID of the newly created shipping region.
Settings/configure is needed
| country required | string Country associated with the shipping region. |
object Delivery estimate configuration. | |
| name required | string Name of the shipping region. |
Array of objects Postcode ranges associated with the shipping region. | |
| postcodes | Array of strings Postcodes associated with the shipping region. |
{- "country": "India",
- "del_estimate": {
- "max": 10,
- "min": 7
}, - "name": "chennai"
}{- "id": 19
}Validates one or more postal codes against the configured shipping regions.
The postal_code and country parameters are used to
determine whether the postal codes are valid for shipping.
Example:
/aalam/ecomm/shipping_regions/validate?postal_code=600001,641004&country=India
Multiple postal codes can be supplied as a comma-separated value.
When item_id is not supplied, all provided postal codes
are validated against the shipping regions for the
specified country.
An item_id can be supplied to validate a postal code for
a specific item.
Example:
/aalam/ecomm/shipping_regions/validate?postal_code=600001&country=India&item_id=10
When item_id is supplied, only one postal code can be
checked at a time.
Supplying multiple postal codes together with an item_id
results in a bad request.
| postal_code required | string Postal code or comma-separated postal codes to validate. Multiple postal codes can be supplied when |
| country required | string Country associated with the postal code. |
| item_id | integer ID of the item for which the postal code should be validated. When supplied, only one postal code can be checked. |
{- "property1": true,
- "property2": true
}Returns the shipping rule type configured for the e-commerce application.
The shipping rule type determines whether shipping rules are based on shipment weight or invoice value.
The response contains a type field.
Returns weight_based when shipping rules are calculated
based on shipment weight.
Example:
/aalam/ecomm/shipping_rule_type
Example response:
{"type":"weight_based"}
Returns invoice_based when shipping rules are calculated
based on invoice value.
Example response:
{"type":"invoice_based"}
Settings/configure is needed
{- "type": "invoice_based"
}Updates the shipping rule type configured for the e-commerce application.
The shipping rule type determines whether shipping rules are calculated based on shipment weight or invoice value.
The type query parameter is mandatory.
Use weight_based to configure shipping rules based on
shipment weight.
Example:
/aalam/ecomm/shipping_rule_type?type=weight_based
Use invoice_based to configure shipping rules based on
invoice value.
Example:
/aalam/ecomm/shipping_rule_type?type=invoice_based
Only the following values are accepted:
weight_basedinvoice_basedAny other value results in a 400 Bad Request response.
A successful update returns an empty response with HTTP
status 200.
Settings/configure is needed
| type required | string Enum: "weight_based" "invoice_based" Shipping rule calculation type.
|
{- "message": "string"
}Processes a payment for an existing order.
The endpoint validates the payment request based on the authenticated user type, processes the payment against the order, and returns the payment and settlement identifiers.
When the pg parameter is supplied, the request must be
made by an internal user.
When pg is not supplied:
mode=__wallet__.Orders payments
permission.The amount parameter is mandatory for every payment
request.
The payment mode is taken from the mode parameter.
If mode is not supplied, the payment mode defaults to
CASH.
When the payment mode is pg, it is represented as
Payment Gateway in the payment notification.
The response contains:
id - Payment identifier.settlement_id - Settlement identifier.If payment_id or settlement_id is supplied in the
request, the supplied identifier is used when the
corresponding processed identifier is not available.
When either payment_id or settlement_id is explicitly
supplied, payment notifications are not triggered.
order_id identifies the order for which the payment is
processed.mode=__wallet__.| order_id required | string Unique identifier of the order for which the payment is being processed. |
| amount required | number <float> Amount to be processed for the order payment. |
| mode | string Payment mode. Customer users must use If omitted, the payment mode defaults to Use |
| pg | string Indicates that the payment is being processed through a payment gateway. This parameter can be supplied only by internal users. |
| payment_id | string Existing payment identifier to associate with the payment processing request. When supplied, payment notification is not triggered. |
| settlement_id | string Existing settlement identifier to associate with the payment processing request. When supplied, payment notification is not triggered. |
{- "id": "PAY-78421",
- "settlement_id": "SET-45218"
}Refunds a payment amount associated with an existing order.
The endpoint validates payment refund permissions, resolves split orders to their parent order, validates the required refund information, and processes the refund against the specified payment or settlement.
The request is allowed when the authenticated user is:
Orders payments permission.aalam/base/Payments/refund permission.Users without the required refund permission are rejected.
If the supplied order is a split order, the endpoint resolves the split order to its parent order before processing the refund.
The supplied order_id is still used in the notification
parameters.
The following parameters are mandatory:
amountparent_order_idsettlement_id or payment_idThe refund cannot be processed unless at least one of
settlement_id or payment_id is supplied.
The refund is processed using the specified amount, parent order ID, settlement ID, and payment ID.
After the refund is processed, a refund notification is sent using the order's invoice.
order_id identifies the order associated with the
payment being refunded.amount is converted to a floating-point value before
processing.Payment Gateway as the
payment mode.| order_id required | string Unique identifier of the order whose payment is being refunded. |
| amount required | number <float> Amount to refund. |
| parent_order_id required | string Identifier of the parent order associated with the refund. |
| settlement_id | string Settlement identifier associated with the payment to refund. Either |
| payment_id | string Payment identifier associated with the payment to refund. Either |
{ }Retrieves all configured settings for the e-commerce application.
The response contains the combined configuration for preorder, COD, item types, UI-related settings, return policy, shipping, reviews, badges, customer tax fields, category groups, and other application settings.
item_types.invalids contains item type IDs marked as
invalid.item_types.sort_logic contains sorting logic keyed by
item type ID.item_types.ordered contains item type IDs in their
configured order.restrict_regions contains region IDs where COD is
restricted.return_policy contains the configured return policy.item_badges contains badge definitions and their
associated item fields.category_group contains the configured category menu
hierarchy and item type IDs.shipping_countries contains the countries supported by
the configured shipping settings.{- "can_review": true,
- "category_group": { },
- "cod": {
- "charges": 500,
- "enabled": true,
- "max_order_value": null,
- "min_order_value": 200,
- "restrict_regions": [
- 2
]
}, - "cust_tax": [
- {
- "desc": "GST Number",
- "key": "GSTIN"
}
], - "emergency_msg": "Test message emergence",
- "item_badges": {
- "badges": [
- {
- "conditions": [
- {
- "field": "days_till_now",
- "op": "<=",
- "param": "launch_date",
- "value": 5
}
], - "group": null,
- "name": "New arrivals",
- "pages": "listing",
- "pos": {
- "left": "0%",
- "top": "0%"
}, - "priority": "0",
- "status": "active",
- "text": {
- "background": "#ff0000",
- "border": null,
- "border-radius": null,
- "color": "#ffffff",
- "font-size": null,
- "font-weight": null,
- "padding": null,
- "value": "NEW"
}, - "type": "text"
}
], - "groups": [ ],
- "item_fields": [
- "launch_date"
], - "props": { }
}, - "item_types": {
- "invalids": [
- 64,
- 65,
- 1,
- 90
], - "ordered": [
- 12,
- 13,
- 16,
- 17,
- 20,
- 21,
- 22,
- 31,
- 32,
- 33,
- 43,
- 44,
- 45,
- 46,
- 47,
- 8,
- 52,
- 48,
- 49,
- 50,
- 51,
- 53,
- 9,
- 7,
- 10,
- 11,
- 6,
- 5,
- 3,
- 4,
- 18,
- 14,
- 2
], - "sort_logic": {
- "1": "prop.__eorder__.asc",
- "2": "id.asc",
- "6": "prop.__eorder__.asc",
- "10": "prop.__eorder__.asc",
- "63": "sale_price.desc",
- "89": "prop.__eorder__.asc"
}
}, - "listing_add2cart": "1",
- "preorder": {
- "allow": false
}, - "property_guides": { },
- "pub_url_root": "shop",
- "return_policy": {
- "can_accept": "accept",
- "delivery_due_date": "5",
- "product_photos": "mandatory",
- "return_due_days": 7,
- "returns": "enabled"
}, - "shipping_countries": [
- "*",
- "AUSTRALIA",
- "BANGLADESH",
- "CANADA",
- "INDIA",
- "SVALBARD AND JAN MAYEN"
], - "show_oos": false,
- "taxes_included": true
}Retrieves the current Cash on Delivery (COD) settings configured for the e-commerce application.
enabled indicates whether COD is currently available.charges represents the configured COD charges.min_order_value represents the minimum order value
required for COD when configured.max_order_value represents the maximum order value
allowed for COD when configured.min_order_value and max_order_value can be null
when no limit is configured.{- "charges": 50,
- "enabled": true,
- "max_order_value": null,
- "min_order_value": null
}Updates the Cash on Delivery (COD) settings configured for the e-commerce application.
The endpoint supports updating COD availability, charges, order value limits, and restricted regions.
The enable and disable parameters control whether COD
is available.
enable enables COD.disable disables COD.enable and disable cannot be supplied together.The restrict_regions parameter controls COD restricted
regions.
-1 removes the specified region from the restricted
region list.min_order_value sets the minimum order value for COD.max_order_value sets the maximum order value for COD.max_order_value can be supplied to clear the
configured maximum value.enable and disable are mutually exclusive.Settings/configure is needed
| enable | boolean Enables Cash on Delivery. |
| disable | boolean Disables Cash on Delivery. |
| charges | number <float> COD charges to apply to eligible orders. |
| min_order_value | number <float> Minimum order value required for COD. |
| max_order_value | number <float> Maximum order value allowed for COD. An empty value can be supplied to remove the configured maximum order value. |
| restrict_regions | integer Updates COD restricted regions. A positive region ID adds the region to the restricted region list.
|
{- "message": "string"
}Retrieves the customer taxation fields configured for the e-commerce application.
The response contains the configured customer taxation fields. An empty array is returned when no customer taxation fields are configured.
[- {
- "desc": "GST Number",
- "key": "GSTIN"
}
]Adds or deletes a customer taxation field configured for the e-commerce application.
The operation is controlled using the action query
parameter.
Use action=add to add a customer taxation field.
Use action=del to delete a customer taxation field.
Example:
/aalam/ecomm/setting/customer-taxation?action=add&key=GSTIN&desc=GST+Number
Example:
/aalam/ecomm/setting/customer-taxation?action=del&key=GSTIN&desc=GST+Number
action is mandatory and must be either add or del.key is mandatory for both operations.desc is mandatory for both operations.add, the key and desc values are used to
configure the customer taxation field.del, the key identifies the customer taxation
field to be deleted.Settings/configure is needed
| action required | string Enum: "add" "del" Operation to perform.
|
| key required | string Key of the customer taxation field. |
| desc required | string Description of the customer taxation field. |
{- "message": "string"
}Removes an item type from the invalid item type configuration.
type_id path parameter identifies the item type
to remove.Settings/configure is needed
| type_id required | integer ID of the item type to remove from the invalid item type list. |
{- "message": "string"
}Marks one or more item types as invalid for the e-commerce application.
The type_ids field contains the item type IDs that should
be added to the invalid item type configuration.
type_ids field is mandatory.type_ids must be an array of item type IDs.type_ids represents an item type ID.Settings/configure is needed
| type_ids required | Array of integers non-empty Array of item type IDs to mark as invalid. |
{- "type_ids": [
- 64
]
}{- "message": "string"
}Returns the item badge configuration used by the e-commerce application.
The response contains badge definitions, badge groups, property configurations, and item fields used by badge conditions.
{- "badges": [
- {
- "conditions": [
- {
- "field": "days_till_now",
- "op": "<=",
- "param": "launch_date",
- "value": 5
}
], - "group": null,
- "name": "New arrivals",
- "pages": "listing",
- "pos": {
- "left": "0%",
- "top": "0%"
}, - "priority": "0",
- "status": "active",
- "text": {
- "background": "#ff0000",
- "border": null,
- "border-radius": null,
- "color": "#ffffff",
- "font-size": null,
- "font-weight": null,
- "padding": null,
- "value": "NEW"
}, - "type": "text"
}
], - "groups": [ ],
- "item_fields": [
- "launch_date"
], - "props": { }
}Creates a new item badge or updates an existing item badge.
Use _ as the badge_name when creating a new badge.
Use the existing badge name when updating a badge.
The nature parameter must be either badge or
badgegrp. Use badge for item badge operations.
Example:
/aalam/ecomm/setting/item_badges/_?nature=badge
A new badge must contain a unique name.
Example payload:
{"name":"Suggested badge","type":"text","status":"active","text":{"value":"Suggested","color":"rgba(15, 15, 15, 1)","background":"rgba(7, 153, 5, 1)","padding":null,"border":null,"border-radius":null,"font-size":null,"font-weight":null},"priority":0,"pos":{"left":"0%","top":"0%"}}
Pass the existing badge name in the path.
Example:
/aalam/ecomm/setting/item_badges/New%20arrivals?nature=badge
Example payload:
{"conditions":[{"param":"launch_date","field":"days_till_now","value":4,"op":"<="},{"param":"sale_price","op":">=","value":100}],"pos":{"left":"0%","top":"0%"}}
Multiple conditions can be configured for a badge.
Each condition can contain:
param - Item parameter used by the condition.field - Optional field used for evaluating the
parameter.value - Value used for comparison.op - Comparison operator.Example:
{"param":"sale_price","op":">=","value":100}
Multiple conditions can be supplied:
{"conditions":[{"param":"launch_date","field":"days_till_now","value":4,"op":"<="},{"param":"sale_price","op":">=","value":100}]}
Text badges can contain the following display properties:
value - Text displayed in the badge.color - Text color.background - Badge background color.padding - Badge padding.border - Badge border.border-radius - Badge border radius.font-size - Badge font size.font-weight - Badge font weight.Example:
{"value":"Suggested","color":"rgba(15, 15, 15, 1)","background":"rgba(7, 153, 5, 1)","padding":null,"border":null,"border-radius":null,"font-size":null,"font-weight":null}
The pos object defines the badge position.
Example:
{"left":"0%","top":"0%"}
The priority field controls the display priority of the
badge.
The status field defines the current badge status.
Settings/configure is needed
| badge_name required | string Name of the badge. Use |
| nature | string Default: "badge" Enum: "badge" "badgegrp" Specifies whether the operation is for a badge or badge group. Use |
Array of objects Conditions used to determine badge visibility. | |
| name | string Name of the badge. |
object Position of the badge. | |
| priority | integer Display priority of the badge. |
| status | string Badge status. |
object Text badge configuration. | |
| type | string Badge display type. |
{- "name": "Suggested badge",
- "pos": {
- "left": "0%",
- "top": "0%"
}, - "priority": 0,
- "status": "active",
- "text": {
- "background": "rgba(7, 153, 5, 1)",
- "border": null,
- "border-radius": null,
- "color": "rgba(15, 15, 15, 1)",
- "font-size": null,
- "font-weight": null,
- "padding": null,
- "value": "Suggested"
}, - "type": "text"
}{- "message": "string"
}Updates the sorting logic configured for an item type.
The item type is identified by its type ID, and the
sorting logic is supplied using the value query
parameter.
The value parameter supports the following values:
id.ascid.descsale_price.ascsale_price.descsale_discount.descprop.__eorder__.asctype_id path parameter identifies the item type.value query parameter is mandatory.Settings/configure is needed
| type_id required | integer ID of the item type whose sorting logic is updated. |
| value required | string Enum: "id.asc" "id.desc" "sale_price.asc" "sale_price.desc" "sale_discount.desc" "prop.__eorder__.asc" Sorting logic to apply to the item type. Supported values are:
|
{- "message": "string"
}Retrieves the configured item type settings used by the e-commerce application.
The response contains item type IDs grouped according to their configuration state.
invalids contains item type IDs that are currently
marked as invalid.sort_logic contains sorting rules configured for
item types, keyed by item type ID.ordered contains item type IDs in their configured
display order.invalids and ordered are
item type IDs.sort_logic keys represent item type IDs.{- "invalids": [
- 64,
- 65,
- 34,
- 35,
- 24,
- 70,
- 23,
- 71,
- 15,
- 36,
- 25,
- 30
], - "ordered": [
- 12,
- 13,
- 16,
- 17,
- 20,
- 21,
- 22,
- 31,
- 32,
- 33,
- 43,
- 44,
- 45,
- 46,
- 47,
- 8,
- 52,
- 48,
- 49,
- 50,
- 51,
- 53,
- 9,
- 7,
- 10,
- 11,
- 6,
- 5,
- 1,
- 2,
- 3,
- 4,
- 18,
- 14
], - "sort_logic": {
- "1": "prop.__eorder__.asc",
- "2": "id.asc",
- "6": "prop.__eorder__.asc",
- "10": "prop.__eorder__.asc"
}
}Creates, updates, or deletes a JavaScript plugin configured for the e-commerce application.
The plugin is identified by plugin_name in the URL and
its JavaScript code is supplied through the code field
in the request body.
code value creates or updates the plugin.code value removes the plugin.plugin_name identifies the plugin configuration key.code is mandatory in the request body.code value is used to delete the plugin.Settings/configure is needed
| plugin_name required | string Name of the JavaScript plugin to create, update, or delete. |
| code required | string JavaScript code associated with the plugin. A non-empty value creates or updates the plugin. An empty value deletes the plugin. |
{- "code": "<script>let v=4</script>"
}{- "message": "string"
}Retrieves all JavaScript plugins configured for the e-commerce application.
Each plugin is returned as a key-value pair containing the plugin identifier and its configured JavaScript source.
<script> element.{- "coupon": "<script src=\"/aalam/site/h/1/coupon.js\"></script>",
- "productyoumaylike": "<script src=\"/aalam/site/h/1/Productsyoumaylike.js\"></script>",
- "profileandaddresscomponent": "3<script src=\"/aalam/site/h/3/ProfileAndAddressComponent.js\"></script>"
}Retrieves the current out-of-stock setting for the e-commerce application.
The response indicates whether the out-of-stock setting is enabled or disabled.
oos contains the current setting value.1 indicates that the out-of-stock setting is enabled.0 indicates that the out-of-stock setting is disabled.{- "oos": "0"
}Updates the out-of-stock setting for the e-commerce application.
The oos query parameter controls whether the
out-of-stock setting is enabled or disabled.
oos parameter is mandatory.oos=true enables the setting.oos=false disables the setting.oos=1 also enables the setting.1 or true is stored as 0.Settings/configure is needed
| oos required | boolean Controls the out-of-stock setting.
|
{- "message": "string"
}Retrieves the configured operation stages for the specified order direction.
The direction determines which operation stage
configuration is returned.
F - Forward order stages.R - Return order stages.The response contains the configured stages and the users associated with those stages.
Each stage can contain:
Some fields are optional and are returned only when they are configured for the stage.
| direction required | string Enum: "F" "R" Order direction for which operation stages should be retrieved.
|
{- "stages": [
- {
- "assign_scheme": null,
- "id": 101,
- "order": 1,
- "params": {
- "remind_span": "2"
}, - "proc_type": null,
- "system_name": "__new__",
- "timespan_mins": null,
- "title": "New",
- "users": [ ]
}, - {
- "assign_scheme": "manual",
- "causes": [
- {
- "id": 201,
- "title": "Item Damaged"
}, - {
- "id": 202,
- "title": "Item Unavailable"
}
], - "fields": [
- {
- "title": "Reference Code",
- "type": "barcode"
}, - {
- "title": "Processing Date",
- "type": "date"
}
], - "id": 102,
- "order": 2,
- "proc_type": "product",
- "system_name": null,
- "timespan_mins": 30,
- "title": "Processing",
- "users": [
- 5,
- 7
]
}, - {
- "assign_scheme": "manual",
- "id": 103,
- "order": 3,
- "proc_type": null,
- "system_name": "__completed__",
- "timespan_mins": 0,
- "title": "Completed",
- "users": [
- 5
]
}
], - "users": [
- {
- "email": "admin@example.com",
- "id": 5,
- "mobile_isd_code": null,
- "mobile_number": null,
- "name": "Admin User"
}, - {
- "email": "operations@example.com",
- "id": 7,
- "mobile_isd_code": null,
- "mobile_number": null,
- "name": "Operations User"
}
]
}Creates or updates the operation stages configuration for the specified order direction.
The stages are supplied as an array in the request payload. Each stage contains its title and order, along with optional configuration such as processing type, assignment scheme, time span, causes, fields, users, and parameters.
A stage can contain:
title - Stage display title.old_title - Existing stage title when renaming a stage.order - Position of the stage in the operation flow.proc_type - Processing type configured for the stage.assign_scheme - User assignment scheme.timespan_mins - Time span configured in minutes.causes - Causes associated with the stage.fields - Custom fields configured for the stage.users - User IDs assigned to the stage.params - Additional stage parameters.The proc_type field can be used to configure the type
of processing associated with a stage.
Example:
proc_type=product
The assign_scheme field configures how users are assigned
to a stage.
Example:
assign_scheme=auto
or:
assign_scheme=manual
Causes can be supplied as an array of strings.
Example:
causes=["Item unavailable","Item damaged"]
New fields can be added using the fields array.
Each field can contain:
title - Field title.type - Field type.new - Indicates that the field is newly added.Example:
fields=[{"title":"Quantity Processed","type":"number","new":true}]
Users can be assigned to a stage using the users array.
Example:
users=[10,15]
The old_title field can be used when changing the title
of an existing stage.
Example:
{"title":"Processing","old_title":"New","order":1}
Additional stage parameters can be supplied using
params.* request parameters.
Only parameters using the params. prefix are accepted
when updating stage parameters.
Examples:
params.product_photos=mandatory
params.can_accept=accept
params.returns=enabled
Multiple stages can be created or updated in a single request.
Example:
{"direction":"F","stages":[{"title":"New","order":1},{"title":"Confirmed","order":2},{"title":"Processing","order":3},{"title":"Completed","order":4}]}
A stage can also contain multiple optional configuration fields:
{"title":"Processing","order":3,"proc_type":"product","assign_scheme":"manual","timespan_mins":30,"causes":["Item unavailable","Item damaged"],"fields":[{"title":"Quantity Processed","type":"number","new":true}],"users":[10,15]}
Settings/configure is needed
| params.<parameter_name> | string Additional parameter for the operation stage. Parameter names must use the Examples:
|
| direction required | string Enum: "F" "R" Order direction for which the operation stages are configured.
|
required | Array of objects Operation stages to create or update. |
{- "direction": "F",
- "stages": [
- {
- "fields": [
- {
- "new": true,
- "title": "Quantity Processed",
- "type": "number"
}, - {
- "new": true,
- "title": "Storage Location",
- "type": "text"
}
], - "order": 3,
- "timespan_mins": 30,
- "title": "Processing"
}
]
}{- "message": "string"
}Retrieves the order parameters configured for the e-commerce application.
By default, active order parameters are returned.
When summary=true is supplied, discarded order
parameters are also included in the response.
Order parameters can use different types, including:
text - Text value.number - Numeric value.barcode - Barcode value.schoice - Single-choice value.mchoice - Multiple-choice value.date - Date value.daterange - Date range value.datetime - Date and time value.timerange - Time range value.choices array.min, max, and step contain configured validation
values when applicable.schedule is included when configured for a parameter.discarded is included for discarded parameters.summary=true.| summary | boolean Default: false Controls whether discarded order parameters are included. When |
[- {
- "description": null,
- "discarded": true,
- "group": null,
- "id": 23,
- "key": "Tax Category",
- "mandatory": false,
- "max": null,
- "min": null,
- "priority": 0,
- "show_in_invoice": false,
- "step": null,
- "type": "text"
}, - {
- "description": null,
- "group": null,
- "id": 31,
- "key": "Order Reference",
- "mandatory": false,
- "max": null,
- "min": null,
- "priority": 0,
- "show_in_invoice": true,
- "step": null,
- "type": "barcode"
}, - {
- "description": null,
- "discarded": true,
- "group": null,
- "id": 29,
- "key": "Delivery Date",
- "mandatory": false,
- "max": null,
- "min": null,
- "priority": 0,
- "show_in_invoice": true,
- "step": null,
- "type": "date"
}, - {
- "choices": [
- {
- "choice": "Option A",
- "price": 0
}, - {
- "choice": "Option B",
- "price": 0
}
], - "description": null,
- "group": null,
- "id": 12,
- "key": "Options",
- "mandatory": false,
- "max": null,
- "min": null,
- "priority": 6,
- "show_in_invoice": true,
- "step": null,
- "type": "mchoice"
}, - {
- "description": null,
- "discarded": true,
- "group": null,
- "id": 16,
- "key": "Scheduled Date",
- "mandatory": false,
- "max": null,
- "min": null,
- "priority": 3,
- "schedule": "-1:5:20",
- "show_in_invoice": true,
- "step": null,
- "type": "datetime"
}
]Updates the active or discarded status of an order parameter.
The order parameter is identified using the discard
query parameter. The sign of the supplied value determines
whether the parameter is discarded or activated.
Examples:
discard=14 discards order parameter 14.
discard=-14 activates order parameter 14.
discard parameter is mandatory.discard identifies the order
parameter.Settings/configure is needed
| discard required | integer Order parameter ID whose active or discarded status should be updated. Use a positive value to discard the parameter. Use a negative value to activate the parameter. |
{- "message": "string"
}Creates or updates the configured order type ordering.
The ordered field contains an array of item type IDs.
The order of the IDs in the array determines the configured
order of the item types.
ordered field is mandatory.ordered must be an array of item type IDs.ordered represents an item type ID.Settings/configure is needed
| ordered required | Array of integers non-empty Array of item type IDs in the required order. |
{- "ordered": [
- 12,
- 13,
- 16,
- 17,
- 20,
- 21,
- 22,
- 31,
- 32,
- 33,
- 43,
- 44,
- 45,
- 46,
- 47,
- 8,
- 52,
- 48,
- 49,
- 50,
- 51,
- 53,
- 9,
- 7,
- 10,
- 11,
- 6,
- 5,
- 1,
- 2,
- 3,
- 4,
- 18,
- 14
]
}{- "message": "string"
}Retrieves the current preorder setting for the e-commerce application.
The response indicates whether preorder items are currently allowed.
allow indicates whether preorder items are allowed.true means preorder is enabled.false means preorder is disabled.{- "allow": false
}Updates the preorder setting for the e-commerce application.
The preorder setting can be enabled or disabled using the
allow or disallow query parameter.
allow or disallow must be supplied.true to enable the corresponding
setting.allow=true enables preorder.disallow=true disables preorder.Settings/configure is needed
| allow | boolean Allows preorder items when set to |
| disallow | boolean Disallows preorder items when set to |
{- "message": "string"
}Retrieves property guides configured for the e-commerce application.
The endpoint returns property guides grouped by property name. Each property can contain one or more guide names with their configured guide rules.
Property guide rules can be based on:
item_type - Restricts the guide to specific item type
IDs.prop_value - Restricts the guide to specific property
values.* as property_name to retrieve guides for all
configured properties.| property_name required | string Property name whose guides should be retrieved. Use |
{- "brand": {
- "brand prop guide": "prop_value=24 Mantra,Addidas,Apple,Apsara,Logitech,Louis Phillippe"
}, - "material": {
- "Material guide": "item_type=3,6,7,8",
- "strong material": "prop_value=Blended,Cotton,Easter,Stainless Steel,jeans"
}
}Creates, updates, or deletes property guides configured for an e-commerce property.
The property is identified by property_name in the URL.
One or more guides can be supplied through the titles
object.
Each guide is identified by its title. A guide contains its conditions and content.
Each guide is supplied using its title as the key:
titles.<guide_title>
A guide contains:
conditions - Condition used to determine when the guide
applies.content - Content displayed for the matching property
values.A guide with a non-empty object value creates or updates the guide.
Example:
{ "titles": { "attractive colors": { "conditions": "prop_value=Bougainvillea,Fireball,Old Gold", "content": "
Very attractive colors
" } } }To delete a specific guide, provide its title with an empty value.
Example:
{ "titles": { "shining color values": "" } }
Multiple guides can be configured independently under the same property.
Settings/configure is needed
| property_name required | string Name of the property for which the guide is being created, updated, or deleted. |
required | object |
{- "titles": {
- "shinint color values": {
- "conditions": "prop_value=Bougainvillea,Denim,Fireball,Old Gold,Orange,Parrot,RED,Silver,White",
- "content": "<p>most attractive and also shining colors</p>"
}
}
}{- "message": "string"
}Retrieves the site analytics configuration for the e-commerce application.
The response contains the configured analytics identifiers and access token used by supported analytics integrations.
fbq - Facebook Pixel identifier.fbq_acc_token - Facebook access token.gtm - Google Tag Manager identifier.ga - Google Analytics measurement identifier.Settings/configure is needed
{- "fbq": "5761123",
- "fbq_acc_token": "",
- "ga": "G-T1XHT2PDB7",
- "gtm": ""
}Updates the site analytics configuration for the e-commerce application.
The endpoint accepts one or more supported analytics settings as query parameters. Only the supplied settings are updated.
ga - Google Analytics measurement identifier.fbq - Facebook Pixel identifier.fbq_acc_token - Facebook Pixel access token.gtm - Google Tag Manager identifier.400 Bad Request.Settings/configure is needed
| ga | string Google Analytics measurement identifier. |
| fbq | string Facebook Pixel identifier. |
| fbq_acc_token | string Facebook Pixel access token. |
| gtm | string Google Tag Manager identifier. |
{- "message": "string"
}Retrieves the current UI settings configured for the e-commerce application.
The response contains the storefront UI configuration, including layout, typography, colors, product display settings, and custom font metadata.
custom_fonts contains metadata for fonts configured
for the application.prod_ prefix.-1 or -2 represents
an additional configured color level.Settings/configure is needed
{- "aspect_ratio": "0.8",
- "bg_color_-1": "#efefef",
- "bg_color_-2": "#dfdfdf",
- "bg_color_0": "#ffffff",
- "bg_color_1": "#f2f2f2",
- "bg_color_2": "#f5f5f5",
- "body_font_size": "14",
- "body_line_height": "21",
- "color_scheme": "light",
- "custom_fonts": [
- {
- "asc": 1.069,
- "ch": 0.714,
- "desc": 0.293,
- "format": "ttf",
- "gap": 0,
- "name": "NotoSans-Regular",
- "xh": 0.536
}, - {
- "asc": 1.194,
- "ch": 0.847,
- "desc": 0.429,
- "format": "ttf",
- "gap": 0,
- "name": "KGHAPPYSolid",
- "xh": 0.639
}, - {
- "asc": 0.88,
- "ch": 0.769,
- "desc": 0.12,
- "format": "otf",
- "gap": 1,
- "name": "AdobeGothicStd-Bold",
- "xh": 0.557
}, - {
- "asc": 1.577,
- "ch": 1.474,
- "desc": 0.471,
- "format": "ttf",
- "gap": 0,
- "name": "Helvetica-Bold",
- "xh": 1.09
}, - {
- "asc": 0.9502,
- "ch": 0.7173,
- "desc": 0.2251,
- "format": "ttf",
- "gap": 0,
- "name": "Helvetica",
- "xh": 0.5229
}
], - "danger_col": "#b54545",
- "edges": "curved",
- "emergency_msg": "System maintenance scheduled",
- "font_body": "Inter#google",
- "font_heading": "Inter#google",
- "heading_font_size": "20",
- "heading_line_height": "30",
- "is_dirty": "true",
- "listing_add2cart": "1",
- "primary_col": "#6b7bf5",
- "prod_bg_color_-1": "#efefef",
- "prod_bg_color_-2": "#dfdfdf",
- "prod_bg_color_0": "#ffffff",
- "prod_bg_color_1": "#f2f2f2",
- "prod_bg_color_2": "#f5f5f5",
- "prod_body_font_size": "14",
- "prod_body_line_height": "21",
- "prod_color_scheme": "light",
- "prod_danger_col": "#b54545",
- "prod_font_body": "Inter#google",
- "prod_font_heading": "Inter#google",
- "prod_heading_font_size": "20",
- "prod_heading_line_height": "30",
- "prod_primary_col": "#4054e7",
- "prod_success_col": "#649130",
- "prod_txt_color_-1": "#404040",
- "prod_txt_color_-2": "#303030",
- "prod_txt_color_0": "#505050",
- "prod_txt_color_1": "#606060",
- "prod_txt_color_2": "#707070",
- "release": "true",
- "size_desktop": "5",
- "size_mobile": "2",
- "size_tablet": "3",
- "success_col": "#649130",
- "txt_color_-1": "#404040",
- "txt_color_-2": "#303030",
- "txt_color_0": "#505050",
- "txt_color_1": "#606060",
- "txt_color_2": "#707070"
}Updates the UI settings configured for the e-commerce application.
The endpoint accepts individual UI settings as query parameters. Multiple settings can be updated in a single request.
size_mobile - Mobile UI size.size_desktop - Desktop UI size.size_tablet - Tablet UI size.aspect_ratio - Product image aspect ratio.theme_color - Theme color.emergency_msg - Emergency message.release - UI release setting.font_heading - Heading font.font_body - Body font.color_bg - Background color.heading_font_size - Heading font size.body_font_size - Body font size.heading_line_height - Heading line height.body_line_height - Body line height.color_scheme - UI color scheme.edges - UI edge style.listing_add2cart - Listing add-to-cart setting.bg_color_0 through bg_color_2 - Background colors.bg_color_-1 and bg_color_-2 - Additional background
colors.txt_color_0 through txt_color_2 - Text colors.txt_color_-1 and txt_color_-2 - Additional text colors.success_col - Success color.danger_col - Danger color.primary_col - Primary color.The edges parameter accepts:
sharpcurvedThe color_scheme parameter accepts:
darklightThe listing_add2cart parameter accepts:
0 - Disable add-to-cart in listings.1 - Enable add-to-cart in listings.400 Bad Request.edges values result in a 400 Bad Request.color_scheme values result in a
400 Bad Request.listing_add2cart values result in a
400 Bad Request.Settings/configure is needed
| size_mobile | string UI size configured for mobile devices. |
| size_desktop | string UI size configured for desktop devices. |
| size_tablet | string UI size configured for tablet devices. |
| aspect_ratio | string Product image aspect ratio. |
| theme_color | string Theme color. |
| emergency_msg | string Emergency message displayed by the application. |
| release | string UI release setting. |
| font_heading | string Heading font configuration. |
| font_body | string Body font configuration. |
| color_bg | string Background color configuration. |
| heading_font_size | string Heading font size. |
| body_font_size | string Body font size. |
| heading_line_height | string Heading line height. |
| body_line_height | string Body line height. |
| color_scheme | string Enum: "dark" "light" UI color scheme. |
| edges | string Enum: "sharp" "curved" UI edge style. |
| listing_add2cart | string Enum: "0" "1" Controls add-to-cart availability in product listings.
|
| bg_color_0 | string Primary background color. |
| bg_color_-1 | string Additional background color level -1. |
| bg_color_-2 | string Additional background color level -2. |
| bg_color_1 | string Background color level 1. |
| bg_color_2 | string Background color level 2. |
| txt_color_0 | string Primary text color. |
| txt_color_-1 | string Additional text color level -1. |
| txt_color_-2 | string Additional text color level -2. |
| txt_color_1 | string Text color level 1. |
| txt_color_2 | string Text color level 2. |
| success_col | string Success color. |
| danger_col | string Danger color. |
| primary_col | string Primary color. |
{- "message": "string"
}Deletes an existing order tag using its tag name.
tag_name path parameter identifies the tag to
be deleted.Any of the following permissions are needed
Orders/manageSettings/configure| tag_name required | string Name of the tag to delete. |
{- "message": "string"
}Updates the properties of an existing order tag.
The tag is identified by its name in the URL. The tag's colour code and priority can be updated using query parameters.
colour_code updates the colour code of the tag.priority updates the priority assigned to the tag.tag_name path parameter identifies the tag to
update.# character in colour_code must be URL encoded.# character from the supplied
colour code before storing it.Any of the following permissions are needed
Orders/manageSettings/configure| tag_name required | string Name of the tag to update. |
| colour_code | string Colour code to assign to the tag. The Example:
|
| priority | integer Priority value to assign to the tag. |
{- "message": "string"
}Removes all items from the authenticated customer's shopping cart.
If the user has an open order, the order is cancelled before the cart items are removed.
If the cart or open order is locked for payment, the operation is not permitted.
Authentication is required for this API.
{ }Retrieves the authenticated customer's shopping cart.
If an offline cart cookie is present, its items are transferred to the authenticated customer's cart before the cart is retrieved.
By default, API version 1 returns the cart items directly. For API versions greater than 1, the response contains either the user's currently open order or the cart items.
When an open order is returned, the response may include an is_locked
field when the order is locked for payment.
Authentication is required for this API.
| v | integer Default: 1 API version. Version 1 returns the cart items directly. Versions greater than 1 return the open order when available, otherwise the cart. |
| fields | string Comma-separated list of item fields to include in the response. |
[- {
- "item_id": 123,
- "quantity": 2,
- "updated_date": "2026-08-19T13:30:00"
}
]Adds the specified item to the authenticated customer's shopping cart.
The item must be a valid ecommerce item and must be permitted for addition to the cart. If the item already exists in the cart, its quantity is increased by the requested quantity.
For API version greater than 1, the item is added to the user's
currently open order when one exists. The optional item_fields
parameter can be used to control the item fields returned in the
response.
Authentication is required for this API.
| item_id required | integer ID of the item to add to the cart. |
| quantity | number Default: 1 Quantity of the item to add to the cart. |
| v | integer Default: 1 API version. When greater than 1, the item is added to the user's open order when available. |
| item_fields | string Comma-separated list of item fields to include in the response. |
[- {
- "item_id": 123,
- "quantity": 2,
- "updated_date": "2026-08-19T13:30:00"
}
]Validates whether the specified coupon can be used by the authenticated customer.
The coupon code is checked against the coupon service for the authenticated customer's account. If the coupon cannot be used, the request is rejected.
Authentication is required for this API.
| code required | string Coupon code to validate. |
{- "code": "SAVE10",
- "valid": true
}Removes the specified item from the authenticated customer's shopping cart.
For API version greater than 1, the item is removed from the user's
currently open order when one exists. The optional item_fields
parameter can be used to control the item fields returned in the
response.
If the cart or order is locked for payment, the item cannot be removed.
Authentication is required for this API.
| item_id required | integer ID of the item to remove from the cart. |
| v | integer Default: 1 API version. When greater than 1, the item is removed from the user's open order when available. |
| item_fields | string Comma-separated list of item fields to include in the response. |
[- {
- "item_id": 123,
- "quantity": 1,
- "updated_date": "2026-08-19T13:30:00"
}
]Updates the quantity of an existing item in the authenticated customer's shopping cart.
The quantity parameter is mandatory and must be greater than zero.
The item can optionally be replaced with another item by providing
replace_id. When replacing an item, old_quantity specifies the
quantity of the existing item being replaced.
For API version greater than 1, the item is updated in the user's
currently open order when one exists. The optional item_fields
parameter can be used to control the item fields returned in the
response.
If the cart or order is locked for payment, the item cannot be updated.
Authentication is required for this API.
| item_id required | integer ID of the item in the cart to update. |
| quantity required | number <float> New quantity for the cart item. Must be greater than zero. |
| replace_id | integer ID of another item to replace the current cart item with. |
| old_quantity | number <float> Default: 0 Previous quantity of the item being replaced. Used when |
| v | integer Default: 1 API version. When greater than 1, the update is applied to the user's open order when available. |
| item_fields | string Comma-separated list of item fields to include in the response. |
[- {
- "item_id": 123,
- "quantity": 3,
- "updated_date": "2026-08-19T13:30:00"
}
]Retrieves items using the supplied filter parameters.
The request is forwarded to the Stock service to retrieve the available items. The request is performed in anonymous mode.
If the request is authenticated, items that are present in the
authenticated customer's wishlist are marked with wishlist: true.
Authentication is optional for this API.
| fields | string Comma-separated list of item fields to include in the response. |
| id | string Comma-separated item IDs to retrieve. |
| anon_mode | integer Default: 1 Anonymous mode is enabled automatically by the API and should not normally be supplied by the client. |
[- {
- "id": 101,
- "name": "Sample Product",
- "wishlist": true
}, - {
- "id": 102,
- "name": "Another Product"
}
]Retrieves items belonging to the specified collection.
The collection configuration is used to apply the collection's configured filters and sorting options. Query parameters supplied by the request are merged with the collection parameters.
If the collection is configured with custom sorting, the configured sorter is applied along with item ID sorting to provide a consistent result order.
Authentication is optional. When the request is authenticated,
items that are present in the user's wishlist may be marked with
wishlist: true.
| collection_name required | string Name of the collection whose items should be retrieved. |
| sort | string Default: "id.desc" Sorting order for the returned items. If the collection has a configured sorting order, it is applied automatically. |
| fields | string Comma-separated list of item fields to include in the response. |
[- {
- "id": 101,
- "name": "Sample Product"
}, - {
- "id": 102,
- "name": "Another Product"
}
]Retrieves the available item properties for the specified collection.
The collection configuration is used to apply the collection's configured filters before retrieving the item properties.
If the specified collection does not exist, an empty object is returned.
Authentication is not required for this API.
| collection_name required | string Name of the collection whose item properties should be retrieved. |
{- "color": [
- {
- "count": 10,
- "value": "Red"
}, - {
- "count": 6,
- "value": "Blue"
}
], - "size": [
- {
- "count": 4,
- "value": "Small"
}, - {
- "count": 12,
- "value": "Large"
}
]
}Retrieves the authenticated customer's wishlist items.
The response contains wishlist entries along with item details such as the item name, type, sale price, stock, variants, and properties.
The returned item fields can be customized using the fields
query parameter.
Wishlist entries can be filtered, sorted, and limited using the supported query parameters.
Authentication is required for this API.
| fields | string Default: "id,name,type,sale_price,sale_discount,num_variants,stock,varying_properties" Comma-separated list of item fields to include in the response. |
| item_id | integer Filter wishlist entries by item ID. |
| date | string Filter wishlist entries by the date they were updated. |
| sort | string Example: sort=date.desc Sort wishlist entries using Examples:
|
| limit | integer Maximum number of wishlist entries to return. |
[- {
- "id": 123,
- "item_id": 123,
- "name": "Sample Product",
- "num_variants": 2,
- "properties": [ ],
- "sale_discount": 10,
- "sale_price": 999,
- "stock": 15,
- "type": "product",
- "updated_date": "2026-08-19T14:30:00"
}
]Adds or removes items from the authenticated customer's wishlist.
Each request parameter represents an item ID. Set the parameter value
to 1 to add the item to the wishlist, or 0 to remove the item
from the wishlist.
Multiple items can be added or removed in a single request.
Authentication is required for this API.
| item_id required | integer Enum: 1 0 The parameter name must be the item ID. Set the value to |
{- "message": "string"
}Retrieves stock alert subscriptions.
An authenticated customer can retrieve the list of item IDs for which they have enabled stock alerts.
Authorized internal users can retrieve stock alerts for a specific
customer using contact_id, or retrieve the customer contact IDs
subscribed to stock alerts for a specific item using item_id.
The item_id parameter is restricted to authorized internal users.
| contact_id | integer Customer contact ID whose stock alert subscriptions should be retrieved. This parameter is available to authorized internal users. |
| item_id | integer Item ID for which subscribed customer contact IDs should be retrieved. This parameter is available only to authorized internal users. |
[- 101,
- 205,
- 310
]APIs are only available to authenticated customers.
Adds or removes stock alerts for items for the authenticated customer.
The item_id query parameter accepts one or more comma-separated
item IDs.
An item ID without a prefix or with a + prefix adds a stock alert.
An item ID with a - prefix removes the stock alert.
Examples:
item_id=123 adds a stock alert for item 123.
item_id=+123,-456 adds an alert for item 123 and removes the alert
for item 456.
Authentication is required for this API.
| item_id required | string Comma-separated item IDs to manage. Use the item ID directly or prefix it with Examples:
|
{- "message": "string"
}Returns the list of components available for the frontend store.
These components can be used by frontend applications for common UI functionality such as authentication, navigation, items, cart, checkout, orders, payments, customer pages, wishlist, and other store-related features.
A successful request returns an array containing the names of the available frontend store components.
Settings/configure is needed
[- "Icon",
- "WishlistPage",
- "OrdersPage",
- "CartPage",
- "CheckoutFlowComponent",
- "ItemPage",
- "ListingPage",
- "AuthPage",
- "HeaderComponent",
- "FooterComponent"
]Deletes the specified frontend store component.
Example:
/aalam/ecomm/pub-v2/jsx/WishlistPage
Settings/configure is needed
| component_name required | string Name of the frontend store component to delete. Example:
|
{- "message": "string"
}Downloads the JSX content of the specified frontend store component.
Example:
/aalam/ecomm/pub-v2/jsx/WishlistPage
Settings/configure is needed
| component_name required | string Name of the frontend store component. Example:
|
{- "message": "string"
}Updates the JSX content of the specified frontend store component.
The request body must contain JSX source content.
The supplied JSX content is transformed using the component build process.
Example:
/aalam/ecomm/pub-v2/jsx/WishlistPage
Settings/configure is needed
| component_name required | string Name of the frontend store component to update. Example:
|
{- "message": "string"
}Deletes an existing product collection identified by its collection name.
The collection name is converted to lowercase before the collection is looked up.
Example:
/aalam/ecomm/collection/cotton-products
If the specified collection does not exist, the API returns
HTTP 404.
A successful deletion returns an empty response with HTTP
status 200.
Settings/collections is needed
| coll_name required | string Name of the collection to delete. The supplied collection name is converted to lowercase before the collection is looked up. |
{- "message": "string"
}Updates an existing collection identified by its collection name.
The collection name is converted to lowercase before the collection is looked up.
Example:
/aalam/ecomm/collection/apple-devices
The collection can be updated using the supported query parameters.
Example:
/aalam/ecomm/collection/apple-devices?description=collection+descrption+info&sort=sale_discount.desc&filters=type_id%3D65%2C66%2C56%2C47%2C33%2C34%2C4%26prop.Brand%3DApple%2C24+Mantra%2CReebok%2C8%2CAddidas%2CCake+it+up
If the collection does not exist, the API returns HTTP
404 with the explanation:
Unable to find the collection
Settings/collections is needed
| coll_name required | string Name of the collection. The supplied collection name is converted to lowercase before the collection is looked up. |
| description | string Collection description. |
| sort | string Collection sorting configuration. |
| filters | string Collection filter configuration. |
{- "message": "string"
}Retrieves product collections.
Collections can be retrieved using pagination, collection name search, product property filters, item type filters, or collection name suggestions.
Example:
/aalam/ecomm/collections
When no filter parameters are supplied, collections are retrieved using the collection pagination cursor.
The page parameter specifies the pagination cursor.
Example:
/aalam/ecomm/collections?page=10
If page is not supplied, the cursor defaults to 0.
The response contains the pagination cursor in the page
field.
The max parameter specifies the maximum number of
collections to return.
Example:
/aalam/ecomm/collections?max=10
The name parameter is used to search collection names.
Example:
/aalam/ecomm/collections?name=shirt
The prop parameter specifies one or more product
properties used to find matching collections.
Multiple property names can be supplied as comma-separated values.
Example:
/aalam/ecomm/collections?prop=Brand,Color
The type_id parameter specifies one or more item type IDs
used to find matching collections.
Multiple item type IDs can be supplied as comma-separated values.
Example:
/aalam/ecomm/collections?type_id=8,73,74
The prop and type_id parameters can be supplied together.
Example:
/aalam/ecomm/collections?prop=Brand,Color&type_id=8,73,74
When the suggest parameter is supplied, the API returns
matching collection names instead of complete collection
details.
| page | integer Default: 0 Pagination cursor used to retrieve the next set of collections. Defaults to |
| max | integer Maximum number of collections to return. |
| name | string Collection name used to search for collections. |
| prop | string Comma-separated product property names used to filter collections. |
| type_id | string Comma-separated item type IDs used to filter collections. |
| suggest | string Returns collection names instead of complete collection details when supplied. |
{- "collections": [
- {
- "filters": "type_id=64,65,66,56,47,33,34&prop.Brand=Apple,24 Mantra,Reebok,8,Addidas",
- "name": "apple-devices",
- "sort": "custom",
- "sort_key": "__eo-3__",
- "title": "Apple devices"
}, - {
- "desc": "Description to be set in the meta tag",
- "filters": "prop.Color=Yellow&prop.Material=Cotton,Blended,Linen",
- "name": "yellow-cotton-shirts",
- "sort": "custom",
- "sort_key": "__eo-4__",
- "title": "Cotton shirts in yellow color"
}
], - "page": 0
}Creates a new product collection.
A collection requires a name and filters. The collection name is converted to lowercase before it is stored.
Example:
/aalam/ecomm/collections
Example payload:
{"name":"cotton-products","title":"Cotton Items","description":"cotton products list here","sort":"id.desc","filters":"type_id=8,35,73,74&prop.Material=Cotton"}
The filters field cannot be empty.
The collection name is validated before the collection is created. Collection names are stored in lowercase.
A collection with the same name cannot already exist.
The sort field is optional.
Supported sort options are:
customid.descid.ascsale_discount.descsale_price.ascsale_price.descExample:
{"sort":"sale_price.desc"}
An invalid sort option results in HTTP 400.
A successful request returns the ID and generated sort key of the newly created collection.
Settings/collections is needed
| description | string Description of the collection. |
| filters required | string Product filter configuration for the collection. This field cannot be empty. |
| name required | string Name of the collection. |
| sort | string Enum: "custom" "id.desc" "id.asc" "sale_discount.desc" "sale_price.asc" "sale_price.desc" Sorting configuration for the collection. |
| title | string Title of the collection. |
{- "description": "cotton products list here",
- "filters": "type_id=8,35,73,74&prop.Material=Cotton",
- "name": "cotton-products",
- "sort": "id.desc",
- "title": "Cotton Items"
}{- "id": 12,
- "sort_key": "__eo-12__"
}Retrieves the current ecommerce customer review feature settings.
The response includes whether the review feature is live, the number of reviews pending approval, and the configured publish threshold when available.
When the review feature is not live, the response can also include the trial and purchase event expiration status.
If the type query parameter is set to unapproved, the API
returns the reviews pending approval instead of the review feature
settings.
Authentication and Settings/configure permission are required
for this API.
Settings/configure is needed
| type | string Optional response type. When set to |
{- "event_expires": "2026-08-25T12:00:00",
- "is_account_trial_ended": false,
- "is_event_expired": false,
- "is_live": false,
- "is_trial_expired": false,
- "pending_approval": 5,
- "publish_threshold": 3,
- "trial_start_date": "2026-08-15T10:00:00"
}Updates the ecommerce customer review feature settings.
The API supports starting the review feature trial, updating the review publish threshold, or initiating the purchase of the review feature.
The start_trial and purchase parameters are mutually exclusive.
When start_trial is provided, the trial start date is recorded if
a trial has not already been started.
When publish_threshold is provided, the minimum rating required
for a customer review to be automatically approved can be updated.
The value must be between 1 and 5.
When purchase is provided, an in-app purchase request is created
for the ecommerce customer review feature.
Authentication and Settings/configure permission are required
for this API.
Settings/configure is needed
| publish_threshold | integer [ 1 .. 5 ] Minimum review rating required for automatic approval. Must be between 1 and 5. |
{- "event_id": "123456",
- "expires": "2026-08-21T12:00:00"
}Deletes a review for the specified product.
For instagram and facebook reviews, the review is identified by
its url parameter.
For insite reviews, the review is identified by its index
parameter. When an authenticated customer does not provide an
index, the customer's own review for the specified item is used.
Authenticated customers can delete their own insite reviews.
Internal users must be administrators or have Settings -> configure
permission to delete reviews.
When an insite review is deleted, the product rating is updated
and the review count for the corresponding source is adjusted.
| item_id required | integer ID of the item for which the review is being deleted. |
| source required | string Enum: "insite" "instagram" "facebook" Source of the review to delete. |
| url | string URL of the review to delete. Required when the source is |
| index | integer Index of the |
{ }Retrieves reviews and review summary information for the specified product.
When the source parameter is not provided, the response contains
the total number of reviews and the review count for each supported
review source.
When source is provided, reviews for the specified source are
returned. The insite source supports pagination using the
next_page parameter and returns the authenticated customer's own
review separately when applicable.
For instagram and facebook sources, the response contains the
review URLs.
The optional variant_ids parameter can be used to retrieve reviews
for a specific variant. If not provided, the minimum variant ID is
used.
| item_id required | integer ID of the item for which reviews are being retrieved. |
| variant_ids | string Comma-separated list of variant IDs used to determine the item variant for which reviews are retrieved. |
| source | string Review source to retrieve. Supported sources include |
| totals | boolean Returns the review summary containing the total number of reviews and review counts by source. |
| next_page | integer Default: 0 Pagination cursor for retrieving the next set of reviews. Used when |
{- "next_page": null,
}Adds a new review for the specified product or updates an existing review.
Authenticated customers can submit only insite reviews. A new
review submitted by an authenticated customer requires a rating
and the customer must have previously purchased the product.
Reviews from instagram and facebook sources require review
content. Internal users can add or update reviews when they have
the required permissions.
If an existing insite review is being updated, the
insite_index parameter can be used to identify the review.
Reviews submitted by authenticated customers may be marked as unapproved when the rating is at or below the configured publishing threshold.
| item_id required | integer ID of the item for which the review is being added or updated. |
| source required | string Source of the review. Authenticated customers can submit only |
| content | string Review content. Required for |
| title | string Title of the review. |
| rating | number Rating given to the product. Required when an authenticated customer creates a new |
| name | string Name displayed with the review. Defaults to the authenticated customer's contact name when not provided. |
| customer_id | integer ID of the customer associated with the review. For authenticated customers, the authenticated customer ID is used. |
| insite_index | integer Index of an existing |
| posted_on | string Date on which the review was posted. If not provided, the current date is used. |
| approve | string Used by authorized internal users to approve an existing review. |
{- "index": 1
}