---
title: Jobs API Reference
meta:
    description: With the Jobs API, you can list the jobs for the last 48 hours or the last 100 jobs and also get the details for a specific job.
headingMaxLevels: 2
---

# Jobs API

{% snippet title="api-region-reminder" /%}

With the Jobs API, you can list the jobs for the last 48 hours or the last 100 jobs.

Certain operations can start a job in Tinybird:

- Import data through a URL.
- Populate a Data Source from a materialized node.
- Run background queries.

When any of these operations start, the response contains a `job_id` field.

## Get job details

You can also get the details for a job. Depending on the job `kind`, it returns certain information related with the specific job, along with the status of the job.

The Job `status` can be one of the following:

- `waiting`: The initial status of a job. When creating a job, it has to wait if there're other jobs running.
- `working`: Once the job operation has started.
- `done`: The job has finished successfully.
- `error`: The job has finished with an error.

The `created_at` field reflects when the job was created, while `updated_at` shows when the job changed its state. Once the status of the job is `done` or `error` the difference between `created_at` and `updated_at` is the total execution time, including the time spent on the job queue.

The `statistics` fields shows: 

- `row_count`: For import and populate jobs, it shows the number of rows of the Data Source. In case of a query job, it shows the number of rows returned by the query. 
- `bytes`: For import and populate jobs, it shows the amount of bytes of the target Data Source. In case of a query job, the size, in bytes, returned by the query.

The `quarantine_rows` field shows the number of rows in the quarantine Data Source. Those that don't match the schema but can still be parsed, while the `invalid_lines` field shows the number of rows that can't be properly parsed.

{% api_reference api="job" /%}