Operations status
Your tenant's operations in one call: how far the data is released, the open reconciliation breaks and import issues per kind, each bank's last import, and the running and failed jobs. Reads need ingestion:read and the operations module on read in one of your groups (an admin always has it); without it the route answers 403. The jobs behind the counts are listed on this page too.
Every number counts what the matching list shows you: data status, reconciliation breaks, import issues, imports and jobs. A user with a grant on one custody account counts only what those lists show for that grant.
Data model
data_ready_throughdate or nullThe oldest
data_ready_throughover the clients you can see that have one (/v1/data-status).nullwhen nothing is released yet.open_breaks_by_kindobjectOpen reconciliation breaks per kind (
/v1/reconciliation-breakswithstatusopen), for example{"quantity_mismatch": 3}. A kind with no open break is left out.open_import_issues_by_kindobjectOpen import issues per kind (
/v1/import-issueswithstatusopen), in the kinds that list uses. A kind with no open issue is left out.last_import_at_by_custodianobjectPer
custodian_id, the time of its newest import you can see (/v1/imports), as an RFC 3339 timestamp (UTC, with microseconds). A file is counted once, as in the list.jobsobjectrunning: the jobs you can see that run now.failed_24h: the jobs you can see that failed in the last 24 hours.
Get the operations status
Returns the counts above in one object. It takes no parameters.
curl https://api.aleta.ai/v1/operations/status \
-H "Authorization: Bearer {access_token}"
{
"data_ready_through": "2026-10-17",
"open_breaks_by_kind": {
"quantity_mismatch": 2,
"value_mismatch": 1
},
"open_import_issues_by_kind": {
"invalid_holding": 4
},
"last_import_at_by_custodian": {
"019dfe9f-1a2b-7c3d-8e4f-5a6b7c8d9e0f": "2026-10-20T05:12:03.000000Z"
},
"jobs": {
"running": 0,
"failed_24h": 1
}
}
Jobs
A job is one run of an automation, such as a report sequence or a report you asked for with POST /v1/reports. You see the runs of automations you own or whose client you can see; an admin sees all of them. Aleta's nightly processing is not listed. Reads need platform:read and the operations module on read in one of your groups (an admin always has it).
id, automation_idstringThe job and the automation it ran for. UUIDs.
kind, namestringThe automation's kind (for example
report_sequence) and name.triggerstringscheduledormanual.statusstringqueued,running,succeeded,failed,skippedorcancelled.attemptintegerThe attempt number.
scheduled_for, started_at, finished_at, created_attimestamp or nullRFC 3339 timestamps (UTC, with microseconds).
started_atandfinished_atarenulluntil the job starts or ends.duration_msinteger or nullHow long the job ran.
errorstring or nullWhy the job failed or was cancelled.
cancellablebooleantruewhile the job is queued.
List jobs
Returns the jobs you can see, newest first (created_at, then id), as a cursor list. Filter with status (one of the statuses above; another value is a 400) and kind. limit defaults to 100, at most 1000; a cursor that does not decode, or an unknown parameter, is a 400.
curl "https://api.aleta.ai/v1/jobs?status=failed" \
-H "Authorization: Bearer {access_token}"
Retrieve a job
Returns one job. A job you cannot see, or an id that is not a UUID, is a 404.
curl https://api.aleta.ai/v1/jobs/019f95f0-2d40-7b58-8f6e-9a3c1d7e5b03 \
-H "Authorization: Bearer {access_token}"
Cancel a job
Cancels a queued job, so it never runs, and answers 200 with the job in status cancelled. A job that is cancelled already answers 200 as it is. A running job cannot be stopped, and a job that has ended cannot be cancelled: both are a 409, as is a job that started before the cancel took effect. Needs platform:write; an admin or Aleta cancels any job they see, and an advisor in no group only the jobs of automations they own (403 otherwise). A job you cannot see is a 404. No body. Takes ?dry_run=true and Idempotency-Key; the cancel is logged in the audit trail.
curl -X POST https://api.aleta.ai/v1/jobs/019f95f0-2d40-7b58-8f6e-9a3c1d7e5b03/cancel \
-H "Authorization: Bearer {access_token}" \
-H "Idempotency-Key: {idempotency_key}"
Related
- Data status — the released day per client, lens and account.
- Reports — a report run is a job.