All project codes with filters — main operator grid.
Why this method exists
All project codes with filters — main operator grid.
When to use
Promo codes tab, reports, post-import QA.
Endpoint
POST /v1/internal/inventory-promo-codes/list
Authentication: JWT via Authorization: Bearer <token>. User must have project access and inventory_promo_codes permission.
Permission: inventory_promo_codes.view
Request example
{
"meta": { "requestId": "optional-uuid" },
"data": { "projectId": "a1b2…", "page": 1, "pageSize": 50, "status": "available", "supplierId": "c219ef09-…" }
}
Response example
{
"success": true,
"data": {
"items": [
{
"id": "code-uuid",
"codeDisplay": "QUEEN14-48AMU",
"status": "available",
"supplierName": "Промомед",
"validUntil": "2026-12-31T23:59:59Z"
}
],
"page": 1,
"pageSize": 50,
"totalCount": 125000
}
}
Errors
UNAUTHORIZED/ACCESS_DENIED— access deniedVALIDATION_ERROR— invalid bodyNOT_FOUND— resource not foundRATE_LIMIT_EXCEEDED(429) — rate limit
cURL
curl -X POST "https://api-external.promanta.ru/v1/internal/inventory-promo-codes/list" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_JWT" \
-d '{"data": { "projectId": "a1b2…", "page": 1, "pageSize": 50, "status": "available", "supplierId": "c219ef09-…" }}'