---
updatedAt: 2026-07-06T16:34:35.000Z
agentTools:
  projectIndex: https://developers.gorgias.com/llms.txt
---

# The Job object

A job is an object used to perform long-running tasks. For example, closing 10k tickets, exporting 500k tickets, and more.

Jobs are processed asynchronously, meaning that once a job is created, it will run in background on Gorgias's servers. According to the type and size of the task, a job can take a few minutes or several hours to be executed. You can use our API to check the status of the job.

Jobs can be canceled at any time but be aware that if a job already started, changes done by this one won't be reverted. For example, if you created a job to close 10k tickets and you cancel it at some point, the already closed tickets won't be reopened.

# Job properties

<div class="rm-ParamContainer">
<form class="rjsf">
<div class="form-group field custom-field">
<div class="custom-field-row">
<label class="custom-field-name">id</label>
<div class="custom-field-type">integer</div>
</div>
<div class="custom-field-description-container">
<div class="field-description markdown-body"><p>ID of the job.</p></div>
</div>
</div>
<div class="form-group field custom-field">
<div class="custom-field-row">
<label class="custom-field-name">cancel_requested_datetime</label>
<div class="custom-field-type">ISO 8601 datetime</div>
</div>
<div class="custom-field-description-container">
<div class="field-description markdown-body"><p>When the job cancellation was requested.</p></div>
</div>
</div>
<div class="form-group field custom-field">
<div class="custom-field-row">
<label class="custom-field-name">cancelled_datetime</label>
<div class="custom-field-type">ISO 8601 datetime</div>
</div>
<div class="custom-field-description-container">
<div class="field-description markdown-body"><p>When the job was canceled.</p></div>
</div>
</div>
<div class="form-group field custom-field">
<div class="custom-field-row">
<label class="custom-field-name">created_datetime</label>
<div class="custom-field-type">ISO 8601 datetime</div>
</div>
<div class="custom-field-description-container">
<div class="field-description markdown-body"><p>When the job was created.</p></div>
</div>
</div>
<div class="form-group field custom-field">
<div class="custom-field-row">
<label class="custom-field-name">ended_datetime</label>
<div class="custom-field-type">ISO 8601 datetime</div>
</div>
<div class="custom-field-description-container">
<div class="field-description markdown-body"><p>When the job ended.</p></div>
</div>
</div>
<div class="form-group field custom-field">
<div class="custom-field-row">
<label class="custom-field-name">failed_datetime</label>
<div class="custom-field-type">ISO 8601 datetime</div>
</div>
<div class="custom-field-description-container">
<div class="field-description markdown-body"><p>When the job failed.</p></div>
</div>
</div>
<div class="form-group field custom-field">
<div class="custom-field-row">
<label class="custom-field-name">info</label>
<div class="custom-field-type">object</div>
</div>
<div class="custom-field-description-container">
<div class="field-description markdown-body"><p>Data concerning the progress of the job. E.g: how many objects the job has already processed.</p></div>
</div>
</div>
<div class="form-group field custom-field">
<div class="custom-field-row">
<label class="custom-field-name">locked_datetime</label>
<div class="custom-field-type">ISO 8601 datetime</div>
</div>
<div class="custom-field-description-container">
<div class="field-description markdown-body"><p>When the job was locked. A job is only locked while it's actively running.</p></div>
</div>
</div>
<div class="form-group field custom-field">
<div class="custom-field-row">
<label class="custom-field-name">meta</label>
<div class="custom-field-type">object | null</div>
</div>
<div class="custom-field-description-container">
<div class="field-description markdown-body"><p>Metadata associated with the job. You can use this parameter to store structured information (key-value data) about the job. This field is not used by Gorgias.</p></div>
</div>
</div>
<div class="form-group field custom-field">
<div class="custom-field-row">
<label class="custom-field-name">params</label>
<div class="custom-field-type">object</div>
</div>
<div class="custom-field-description-container">
<div class="field-description markdown-body"><p>The parameters of the job.</p></div>
</div>
</div>
<div class="form-group field custom-field">
<div class="custom-field-row">
<label class="custom-field-name">scheduled_datetime</label>
<div class="custom-field-type">ISO 8601 datetime</div>
</div>
<div class="custom-field-description-container">
<div class="field-description markdown-body"><p>When the job was scheduled to be started. A job cannot be scheduled more than 60 minutes in the future. If unspecified, the job is queued for execution immediately after creation.</p></div>
</div>
</div>
<div class="form-group field custom-field">
<div class="custom-field-row">
<label class="custom-field-name">started_datetime</label>
<div class="custom-field-type">ISO 8601 datetime</div>
</div>
<div class="custom-field-description-container">
<div class="field-description markdown-body"><p>When the job started.</p></div>
</div>
</div>
<div class="form-group field custom-field">
<div class="custom-field-row">
<label class="custom-field-name">status</label>
<div class="custom-field-type">string</div>
</div>
<div class="custom-field-description-container">
<div class="field-description markdown-body"><p>The status of the job. Options: cancel_requested, canceled, done, errored, fatal_errored, pending, running, scheduled</p></div>
</div>
</div>
<div class="form-group field custom-field">
<div class="custom-field-row">
<label class="custom-field-name">type</label>
<div class="custom-field-type">string</div>
</div>
<div class="custom-field-description-container">
<div class="field-description markdown-body"><p>The type of the job. Options: applyMacro, deleteTicket, exportTicket, importMacro, exportMacro, updateTicket, exportTicketDrilldown, exportConvertCampaignSalesDrilldown</p></div>
</div>
</div>
<div class="form-group field custom-field">
<div class="custom-field-row">
<label class="custom-field-name">user_id</label>
<div class="custom-field-type">integer</div>
</div>
<div class="custom-field-description-container">
<div class="field-description markdown-body"><p>The ID of the user who created this job.</p></div>
</div>
</div>
<div class="form-group field custom-field">
<div class="custom-field-row">
<label class="custom-field-name">uri</label>
<div class="custom-field-type">string</div>
</div>
<div class="custom-field-description-container">
<div class="field-description markdown-body"><p>URI of the job.</p></div>
</div>
</div>
</form>
</div>

