List queue entries

get/v1/datasets/{datasetId}/items/queue

Returns a page of the dataset's ingest queue, newest first, so you can follow the progress of an upload or a store sync. Entries in every status except archived are included; there is no status filter on this endpoint, so filter client-side.

Each entry carries the raw product data you uploaded, its processing status, and — once a worker has touched it — a worker block with logs and, on failure, the reason.

page and limit are validated, not clamped: a limit above 200 is rejected. Both are read with integer parsing — decimals are truncated, trailing characters ignored, and a value with no leading digits is rejected.

Private keyapi.v1.datasets.items.queue.listNo demo

Path parameters

1
datasetIdstring (uuid)required

The dataset's id, as returned when it was created.

Query parameters

2
pageinteger

1-based page number. Non-numeric values are rejected.

default: 1min: 1
limitinteger

Entries per page. Values above 200 are rejected with a 422 rather than clamped.

default: 10min: 1max: 200

Response

200A page of queue entries.
array<DatasetItemQueueEntry>required

Queue entries on this page, newest first.

itemIdstring (uuid)required

Queue entry id, assigned at upload. The processed DatasetItem reuses it.

e.g. "8b0a1b62-7c2a-4b7f-9e2c-0f3a9b1f0c11"
organizationIdstring (uuid)required

Owning organization.

e.g. "0a2c1f4e-5b6d-7e8f-9012-3456789abcde"
datasetIdstring (uuid)required

Target dataset.

e.g. "c9b3c6c0-9b0f-4f42-bf3f-2b7a6b1b9d31"
statusstringrequired

Processing state.

One ofpendingprocessingpartial_updatecompletefailedarchived
e.g. "pending"
QueueWorkerState

Processing bookkeeping. Created with an empty logs list at upload; the other sub-fields appear once a worker or sync sets them.

disableGenerativeAssetsboolean

Whether AI thumbnails are skipped. Always true at present because generative assets are disabled platform-wide.

default: truee.g. true
forceFullProcessboolean

When true the worker runs the full AI pipeline even if the SKU already exists as a processed item. Set internally by store syncs.

default: falsee.g. false
IngestProductrequired

The raw product shape accepted by the upload endpoint and stored on the queue entry as data. It mirrors a Shopify product export. Every field listed is required except gender. description and productType may be empty strings; name, handle and sku must be non-empty (an empty value passes field validation but fails at the database with a 500). The three date fields must be parseable and are normalised to ISO 8601 UTC on the way in.

versionnumberrequired

Ingest pipeline version the entry will be processed with.

e.g. 1
createdAtstring (date-time)required

When the entry was queued.

e.g. "2025-03-04T18:19:58.120Z"
updatedAtstring (date-time)required

Last status or worker change.

e.g. "2025-03-04T18:19:58.120Z"
ItemPaginationrequired

Page metadata returned by the item and queue list endpoints. There is no page count; iterate while hasMore is true.

pageintegerrequired

The page that was returned (1-based).

e.g. 1
limitintegerrequired

The page size that was applied.

e.g. 10
totalintegerrequired

Total number of records matching the listing.

e.g. 1284
hasMorebooleanrequired

Whether page + 1 would return at least one record.

e.g. true

Errors

22

Every error is JSON with a single error string unless noted. Match on the status code; the message is for humans.

401
Organization not found. Please verify the organizationId.

The organization encoded in the API key no longer exists.

404
Dataset not found for this organization.

No dataset with this datasetId belongs to the key's organization.

422
Page must be an integer greater than or equal to 1.

page is 0, negative, or not a number.

422
Limit must be an integer greater than or equal to 1.

limit is 0, negative, or not a number.

422
Limit cannot exceed 200 items per request.

limit is greater than 200.

curl -X GET "https://stylor.ai/api/v1/datasets/YOUR_DATASET_ID/items/queue" \
  -H "Authorization: Bearer $STYLOR_API_KEY"
Response · 200
{
  "items": [
    {
      "itemId": "8b0a1b62-7c2a-4b7f-9e2c-0f3a9b1f0c11",
      "organizationId": "0a2c1f4e-5b6d-7e8f-9012-3456789abcde",
      "datasetId": "c9b3c6c0-9b0f-4f42-bf3f-2b7a6b1b9d31",
      "status": "complete",
      "worker": {
        "logs": [
          {
            "type": "info",
            "message": "Claimed by worker w-7f2a",
            "createdAt": "2025-03-04T18:20:03.001Z"
          },
          {
            "type": "info",
            "message": "Completed by worker w-7f2a",
            "createdAt": "2025-03-04T18:22:41.900Z"
          }
        ],
        "lockedBy": null,
        "lockedAt": null
      },
      "disableGenerativeAssets": true,
      "forceFullProcess": false,
      "data": {
        "name": "Classic Crew Tee",
        "handle": "classic-crew-tee",
        "description": "<p>A heavyweight organic cotton tee with a relaxed fit.</p>",
        "publishedAt": "2024-11-02T09:15:00.000Z",
        "createdAt": "2024-11-02T09:15:00.000Z",
        "updatedAt": "2025-02-10T12:00:00.000Z",
        "productType": "T-Shirts",
        "sku": "A1A2P-BB2J",
        "price": 49,
        "tags": [
          "organic",
          "basics"
        ],
        "variants": [
          {
            "sku": "A1A2P-BB2J-M",
            "name": "Medium",
            "available": true,
            "price": 49,
            "createdAt": "2024-11-02T09:15:00.000Z",
            "updatedAt": "2025-02-10T12:00:00.000Z",
            "productId": "8412345678901"
          }
        ],
        "images": [
          {
            "src": "https://cdn.shopify.com/s/files/1/0001/products/tee-front.jpg"
          }
        ],
        "options": [
          {
            "name": "Size",
            "values": [
              "Medium",
              "Large"
            ]
          }
        ]
      },
      "version": 1,
      "createdAt": "2025-03-04T18:19:58.120Z",
      "updatedAt": "2025-03-04T18:22:41.900Z"
    }
  ],
  "pagination": {
    "page": 1,
    "limit": 10,
    "total": 1,
    "hasMore": false
  }
}