Get a company hiring profile
Get a company hiring profile. Hiring profile for one company domain.
Cost: 1 credit / request1 credit per profile.
const url = 'https://api.betterjobs.cc/v1/companies/acme-robotics.example';const options = { method: 'GET', headers: {'BetterJobs-Version': '2026-10-01', Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://api.betterjobs.cc/v1/companies/acme-robotics.example \ --header 'Authorization: Bearer <token>' \ --header 'BetterJobs-Version: 2026-10-01'Hiring profile for one company domain. is_hiring.value is true, false or null.
null means unknown. Never treat null as false.
Authorizations
Section titled “Authorizations”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters”Example
acme-robotics.exampleCompany domain, without scheme or path.
Header Parameters
Section titled “Header Parameters”Example
2026-10-01Date-pinned API version. Changes within a version are additive only. Defaults to your account’s pinned version.
Responses
Section titled “ Responses ”Company hiring profile.
object
Company reference embedded in jobs, events and profiles.
object
Primary web domain. null when unknown.
object
null = unknown. Never treat null as false.
Plain-English reason for the value.
object
Change in open jobs over the last 30 days.
object
object
Source slug. betterjobs is the BetterJobs index.
Examples
Company that is hiring
{ "company": { "id": "cmp_4Rk7TzP1aQ", "name": "Acme Robotics", "domain": "acme-robotics.example" }, "open_jobs_count": 42, "is_hiring": { "value": true, "confidence": 0.96, "basis": "42 open jobs corroborated by 4 sources in the last 30 days" }, "hiring_pulse": { "direction": "up", "open_jobs_30d_change": 9 }, "top_job_families": [ { "job_family": "engineering", "open_jobs": 18 }, { "job_family": "sales", "open_jobs": 11 }, { "job_family": "operations", "open_jobs": 6 } ], "sources": [ { "provider": "betterjobs", "open_jobs": 38, "last_seen_at": "2026-10-11T06:10:00Z" }, { "provider": "theirstack", "open_jobs": 31, "last_seen_at": "2026-10-11T04:02:00Z" }, { "provider": "techmap", "open_jobs": 27, "last_seen_at": "2026-10-10T23:40:00Z" }, { "provider": "coresignal", "open_jobs": 25, "last_seen_at": "2026-10-10T18:15:00Z" } ]}Not enough signal (unknown, not "not hiring")
{ "company": { "id": "cmp_9Hs2VbN6eW", "name": "Northwind Traders", "domain": "northwind.example" }, "open_jobs_count": 0, "is_hiring": { "value": null, "confidence": 0, "basis": "No careers page or ATS found for this domain" }, "hiring_pulse": { "direction": "flat", "open_jobs_30d_change": 0 }, "top_job_families": [], "sources": []}Headers
Section titled “Headers”Example
req_7Hc2LmQ9xTUnique id for this request. Quote it to support.
Example
1Credits charged by this request.
Example
9841Credits left on your account after this request.
Example
60Requests allowed in the current window.
Example
59Requests left in the current window.
Example
42Seconds until the window resets.
Missing or invalid API key.
object
object
Present on insufficient_credits.
Present on insufficient_credits and plan_required.
Offending field on invalid_request and unknown_filter.
Examples
{ "error": { "type": "authentication_error", "code": "unauthorized", "message": "Missing or invalid API key. Send 'Authorization Bearer bj_live_...'.", "doc_url": "https://docs.betterjobs.cc/platform/errors/#unauthorized", "request_id": "req_5Dl6EvN0xY" }}Headers
Section titled “Headers”Example
req_7Hc2LmQ9xTUnique id for this request. Quote it to support.
Not enough credits for this request.
object
object
Present on insufficient_credits.
Present on insufficient_credits and plan_required.
Offending field on invalid_request and unknown_filter.
Examples
{ "error": { "type": "billing_error", "code": "insufficient_credits", "message": "This request needs at least 25 credits; 3 remain.", "credits_needed": 25, "upgrade_url": "https://betterjobs.cc/pricing", "doc_url": "https://docs.betterjobs.cc/platform/errors/#insufficient_credits", "request_id": "req_6Ek5FuM9wX" }}Headers
Section titled “Headers”Example
req_7Hc2LmQ9xTUnique id for this request. Quote it to support.
The resource does not exist.
object
object
Present on insufficient_credits.
Present on insufficient_credits and plan_required.
Offending field on invalid_request and unknown_filter.
Examples
{ "error": { "type": "not_found_error", "code": "not_found", "message": "No job with id 'job_01JC00000000000000000000XX'.", "doc_url": "https://docs.betterjobs.cc/platform/errors/#not_found", "request_id": "req_8Gi3HsK7uV" }}Headers
Section titled “Headers”Example
req_7Hc2LmQ9xTUnique id for this request. Quote it to support.
Too many requests. Wait Retry-After seconds.
object
object
Present on insufficient_credits.
Present on insufficient_credits and plan_required.
Offending field on invalid_request and unknown_filter.
Examples
{ "error": { "type": "rate_limit_error", "code": "rate_limited", "message": "Rate limit exceeded. Retry after 12 seconds.", "doc_url": "https://docs.betterjobs.cc/platform/errors/#rate_limited", "request_id": "req_0Ig1JqH5sT" }}Headers
Section titled “Headers”Example
req_7Hc2LmQ9xTUnique id for this request. Quote it to support.
Example
12Seconds to wait before retrying.
Example
60Requests allowed in the current window.
Example
59Requests left in the current window.
Example
42Seconds until the window resets.
Something failed on our side. Safe to retry with the same Idempotency-Key.
object
object
Present on insufficient_credits.
Present on insufficient_credits and plan_required.
Offending field on invalid_request and unknown_filter.
Examples
{ "error": { "type": "api_error", "code": "internal_error", "message": "Unexpected error. Retry with the same Idempotency-Key; you will not be charged twice.", "doc_url": "https://docs.betterjobs.cc/platform/errors/#internal_error", "request_id": "req_1Jf0KpG4rS" }}Headers
Section titled “Headers”Example
req_7Hc2LmQ9xTUnique id for this request. Quote it to support.