Catalog action Integrations

Fetch the purchasable offers for a retail product by URL or product ID, with ACCURATE Amazon Prime eligibility, fulfillment (FBA), availability, seller, and the per-offer shipping price — unlike product search, which runs logged-out and under-reports Prime. Returns each offer plus a recommended bestOffer (cheapest available, preferring free shipping / Prime) and, when shipping is known, a cent-accurate order quote. Ideal for: confirming Prime/fast shipping before ordering, getting an exact pre-checkout quote, deciding whether an item ships free.

At a Glance

FieldValue
Action IDget-product-offers
CategoryIntegrations
ConnectorNot required
Requires gasNo
Funds movementNone declared
Tagsshopping, products, details, quote, lookup, ecommerce, read

Payload Schema

FieldTypeRequiredDescription
productUrlstringNoProduct URL (e.g. https://www.amazon.com/dp/B01N5IB20Q or https://www.walmart.com/ip/123456789\). A bare 10-character Amazon ASIN is also accepted. Provide this OR productId.
productIdstringNoRetailer product identifier (Amazon ASIN or Walmart item ID). Provide this OR productUrl.
retailerstringNoRetailer for productId lookups. Default: 'amazon'. Ignored when productUrl is provided.
quantitynumberNoQuantity used to compute the order quote. Default: 1.

Result Schema

FieldTypeRequiredDescription
productIdstringYesRetailer product identifier.
retailerstringYesRetailer the product belongs to.
productUrlstringYesCanonical product URL — pass to order-product.
offerCountnumberYesNumber of offers returned.
hasPrimeOfferbooleanYesTrue when any offer is Prime-eligible.
hasFreeShippingOfferbooleanYesTrue when any offer ships free.
requiresShippingConfirmationbooleanYesTrue when bestOffer is NOT a free-shipping/Prime buy — it carries a paid (or unknown) shipping fee. Surface bestOffer.shipPriceUsd to the user and have them accept the higher total or pick a Prime alternative BEFORE ordering; do not order silently (the cap may not cover the shipping).
bestOfferobject | nullYesRecommended offer: cheapest available (preferring New, free shipping, then Prime). Null when no purchasable offer exists.
offersarrayYesAll purchasable offers with accurate Prime / fulfillment / shipping data.
orderQuoteobject | nullYesCharge estimate built on bestOffer (null when no priced offer). When shippingKnown is true the cap is cent-accurate (goods + tax buffer + real ship price); otherwise it falls back to a flat shipping allowance. Pass estimatedMaxTotalCents to order-product as maxTotalCents for an exact charge.

Examples

json
{ "type": "get-product-offers", "payload": { "productUrl": "https://example.com/webhook", "productId": "example-productId", "retailer": "amazon", "quantity": 1 }, "children": []}

Payload fields can use workflow expressions such as {{$trigger.body.amount}}, {{$nodes.fetch.result.price}}, and {{$props.asset}} when the value should come from a trigger, prior node, or reusable workflow prop.