Part of the response of GET /orders/{orderId}/addition-requests.

Type: object

Example

Schema example: from the GET /orders/{orderId}/addition-requests response
{
  "success": true,
  "data": {
    "eligibility": {
      "eligible": true,
      "reasons": []
    },
    "requests": [
      {
        "request_ref": "oar_5c1e9a7f3b2d48e6a0f4c8d1b7e3a925",
        "status": "pending",
        "lines": [
          {
            "sku_id": 14602,
            "product_id": 86,
            "quantity": 2,
            "name": "Abyssal Nightstalker",
            "set_name": "Portal Second Age",
            "condition": "Near Mint",
            "category_name": "Magic: The Gathering",
            "language": "English",
            "finish": "Normal",
            "collector_number": null,
            "rarity": "Uncommon"
          }
        ],
        "note": "Two more for my sideboard, please",
        "support_case_id": null,
        "created_at": "2026-09-04T19:01:12.000Z",
        "resolved_by_party": null,
        "resolved_at": null,
        "resolution_note": null
      }
    ]
  }
}

Fields

success boolean required

Whether the operation completed as requested.

Constraints: allowed values: true Example true

data object required

The operation or event payload.

Show child fieldsHide child fields
data.eligibility OrderAdditionEligibility required
Show child fieldsHide child fields
data.eligibility.eligible boolean required

Example true

data.eligibility.reasons array of string required

EVERY reason this order cannot carry an addition, not just the first, so a client can say all of it at once. feature_disabled: additions are not open in this environment yet. guest_order: the order has no signed-in buyer, so nobody can approve a later payment. handoff_checkout: the checkout happened on the seller’s own store, so Snapcaster never captured the original payment. platform_incompatible: the seller fulfils through a connected platform whose contract has not yet been shown to consume additions correctly. order_not_active: the order has shipped, been delivered, been fully cancelled or been refunded - additional cards need a new order (a PARTIALLY cancelled order is still active and still eligible). terms_missing: the payment that captured the order cannot state its frozen fee terms, so an addition has nothing to be priced from. Empty when eligible is true.

Field example[]
data.requests OrderAdditionRequest[] required

The order’s whole ask history, newest first.

Show child fieldsHide child fields
data.requests[].request_ref string required

The opaque public request id (oar_…) - the {requestRef} of the withdraw and decline paths.

Example oar_5c1e9a7f3b2d48e6a0f4c8d1b7e3a925

data.requests[].status string required

pending is the one open state. withdrawn is the buyer taking their own ask back; declined is the seller’s answer; offered means the seller ANSWERED it with a payable offer, whose own lifecycle carries on under addition-offers and which names this request. All three endings are one-way and change nothing else about the order.

Constraints: allowed values: pending, withdrawn, declined, offered Example pending

data.requests[].lines OrderAdditionRequestLine[] required

The cards asked for, with enough canonical catalog identity frozen at the ask to say which PRINTING was meant - condition, finish, language, collector number - so a later catalog correction cannot change what was understood.

Show child fieldsHide child fields
data.requests[].lines[].sku_id integer required

The exact printing asked for. This is the identity; everything beside it is frozen from it.

Example 14602

data.requests[].lines[].product_id integer required

See Canonical catalog in Core concepts.

Example 86

data.requests[].lines[].quantity integer required

The number of units.

Example 2

data.requests[].lines[].name string or null required

Example Abyssal Nightstalker

data.requests[].lines[].set_name string or null required

Example Portal Second Age

data.requests[].lines[].condition string or null required

The normalized condition assigned to the card.

Example Near Mint

data.requests[].lines[].category_name string or null required

Example Magic: The Gathering

data.requests[].lines[].language string or null required

The language of the card printing.

Example English

data.requests[].lines[].finish string or null required

The catalog’s printing, under the name the order line snapshot uses.

Example Normal

data.requests[].lines[].collector_number string or null required

Example null

data.requests[].lines[].rarity string or null required

The rarity assigned to the card printing.

Example Uncommon

data.requests[].note string or null required

The buyer’s own words beside the ask; null when none was given.

Example Two more for my sideboard, please

data.requests[].support_case_id integer or null required

The support conversation the ask came out of, when there was one; null otherwise.

Example null

data.requests[].created_at string required

Example 2026-09-04T19:01:12.000Z

data.requests[].resolved_by_party string or null required

Who ended the ask - buyer on a withdrawal, seller on a decline. Null while pending.

Constraints: allowed values: buyer, seller, operator, system, null Example null

data.requests[].resolved_at string or null required

Example null

data.requests[].resolution_note string or null required

The seller’s short reason on a decline, shown to the buyer beside the ending.

Example null

Used by