Jobs
Schedule and monitor background data refresh operations.
Background data refresh job management for AIS.
Purpose
After initial consent authorization, use jobs to refresh banking data on demand. Jobs fetch the latest accounts, balances, and transactions from the banking provider.
Scope-Based Job Behavior
Job execution varies based on the consent's scope:
- Full scope (
[accounts, balances, transactions]): Job fetches all data types including transaction history - Accounts/balances only (
[accounts, balances]): Job completes faster by skipping transaction fetching
For consents with [accounts, balances] scope, jobs will transition directly from balances_ready to job_completed.
Cooldown Period
A cooldown period is enforced between refresh requests to prevent excessive
API calls to banking providers. If you attempt to create a job during the
cooldown period, you'll receive a 400 error with code cooldown_failed.
Job Statuses
| Status | Description |
|---|---|
job_started |
Job created and queued for processing |
accounts_ready |
Accounts fetched and stored |
balances_ready |
Balances fetched and stored |
transactions_fetching |
Transactions fetching in progress (skipped for accounts/balances scope) |
job_partially_completed |
Some data fetched successfully |
job_completed |
All data fetched successfully |
job_failed |
Job failed due to an error |
Webhooks
Provide a callback_url when creating a job to receive notifications on status changes.
Webhook Payload:
{
"type": "job_status_update",
"consent_id": "123e4567-e89b-12d3-a456-426614174000",
"job_id": "job-uuid-456",
"status": "job_completed"
}
| Field | Type | Description |
|---|---|---|
type |
string | Always job_status_update |
consent_id |
uuid | The consent associated with this job |
job_id |
uuid | The job that was updated |
status |
string | New job status (see statuses above) |