Skip to content
snapcasterDevelopers

Soft-delete listings

DELETE/listings

Soft-delete the given skus for the Seller. Idempotent: deleting an unlisted sku is reported applied.

When to use

Use this operation to soft-delete listings.

Endpoint

DELETE /listings

EnvironmentBase URL
Sandboxhttps://api-sandbox.snapcaster.ca/api/v1/marketplace
Productionhttps://api.snapcaster.ca/api/v1/marketplace
Authentication
  • marketplaceApiKey - http bearer. Seller-scoped Marketplace API key, presented as `Authorization: Bearer mp_{sellerCode}_{hex}`. The `mp_{sellerCode}_` prefix identifies the Seller; the trailing hex is the secret. Generated by the Seller and pasted into its Platform.

Request

No parameters.

Request body (application/json)

FieldTypeConstraintsMeaningExample
skuIdsrequiredarray of integerminimum items: 1; maximum items: 1000Sku Ids supplied to or returned by this operation.[ 1 ] (generated)

Example

Sandbox is the default. These requests use the contract's canonical field examples.

Generated cURL request - Sandbox: Generated request
curl --request DELETE \
--url 'https://api-sandbox.snapcaster.ca/api/v1/marketplace/listings' \
--header "Authorization: Bearer $MARKETPLACE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"skuIds": [
1
]
}'

Response

200

Per-item multi-status results.

Generated Response 200: Generated response 200
{
"success": true,
"data": {
"results": [
{
"skuId": 0,
"op": "upsert",
"status": "applied"
}
]
}
}
FieldTypeConstraintsMeaningExample
successrequiredbooleanallowed values: trueWhether the operation completed as requested.true (generated)
datarequiredobjectNoneThe operation or event payload.{ "results": [ { "skuId": 0, "op": "upsert", "status": "applied" } ] } (generated)
data.resultsrequiredarray of objectNoneThe outcome recorded for each submitted item.[ { "skuId": 0, "op": "upsert", "status": "applied" } ] (generated)
data.results[].skuIdrequiredintegerNoneSku Id for the surrounding results item record.0 (generated)
data.results[].oprequiredstringallowed values: upsert, deleteThe write operation to apply to this item.upsert (generated)
data.results[].statusrequiredstringallowed values: applied, unmatched, rejectedPer-item outcome. `unmatched` corresponds to the public per-item code `UNMATCHED` (persisted but not in the Canonical Catalog); `rejected` corresponds to `REJECTED` (failed validation, not persisted; see `reason`).applied (generated)
data.results[].reasonstringNoneWhy the item was rejected; present only when status is "rejected".string (generated)
data.results[].externalRefstringNoneEcho of the pushed external_ref, when one was supplied.string (generated)

Errors

StatusCodeMeaningDo this
400INVALID_REQUESTThe request failed validation (`INVALID_REQUEST`).Correct the fields named in the error details, then retry the request.
401UNAUTHORIZEDMissing or invalid Marketplace API key (`UNAUTHORIZED`).Send the Marketplace API key for this Seller as a Bearer token, then retry.
409SELLER_SOURCE_EXCLUSIVEThe authenticated Seller’s declared inventory source is not `platform` (`SELLER_SOURCE_EXCLUSIVE`). Listing writes through the integration API are reserved for platform-source Sellers; sources are exclusive and never mixed.Use the Seller’s declared inventory source, or ask Snapcaster to move the Seller to the platform source.
413BATCH_TOO_LARGEThe request carried more than the 1,000-item per-request cap (`BATCH_TOO_LARGE`).Split the write into batches of at most 1,000 items and retry each batch.

Operations

Concepts

Changelog

Schema

Full schema details (29 fields)

Parameters

None.

Request

FieldTypeConstraintsMeaningExample
skuIdsrequiredarray of integerminimum items: 1; maximum items: 1000Sku Ids supplied to or returned by this operation.[ 1 ] (generated)

Response 200 (application/json)

FieldTypeConstraintsMeaningExample
successrequiredbooleanallowed values: trueWhether the operation completed as requested.true (generated)
datarequiredobjectNoneThe operation or event payload.{ "results": [ { "skuId": 0, "op": "upsert", "status": "applied" } ] } (generated)
data.resultsrequiredarray of objectNoneThe outcome recorded for each submitted item.[ { "skuId": 0, "op": "upsert", "status": "applied" } ] (generated)
data.results[].skuIdrequiredintegerNoneSku Id for the surrounding results item record.0 (generated)
data.results[].oprequiredstringallowed values: upsert, deleteThe write operation to apply to this item.upsert (generated)
data.results[].statusrequiredstringallowed values: applied, unmatched, rejectedPer-item outcome. `unmatched` corresponds to the public per-item code `UNMATCHED` (persisted but not in the Canonical Catalog); `rejected` corresponds to `REJECTED` (failed validation, not persisted; see `reason`).applied (generated)
data.results[].reasonstringNoneWhy the item was rejected; present only when status is "rejected".string (generated)
data.results[].externalRefstringNoneEcho of the pushed external_ref, when one was supplied.string (generated)

