# Search Preview: Multi-source Jobs API

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

Query type:

URL:
{% endcolumn %}

{% column width="83.33333333333334%" %}
Multi-source Jobs

Elasticsearch DSL

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

***

## Overview

Retrieve a limited set of fields from top-matching records in real time, and search suggestion features. Here, Multi-source Jobs API search `/v2/job_multi_source/search/es_dsl/preview` endpoint's usage is reviewed.

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>General information about search preview</td><td><a href="../../api-introduction/requests/search-preview">search-preview</a></td></tr></tbody></table>

## Request queries

See the request example of `preview` endpoint. Search Preview endpoints accept the same query structure as their corresponding Search endpoints.&#x20;

{% code title="Elasticsearch DSL request" %}

```json
curl -X 'POST' \
'https://api.coresignal.com/cdapi/v2/job_multi_source/search/es_dsl/preview' \
  -H 'accept: application/json' \
  -H 'apikey: {API Key}' \
  -H 'Content-Type: application/json' \
  -d '{
  "query": {
    "bool": {
      "must": [
        {
          "match": {
            "title": "manager"
          }
        },
        {
          "match": {
            "location": "Los Angeles"
          }
        }
      ]
    }
  }
}'
```

{% endcode %}

## Response structure

Here is an overview of the fields that are retrieved using the Multi-source Jobs API search preview endpoints.

| Data field     | Description                                     | Data type |
| -------------- | ----------------------------------------------- | --------- |
| `id`           | Unified job identifier across all sources       | Long      |
| `created_at`   | Timestamp when the job record was first created | Timestamp |
| `title`        | Standardized job title                          | String    |
| `location`     | Job location                                    | String    |
| `company_name` | Company name                                    | String    |
| `_score`       | Elasticsearch score                             | Float     |

**Refer to the data example here:**

{% hint style="info" %}
All personal/company information mentioned within this context is entirely fictional and is solely intended for illustrative purposes.
{% endhint %}

{% code title="Elasticsearch DSL response" %}

```json
  {
    "id": 1234,
    "created_at": "2025-07-01 00:00:00",
    "title": "Event Manager",
    "location": "Los Angeles, CA",
    "company_name": "Example Company",
    "_score": 12.34567
  }
```

{% endcode %}

## Pagination

Example of the request using pagination query parameter `page`.

{% code title="Elasticsearch DSL request" %}

```json
curl -X 'POST' \
'https://api.coresignal.com/cdapi/v2/job_multi_source/search/es_dsl/preview?page=2' \
  -H 'accept: application/json' \
  -H 'apikey: {API Key}' \
  -H 'Content-Type: application/json' \
  -d '{
  "query": {
    "bool": {
      "must": [
        {
          "match": {
            "title": "manager"
          }
        },
        {
          "match": {
            "location": "CA"
          }
        }
      ]
    }
  }
}'
```

{% endcode %}

### Sorting options

Multi-source Jobs API `/v2/job_multi_source/search/es_dsl/preview` endpoint supports sorting capabilities, which are the same as found in Multi-source Jobs API's [Elasticsearch DSL](https://docs.coresignal.com/jobs-api/elasticsearch-dsl#sorting-options) topic.&#x20;