<style>
.custom-field {
    padding: 10px;
}
.custom-field:not(:first-child) {
    border-top: 1px solid rgba(0,0,0,0.1);
}
.custom-field-row {
    align-items: baseline;
    display: flex;
    flex-wrap: nowrap;
}
.custom-field-name {
    font-size: 14px;
    font-weight: var(--font-weight-bold);
    color: var(--color-text-default);
    margin-right: 5px;
}
.custom-field-type {
    font-size: 12px;
    color: var(--color-text-minimum);
    margin-right: 5px;
}
.custom-field-deprecated {
    border-radius: var(--border-radius-lg);
    box-shadow: var(--box-shadow-pill);
    color: #fff;
    display: inline-flex;
    font-size: 8px;
    font-weight: var(--font-weight-bold);
    height: 16px;
    line-height: 16px;
    padding-left: 5px;
    padding-right: 5px;
    text-transform: uppercase;
    background: #939eae;
    text-shadow: 1px 1px 0 #8a96a7,0 1px 0 #8a96a7,1px 0 0 #8a96a7;
}
.custom-field-description-container {
    margin-top: 5px;
}
</style>

# Job example object

```json
{
  "id": 1234,
  "cancel_requested_datetime": "2019-11-23T16:31:00.966927",
  "cancelled_datetime": "2019-11-23T16:32:00.966927",
  "created_datetime": "2019-11-23T16:00:00.966927",
  "ended_datetime": "2019-11-23T16:32:00.966927",
  "failed_datetime": "2019-11-23T15:59:41.966927",
  "info": {
    "progress_count": 123
  },
  "locked_datetime": "2019-11-23T16:30:01.966927",
  "meta": {
    "description": "This job closes all tickets created in 2018"
  },
  "params": {
    "apply_and_close": true,
    "end_datetime": "2019-11-24T15:59:41.966927",
    "macro_id": 47,
    "start_datetime": "2019-11-23T15:59:41.966927",
    "ticket_ids": [
      1,
      2,
      3
    ],
    "url": "https://example.com/file.csv",
    "updates": {
      "status": "open"
    },
    "view": {
      "filters": "eq(ticket.status, \"open\")"
    },
    "view_id": 123,
    "context": {
      "channel_connection_external_ids": [
        "12",
        "34"
      ]
    }
  },
  "scheduled_datetime": "2019-11-23T16:30:00.966927",
  "started_datetime": "2019-11-23T16:30:01.966927",
  "status": "canceled",
  "type": "updateTicket",
  "user_id": 42
}
```