Change some of the product’s overrides on one channel
const url = 'https://api.crossmart.io/api/v1/workspaces/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/products/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/channels/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/override';const options = { method: 'PATCH', headers: {'x-api-key': '<x-api-key>', 'Content-Type': 'application/json'}, body: '{"title":"example","descriptionHtml":"example","vendor":"example","tags":["example"],"mediaUrls":["example"],"visibility":"VISIBLE","inventoryBuffer":1,"maxQuantity":1,"variantPrices":[{"variantId":"2489E9AD-2EE2-8E00-8EC9-32D5F69181C0","price":"79.00","compareAtPrice":"99.00"}]}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PATCH \ --url https://api.crossmart.io/api/v1/workspaces/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/products/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/channels/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/override \ --header 'Content-Type: application/json' \ --header 'x-api-key: <x-api-key>' \ --data '{ "title": "example", "descriptionHtml": "example", "vendor": "example", "tags": [ "example" ], "mediaUrls": [ "example" ], "visibility": "VISIBLE", "inventoryBuffer": 1, "maxQuantity": 1, "variantPrices": [ { "variantId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "price": "79.00", "compareAtPrice": "99.00" } ] }'Absent fields keep their override; null reverts a field to the product’s value. Each variantPrices entry replaces that variant’s prices only, and both prices null revert the variant to the pricing rule. When the channel already lists the product, an update is queued.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Request Bodyrequired
Section titled “Request Bodyrequired”object
The brand this channel shows instead of the product’s vendor
Replaces the product’s tags
The product’s image URLs to show, in order
Show or hide on this channel, whatever the product’s status
Units held back
Most units shown
object
Example
79.00Example
99.00Responses
Section titled “Responses”object
object
Whether the connection’s product selection includes it
The product on this store, in one state computed by the server: draft (not selected for the store), needs_details (selected, but the store setup or the product lacks something publishing needs), ready (publishable, not sent yet), publishing (queued or in flight, including an update of a published listing that a sync or retry queued), published, failed, removing (being taken off) or removed.
For needs_details and failed: a short, merchant-readable reason (what to add, or the channel’s message). Never holds secrets. Null for the other states.
For needs_details: the requirement to fix first, so a client can open the right place. Store-setup requirements (reconnect, account_settings, shipping_policy, payment_policy, return_policy, ship_from_location, listing_setup) come before the product’s (images, active_product, option_names), which the server checks before publishing; category and item_specifics are known once the channel refused a publish. Null for the other states.
object
How the product joined the store: by hand, by an import, or by the automatic rule
The product’s id on the channel
Where to see it on the channel
Why the last sync failed
What the channel refused the last publish for lacking (such as item_specifics), when the merchant can add it; null otherwise
When a sync or retry queued its publish, update or delist; null once that job finished or gave up. While set, a selected listing shows displayState: publishing.
The channel category it is listed in, on channels with categories (eBay)
object
The category with its ancestors, as the channel shows it
object
object
object
object
object
The price after this step
The variant cost in the channel currency, converted like the price
In the store’s currency: what its pricing rule gives, before a fixed price on the listing. Equal to the effective price unless the price is overridden.
The stock the channel shows; null when the variant does not track stock
Example
{ "connection": { "channel": "shopify", "status": "CONNECTED", "currencyCode": "USD" }, "displayState": "draft", "displayReason": "Choose a shipping policy in this eBay connection’s listing defaults.", "displayRequirement": "reconnect", "listing": { "status": "PENDING", "source": "MANUAL", "missingRequirement": "reconnect", "category": { "id": "20625", "name": "Home & Garden > Kitchen, Dining & Bar > Dinnerware & Serving Dishes > Mugs" } }, "override": { "visibility": "VISIBLE", "variantPrices": [ { "price": "79.00", "compareAtPrice": "99.00" } ] }, "variants": [ { "title": "Blue / Large", "price": { "price": "102.99", "source": "override", "steps": [ { "kind": "base", "label": "+15%", "amount": "102.35" } ], "explanation": "$89.00 → +15% → .99 = $102.99", "warnings": [ "missing_cost" ] }, "rulePrice": "102.99" } ]}