Google Jobs API
Get structured job listings from Google Jobs. Set engine=google_jobs and pass a query such as barista or software engineer to retrieve titles, employers, locations, and application links.
Endpoint
Section titled “Endpoint” GET https://serp.shifter.io/v1?engine=google_jobs&api_key=YOUR_API_KEY
Parameters
Section titled “Parameters”| Parameter | Type | Required | Description |
|---|---|---|---|
api_key | string | yes | Your SERP API key |
engine | string | yes | Must be google_jobs |
q | string | yes | The job search query |
device | string | no | desktop, mobile, or tablet |
google_domain | string | no | Google domain to use |
location | string | no | Geotargeting location name |
uule | string | no | Google encoded location string |
hl | string | no | Interface language code |
gl | string | no | Country code |
start | int | no | Result offset for pagination |
Example request
Section titled “Example request”curl "https://serp.shifter.io/v1?engine=google_jobs&api_key=YOUR_API_KEY&q=barista"import requests
params = { "engine": "google_jobs", "api_key": "YOUR_API_KEY", "q": "barista",}r = requests.get("https://serp.shifter.io/v1", params=params)data = r.json()import fetch from 'node-fetch';
const url = 'https://serp.shifter.io/v1?' + new URLSearchParams({ engine: 'google_jobs', api_key: 'YOUR_API_KEY', q: 'barista',});const data = await (await fetch(url)).json();Example response
Section titled “Example response”{ "search_parameters": { "engine": "google_jobs", "q": "barista", "google_domain": "google.com" }, "jobs_results": [ { "title": "Barista", "company_name": "Starbucks", "location": "New York, NY", "via": "via Indeed", "description": "Create the Starbucks Experience...", "detected_extensions": { "posted_at": "2 days ago", "schedule_type": "Part-time" }, "job_id": "eyJqb2JfdGl0bGUiOiJCYXJpc3RhIi..." } ]}