Refresh Placement Options
POST/api/tiktok-shop/:integrationInstance/fbt/inbound-plans/:plan/placement/options
Ask TikTok which inbound methods are available for the plan and mirror them as the next generation of placement options. Takes no body.
This endpoint currently requires session authentication; Personal Access Token scope support is in progress.
Each option carries its inbound method (ONE_HUB — a single hub, or D2FC — direct to fulfillment centres), the delivery window as raw timestamps plus a ready-made window_label, the quoted placement fee, and the destination warehouses. is_selectable is false until TikTok has computed the option's concrete allocation — fetch its detail first — and is_selectable_reason says which of the two reasons applies.
Options superseded by this refresh are pruned; a confirmed option is never demoted. This is a mutation because it writes the new generation of options.
The plan must belong to the integration instance in the path; a plan owned by another instance answers 404.
Requires the integrations.update permission.
Request
Responses
- 200
- 401
- 403
- 404
- 422
- 429
OK
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.
Validation failed — the body is a field → messages map (Laravel shape) or the platform envelope with a stable machine-readable code. Fix the payload and resubmit.
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.