Instahyre Jobs Job API
Get one job from its ID or link: title, company, category, functions, skills, locations, experience range and the full description.
- 1 credit per call
- Failed calls are free
- Updated
- instahyre.job.get
{ "title": "Staff Software Engineer - AI", "accept_outstation": false, "candidate_title": "Staff Software Engineer - AI", "description": "<html><body><p><strong>Responsibilities: </strong></p><ul><li>Build and run the LLM control plane/gateway: smart routing, rate limits/quota…", "hiring_company_name": "Tekion", "internship": null, "is_active": true, "is_internship": false, "job_category": "Software Engineering", "opportunity_url": "/job-445591-staff-software-engineer-ai-at-tekion-bangalore/", "recruiter_company_name": "Anzy Careers", "workex_max": 11, "workex_min": 7, "job_function_dict": { "Data Science & Analytics": [ "Data Science / Machine Learning" ], "Software Engineering": [ "Backend Development", "Full-Stack Development" ] }, "agency_function_names": [ "Backend Development", "Data Science / Machine Learning" ], "job_functions": [], "keywords": [ "agent", "airflow" ], "locations": [ "Bangalore" ]}
What you send
The input
object of the request, with every field the endpoint accepts.
| Field | Type | Required | What it does | Example |
|---|---|---|---|---|
| id | integer | one of | The job's number, such as 445591. | 445591 |
| job_url | string | one of | The job's Instahyre link, instead of the number. | |
| include_page_metadata | boolean | no | Also read the job page for its exact posting date. |
Fields it returns
What each record in the response holds, with the values from the sample above.
| Field | Type | What it is | Example |
|---|---|---|---|
| title | string | The job title. | Staff Software Engineer - AI |
| hiring_company_name | string | The company hiring. | Tekion |
| job_category | string | The job's category. | Software Engineering |
| workex_min | integer | Minimum years of experience asked. | 7 |
| workex_max | integer | Maximum years of experience asked. | 11 |
| is_active | boolean | Whether the job is still open. | true |
| recruiter_company_name | string | The recruiting firm, when one posts for the employer. | Anzy Careers |
| accept_outstation | boolean | false | |
| agency_function_names | array | The job functions it covers. | Backend Development, Data Science / Machine Learning, Full-Stac… |
| candidate_title | string | The job title shown to candidates. | Staff Software Engineer - AI |
| description | string | The job description. | <html><body><p><strong>Responsibilities: </strong></p><ul><li>B… |
| internship | null | null | |
| is_internship | boolean | Whether the job is an internship. | false |
| job_function_dict | object | The job functions, grouped by category. | 2 fields |
| job_function_dict.Data Science & Analytics | array | Data Science / Machine Learning | |
| job_function_dict.Software Engineering | array | Backend Development, Full-Stack Development | |
| job_functions | array | The job functions listed. | empty in this sample |
| keywords | array | Skills the job lists. | agent, airflow, java |
| locations | array | Where the job is. | Bangalore |
| opportunity_url | string | The job's address on Instahyre. | /job-445591-staff-software-engineer-ai-at-tekion-bangalore/ |
Call it from your code, or ask your agent
Set UPSCRAPE_API_KEY to your key and copy a working request.
curl --request POST \ --url https://data.upscrape.com/execute \ --header "Authorization: Bearer $UPSCRAPE_API_KEY" \ --header "Content-Type: application/json" \ --header "Prefer: wait=30" \ --data '{ "capability": "instahyre.job.get", "input": { "id": 445591 }}'
import jsonimport osimport requestspayload = json.loads(r'''{ "capability": "instahyre.job.get", "input": { "id": 445591 }}''')response = requests.post( "https://data.upscrape.com/execute", headers={ "Authorization": f"Bearer {os.environ['UPSCRAPE_API_KEY']}", "Content-Type": "application/json", "Prefer": "wait=30", }, json=payload,)response.raise_for_status()print(json.dumps(response.json(), indent=2))
const response = await fetch("https://data.upscrape.com/execute", { method: "POST", headers: { "Authorization": `Bearer ${process.env.UPSCRAPE_API_KEY}`, "Content-Type": "application/json", "Prefer": "wait=30", }, body: JSON.stringify({ "capability": "instahyre.job.get", "input": { "id": 445591 }}),});if (!response.ok) { throw new Error(`Upscrape request failed: ${response.status}`);}console.log(JSON.stringify(await response.json(), null, 2));
https://data.upscrape.com/mcp
With Upscrape, open Instahyre job 445591 and summarise the role, the skills it wants and the experience it asks for.
More from the Instahyre Jobs API
- Instahyre Jobs Search API1 credit
- Instahyre Jobs Company API1 credit
- Instahyre Jobs Company Jobs API1 credit
- Instahyre Jobs Similar Jobs API1 credit
- Instahyre Jobs Autocomplete Companies API1 credit
- Instahyre Jobs Job Functions API1 credit
- Instahyre Jobs Industries API1 credit
- Instahyre Jobs Locations API1 credit
The same data from other platforms
Instahyre Jobs Job API FAQ
The short answers. The docs have the long ones.
How much does the Instahyre Jobs Job API cost?
1 credit per successful call, shown before it runs. You buy credits once, and paid credits never expire.
What do I send?
Every input is optional; the input fields below list what each one does.
Do I need an Instahyre Jobs login?
No. It reads public Instahyre Jobs data; nothing runs on your account.
Can my AI agent call it?
Yes, over MCP: the agent finds instahyre.job.get, checks its price and runs it with the same credits as the REST API.
Your first Instahyre Jobs call is free.
Up to 100 free credits to start, no card needed.