# POST Requests: Multi-source Jobs API

{% columns %}
{% column width="16.666666666666664%" %}
Data type:

URLs:
{% endcolumn %}

{% column %}
Multi-source Jobs

<https://api.coresignal.com/cdapi/v2/data\\_requests/job\\_multi\\_source/es\\_dsl\\>
<https://api.coresignal.com/cdapi/v2/data\\_requests/job\\_multi\\_source/ids>
{% endcolumn %}
{% endcolumns %}

***

## Overview

Bulk Collect features three POST endpoints, making collecting job posting data records in bulk easier.

{% hint style="danger" %}
Before you proceed with your Bulk Collect requests, test them in the Multi-source Jobs API first to avoid any unexpected costs.
{% endhint %}

Find step-by-step guides for making Bulk Collect POST requests in the following topic:

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>Bulk Collect POST requests guides</td><td><a href="../../../api-introduction/requests/bulk-collect/post-requests">post-requests</a></td></tr></tbody></table>

## Elasticsearch DSL requests

Use the endpoint `/v2/data_requests/job_multi_source/es_dsl` to request job postings data in bulk using our Elasticsearch DSL schema.

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>Multi-source Jobs API Elasticsearch DSL schema</td><td><a href="../../elasticsearch-dsl#multi-source-jobs-api-elasticsearch-schema">#multi-source-jobs-api-elasticsearch-schema</a></td></tr></tbody></table>

### Endpoint usage example

{% code title="Example request" %}

```json
curl -X 'POST' \
'https://api.coresignal.com/cdapi/v2/data_requests/job_multi_source/es_dsl' \
  -H 'accept: application/json' \
  -H 'apikey: {API Key}' \
  -H 'Content-Type: application/json' \
  -d '{
   "webhook_url": "{optional_webhook_url}",
   "limit": {optional_integer},
   "es_dsl_query": {
      "query": {
         "match":{
            "location":{
               "query":"New York",
               "operator":"and"
            }
         }
      }
   }
}'
```

{% endcode %}

Retrieve the request ID from the response body

{% code title="Request ID" %}

```json
{
  "request_id": "433869ec-0a98-4dcd-9b13-db4df58260f5"
}
```

{% endcode %}

* `Location` response header provides a URL where the results can be retrieved.

> Location: /v2/data\_requests/e000b0ec-0f00-0b00-0a0a-0b00fa0000d0/files

***

## IDs requests

Use the endpoint `/v2/data_requests/job_multi_source/ids` to submit a list of IDs to request jobs data in bulk.

### Endpoint usage example

{% code title="cURL request" %}

```json
curl -X 'POST' \
  'https://api.coresignal.com/cdapi/v2/data_requests/job_multi_source/ids' \
  -H 'accept: application/json' \
  -H 'apikey: {API Key}' \
  -H 'Content-Type: multipart/form-data' \
  -d '{
  "limit": {optional_integer},
  "webhook_url": "{optional_webhook_url}",
  "ids": [
    1,
    222,
    3456
  ]
}'
```

{% endcode %}

* Retrieve the `request_id` from the response body:

{% code title="Request ID" %}

```json
{
  "request_id": "433869ec-0a98-4dcd-9b13-db4df58260f5"
}
```

{% endcode %}

* `Location` response header provides a URL where the results can be retrieved.

> Location: /v2/data\_requests/e000b0ec-0f00-0b00-0a0a-0b00fa0000d0/files

## Following steps

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>Make GET requests to download the data</td><td><a href="../../../api-introduction/requests/bulk-collect/get-requests">get-requests</a></td></tr></tbody></table>
