Arcadium Data Scrapers
Home / Switch / ATS Database

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 fieldTypeNote
companiesarrayAs is
providersarrayAs 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

ActorPricing modelCharged perPer 1,000, Free planPer 1,000, lowest plan
arcadium/ats-lookupPay per eventCompany with a board$4.00$4.00
starbright_overlap/ats-databaseFree (platform usage only)-n/an/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

ActorRuns, last 30 daysFailedTimed out
arcadium/ats-lookupunder 50 runs (1 runs)--
starbright_overlap/ats-databaseunder 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

  1. Open arcadium/ats-lookup and sign in to Apify.
  2. 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.
  3. 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>"
      }
    }
  }
}

All switching guides