industry-department-solutions
latest
false
Supply Chain & Retail Solutions API guide
- Overview
- API Resources
SKU Calendar API resource defining the active date range for a product-location combination, controlling which SKUs are included in replenishment planning.
Overview
The SKU Calendar resource defines the active date range during which a product-location combination (SKU) is considered live and eligible for replenishment planning. Each record specifies a start and end date for the SKU's activity window, enabling the system to include or exclude specific product-location pairs from planning runs based on their lifecycle status.
Resource Endpoint
/api/v2/ingest/object/{prefix}SKU_CALENDAR{suffix}
/api/v2/ingest/object/{prefix}SKU_CALENDAR{suffix}
Supported Methods
| Method | Return Type | Description |
|---|---|---|
| POST | Response | Ingest (create/update) SKU Calendar records via UPSERT operation |
Request Headers
| Header | Required | Description |
|---|---|---|
Authorization | Yes | Your Personal Access Token (PAT) from platform.peak.ai |
Content-Type | Yes | Must be application/json |
Properties
Primary Keys
- product_id (string) - Unique identifier for the product. Part of the composite primary key.
- location_id (string) - Unique identifier for the location. Part of the composite primary key.
Attributes
| Attribute | Data Type | Required | Description |
|---|---|---|---|
product_id | string | Yes | Unique identifier for the product |
location_id | string | Yes | Unique identifier for the location |
start_date | date | No | The date from which the SKU is considered active at this location, in YYYY-MM-DD format |
end_date | date | No | The date on which the SKU becomes inactive at this location, in YYYY-MM-DD format |
Relationships
Outbound References
The sku_calendar resource does not reference any downstream resources as foreign keys.
Inbound References
The following resources are referenced by sku_calendar:
- products —
product_id→products.product_id - locations —
location_id→locations.location_id
JSON Representation
{
"solutionName": "INV_OOTB",
"data": [
{
"product_id": "PROD-001",
"location_id": "LOC-001",
"start_date": "2025-01-01",
"end_date": "2025-12-31"
}
],
"operationType": "UPSERT"
}
{
"solutionName": "INV_OOTB",
"data": [
{
"product_id": "PROD-001",
"location_id": "LOC-001",
"start_date": "2025-01-01",
"end_date": "2025-12-31"
}
],
"operationType": "UPSERT"
}
Example Request
curl -X POST \
'https://ingestion.peak.ai/api/v2/objects/INV_SKU_CALENDAR_OOTB' \
-H 'Authorization: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"solutionName": "INV_OOTB",
"data": [
{
"product_id": "PROD-001",
"location_id": "LOC-001",
"start_date": "2025-01-01",
"end_date": "2025-12-31"
}
],
"operationType": "UPSERT"
}'
curl -X POST \
'https://ingestion.peak.ai/api/v2/objects/INV_SKU_CALENDAR_OOTB' \
-H 'Authorization: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"solutionName": "INV_OOTB",
"data": [
{
"product_id": "PROD-001",
"location_id": "LOC-001",
"start_date": "2025-01-01",
"end_date": "2025-12-31"
}
],
"operationType": "UPSERT"
}'
Important Notes
product_idandlocation_idtogether form the composite primary key. Both fields must be provided on every record.start_dateandend_dateare optional. When omitted, the SKU is assumed to be permanently active or the activity window is managed externally.- Dates must be provided in
YYYY-MM-DDformat. product_idmust correspond to an existing record in the Products resource.location_idmust correspond to an existing record in the Locations resource.- Records are ingested via UPSERT: an existing record with matching primary keys will be updated; otherwise a new record is inserted.