Google API endpoint
Searches Google Jobs for the `query` in the request body, optionally narrowed by `location` and paged with `page`. Each result has the job title, company, location, employment type, posting time, snippet, source and URL. The response echoes the query, location and page.
/google/jobsJSON body: query is required. location and page are optional.
| Field | Filled in, of 10 checked | Values in the sample |
|---|---|---|
| title | 10 | “Software Engineering LMTS” and 9 other values |
| company | 10 | “Salesforce” and 9 other values |
| location | 10 | San Francisco, CA (9), San Francisco, CA (+1 other) (1) |
| source | 10 | “LinkedIn” and 6 other values |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| option (body) | object | Yes | Google Jobs search payload | ||
| x-api-key (header) | string | Yes | API key required |
curl -X POST "https://api.crawlora.net/api/v1/google/jobs" \
-H "x-api-key: $CRAWLORA_API_KEY" \
-H "Content-Type: application/json" \
-d '{"location":"San Francisco, CA","page":1,"query":"software engineer"}'{
"location": "San Francisco, CA",
"page": 1,
"query": "software engineer"
}{
"code": 200,
"msg": "OK",
"data": {
"query": "software engineer",
"location": "San Francisco, CA",
"page": 1,
"results": [
{
"title": "Software Engineer",
"snippet": "Software Engineer · Example"
}
]
}
}Request schema
#/definitions/google.JobsOption
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| location | string | No | San Francisco, CA | |||
| page | integer | No | 1 | |||
| query | string | Yes | software engineer |
Response schema
#/definitions/google.JobsResponse
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| location | string | No | San Francisco, CA | Location filter that was applied. Omitted when none was given. | ||
| page | integer | No | 1 | Page number returned, starting at 1. | ||
| query | string | No | software engineer | Search query that was run. | ||
| results | array | No | Job postings on this page. | |||
| results[].company | string | No | Name of the hiring company. | |||
| results[].employment | string | No | Employment type shown on the job card, for example full-time. | |||
| results[].location | string | No | Job location as shown on the job card. | |||
| results[].posted_at | string | No | How long ago the job was posted, as Google shows it, for example `3 days ago`. | |||
| results[].snippet | string | No | Short description text from the job card. | |||
| results[].source | string | No | Site or board Google lists the job from. | |||
| results[].title | string | No | Job title as shown on the job card. | |||
| results[].url | string | No | URL of the job posting. |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 429 | Too Many Requests | #/definitions/app.Response |
| 503 | Service Unavailable | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X POST "https://api.crawlora.net/api/v1/google/jobs" \
-H "x-api-key: $CRAWLORA_API_KEY" \
-H "Content-Type: application/json" \
-d '{"location":"San Francisco, CA","page":1,"query":"software engineer"}'