Error 400 (application/json)

FieldTypeConstraintsMeaningExample
successrequiredbooleanallowed values: falseWhether the operation completed as requested.false (generated)
errorrequiredobjectNoneStructured error information returned when the request cannot be completed.{ "code": "UNAUTHORIZED", "message": "string" } (generated)
error.coderequiredstringallowed values: UNAUTHORIZED, INVALID_REQUEST, UNSUPPORTED_API_VERSION, SELLER_SOURCE_EXCLUSIVE, BATCH_TOO_LARGE, RATE_LIMITED, ORDER_NOT_FOUND, SELLER_NOT_FOUND, INVALID_TRANSITION, CHECKOUT_IDEMPOTENCY_KEY_REUSED, CHECKOUT_MANUAL_SELLER_UNSUPPORTED, CHECKOUT_SELF_PURCHASE_NOT_ALLOWED, CHECKOUT_SELLER_UNAVAILABLE, CHECKOUT_NOT_FOUND, FEATURE_DISABLEDStable public error code the Platform can branch on.UNAUTHORIZED (generated)
error.messagerequiredstringNoneA human-readable explanation of the result.string (generated)
error.detailsunknownNoneAdditional structured context for diagnosing the result.{} (generated)

Error 401 (application/json)

FieldTypeConstraintsMeaningExample
successrequiredbooleanallowed values: falseWhether the operation completed as requested.false (generated)
errorrequiredobjectNoneStructured error information returned when the request cannot be completed.{ "code": "UNAUTHORIZED", "message": "string" } (generated)
error.coderequiredstringallowed values: UNAUTHORIZED, INVALID_REQUEST, UNSUPPORTED_API_VERSION, SELLER_SOURCE_EXCLUSIVE, BATCH_TOO_LARGE, RATE_LIMITED, ORDER_NOT_FOUND, SELLER_NOT_FOUND, INVALID_TRANSITION, CHECKOUT_IDEMPOTENCY_KEY_REUSED, CHECKOUT_MANUAL_SELLER_UNSUPPORTED, CHECKOUT_SELF_PURCHASE_NOT_ALLOWED, CHECKOUT_SELLER_UNAVAILABLE, CHECKOUT_NOT_FOUND, FEATURE_DISABLEDStable public error code the Platform can branch on.UNAUTHORIZED (generated)
error.messagerequiredstringNoneA human-readable explanation of the result.string (generated)
error.detailsunknownNoneAdditional structured context for diagnosing the result.{} (generated)

Error 409 (application/json)

FieldTypeConstraintsMeaningExample
successrequiredbooleanallowed values: falseWhether the operation completed as requested.false (generated)
errorrequiredobjectNoneStructured error information returned when the request cannot be completed.{ "code": "UNAUTHORIZED", "message": "string" } (generated)
error.coderequiredstringallowed values: UNAUTHORIZED, INVALID_REQUEST, UNSUPPORTED_API_VERSION, SELLER_SOURCE_EXCLUSIVE, BATCH_TOO_LARGE, RATE_LIMITED, ORDER_NOT_FOUND, SELLER_NOT_FOUND, INVALID_TRANSITION, CHECKOUT_IDEMPOTENCY_KEY_REUSED, CHECKOUT_MANUAL_SELLER_UNSUPPORTED, CHECKOUT_SELF_PURCHASE_NOT_ALLOWED, CHECKOUT_SELLER_UNAVAILABLE, CHECKOUT_NOT_FOUND, FEATURE_DISABLEDStable public error code the Platform can branch on.UNAUTHORIZED (generated)
error.messagerequiredstringNoneA human-readable explanation of the result.string (generated)
error.detailsunknownNoneAdditional structured context for diagnosing the result.{} (generated)

Error 413 (application/json)

FieldTypeConstraintsMeaningExample
successrequiredbooleanallowed values: falseWhether the operation completed as requested.false (generated)
errorrequiredobjectNoneStructured error information returned when the request cannot be completed.{ "code": "UNAUTHORIZED", "message": "string" } (generated)
error.coderequiredstringallowed values: UNAUTHORIZED, INVALID_REQUEST, UNSUPPORTED_API_VERSION, SELLER_SOURCE_EXCLUSIVE, BATCH_TOO_LARGE, RATE_LIMITED, ORDER_NOT_FOUND, SELLER_NOT_FOUND, INVALID_TRANSITION, CHECKOUT_IDEMPOTENCY_KEY_REUSED, CHECKOUT_MANUAL_SELLER_UNSUPPORTED, CHECKOUT_SELF_PURCHASE_NOT_ALLOWED, CHECKOUT_SELLER_UNAVAILABLE, CHECKOUT_NOT_FOUND, FEATURE_DISABLEDStable public error code the Platform can branch on.UNAUTHORIZED (generated)
error.messagerequiredstringNoneA human-readable explanation of the result.string (generated)
error.detailsunknownNoneAdditional structured context for diagnosing the result.{} (generated)