Search Google Jobs: pay per use, no API key
Use SerpApi from Claude, Claude Code, Cursor, ChatGPT, and other agents through one Cralo balance.
Return Google Jobs postings with companies, locations, salaries, and apply links through SerpApi. An empty jobs list is a successful no-match, not an error.
Price and execution
- Price
- $0.025
- Pricing model
- Fixed price per successful call
- Execution class
- fast
Limits
No additional limits are published for this tool.
Parameters
Fields serp.jobs accepts as JSON input.
limitintegerOptionalMaximum number of records to return.
querystringRequiredJob-search terms, such as role, skills, or employer.
countrystringOptionalTwo-letter Google Jobs market. Defaults to `us`. Use `fr` for France, `gb` for the UK, and so on.
languagestringOptionalTwo-letter language code for job results.
locationstringOptionalWhere to search, such as a city, region, or country. Match the employer's market (for example `Paris, France`). Do not default to the United States for non-US employers. `remote`, `worldwide`, and `anywhere` are accepted, then omitted before calling Google Jobs, which does not support them as a location.
Raw input JSON Schema
{
"type": "object",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 100,
"minimum": 1,
"description": "Maximum number of records to return."
},
"query": {
"type": "string",
"maxLength": 1000,
"minLength": 1,
"description": "Job-search terms, such as role, skills, or employer."
},
"country": {
"type": "string",
"default": "us",
"pattern": "^[A-Za-z]{2}quot;,
"description": "Two-letter Google Jobs market. Defaults to `us`. Use `fr` for France, `gb` for the UK, and so on."
},
"language": {
"type": "string",
"default": "en",
"pattern": "^[A-Za-z]{2}quot;,
"description": "Two-letter language code for job results."
},
"location": {
"type": "string",
"maxLength": 255,
"minLength": 1,
"description": "Where to search, such as a city, region, or country. Match the employer's market (for example `Paris, France`). Do not default to the United States for non-US employers. `remote`, `worldwide`, and `anywhere` are accepted, then omitted before calling Google Jobs, which does not support them as a location."
}
},
"additionalProperties": false
}Returns
Fields a successful serp.jobs call returns.
jobsarray of objectRequiredviastring | nullRequiredtitlestringRequiredjob_idstring | nullRequiredsalarystring | nullRequiredlocationstring | nullRequiredposted_atstring | nullRequiredapply_linkstring | nullRequiredHTTP(S) apply URL when Google Jobs provided one. Null when missing or not a valid web URL.
descriptionstring | nullRequiredcompany_namestring | nullRequiredschedule_typestring | nullRequired
querystringRequiredcountrystringRequiredTwo-letter Google Jobs market used for the search.
messagestring | nullRequiredSet when no postings matched, or when Remote/worldwide/anywhere was omitted because Google Jobs does not accept that location. Can be set even when jobs were returned. Null when there is nothing extra to tell the caller.
locationstring | nullRequiredLocation sent to Google Jobs, or null if omitted.
search_idstringRequiredretrieved_atstring (date-time)Required
Raw output JSON Schema
{
"type": "object",
"required": [
"query",
"location",
"country",
"jobs",
"message",
"search_id",
"retrieved_at"
],
"properties": {
"jobs": {
"type": "array",
"items": {
"type": "object",
"required": [
"job_id",
"title",
"company_name",
"location",
"via",
"description",
"posted_at",
"schedule_type",
"salary",
"apply_link"
],
"properties": {
"via": {
"type": [
"string",
"null"
]
},
"title": {
"type": "string"
},
"job_id": {
"type": [
"string",
"null"
]
},
"salary": {
"type": [
"string",
"null"
]
},
"location": {
"type": [
"string",
"null"
]
},
"posted_at": {
"type": [
"string",
"null"
]
},
"apply_link": {
"type": [
"string",
"null"
],
"description": "HTTP(S) apply URL when Google Jobs provided one. Null when missing or not a valid web URL."
},
"description": {
"type": [
"string",
"null"
]
},
"company_name": {
"type": [
"string",
"null"
]
},
"schedule_type": {
"type": [
"string",
"null"
]
}
},
"additionalProperties": false
},
"maxItems": 100
},
"query": {
"type": "string"
},
"country": {
"type": "string",
"description": "Two-letter Google Jobs market used for the search."
},
"message": {
"type": [
"string",
"null"
],
"description": "Set when no postings matched, or when Remote/worldwide/anywhere was omitted because Google Jobs does not accept that location. Can be set even when jobs were returned. Null when there is nothing extra to tell the caller."
},
"location": {
"type": [
"string",
"null"
],
"description": "Location sent to Google Jobs, or null if omitted."
},
"search_id": {
"type": "string"
},
"retrieved_at": {
"type": "string",
"format": "date-time"
}
},
"additionalProperties": false
}Run this tool
Copy this instruction to your agent to set up Cralo and call this tool with the example input.
Set up Cralo by following https://cralo.ai/SKILL.md, then call the serp.jobs tool with this input: {"query":"developer advocate","location":"United States","country":"us","language":"en"}Safety notes
- Side Effect
- read_only
- Public Sources Only
- Yes
How this compares to using SerpApi directly
You do not need a separate SerpApi account or subscription for this call. Cralo uses one prepaid balance across all tools and shows the per-call price before you run the command.
Related tools
[Browse all tools]- $0.025Get Google Trends interestReturn Google Trends interest over time, interest by region, and related queries through SerpApi.SerpApi
serp.trendsInstant - $0.025Search GoogleReturn normalized organic Google results and direct answers through SerpApi. An empty results list is a successful no-match, not an error.SerpApi
serp.googleInstant - $0.025Search Google ImagesReturn Google Images results with source links and thumbnails through SerpApi.SerpApi
serp.imagesInstant - $0.025Search Google MapsReturn Google Maps places with addresses, ratings, and coordinates through SerpApi.SerpApi
serp.mapsInstant - $0.025Search Google NewsReturn current Google News stories, sources, dates, and snippets through SerpApi.SerpApi
serp.newsInstant