Skip to Content
CompanySpec
API referenceJob postings

Get a job posting

GET
/job-postings/{id}

The full job posting, open or closed (status and closed_on show which). Costs 1 lookup for its company unless already paid for this billing month.

Authorization

bearerAuth
headerAuthorizationBearer <token>

Your API key, sent as Authorization: Bearer <key>. Create keys in the dashboard.

Path Parameters

id*string

A job posting id from the job posting list or search endpoints.

Response Body

Job posting.

application/json
  1. response
job_posting*
usage*

What this request cost and what is left this billing month.

Example Request
curl -X GET 'https://api.companyspec.com/v1/job-postings/job_77x2a'
Example Response
{  "job_posting": {    "id": "job_77x2a",    "company": {      "id": "cmp_19ad3",      "domain": "acmedental.io",      "name": "AcmeDental",      "logo_url": null    },    "title": "Senior Backend Engineer",    "normalized_title": "backend engineer",    "job_function": "engineering",    "seniority": "senior",    "employment_type": "full_time",    "workplace_type": "remote",    "locations": [      "Austin, TX, United States"    ],    "salary": {      "min": 150000,      "max": 180000,      "currency": "USD",      "period": "year"    },    "technologies": [      "python",      "postgresql",      "aws"    ],    "experience_years": 5,    "education": null,    "benefits": [      "health insurance",      "401k"    ],    "visa_sponsorship": false,    "summary": "Build the scheduling and billing services behind AcmeDental's practice management platform.",    "url": "https://jobs.example.com/acmedental/77x2a",    "posted_on": "2026-10-20",    "closed_on": null,    "status": "open"  },  "usage": {    "charged": {      "lookups": 0,      "discoveries": 0    },    "already_paid": 1,    "remaining": {      "lookups": 9750,      "discoveries": 1977    }  }}