# Company & Jobs Data API - Structured Hiring Data (`nabeelbaghoor/company-jobs-data-api`) Actor

Search a large jobs dataset and export clean structured records - title, company, location, employment type, seniority, salary, applicant count and apply links. Filter by title, keyword, company, country, industry and date. Pay per result. Bring your own API key.

- **URL**: https://apify.com/nabeelbaghoor/company-jobs-data-api.md
- **Developed by:** [Nabeel Hassan](https://apify.com/nabeelbaghoor) (community)
- **Categories:** Jobs, Developer tools, Lead generation
- **Stats:** 2 total users, 1 monthly users, 0.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$20.00 / 1,000 job results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js/docs.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## Company and Jobs Data API - structured hiring data at scale

**Company and Jobs Data API** searches a large, continuously updated jobs dataset and returns clean, structured records - job title, company, location, employment type, seniority, salary, applicant count and a direct apply link - ready to export as JSON, CSV or Excel.

Powered by the Coresignal data API. Bring your own API key (free trial available) and pay only for the results you keep.

### Why use this actor?

- **Deep, structured job records** - each result is parsed into consistent fields, including company name and URL, employment type, seniority, salary and applicant count.
- **Precise filtering** - job title, keyword in description (with AND/OR and exact phrases), company name or domain, country, industry, and first-seen / last-updated date ranges.
- **Fresh hiring signals** - filter to active applications and recent postings to catch companies hiring right now.
- **Pay per result** - you are charged only for the jobs actually collected, up to 1,000 per run.
- **No proxies, no blocks** - data comes through a stable API, so runs are fast and reliable.

### Use cases

- **B2B lead generation** - hiring companies are buying companies; build targeted lists with hiring context.
- **Recruiting and sourcing** - track who is hiring for which roles, where, and at what seniority.
- **Market and talent research** - analyze demand by role, industry, country and company.
- **Data enrichment** - append fresh job and company signals to your CRM or data warehouse.
- **Alerting automations** - schedule daily runs and push new matches to Slack, a CRM or a database.

### Input

Configure everything from the visual editor - every filter is a proper field, no code needed. Set at least one filter (the provider does not allow an unbounded search). Example JSON input:

```json
{
  "title": "\"data engineer\"",
  "countries": ["United States"],
  "activeOnly": true,
  "maxResults": 50,
  "apiKey": "YOUR_API_KEY"
}
````

### Output

One clean JSON object per job (full provider fields included in the raw record):

```json
{
  "job_title": "Senior Data Engineer",
  "company_name": "Acme Corp",
  "location": "New York, United States",
  "country": "United States",
  "employment_type": "full-time",
  "seniority": "Senior",
  "salary": "$150,000 - $190,000",
  "applicants_count": 42,
  "time_posted": "2026-07-14",
  "application_active": 1,
  "url": "https://careers.acme.com/jobs/senior-data-engineer",
  "company_url": "https://www.linkedin.com/company/acme",
  "id": 987654321
}
```

### Do I need an API key?

Yes. This actor calls the Coresignal data API on your behalf, which requires your own API key. Get one from your Coresignal dashboard (a free trial with starter credits is available), paste it into the **API key** field, and run. Your key is stored securely and never logged.

### Pay per result

You pay only for the job records the actor actually collects - no subscriptions, no minimums. Set **Maximum results** to cap each run's spend exactly.

### FAQ

#### What data does each job record include?

Job title, company name and URL, location and country, employment type, seniority, salary, applicant count, posting time and whether the application is still active - plus the full raw record with nested industry and job-function data.

#### How does search work?

The actor first runs a filtered search to find matching job IDs, then collects the full record for each one, up to your **Maximum results**. Because the provider requires a scoped query, you must set at least one filter such as title, keyword, company, country or a date range.

#### What filters can I use?

Job title, keyword in description (both support AND/OR and quoted exact phrases), employment type, active-only, location, country, company name, company domain, industry, and first-seen / last-updated date ranges.

#### How many results can I get per run?

Up to 1,000 jobs per run. For larger pulls, split by title, country or date window, or run on a schedule and collect new postings each day using the date filters.

#### How much does it cost?

Pricing is pay-per-result: a small fixed amount per job returned, plus standard Apify platform usage. Note that each collected job also consumes provider search and collect credits against your own API key. A run that returns nothing costs almost nothing.

#### Can I run this on a schedule?

Yes. Use Apify Schedules to run it daily and connect the dataset to Zapier, Make, n8n, a CRM or the API to pipe new jobs anywhere.

#### Is this legal?

The actor returns publicly available job listing data retrieved through a licensed API. No login-walled or personal data is collected.

### Keyword map

company data api, jobs data api, job data api, hiring data api, structured jobs api, recruiting data api, b2b lead generation api, talent data api, job market data, company enrichment api, employment data api, job listings api.

### Support and feedback

Found an issue or missing a filter? Open an issue in the **Issues** tab - it is monitored daily.

# Actor input Schema

## `title` (type: `string`):

Match against the job title. Supports AND/OR and quoted exact phrases, e.g. `"data engineer"`, `python AND senior`.

## `keywordDescription` (type: `string`):

Match against the job description. Supports AND/OR and quoted phrases, e.g. `kubernetes AND terraform`.

## `employmentType` (type: `string`):

Employment type as stored by the provider, e.g. `full-time`, `part-time`, `contract`, `internship`.

## `activeOnly` (type: `boolean`):

Return only jobs whose application is still active.

## `location` (type: `string`):

City, state or country string to match against the job location, e.g. `New York`, `California`, `Germany`.

## `countries` (type: `array`):

One or more country names, e.g. `United States`, `United Kingdom`. Multiple are matched with OR.

## `companyName` (type: `string`):

Match jobs from a company by name. Supports AND/OR and quoted phrases.

## `companyDomain` (type: `string`):

Match jobs from a company by website domain, e.g. `stripe.com`.

## `industries` (type: `array`):

One or more company industries, e.g. `Software Development`, `Financial Services`. Multiple are matched with OR.

## `createdAtGte` (type: `string`):

Only jobs created on or after this timestamp. Format `YYYY-MM-DD hh:mm:ss`, e.g. `2026-07-01 00:00:00`.

## `createdAtLte` (type: `string`):

Only jobs created on or before this timestamp. Format `YYYY-MM-DD hh:mm:ss`.

## `lastUpdatedGte` (type: `string`):

Only jobs last updated on or after this timestamp. Format `YYYY-MM-DD hh:mm:ss`.

## `lastUpdatedLte` (type: `string`):

Only jobs last updated on or before this timestamp. Format `YYYY-MM-DD hh:mm:ss`.

## `maxResults` (type: `integer`):

Stop after collecting this many jobs (1-1,000). Each collected job consumes provider search and collect credits against your key. You are charged per result returned.

## `apiKey` (type: `string`):

Your own Coresignal API key. Required - the actor calls the API on your behalf using this key. Get one from your Coresignal dashboard (free trial available). Stored securely and never logged.

## Actor input object example

```json
{
  "activeOnly": true,
  "maxResults": 50
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "title": "",
    "maxResults": 50
};

// Run the Actor and wait for it to finish
const run = await client.actor("nabeelbaghoor/company-jobs-data-api").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "title": "",
    "maxResults": 50,
}

