Switching from ATS Database to ATS Lookup
ATS Lookup (arcadium/ats-lookup) reads input written for starbright_overlap/ats-database: 2 of its 5 input fields work as they are. Field list from its public input schema (build 0.1.3, 2026-10-31); prices and run results from the public Apify API, 2026-10-31.
Their fields that work as they are
| Their field | Type | Note |
|---|---|---|
companies | array | As is |
providers | array | As is |
Their fields this actor does not read
minPostings, maxResults, sortBy. Leave them out of the input; the actor’s own options are in the guide.
Side by side: their input, our rows
Input written for starbright_overlap/ats-database, pasted unchanged:
{
"companies": [
"notion",
"figma"
],
"providers": [
"greenhouse"
]
}One row from arcadium/ats-lookup (README example; long text shortened):
{
"rowType": "company",
"input": "notion.so",
"domain": "notion.so",
"ats": "ashby",
"company": "Notion",
"companyToken": "notion",
"boardId": "ashby___notion",
"boardUrl": "https://jobs.ashbyhq.com/notion",
"detection": "html",
"matchConfidence": "high",
"source": "live",
"openJobs": 137,
"openJobsIsLowerBound": false,
"sampledJobs": 137,
"departmentMix": [
{
"name": "Sales",
"jobs": 48,
"share": 0.35
},
{
"name": "People",
"jobs": 16,
"share": 0.117
}
],
"countryMix": [
{
"name": "US",
"jobs": 76,
"share": 0.555
},
{
"name": "IE",
"jobs": 20,
"share": 0.146
}
],
"remoteJobs": 0,
"remoteShare": 0,
"jobsWithPay": 95,
"payShare": 0.693,
"pay": [
{
"currency": "USD",
"period": "year",
"jobs": 71,
"low": 85000,
"high": 400000,
"medianMid": 210000
},
{
"currency": "EUR",
"period": "year",
"jobs": 23,
"low": 45000,
"high": 420000,
"medianMid": 150000
}
],
"newestPostedAt": "2026-10-22T01:52:52.331Z",
"jobsPostedLast30Days": 38,
"dataAsOf": "2026-10-22T04:38:57.030Z",
"checkedAt": "2026-10-22T04:38:57.030Z"
}Output fields: rowType, input, domain, ats, company, companyToken, boardId, boardUrl, detection, matchConfidence, source, openJobs, openJobsIsLowerBound, sampledJobs, departmentMix, countryMix, remoteJobs, remoteShare, jobsWithPay, payShare, pay, newestPostedAt, jobsPostedLast30Days, dataAsOf, checkedAt, platform, code, message, scrapedAt. The rows use these names, not the other actor’s.
Price
| Actor | Pricing model | Charged per | Per 1,000, Free plan | Per 1,000, lowest plan |
|---|---|---|---|---|
| arcadium/ats-lookup | Pay per event | Company with a board | $4.00 | $4.00 |
| starbright_overlap/ats-database | Free (platform usage only) | - | n/a | n/a |
Live Apify prices on 2026-10-31, in USD, for each actor’s main charged event. Start fees and platform usage are not included. Units differ: compare what one charged row contains. The Store page of each actor is the current source.
Common issues: failed or timed-out runs
| Actor | Runs, last 30 days | Failed | Timed out |
|---|---|---|---|
| arcadium/ats-lookup | under 50 runs (1 runs) | - | - |
| starbright_overlap/ats-database | under 50 runs (28 runs) | - | - |
Apify’s public run statistics for each actor, last 30 days to 2026-10-31: FAILED and TIMED-OUT runs as a share of all runs. Shown from 50 runs. A failed run can also come from a bad input. Here an input that cannot be read comes back as a free error row with a code, and the other inputs still arrive.
How to switch
In the Apify Store
- Open arcadium/ats-lookup and sign in to Apify.
- On the Input tab, switch the editor to JSON and paste the input you used for starbright_overlap/ats-database, without the fields listed above as not read.
- Start the run. Set a maximum cost per run in the run options if you want a hard cap.
Over the API
Change the actor ID in the URL from starbright_overlap~ats-database to arcadium~ats-lookup; the body stays the same apart from the fields this actor does not read.
curl -X POST "https://api.apify.com/v2/acts/arcadium~ats-lookup/run-sync-get-dataset-items" \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"companies":["notion","figma"],"providers":["greenhouse"]}'
In n8n
In the Apify node, change the actor to arcadium/ats-lookup and keep the input JSON. With an HTTP Request node:
{
"nodes": [
{
"name": "Run arcadium/ats-lookup",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4,
"position": [
0,
0
],
"parameters": {
"method": "POST",
"url": "https://api.apify.com/v2/acts/arcadium~ats-lookup/run-sync-get-dataset-items",
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth",
"sendBody": true,
"specifyBody": "json",
"jsonBody": "{\"companies\":[\"notion\",\"figma\"],\"providers\":[\"greenhouse\"]}",
"options": {
"timeout": 300000
}
}
}
],
"connections": {}
}
From an AI assistant (MCP)
Add the actor as a tool on Apify’s MCP server; an agent can pass the same input fields.
{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com/?tools=arcadium/ats-lookup",
"headers": {
"Authorization": "Bearer <APIFY_TOKEN>"
}
}
}
}