Skip to content
snapcasterDevelopers

Create a refund

POST/orders/{orderId}/refunds

The post-ship termination, a created and repeatable resource: legal from `shipped` or `delivered` only. `restock` is the seller’s required declaration that the physical units came back; it is never inferred and has no default. `lines` is the optional subset to refund (each sku at most once); omitted refunds every line’s full remaining quantity. An Order may be refunded line by line over time, and each Refund emits its own `order.refunded` event (plus, when `restock=true`, the compensating positive `inventory.adjusted`, per the Platform’s Subscription). A Refund identifies lines, not money amounts. Returns the post-refund Order.

When to use

Use this operation to create a refund.

Endpoint

POST /orders/{orderId}/refunds

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

FieldInTypeConstraintsMeaningExample
orderIdrequiredpathstringminimum length: 1The opaque public Order id (the webhook/poll `order_id`).ord_sandbox_01K4A8Y6D4QJH2N3P5R7S9T0VW

Request body (application/json)

FieldTypeConstraintsMeaningExample
restockrequiredbooleanNoneWhether fulfilled units return to On-hand inventory.true (generated)
linesarray of objectminimum items: 1The individual records carried by this request, response, or event.[ { "skuId": 1 } ] (generated)
lines[].skuIdrequiredintegerexclusive minimum: 0Sku Id for the surrounding lines item record.1 (generated)
lines[].quantityintegerexclusive minimum: 0The number of inventory units represented by this record.1 (generated)

Example

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

Generated cURL request - Sandbox: Generated request
curl --request POST \
--url 'https://api-sandbox.snapcaster.ca/api/v1/marketplace/orders/ord_sandbox_01K4A8Y6D4QJH2N3P5R7S9T0VW/refunds' \
--header "Authorization: Bearer $MARKETPLACE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"restock": true
}'

Response

201

The Refund was created; the body is the post-refund Order as the shared order body.

