Sync Breakdown (why not synced)
GET/api/ledger/close/periods/:period/sync-breakdown
The why-not-synced breakdown. For the period (key format YYYY-MM), returns every journal entry that has NOT reached the accounting provider, grouped by reason (display status), with an entry count, a dollar total, and a per-reason deep-link filter that lands the entries list on exactly those rows. The synced total rides along as context (how much DID sync). Read-only and entirely local — no provider call.
Each row's disposition is one of: excluded (unsynced by design), in_flight (queued/syncing/retrying), needs_attention (failed/conflict/removed-in-provider/needs-attention). link is a checklist-style deep link ({tab, filter}) for the entries list.
Authentication: Bearer token.
Request
Responses
- 200
- 401
- 403
- 404
- 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.
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.