Sync Entity From Xero
POST/api/xero/v2/sync-status/:entity/sync-now
Pull one entity from Xero now, as a background job.
This endpoint currently requires session authentication; Personal Access Token scope support is in progress.
Authentication: Requires Bearer token, and the integrations.sync permission.
Path parameters:
entity(string, required) - one ofaccounts,tax_rates,contacts,bank_transactions,payments. The remaining entities reported by Get Mirror Sync Status are written by the accounting ledger and cannot be synced from here (can_sync_nowis false for those).
Returns the id of the background job so its progress can be followed. When a run of the same job is already in flight, that run's id is returned instead of a second one being started.
Bank transactions and payments are pulled in their scheduled shape - the whole entity, which is contiguous with what is already mirrored - so the run is capped by the daily API budget, resumes after a rate limit instead of restarting, and records its outcome.
Returns 403 without the permission, 404 for an unknown entity, and 422 for one the accounting ledger owns.
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 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.