GET /listings

Export the seller's stored inventory for audit or reconciliation. Results are ordered by (updated_at, id) ascending and use keyset pagination. Follow nextCursor until it is null.

Example

These examples send requests to the sandbox.

Generated cURL request - Sandbox
curl --request GET \
  --url 'https://api-sandbox.snapcaster.ca/api/v1/marketplace/listings' \
  --header "Authorization: Bearer $MARKETPLACE_API_KEY"
Generated Response 200: Generated response 200
{
  "success": true,
  "data": {
    "items": [
      {
        "id": 0,
        "skuId": 0,
        "productId": 0,
        "matchStatus": "matched",
        "quantity": 0,
        "available": 0,
        "price": 0,
        "externalRef": "string",
        "browsable": true,
        "deletedAt": "2026-01-01T00:00:00.000Z",
        "updatedAt": "2026-01-01T00:00:00.000Z",
        "asOf": "2026-01-01T00:00:00.000Z"
      }
    ],
    "nextCursor": "string"
  }
}

Endpoint

EnvironmentURL
Sandboxhttps://api-sandbox.snapcaster.ca/api/v1/marketplace/listings
Productionhttps://api.snapcaster.ca/api/v1/marketplace/listings
Authentication
  • marketplaceApiKey - http bearer. Send the seller's marketplace API key as Authorization: Bearer mp_{sellerCode}_{hex}. The mp_{sellerCode}_ prefix identifies the seller; the trailing hex is the secret. The seller generates the key and supplies it to your platform.

Request

Query parameters

limit integer

The maximum number of records requested for this page.

Constraints: exclusive minimum: 0; maximum: 1000

cursor string

The opaque continuation token for the next page.

Constraints: minimum length: 1

updated_since string

Return only records updated after this instant.

Constraints: format: date-time

include_deleted string

Whether soft-deleted records are included in the export.

Constraints: allowed values: true, false

Headers

X-Snapcaster-Api-Version string

Override the platform pin for this request only. Webhook versions and the platform pin do not change.

Constraints: allowed values: 2026-10 Example 2026-10

Response

200

A page of listings.

Response body: ListingExportPageResponse

success boolean required

Whether the operation completed as requested.

Constraints: allowed values: true

data object required

The operation or event payload.

Show child fieldsHide child fields
data.items ListingExportItem[] required

The records included in this page or batch.

Show child fieldsHide child fields
data.items[].id integer required

Snapcaster's id for the listing, the listing_id a change request's substitute names. A fulfillment report you file names its substitute by substituteSkuId, not by this id.

data.items[].skuId integer required

See Canonical catalog in Core concepts.

data.items[].productId integer required

See Canonical catalog in Core concepts.

data.items[].matchStatus string required

See Matched and unmatched in Core concepts.

Constraints: allowed values: matched, unmatched

data.items[].quantity integer required

The on-hand quantity supplied by the platform, as stored.

data.items[].available integer required

On-hand minus outstanding committed holds, with a minimum of zero. Calculated when read; equals quantity when there are no holds.

data.items[].price integer required

Integer minor units (cents) in the seller’s currency.

data.items[].externalRef string or null required

See Listing in Core concepts.

data.items[].browsable boolean required

Whether this listing currently passes every browse gate. See Browse readiness in Core concepts.

data.items[].deletedAt string or null required

Soft-delete timestamp, or null if live.

Constraints: format: date-time

data.items[].updatedAt string required

Constraints: format: date-time

data.items[].asOf string or null required

See Send ordered listing snapshots in Core concepts.

Constraints: format: date-time

data.nextCursor string or null required

Opaque cursor for the next page; null on the last page.

Errors

Errors return a MarketplaceError body, except HTTP 500 (ApiError). Error codes explains both error bodies and lists every code.

  • 400 INVALID_REQUEST UNSUPPORTED_API_VERSION

    The request failed validation (INVALID_REQUEST). Unknown or retired API-version override (UNSUPPORTED_API_VERSION).

    Do this: Correct the fields named in the error details, then retry the request. For UNSUPPORTED_API_VERSION, choose a supported version from the API versioning guide.

  • 401 UNAUTHORIZED

    Missing or invalid marketplace API key (UNAUTHORIZED).

    Do this: Send the marketplace API key for this seller as a Bearer token, then retry.

  • 500 INTERNAL_ERROR

    An unexpected failure (INTERNAL_ERROR).

    Do this: Retry with bounded retries and jitter. If the failure persists, contact Snapcaster with the X-Correlation-ID response header.