Generated Response 201: Generated response 201
{
"success": true,
"data": {
"order_id": "string",
"seller_id": 0,
"created_at": "string",
"currency": "string",
"customer": {
"name": "string",
"email": "string",
"shipping_address": {
"line1": "string",
"line2": "string",
"city": "string",
"province": "string",
"postal_code": "string",
"country": "string"
}
},
"lines": [
{
"sku_id": 0,
"product_id": 0,
"quantity": 0,
"unit_price": 0,
"name": "string",
"set": "string",
"condition": "string",
"external_ref": "string"
}
]
}
}
FieldTypeConstraintsMeaningExample
successrequiredbooleanallowed values: trueWhether the operation completed as requested.true (generated)
datarequiredobjectNoneThe operation or event payload.{ "order_id": "string", "seller_id": 0, "created_at": "string", "currency": "string", "customer": { "name": "string", "email": "string", "shipping_address": { "line1": "string", "line2": "string", "city": "string", "province": "string", "postal_code": "string", "country": "string" } }, "lines": [ { "sku_id": 0, "product_id": 0, "quantity": 0, "unit_price": 0, "name": "string", "set": "string", "condition": "string", "external_ref": "string" } ] } (generated)
data.order_idrequiredstringNoneSnapcaster order id; stable per Seller-order, the reconcile key (STABLE).string (generated)
data.seller_idrequiredintegerNoneRouting target: the Seller that owns the inbound API key (STABLE).0 (generated)
data.created_atrequiredstringNoneISO-8601 UTC instant the order was created (STABLE).string (generated)
data.currencyrequiredstringNoneISO 4217 currency code, e.g. CAD (STABLE).string (generated)
data.customerrequiredobjectNoneThe buyer identity and delivery snapshot frozen for the Order.{ "name": "string", "email": "string", "shipping_address": { "line1": "string", "line2": "string", "city": "string", "province": "string", "postal_code": "string", "country": "string" } } (generated)
data.customer.namerequiredstringNoneThe human-readable name of the resource.string (generated)
data.customer.emailrequiredstringNoneThe contact email for the person represented by this record.string (generated)
data.customer.shipping_addressrequiredobjectNoneThe delivery address snapshot frozen for the Order.{ "line1": "string", "line2": "string", "city": "string", "province": "string", "postal_code": "string", "country": "string" } (generated)
data.customer.shipping_address.line1requiredstringNoneThe primary street-address line.string (generated)
data.customer.shipping_address.line2requiredstring or nullNoneThe optional unit, suite, or secondary address line.string (generated)
data.customer.shipping_address.cityrequiredstringNoneThe municipality in the delivery address.string (generated)
data.customer.shipping_address.provincerequiredstringNoneThe Canadian province or territory in the delivery address.string (generated)
data.customer.shipping_address.postal_coderequiredstringNoneThe Canadian postal code in the delivery address.string (generated)
data.customer.shipping_address.countryrequiredstringNoneISO 3166-1 alpha-2 country code.string (generated)
data.linesrequiredarray of objectminimum items: 1One or more line snapshots (STABLE).[ { "sku_id": 0, "product_id": 0, "quantity": 0, "unit_price": 0, "name": "string", "set": "string", "condition": "string", "external_ref": "string" } ] (generated)
data.lines[].sku_idrequiredintegerNoneCanonical TCGplayer sku id (STABLE).0 (generated)
data.lines[].product_idrequiredintegerNoneCanonical TCGplayer product id (STABLE).0 (generated)
data.lines[].quantityrequiredintegerNoneThe number of inventory units represented by this record.0 (generated)
data.lines[].unit_pricerequiredintegerNoneInteger minor units (cents) in the order currency (STABLE).0 (generated)
data.lines[].namerequiredstringNoneDescriptive snapshot, frozen at order time (STABLE).string (generated)
data.lines[].setrequiredstringNoneThe card set or expansion.string (generated)
data.lines[].conditionrequiredstringNoneThe normalized condition assigned to the card.string (generated)
data.lines[].external_refrequiredstring or nullNoneEcho of the Seller's opaque listing ref; null if none (STABLE).string (generated)
data.lines[].languagestring or nullNoneThe language of the card printing.string (generated)
data.lines[].finishstring or nullNoneThe physical finish or foil treatment of the card.string (generated)
data.lines[].disclosuresobjectNoneProvenance, grading, and authenticity statements shown to the buyer.{ "image_source": "catalog", "condition_source": "seller_declared", "authenticity_source": "seller_attestation", "snapcaster_inspected": false, "snapcaster_graded": false, "snapcaster_authenticated": false, "grading_standard": "string", "declared_grade": "string", "buyer_protection": "string" } (generated)
data.lines[].disclosures.image_sourcerequiredstringallowed values: catalogWho supplied the product image shown to the buyer.catalog (generated)
data.lines[].disclosures.condition_sourcerequiredstringallowed values: seller_declaredWho assigned the displayed card condition.seller_declared (generated)
data.lines[].disclosures.authenticity_sourcerequiredstringallowed values: seller_attestationWho supplied the authenticity determination.seller_attestation (generated)
data.lines[].disclosures.snapcaster_inspectedrequiredbooleanallowed values: falseWhether Snapcaster physically inspected the card.false (generated)
data.lines[].disclosures.snapcaster_gradedrequiredbooleanallowed values: falseWhether Snapcaster assigned the displayed grade.false (generated)
data.lines[].disclosures.snapcaster_authenticatedrequiredbooleanallowed values: falseWhether Snapcaster authenticated the card.false (generated)
data.lines[].disclosures.grading_standardrequiredstringNoneThe grading standard used for the declared grade.string (generated)
data.lines[].disclosures.declared_graderequiredstring or nullNoneThe grade declared for the card under the named standard.string (generated)
data.lines[].disclosures.buyer_protectionrequiredstringNoneThe buyer-protection coverage attached to this offering.string (generated)
data.lines[].fulfillment_obligationobjectNoneThe exact item characteristics the Seller must fulfill.{ "sku": "exact", "printing": "exact", "language": "exact", "finish": "exact", "condition": "declared-or-better" } (generated)
data.lines[].fulfillment_obligation.skurequiredstringallowed values: exactThe stock-keeping identity for the exact card offering.exact (generated)
data.lines[].fulfillment_obligation.printingrequiredstringallowed values: exactThe exact card printing the Seller is obligated to supply.exact (generated)
data.lines[].fulfillment_obligation.languagerequiredstringallowed values: exactThe language of the card printing.exact (generated)
data.lines[].fulfillment_obligation.finishrequiredstringallowed values: exactThe physical finish or foil treatment of the card.exact (generated)
data.lines[].fulfillment_obligation.conditionrequiredstringallowed values: declared-or-betterThe normalized condition assigned to the card.declared-or-better (generated)
data.totalsobjectNoneOrder-level money rollup, integer minor units (cents) in the order currency: `grand_total = subtotal + shipping + tax`. When present, carries all four sums (STABLE).{ "subtotal": 0, "shipping": 0, "tax": 0, "grand_total": 0 } (generated)
data.totals.subtotalrequiredintegerNoneThe line-item total before shipping and tax, in minor currency units.0 (generated)
data.totals.shippingrequiredintegerNoneThe shipping charge or delivery details for the Order.0 (generated)
data.totals.taxrequiredintegerNoneThe tax total or breakdown applied to the Order.0 (generated)
data.totals.grand_totalrequiredintegerNoneThe complete Order total including shipping and tax, in minor currency units.0 (generated)
data.taxobjectNoneTax breakdown: one `{label, rate, amount}` line per applied tax. The whole block is absent exactly when there is no tax (absent if and only if `totals.tax` = 0) (STABLE).{ "lines": [ { "label": "string", "rate": 0, "amount": 0 } ] } (generated)
data.tax.linesrequiredarray of objectNoneThe individual records carried by this request, response, or event.[ { "label": "string", "rate": 0, "amount": 0 } ] (generated)
data.tax.lines[].labelrequiredstringNoneThe human-readable label for this entry.string (generated)
data.tax.lines[].raterequirednumberNoneThe decimal tax rate applied to the taxable amount.0 (generated)
data.tax.lines[].amountrequiredintegerNoneThe monetary amount in minor currency units.0 (generated)
data.shippingobjectNoneChosen shipping option: `method` is a plain free-text string (not an enum) and `cost` is integer minor units (cents), mirroring `totals.shipping` (STABLE).{ "method": "string", "cost": 0 } (generated)
data.shipping.methodrequiredstringNoneThe method used to carry out the surrounding action.string (generated)
data.shipping.costrequiredintegerNoneThe shipping cost in minor currency units.0 (generated)
data.buyer_notesstringNoneOptional free-text buyer note; absent when the buyer left none (STABLE).string (generated)
data.statusstringallowed values: accepted, shipped, delivered, cancelled, refundedThe Lifecycle state. Absent until the Order first transitions: an absent status means `created`, and an `order.created` delivery never carries it (STABLE).accepted (generated)
data.fulfillmentobjectNoneTracking block; present once Tracking has been attached at fulfillment (STABLE).{ "tracking_company": "string", "tracking_number": "string", "tracking_url": "string" } (generated)
data.fulfillment.tracking_companyrequiredstringNoneCarrier/company name, as the fulfiller entered it (STABLE).string (generated)
data.fulfillment.tracking_numberrequiredstringNoneCarrier tracking number (STABLE).string (generated)
data.fulfillment.tracking_urlrequiredstring or nullNoneTracking link; null if the fulfiller supplied none (STABLE).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.
404ORDER_NOT_FOUNDNo such Order for this Seller (`ORDER_NOT_FOUND`). A Seller-scoped miss (including another Seller’s order id) is always a 404, never a 403, so order ids don’t leak existence.Check the order_id against GET /orders for the authenticated Seller, then retry with that id.
422INVALID_TRANSITIONThe move violates the Lifecycle transition graph (`INVALID_TRANSITION`). For example, a backwards move, a pre-ship Refund, or a post-ship Cancellation.Read the Order again and submit only a legal next transition, using the dedicated cancellation or refund operation when applicable.