# Run the Actor and wait for it to finish
run = client.actor("nabeelbaghoor/company-jobs-data-api").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "title": "",
  "maxResults": 50
}' |
apify call nabeelbaghoor/company-jobs-data-api --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=nabeelbaghoor/company-jobs-data-api",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Company & Jobs Data API - Structured Hiring Data",
        "description": "Search a large jobs dataset and export clean structured records - title, company, location, employment type, seniority, salary, applicant count and apply links. Filter by title, keyword, company, country, industry and date. Pay per result. Bring your own API key.",
        "version": "0.1",
        "x-build-id": "kHZIb3kWk3Elyi8P0"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/nabeelbaghoor~company-jobs-data-api/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-nabeelbaghoor-company-jobs-data-api",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/nabeelbaghoor~company-jobs-data-api/runs": {
            "post": {
                "operationId": "runs-sync-nabeelbaghoor-company-jobs-data-api",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/nabeelbaghoor~company-jobs-data-api/run-sync": {
            "post": {
                "operationId": "run-sync-nabeelbaghoor-company-jobs-data-api",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "title": {
                        "title": "Job title",
                        "type": "string",
                        "description": "Match against the job title. Supports AND/OR and quoted exact phrases, e.g. `\"data engineer\"`, `python AND senior`."
                    },
                    "keywordDescription": {
                        "title": "Keyword in description",
                        "type": "string",
                        "description": "Match against the job description. Supports AND/OR and quoted phrases, e.g. `kubernetes AND terraform`."
                    },
                    "employmentType": {
                        "title": "Employment type",
                        "type": "string",
                        "description": "Employment type as stored by the provider, e.g. `full-time`, `part-time`, `contract`, `internship`."
                    },
                    "activeOnly": {
                        "title": "Active applications only",
                        "type": "boolean",
                        "description": "Return only jobs whose application is still active.",
                        "default": true
                    },
                    "location": {
                        "title": "Location",
                        "type": "string",
                        "description": "City, state or country string to match against the job location, e.g. `New York`, `California`, `Germany`."
                    },
                    "countries": {
                        "title": "Countries",
                        "type": "array",
                        "description": "One or more country names, e.g. `United States`, `United Kingdom`. Multiple are matched with OR.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "companyName": {
                        "title": "Company name",
                        "type": "string",
                        "description": "Match jobs from a company by name. Supports AND/OR and quoted phrases."
                    },
                    "companyDomain": {
                        "title": "Company domain",
                        "type": "string",
                        "description": "Match jobs from a company by website domain, e.g. `stripe.com`."
                    },
                    "industries": {
                        "title": "Industries",
                        "type": "array",
                        "description": "One or more company industries, e.g. `Software Development`, `Financial Services`. Multiple are matched with OR.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "createdAtGte": {
                        "title": "First seen on or after",
                        "type": "string",
                        "description": "Only jobs created on or after this timestamp. Format `YYYY-MM-DD hh:mm:ss`, e.g. `2026-07-01 00:00:00`."
                    },
                    "createdAtLte": {
                        "title": "First seen on or before",
                        "type": "string",
                        "description": "Only jobs created on or before this timestamp. Format `YYYY-MM-DD hh:mm:ss`."
                    },
                    "lastUpdatedGte": {
                        "title": "Last updated on or after",
                        "type": "string",
                        "description": "Only jobs last updated on or after this timestamp. Format `YYYY-MM-DD hh:mm:ss`."
                    },
                    "lastUpdatedLte": {
                        "title": "Last updated on or before",
                        "type": "string",
                        "description": "Only jobs last updated on or before this timestamp. Format `YYYY-MM-DD hh:mm:ss`."
                    },
                    "maxResults": {
                        "title": "Maximum results",
                        "minimum": 1,
                        "maximum": 1000,
                        "type": "integer",
                        "description": "Stop after collecting this many jobs (1-1,000). Each collected job consumes provider search and collect credits against your key. You are charged per result returned."
                    },
                    "apiKey": {
                        "title": "API key",
                        "type": "string",
                        "description": "Your own Coresignal API key. Required - the actor calls the API on your behalf using this key. Get one from your Coresignal dashboard (free trial available). Stored securely and never logged."
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
