Sync Bills
POST/api/shipbob/:instance/bills/sync
Queue a background sync of ShipBob billing transactions and invoices, followed by attribution of new, changed and still-pending fees. Without from_date the run re-reads the last 14 days (or 48 hours before the previous sync, whichever is earlier); with from_date it backfills from that date (never before the billing start date) in 7-day windows. Returns the tracked job id. The ShipBob token needs the billing_read scope.
This endpoint currently requires session authentication; Personal Access Token scope support is in progress.
Authentication: Requires Bearer token.
Request Body:
- from_date (date, optional, not in the future) — backfill start date.
Returns 422 when billing sync is disabled for the instance.
A run that reaches the page limit records where it stopped and the next run continues from there (the last-synced checkpoint only moves once everything was read). While such an unfinished window is outstanding, a backfill whose from date is later than it finishes the outstanding window first (that window runs to today, so it covers the requested range); a backfill from an earlier date re-reads and replaces it.
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.
Unprocessable Entity
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.