Reference
API reference
Everything the dashboard does, over REST. Generated live from the OpenAPI spec — create crawl jobs, list and enrich leads, run AI search, manage schedules, workflows and integrations, and export data.
Authentication
Send an API key as the X-API-Key header, or a short-lived access token as Authorization: Bearer <token> — details in Authentication.
curl https://api.orbicrawl.com/api/v1/jobs \
-H "X-API-Key: oc_live_..." \
-H "Content-Type: application/json" \
-d '{"urls":["https://acme.com"],"config":{"max_depth":1}}'Endpoints (71)
AI8
post/ai/assistantIn-dashboard AI assistant grounded in the workspace's data
/ai/assistantIn-dashboard AI assistant grounded in the workspace's dataAccepts a JSON request body — see the interactive playground for the full schema.
post/ai/jobs/{id}/icp-match-allScore a job's unscored leads against the workspace ICP
/ai/jobs/{id}/icp-match-allScore a job's unscored leads against the workspace ICPParameters
idpathrequired
post/ai/leads/{id}/emailGenerate a personalized outreach email for a lead — charges credits
/ai/leads/{id}/emailGenerate a personalized outreach email for a lead — charges creditsParameters
idpathrequired
Accepts a JSON request body — see the interactive playground for the full schema.
post/ai/leads/{id}/enrichAI-enrich a lead (summary, category, industry, lead score) — charges credits
/ai/leads/{id}/enrichAI-enrich a lead (summary, category, industry, lead score) — charges creditsParameters
idpathrequired
post/ai/leads/{id}/icp-matchScore a lead against the workspace's Ideal Customer Profile — charges credits
/ai/leads/{id}/icp-matchScore a lead against the workspace's Ideal Customer Profile — charges creditsParameters
idpathrequired
get/ai/leads/{id}/outreachStored outreach generations for a lead
/ai/leads/{id}/outreachStored outreach generations for a leadParameters
idpathrequired
post/ai/leads/{id}/outreachGenerate and store an outreach asset
/ai/leads/{id}/outreachGenerate and store an outreach assetParameters
idpathrequired
Accepts a JSON request body — see the interactive playground for the full schema.
post/ai/searchNatural-language lead search — AI translates the query into a filter and returns matching leads
/ai/searchNatural-language lead search — AI translates the query into a filter and returns matching leadsAccepts a JSON request body — see the interactive playground for the full schema.
Analytics2
/analytics/forecastUsage & credit forecast — avg daily burn, days-until-empty, 30-day projection/analytics/overviewWorkspace analytics — activity charts, top segments, quality/deliverability breakdownsBilling3
/billing/currenciesSupported display currencies + FX rates/billing/overviewSubscription, wallet and recent ledgerget/billing/plansPublic plan catalog (optional ?currency= converts prices)
/billing/plansPublic plan catalog (optional ?currency= converts prices)Parameters
currencyquery
Compliance5
/compliance/deletion-requestsList deletion requests/compliance/deletion-requestsFile a data-deletion request/compliance/exportExport all workspace data as JSON (GDPR portability)/compliance/leadsErase all leads (right to erasure)/compliance/retentionSet the lead data-retention window (days)Digests2
/digestsList digest subscriptionspost/digestsSchedule a recurring digest by email and/or Slack
/digestsSchedule a recurring digest by email and/or SlackAccepts a JSON request body — see the interactive playground for the full schema.
Discovery2
post/discoverySearch-engine discovery — find candidate company websites for a query
/discoverySearch-engine discovery — find candidate company websites for a queryAccepts a JSON request body — see the interactive playground for the full schema.
post/discovery/mapsGoogle Maps / Places discovery (needs GOOGLE_PLACES_API_KEY)
/discovery/mapsGoogle Maps / Places discovery (needs GOOGLE_PLACES_API_KEY)Accepts a JSON request body — see the interactive playground for the full schema.
Health1
/healthLiveness + dependency checkHiring3
get/hiring/companiesCompanies hiring, aggregated into a lead list
/hiring/companiesCompanies hiring, aggregated into a lead listParameters
techquerytitlequerycountryqueryposted_within_daysquerymin_rolesqueryOnly companies with at least this many matching roleslimitquery
get/hiring/searchOpen roles matching a hiring signal
/hiring/searchOpen roles matching a hiring signalParameters
techqueryTechnology named in the posting; aliases resolve (reactjs -> React)titlequerySubstring of the job titlecountryqueryremotequeryposted_within_daysquerylimitquery
/hiring/technologiesWhat the market is hiring for, most in demand firstICP2
/icpGet the workspace's Ideal Customer Profileput/icpCreate or update the workspace's Ideal Customer Profile
/icpCreate or update the workspace's Ideal Customer ProfileAccepts a JSON request body — see the interactive playground for the full schema.
Integrations5
/integrationsList outbound integrations (CRM / Zapier / Make / n8n)post/integrationsConnect an integration (webhook | hubspot | pipedrive | zoho | airtable | google_sheets | slack)
/integrationsConnect an integration (webhook | hubspot | pipedrive | zoho | airtable | google_sheets | slack)Accepts a JSON request body — see the interactive playground for the full schema.
delete/integrations/{id}Remove an integration
/integrations/{id}Remove an integrationParameters
idpathrequired
post/integrations/{id}/pushPush leads to the integration (by job_id or lead_ids)
/integrations/{id}/pushPush leads to the integration (by job_id or lead_ids)Parameters
idpathrequired
Accepts a JSON request body — see the interactive playground for the full schema.
/integrations/pushesRecent integration push attempts, including retriesJobs8
get/jobsList crawl jobs
/jobsList crawl jobsParameters
pagequeryper_pagequerystatusquery
post/jobsCreate a crawl job from one or more URLs
/jobsCreate a crawl job from one or more URLsAccepts a JSON request body — see the interactive playground for the full schema.
get/jobs/{id}Get a job
/jobs/{id}Get a jobParameters
idpathrequired
post/jobs/{id}/cancelCancel a running job (refunds unspent credits)
/jobs/{id}/cancelCancel a running job (refunds unspent credits)Parameters
idpathrequired
get/jobs/{id}/eventsServer-Sent Events stream of live progress
/jobs/{id}/eventsServer-Sent Events stream of live progressParameters
idpathrequired
post/jobs/{id}/exportExport a job's leads (csv | xlsx | json)
/jobs/{id}/exportExport a job's leads (csv | xlsx | json)Parameters
idpathrequired
Accepts a JSON request body — see the interactive playground for the full schema.
get/jobs/{id}/leadsList leads for a job
/jobs/{id}/leadsList leads for a jobParameters
idpathrequired
post/jobs/csvCreate a crawl job from a CSV upload (multipart/form-data)
/jobs/csvCreate a crawl job from a CSV upload (multipart/form-data)Accepts a JSON request body — see the interactive playground for the full schema.
Leads10
/leadsList all leads in the workspaceget/leads/{id}/emailsPer-address email verification state for a lead
/leads/{id}/emailsPer-address email verification state for a leadParameters
idpathrequired
get/leads/{id}/emails/{email_id}/historyVerification history for one address
/leads/{id}/emails/{email_id}/historyVerification history for one addressParameters
idpathrequiredemail_idpathrequired
post/leads/{id}/emails/verifyRe-verify every address on a lead now
/leads/{id}/emails/verifyRe-verify every address on a lead nowParameters
idpathrequired
get/leads/{id}/notesNotes on a lead
/leads/{id}/notesNotes on a leadParameters
idpathrequired
post/leads/{id}/notesAdd a note to a lead
/leads/{id}/notesAdd a note to a leadParameters
idpathrequired
Accepts a JSON request body — see the interactive playground for the full schema.
get/leads/{id}/tagsTags on a lead
/leads/{id}/tagsTags on a leadParameters
idpathrequired
post/leads/{id}/tagsAssign a tag to a lead (by id, or create by name)
/leads/{id}/tagsAssign a tag to a lead (by id, or create by name)Parameters
idpathrequired
Accepts a JSON request body — see the interactive playground for the full schema.
post/leads/captureSave a page as a lead (browser extension)
/leads/captureSave a page as a lead (browser extension)Accepts a JSON request body — see the interactive playground for the full schema.
/leads/duplicatesDuplicate leads grouped by registrable domainSaved searches2
/saved-searchesList saved lead searchespost/saved-searchesSave a lead search
/saved-searchesSave a lead searchAccepts a JSON request body — see the interactive playground for the full schema.
Schedules7
/schedulesList crawl schedules & monitorspost/schedulesCreate a recurring crawl or change monitor
/schedulesCreate a recurring crawl or change monitorAccepts a JSON request body — see the interactive playground for the full schema.
delete/schedules/{id}Delete a schedule
/schedules/{id}Delete a scheduleParameters
idpathrequired
get/schedules/{id}Get a schedule
/schedules/{id}Get a scheduleParameters
idpathrequired
patch/schedules/{id}Update a schedule (enable/pause, interval, urls)
/schedules/{id}Update a schedule (enable/pause, interval, urls)Parameters
idpathrequired
post/schedules/{id}/runRun a schedule immediately
/schedules/{id}/runRun a schedule immediatelyParameters
idpathrequired
/schedules/changesRecent content-change events (website monitoring)Tools3
post/tools/extract-contactsExtract emails, phones and socials from a page (public, no auth)
/tools/extract-contactsExtract emails, phones and socials from a page (public, no auth)Accepts a JSON request body — see the interactive playground for the full schema.
post/tools/techDetect the technologies behind a website (public, no auth)
/tools/techDetect the technologies behind a website (public, no auth)Accepts a JSON request body — see the interactive playground for the full schema.
post/tools/verify-emailVerify an email address (public, no auth)
/tools/verify-emailVerify an email address (public, no auth)Accepts a JSON request body — see the interactive playground for the full schema.
Workflows4
/workflowsList automation workflowspost/workflowsCreate a workflow (steps run against a job's leads)
/workflowsCreate a workflow (steps run against a job's leads)Accepts a JSON request body — see the interactive playground for the full schema.
delete/workflows/{id}Delete a workflow
/workflows/{id}Delete a workflowParameters
idpathrequired
post/workflows/{id}/runRun a workflow against a job's leads
/workflows/{id}/runRun a workflow against a job's leadsParameters
idpathrequired
Accepts a JSON request body — see the interactive playground for the full schema.
Workspace2
/workspace/brandingGet white-label branding/workspace/brandingUpdate white-label branding (admin)