Operations

Concepts

Changelog

None.

Schema

Full schema details (87 fields)

Parameters

FieldInTypeConstraintsMeaningExample
orderIdrequiredpathstringminimum length: 1The opaque public Order id (the webhook/poll `order_id`).ord_sandbox_01K4A8Y6D4QJH2N3P5R7S9T0VW

Request

FieldTypeConstraintsMeaningExample
restockrequiredbooleanNoneWhether fulfilled units return to On-hand inventory.true (generated)
linesarray of objectminimum items: 1The individual records carried by this request, response, or event.[ { "skuId": 1 } ] (generated)
lines[].skuIdrequiredintegerexclusive minimum: 0Sku Id for the surrounding lines item record.1 (generated)
lines[].quantityintegerexclusive minimum: 0The number of inventory units represented by this record.1 (generated)

Response 201 (application/json)

FieldTypeConstraintsMeaningExample
successrequiredbooleanallowed values: trueWhether the operation completed as requested.true (generated)
datarequiredobjectNoneThe operation or event payload.{ "order_id": "string", "seller_id": 0, "created_at": "string", "currency": "string", "customer": { "name": "string", "email": "string", "shipping_address": { "line1": "string", "line2": "string", "city": "string", "province": "string", "postal_code": "string", "country": "string" } }, "lines": [ { "sku_id": 0, "product_id": 0, "quantity": 0, "unit_price": 0, "name": "string", "set": "string", "condition": "string", "external_ref": "string" } ] } (generated)
data.order_idrequiredstringNoneSnapcaster order id; stable per Seller-order, the reconcile key (STABLE).string (generated)
data.seller_idrequiredintegerNoneRouting target: the Seller that owns the inbound API key (STABLE).0 (generated)
data.created_atrequiredstringNoneISO-8601 UTC instant the order was created (STABLE).string (generated)
data.currencyrequiredstringNoneISO 4217 currency code, e.g. CAD (STABLE).string (generated)
data.customerrequiredobjectNoneThe buyer identity and delivery snapshot frozen for the Order.{ "name": "string", "email": "string", "shipping_address": { "line1": "string", "line2": "string", "city": "string", "province": "string", "postal_code": "string", "country": "string" } } (generated)
data.customer.namerequiredstringNoneThe human-readable name of the resource.string (generated)
data.customer.emailrequiredstringNoneThe contact email for the person represented by this record.string (generated)
data.customer.shipping_addressrequiredobjectNoneThe delivery address snapshot frozen for the Order.{ "line1": "string", "line2": "string", "city": "string", "province": "string", "postal_code": "string", "country": "string" } (generated)
data.customer.shipping_address.line1requiredstringNoneThe primary street-address line.string (generated)
data.customer.shipping_address.line2requiredstring or nullNoneThe optional unit, suite, or secondary address line.string (generated)
data.customer.shipping_address.cityrequiredstringNoneThe municipality in the delivery address.string (generated)
data.customer.shipping_address.provincerequiredstringNoneThe Canadian province or territory in the delivery address.string (generated)
data.customer.shipping_address.postal_coderequiredstringNoneThe Canadian postal code in the delivery address.string (generated)
data.customer.shipping_address.countryrequiredstringNoneISO 3166-1 alpha-2 country code.string (generated)
data.linesrequiredarray of objectminimum items: 1One or more line snapshots (STABLE).[ { "sku_id": 0, "product_id": 0, "quantity": 0, "unit_price": 0, "name": "string", "set": "string", "condition": "string", "external_ref": "string" } ] (generated)
data.lines[].sku_idrequiredintegerNoneCanonical TCGplayer sku id (STABLE).0 (generated)
data.lines[].product_idrequiredintegerNoneCanonical TCGplayer product id (STABLE).0 (generated)
data.lines[].quantityrequiredintegerNoneThe number of inventory units represented by this record.0 (generated)
data.lines[].unit_pricerequiredintegerNoneInteger minor units (cents) in the order currency (STABLE).0 (generated)
data.lines[].namerequiredstringNoneDescriptive snapshot, frozen at order time (STABLE).string (generated)
data.lines[].setrequiredstringNoneThe card set or expansion.string (generated)
data.lines[].conditionrequiredstringNoneThe normalized condition assigned to the card.string (generated)
data.lines[].external_refrequiredstring or nullNoneEcho of the Seller's opaque listing ref; null if none (STABLE).string (generated)
data.lines[].languagestring or nullNoneThe language of the card printing.string (generated)
data.lines[].finishstring or nullNoneThe physical finish or foil treatment of the card.string (generated)
data.lines[].disclosuresobjectNoneProvenance, grading, and authenticity statements shown to the buyer.{ "image_source": "catalog", "condition_source": "seller_declared", "authenticity_source": "seller_attestation", "snapcaster_inspected": false, "snapcaster_graded": false, "snapcaster_authenticated": false, "grading_standard": "string", "declared_grade": "string", "buyer_protection": "string" } (generated)
data.lines[].disclosures.image_sourcerequiredstringallowed values: catalogWho supplied the product image shown to the buyer.catalog (generated)
data.lines[].disclosures.condition_sourcerequiredstringallowed values: seller_declaredWho assigned the displayed card condition.seller_declared (generated)
data.lines[].disclosures.authenticity_sourcerequiredstringallowed values: seller_attestationWho supplied the authenticity determination.seller_attestation (generated)
data.lines[].disclosures.snapcaster_inspectedrequiredbooleanallowed values: falseWhether Snapcaster physically inspected the card.false (generated)
data.lines[].disclosures.snapcaster_gradedrequiredbooleanallowed values: falseWhether Snapcaster assigned the displayed grade.false (generated)
data.lines[].disclosures.snapcaster_authenticatedrequiredbooleanallowed values: falseWhether Snapcaster authenticated the card.false (generated)
data.lines[].disclosures.grading_standardrequiredstringNoneThe grading standard used for the declared grade.string (generated)
data.lines[].disclosures.declared_graderequiredstring or nullNoneThe grade declared for the card under the named standard.string (generated)
data.lines[].disclosures.buyer_protectionrequiredstringNoneThe buyer-protection coverage attached to this offering.string (generated)
data.lines[].fulfillment_obligationobjectNoneThe exact item characteristics the Seller must fulfill.{ "sku": "exact", "printing": "exact", "language": "exact", "finish": "exact", "condition": "declared-or-better" } (generated)
data.lines[].fulfillment_obligation.skurequiredstringallowed values: exactThe stock-keeping identity for the exact card offering.exact (generated)
data.lines[].fulfillment_obligation.printingrequiredstringallowed values: exactThe exact card printing the Seller is obligated to supply.exact (generated)
data.lines[].fulfillment_obligation.languagerequiredstringallowed values: exactThe language of the card printing.exact (generated)
data.lines[].fulfillment_obligation.finishrequiredstringallowed values: exactThe physical finish or foil treatment of the card.exact (generated)
data.lines[].fulfillment_obligation.conditionrequiredstringallowed values: declared-or-betterThe normalized condition assigned to the card.declared-or-better (generated)
data.totalsobjectNoneOrder-level money rollup, integer minor units (cents) in the order currency: `grand_total = subtotal + shipping + tax`. When present, carries all four sums (STABLE).{ "subtotal": 0, "shipping": 0, "tax": 0, "grand_total": 0 } (generated)
data.totals.subtotalrequiredintegerNoneThe line-item total before shipping and tax, in minor currency units.0 (generated)
data.totals.shippingrequiredintegerNoneThe shipping charge or delivery details for the Order.0 (generated)
data.totals.taxrequiredintegerNoneThe tax total or breakdown applied to the Order.0 (generated)
data.totals.grand_totalrequiredintegerNoneThe complete Order total including shipping and tax, in minor currency units.0 (generated)
data.taxobjectNoneTax breakdown: one `{label, rate, amount}` line per applied tax. The whole block is absent exactly when there is no tax (absent if and only if `totals.tax` = 0) (STABLE).{ "lines": [ { "label": "string", "rate": 0, "amount": 0 } ] } (generated)
data.tax.linesrequiredarray of objectNoneThe individual records carried by this request, response, or event.[ { "label": "string", "rate": 0, "amount": 0 } ] (generated)
data.tax.lines[].labelrequiredstringNoneThe human-readable label for this entry.string (generated)
data.tax.lines[].raterequirednumberNoneThe decimal tax rate applied to the taxable amount.0 (generated)
data.tax.lines[].amountrequiredintegerNoneThe monetary amount in minor currency units.0 (generated)
data.shippingobjectNoneChosen shipping option: `method` is a plain free-text string (not an enum) and `cost` is integer minor units (cents), mirroring `totals.shipping` (STABLE).{ "method": "string", "cost": 0 } (generated)
data.shipping.methodrequiredstringNoneThe method used to carry out the surrounding action.string (generated)
data.shipping.costrequiredintegerNoneThe shipping cost in minor currency units.0 (generated)
data.buyer_notesstringNoneOptional free-text buyer note; absent when the buyer left none (STABLE).string (generated)
data.statusstringallowed values: accepted, shipped, delivered, cancelled, refundedThe Lifecycle state. Absent until the Order first transitions: an absent status means `created`, and an `order.created` delivery never carries it (STABLE).accepted (generated)
data.fulfillmentobjectNoneTracking block; present once Tracking has been attached at fulfillment (STABLE).{ "tracking_company": "string", "tracking_number": "string", "tracking_url": "string" } (generated)
data.fulfillment.tracking_companyrequiredstringNoneCarrier/company name, as the fulfiller entered it (STABLE).string (generated)
data.fulfillment.tracking_numberrequiredstringNoneCarrier tracking number (STABLE).string (generated)
data.fulfillment.tracking_urlrequiredstring or nullNoneTracking link; null if the fulfiller supplied none (STABLE).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 404 (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 422 (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)