Account
Two read-only endpoints for the API key's owning account: a snapshot of plan and available credits (with the two numbers an SDK needs to throttle itself), and a paginated ledger of credit consumption for self-service reconciliation.
Get account
Returns your account's effective plan and credits — if your account is a member of a Team, this already reflects the team owner's plan/credit pool, not your own individual membership_plan.
Parameters
None — the account is determined entirely by the API key in the Authorization header.
max_batch_size and upload_concurrency are provided so a client SDK can self-throttle its own upload loop instead of discovering these limits by hitting invalid_parameter/ rate_limit_exceeded errors first.
Possible errors
missing_api_key/invalid_api_key/plan_required— see Error Handling.
Get account usage
A paginated, newest-first ledger of every credit-affecting event on your account — extraction deductions, bbox-annotation deductions, and refunds. Built for reconciling "how many credits did this cost me," not for driving a UI (compare /profile/usage_history's pre-formatted display strings, which this endpoint does not return — you get structured, signed amount values instead).
Parameters
| Name | Location | Type | Description |
|---|---|---|---|
limit | query, optional | integer | 1–200. Default 50. |
batch_name | query, optional | string | Restrict the ledger to entries for one batch — "how many credits did batch X cost me." |
page_token | query, optional | string | Opaque cursor from a previous response's next_page_token. This endpoint paginates newest-first (unlike other v1 list endpoints, which paginate oldest-first) — the token is still opaque and round-trips the same way, only the underlying order differs. See Pagination. |
amount is signed: negative for spends (extraction/bbox deductions), positive for credits back (refunds/cancellation refunds) — so summing a page's amount values gives you the net change over that page. document_id is the same ID space as Documents' document_id (the internal ledger calls it task_id; this endpoint renames it for consistency with the rest of v1).
A deduction's magnitude isn't always 1. Every account has a Model Tier — Standard (the default), Advanced, or Premium — that decides which AI model runs its extractions and how many credits each processed document costs: 1 for Standard, 3 for Advanced, 6 for Premium. There's no way to set this per API call; it's assigned to the account by the ImageToTable.ai team. When an account isn't on Standard, the action field carries a tier suffix instead of the bare name — deduction_advanced, deduction_premium — so you can spot a non-Standard charge without inspecting amount directly. Refunds are unaffected by later tier changes: a task is always refunded at the tier it was actually charged at when processing started, not whatever tier the account happens to be on when the refund fires, so a refund row's magnitude will always match the deduction/deduction_<tier> row it's reversing. See Account Settings & API Behavior for how this interacts with every other account-level setting v1 reads.
Possible errors
missing_api_key/invalid_api_key/plan_required— see Error Handling.invalid_parameter— badlimitorpage_token.