API reference · Types
BrowseProductOffer
Part of the response of GET /products/{productId}.
Type: object
Example
{
"lane": "native",
"productId": 86,
"sellerId": 42,
"storeSlug": null,
"variantId": null,
"skuId": 14602,
"sellerName": "Sandbox Cards",
"condition": "NM",
"language": "EN",
"finish": "Normal",
"isSealed": false,
"price": 24.99,
"available": 3,
"checkoutMode": "express",
"salesCount": 18,
"sellerCode": "sandbox-cards",
"reviewScore": {
"score": 4.93,
"count": 15
},
"poBoxDelivery": {
"status": "available"
},
"disclosures": {
"imageSource": "catalog",
"conditionSource": "seller_declared",
"authenticitySource": "seller_attestation",
"snapcasterInspected": false,
"snapcasterGraded": false,
"snapcasterAuthenticated": false,
"gradingStandard": "snapcaster-magic-v1",
"declaredGrade": "Near Mint",
"buyerProtection": "magic-grade-and-authenticity"
},
"fulfillmentObligation": {
"sku": "exact",
"printing": "exact",
"language": "exact",
"finish": "exact",
"condition": "declared-or-better"
}
}Fields
lanestring requiredThe source of the offer:
nativefor a marketplace seller's listing, orhandofffor a handoff store's synced single. Use this field to choose the cart-line identifiers and determine whether Snapcaster handles the sale.Constraints: allowed values:
native,handoffExamplenativeproductIdinteger requiredSee Canonical catalog in Core concepts.
Example
86sellerIdinteger or null requiredThe offering seller id. Combine it with
skuIdto identify a native cart line. Null for ahandoffoffer, which has no seller record.Example
42storeSlugstring or null requiredThe handoff store’s slug - its stable identity across the cart, the quote and the permalink.
nullon anativeoffer.Example
nullvariantIdinteger or null requiredThe Shopify variant this handoff offer is for; with
storeSlugit is the handoff cart-line key.nullon anativeoffer.Example
nullskuIdinteger requiredThe canonical TCGplayer SKU id. A native cart line uses
sellerIdandskuId; a handoff cart line usesstoreSlugandvariantId.Example
14602sellerNamestring or null requiredThe display name of the seller or handoff store. Use
sellerCodeorstoreSlugfor links and identifiers.Example
Sandbox Cardsconditionstring or null requiredThe normalized condition assigned to the card.
Example
NMlanguagestring or null requiredThe language of the card printing.
Example
ENfinishstring or null requiredThe physical finish or foil treatment of the card.
Example
NormalisSealedboolean requiredTrue when the canonical SKU condition is
Unopened; matches the product grid classification.Example
falsepricenumber requiredOffer price in dollars as a decimal amount.
Example
24.99availableinteger requiredAvailable stock: on-hand minus committed units.
Example
3checkoutModestring or null requiredWhere the buyer checks out:
expresson Snapcaster, ormanualon the seller's own site. Null for a legacy search record indexed before this field existed.Constraints: allowed values:
express,manual,nullExampleexpresssalesCountinteger or null requiredThe number of paid orders for an
expressstore, calculated for each request. Zero for a store with no sales. Null for amanualstore, whose orders are created outside Snapcaster; omit the sales count from its display.Example
18sellerCodestring or null requiredThe store's public handle for links to
/marketplace/sellers/{sellerCode}. Read from the database on each request. Null if the store has no directory row; the offer is still returned.Example
sandbox-cardsreviewScoreReviewrequiredScore The review score and the number of ratings used to calculate it. Display both so readers can judge the sample size. Calculated for each request. A store with no reviews returns
{ score: null, count: 0 }, as does amanualstore, which cannot receive reviews in v1. Used on the seller page and product offers.Show child fieldsHide child fields
reviewScore.number or null requiredscore The mean of current, non-hidden ratings, rounded to two decimals. Null when the store has no reviews.
Example
4.93reviewScore.integer requiredcount The number of current, non-hidden reviews included in the mean.
Example
15
poBoxDeliveryPoor null requiredBox Delivery Whether the store can deliver to PO Boxes. Null for a
handoffoffer, where Snapcaster does not arrange shipping.Show child fieldsHide child fields
poBoxDelivery.string requiredstatus available: the store delivers to PO Boxes.seller_declines: the store does not.platform_suspended: PO Box delivery is suspended platform-wide (e.g. a Canada Post strike) and outranks the store’s own setting.Constraints: allowed values:
available,seller_declines,platform_suspendedExampleavailable
disclosuresListingor null requiredDisclosures Provenance, grading, and authenticity statements shown to the buyer.
Show child fieldsHide child fields
disclosures.string requiredimageSource Constraints: allowed values:
catalogExamplecatalogdisclosures.string requiredconditionSource Constraints: allowed values:
seller_declaredExampleseller_declareddisclosures.string requiredauthenticitySource Constraints: allowed values:
seller_attestationExampleseller_attestationdisclosures.boolean requiredsnapcasterInspected Constraints: allowed values:
falseExamplefalsedisclosures.boolean requiredsnapcasterGraded Constraints: allowed values:
falseExamplefalsedisclosures.boolean requiredsnapcasterAuthenticated Constraints: allowed values:
falseExamplefalsedisclosures.string requiredgradingStandard Constraints: allowed values:
snapcaster-magic-v1,seller-declared-no-specialist-promiseExamplesnapcaster-magic-v1disclosures.string or null requireddeclaredGrade Example
Near Mintdisclosures.string requiredbuyerProtection Constraints: allowed values:
magic-grade-and-authenticity,genuine-and-as-describedExamplemagic-grade-and-authenticity
fulfillmentObligationListingor null requiredFulfillment Obligation Show child fieldsHide child fields
fulfillmentObligation.string requiredsku The SKU that identifies the card variant.
Constraints: allowed values:
exactExampleexactfulfillmentObligation.string requiredprinting The card printing the seller must supply.
Constraints: allowed values:
exactExampleexactfulfillmentObligation.string requiredlanguage The language of the card printing.
Constraints: allowed values:
exactExampleexactfulfillmentObligation.string requiredfinish The physical finish or foil treatment of the card.
Constraints: allowed values:
exactExampleexactfulfillmentObligation.string requiredcondition The normalized condition assigned to the card.
Constraints: allowed values:
declared-or-betterExampledeclared-or-better