# Import Job

The jobs endpoint provides a programmatic way of running long running background tasks with Eshopbox.

The process of reading a file can take a long time which should not block user's experience. Hence to carry process in background we have Jobs.&#x20;

{% tabs %}
{% tab title="Attributes" %}

| Attribute               | Type     | Description                                                                                                                                       |
| ----------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                    | `number` | Id to define the import job uniquely                                                                                                              |
| `jobType`               | `string` | Import Job for different modules .For details refer the [The Job Type Object](/eshopbox-developers/advanced/jobs.md#the-job-type-object)          |
| `channelId`             | `number` | The channel for which file has been uploaded                                                                                                      |
| `importFilters`         | `object` | Filter parameters required while uploading the respective file                                                                                    |
| `filePath`              | `String` | File Path of Uploaded file                                                                                                                        |
| `successCount`          | `number` | No of Success Records in the uploaded file                                                                                                        |
| `failureCount`          | `number` | No of failed records in the uploaded file                                                                                                         |
| `failedFilePath`        | `String` | File path with reason for failure                                                                                                                 |
| `status`                | `string` | Status to track the progress of uploaded file. For details refer the [The Status Object](/eshopbox-developers/advanced/jobs.md#the-status-object) |
| `additionalDetails`     | `String` | Extra information required by a particular import job while processing the job.                                                                   |
| `fileReadFailureReason` | `String` | File failure reason if any while uploading                                                                                                        |
| `userId`                | `number` | Used to identify the user who has uploaded the file                                                                                               |
| `createdAt`             | `string` | Creation date and time                                                                                                                            |
| `updatedAt`             | `string` | Updation date and time                                                                                                                            |
| {% endtab %}            |          |                                                                                                                                                   |

{% tab title="Sample JSON" %}

```
{
    "id": "1822",
    "jobType": "base.product",
    "channelId": "0",
    "importFilters": null,
    "filePath": "https://cdn.filestackcontent.com/ZDcGB6WQXGqJq5Hb9y81",
    "handleUrl": null,
    "successCount": null,
    "failureCount": null,
    "failedFilePath": null,
    "status": "0", 
    "additionalDetails": "this is temporary",
    "fileReadFailureReason": null,
    "userId": "70",
    "createdAt": "2019-12-11T17:19:06.000Z",
    "updatedAt": "2019-12-17T16:15:41.000Z"
}

```

{% endtab %}
{% endtabs %}

## **The Status Object**

| **Status Value** | **Description**                                      |
| ---------------- | ---------------------------------------------------- |
| `processing`     | The job is currently running.                        |
| `completed`      | The job is completed and file is ready for download. |
| `failed`         | The job couldn't be completed due to some error.     |

## The Job Type Object

| Job Type          | Description                  |
| ----------------- | ---------------------------- |
| `listing_update`  |                              |
| `listing_create`  |                              |
| `create_order`    |                              |
| `discount_upload` |                              |
| `return_upload`   |                              |
| `fee_rule`        | Upload charge rule for a fee |
| `invoice_event`   |                              |
| `base_product`    |                              |
| `statement`       |                              |
| `listing`         |                              |
| `virtual_combo`   |                              |
| `kit`             |                              |
| `return`          |                              |
| `get_inventory`   |                              |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://eshop.gitbook.io/eshopbox-developers/advanced/jobs.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
