Start Price Push
POST/api/v2/sales-channels/:integrationInstance/prices/push
Start an outbound price push for a sales channel integration instance, or a dry-run preview of one.
integrations:writeGrant this scope to your token under Settings → Developer → Personal Access Tokens.
Runs asynchronously and returns a tracked job handle; poll the tracked job for progress and results.
Prices are only sent for listings where SKU.io is the master of price and the price has changed since the last successful push. Every price is checked against the instance's guardrails (floor, ceiling and maximum change) immediately before it is transmitted.
Authentication: Requires Bearer token.
Fields:
- dry_run (optional, boolean, default false): evaluate every listing and record the outcome without sending anything to the channel.
- force (optional, boolean, default false): also send prices that have not changed. Does not bypass guardrails.
- listing_ids (optional, array of integers): restrict the push to these listings. Omit to consider all eligible listings.
Requires the integrations.sync permission.
Optional max_delta_pct_override (numeric, greater than 0, maximum 1000) raises the maximum-change limit for THIS run only; the saved limit is unchanged. It is raise-only — a value at or below the saved limit is ignored — and it cannot relax the price floor, the price ceiling, or the rule that refuses a zero or negative price.
Channels that rate-gate price transmissions (Walmart accepts 2 price feeds per hour) are checked before the job is created. If the channel would not accept a feed right now, the request is refused with a 422 naming the time the next slot opens, and nothing is dispatched; the scheduled push carries every pending price at its next run. A dry run is never refused for this reason, because it transmits nothing.
Request
Responses
- 202
- 401
- 403
- 404
- 422
- 429
Accepted
Response Headers
Unauthenticated — the bearer token is missing, revoked, expired, or malformed. Never retry automatically; fix the credential. See the Errors guide.
Forbidden — the token lacks a required scope, the endpoint is not available to API tokens, or the user behind the token lacks the permission. A human must adjust the token scopes or user permissions; do not retry.
Not found — no record with the given identifier (or the route does not exist). Verify the ID before retrying.
Unprocessable Content
Response Headers
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.