Search Jobs V2
/search-jobs-v2Enhanced job search with additional filtering capabilities and richer result metadata. V2 offers improved relevance ranking, more filter options, and additional fields in search results. Use this for production job search integrations where result quality and filtering precision matter.
Call it over REST
Authenticate with a bearer token against https://api.agntdata.dev. Swap the placeholders for your key and parameter values.
curl -s "https://api.agntdata.dev/search-jobs-v2?keywords=<keywords>" \
-H "Authorization: Bearer <YOUR_AGNTDATA_API_KEY>"Copy-paste prompt
Paste this into a coding agent. It connects the superagnt MCP server, finds the tool data_linkedin_search_jobs_v2, and runs a first call — with the REST fallback if MCP is unavailable.
You are wiring up the agntdata "LinkedIn" API to use this endpoint: Search Jobs V2.
1. CONNECT over MCP (preferred). Add the superagnt MCP server, then let the client
run OAuth on first tool call — no token to paste:
claude mcp add --scope user --transport http superagnt https://mcp.superagnt.com/mcp
claude mcp login superagnt
MCP endpoint: https://mcp.superagnt.com/mcp
After connecting, the tool you want is named exactly:
data_linkedin_search_jobs_v2
Call agnt_tools_search or agnt_tools_list_enabled to confirm it is available.
2. REST fallback (if you are not using MCP):
GET https://api.agntdata.dev/search-jobs-v2
Header: Authorization: Bearer <YOUR_AGNTDATA_API_KEY>
Required parameters:
- keywords (string, required)
Optional parameters:
- titleIds (string, optional) — please follow this to find title id by title
- salary (string, optional) — it could be one of these; 40k+, 60k+, 80k+, 100k+, 120k+, 140k+, 160k+, 180k+, 200k+ Example: 80k+
- functionIds (string, optional) — please follow this to find function id
- companyIds (string, optional) — please follow this to find company id
- distance (string, optional) — 0 = 0km 5 = 8km 10 = 16km 25 = 40km 50 = 80km 100 = 160km
- experienceLevel (string, optional) — it could be one of these; internship, associate, director, entryLevel, midSeniorLevel. executive example: executive
- locationId (number, optional) — please follow this to find location id
- onsiteRemote (string, optional) — it could be one of these; - onSite - remote - hybrid example: remote
- industryIds (string, optional) — please follow this to find industry id
- sort (string, optional) — it could be one of these; mostRelevant, mostRecent
- jobType (string, optional) — it could be one of these; fullTime, partTime, contract, internship Example: contract
- start (string, optional) — it could be one of these; 0, 50, 100, 150, 200, etc. The maximum number of start is 975
3. COST & KEY. This endpoint is priced per call in credits, and each successful response reports its own cost in its meta.costCents field. Only successful calls are charged.
Get an agntdata API key at https://app.agntdata.dev.
4. TEST. Connect the server (or set the key), discover the tool
(data_linkedin_search_jobs_v2), run one minimal call with just the required parameters,
and report back the shape of the JSON response (top-level fields).
Reference (machine-readable variant): https://superagnt.com/docs/apis/social/linkedin/endpoints/Search_Jobs_V2.md{
"name": "search_jobs_v2",
"description": "Search Jobs",
"parameters": {
"type": "object",
"properties": {
"titleIds": {
"type": "string",
"description": "please follow this to find title id by title"
},
"salary": {
"type": "string",
"description": "it could be one of these; 40k+, 60k+, 80k+, 100k+, 120k+, 140k+, 160k+, 180k+, 200k+\nExample: 80k+"
},
"functionIds": {
"type": "string",
"description": "please follow this to find function id"
},
"companyIds": {
"type": "string",
"description": "please follow this to find company id"
},
"distance": {
"type": "string",
"description": "0 = 0km\n\n5 = 8km\n\n10 = 16km\n\n25 = 40km\n\n50 = 80km\n\n100 = 160km"
},
"experienceLevel": {
"type": "string",
"description": "it could be one of these; internship, associate, director, entryLevel, midSeniorLevel. executive\nexample: executive"
},
"locationId": {
"type": "number",
"description": "please follow this to find location id",
"default": "92000000"
},
"onsiteRemote": {
"type": "string",
"description": "it could be one of these;\n- onSite\n- remote\n- hybrid\n\nexample: remote"
},
"industryIds": {
"type": "string",
"description": "please follow this to find industry id"
},
"sort": {
"type": "string",
"description": "it could be one of these; mostRelevant, mostRecent",
"default": "mostRelevant"
},
"keywords": {
"type": "string",
"description": "query parameter",
"default": "golang"
},
"jobType": {
"type": "string",
"description": "it could be one of these; fullTime, partTime, contract, internship\nExample: contract"
},
"start": {
"type": "string",
"description": "it could be one of these; 0, 50, 100, 150, 200, etc.\nThe maximum number of start is 975"
},
"datePosted": {
"type": "string",
"description": "it could be one of these; anyTime, pastMonth, pastWeek, past24Hours",
"default": "anyTime"
}
},
"required": [
"keywords"
]
}
}| Name | In | Type | Required | Description |
|---|---|---|---|---|
titleIds | query | string | optional | please follow this to find title id by title |
salary | query | string | optional | it could be one of these; 40k+, 60k+, 80k+, 100k+, 120k+, 140k+, 160k+, 180k+, 200k+ Example: 80k+ |
functionIds | query | string | optional | please follow this to find function id |
companyIds | query | string | optional | please follow this to find company id |
distance | query | string | optional | 0 = 0km 5 = 8km 10 = 16km 25 = 40km 50 = 80km 100 = 160km |
experienceLevel | query | string | optional | it could be one of these; internship, associate, director, entryLevel, midSeniorLevel. executive example: executive |
locationId | query | number | optional | please follow this to find location id |
onsiteRemote | query | string | optional | it could be one of these; - onSite - remote - hybrid example: remote |
industryIds | query | string | optional | please follow this to find industry id |
sort | query | string | optional | it could be one of these; mostRelevant, mostRecent |
keywords | query | string | required | |
jobType | query | string | optional | it could be one of these; fullTime, partTime, contract, internship Example: contract |
start | query | string | optional | it could be one of these; 0, 50, 100, 150, 200, etc. The maximum number of start is 975 |
datePosted | query | string | optional | it could be one of these; anyTime, pastMonth, pastWeek, past24Hours |
OK
{
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"message": {
"type": "string"
},
"data": {
"type": "array",
"items": {
"type": "object"
}
},
"total": {
"type": "integer"
}
}
}This endpoint is priced per call and deducted from your agntdata balance; only a successful call is billed. Every billable response reports its own cost in meta.costCents.
Get a key at app.agntdata.dev.
start calling
Point your client at https://mcp.superagnt.com/mcp and your agent has this endpoint, plus every other source on one balance.