Skip to content

Google Jobs SERP 支持的地点列表

本接口使用 GET 方法,请求路径为:

/v3/serp/google/jobs/locations

用于获取 Google Jobs SERP API 支持的地点列表。本接口无需提交请求体,也不需要创建任务。

计费说明

本接口调用,不收取接口费用。

如响应中产生费用,扣费以响应头 X-SeerMarTech-Charge-CNY 为准。

地点列表下载

除通过 API 获取外,也可以下载完整的支持地点列表:

下载 Google Jobs 地点列表 CSV

列表最近更新时间:2026-09-01

> 注意:由于服务政策限制,俄罗斯和白俄罗斯的地点目前不再支持。

请求信息

项目
HTTP 方法GET
请求路径/v3/serp/google/jobs/locations
请求体
返回格式JSON

认证方式

请求时请在 HTTP Header 中携带以下认证信息:

http
Authorization: Bearer smt_live_YOUR_KEY
Content-Type: application/json

响应结构

接口返回 JSON 数据 tasks 数组本次请求的任务结果。

顶层字段

字段类型说明
versionstring当前 API 版本
status_codeinteger请求级状态码
status_messagestring请求级状态说明
timestring请求执行耗时,单位为秒
costfloat平台原始 USD 成本兼容字段;人民币实扣以 X-SeerMarTech-Charge-CNY 为准。
tasks_countintegertasks 数组中的任务数量
tasks_errorinteger返回错误的任务数量
tasksarray任务结果数组

tasks 数组字段

字段类型说明
idstring任务唯一标识,UUID 格式
status_codeinteger任务状态码,通常在 10000-60000 范围
status_messagestring任务状态说明
timestring任务执行耗时,单位为秒
costfloat平台原始 USD 成本兼容字段;人民币实扣以 X-SeerMarTech-Charge-CNY 为准。
result_countintegerresult 数组中的数量
patharray请求 URL 路径
dataobjectGET 请求中使用的接口参数
resultarray地点列表结果

完整状态码和错误信息请参考错误码文档。

result 地点字段

字段类型说明
location_codeinteger地点代码
location_namestring地点完整名称
location_code_parentinteger上级地点代码
country_iso_codestring地点所属国家或地区的 ISO 代码
location_typestring地点类型

location_code_parent 用于表示当前地点的上级区域。例如:

json
{
  "location_code": 9041134,
  "location_name": "Vienna International Airport,Lower Austria,Austria",
  "location_code_parent": 20044
}

location_code_parent20044,对应的上级地点可能为:

json
{
  "location_code": 20044,
  "location_name": "Lower Austria,Austria"
}

请求示例

cURL

bash
curl --location --request GET \
  "https://api.seermartech.cn/v3/serp/google/jobs/locations" \
  --header "Authorization: Bearer smt_live_YOUR_KEY" \
  --header "Content-Type: application/json"

PHP

php
<?php

$ch = curl_init();

curl_setopt_array($ch, [
    CURLOPT_URL => 'https://api.seermartech.cn/v3/serp/google/jobs/locations',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer smt_live_YOUR_KEY',
        'Content-Type: application/json',
    ],
]);

$response = curl_exec($ch);

if ($response === false) {
    echo '请求失败:' . curl_error($ch);
} else {
    $result = json_decode($response, true);
    print_r($result);
}

curl_close($ch);

TypeScript

typescript
import axios from 'axios';

axios.get(
  'https://api.seermartech.cn/v3/serp/google/jobs/locations',
  {
    headers: {
      Authorization: 'Bearer smt_live_YOUR_KEY',
      'Content-Type': 'application/json',
    },
  }
)
  .then((response) => {
    // 处理响应数据
    console.log(response.data);
  })
  .catch((error) => {
    console.error('请求失败:', error.response?.data || error.message);
  });

Python

python
import requests

url = "https://api.seermartech.cn/v3/serp/google/jobs/locations"

headers = {
    "Authorization": "Bearer smt_live_YOUR_KEY",
    "Content-Type": "application/json",
}

response = requests.get(url, headers=headers)

if response.status_code == 200:
    result = response.json()

    if result.get("status_code") == 20000:
        print(result)
    else:
        print(
            "接口错误。状态码:%s,信息:%s"
            % (result.get("status_code"), result.get("status_message"))
        )
else:
    print("HTTP 请求失败:", response.status_code, response.text)

C#

csharp
using System;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Threading.Tasks;

public class SerpLocationsDemo
{
    public static async Task Main()
    {
        using var httpClient = new HttpClient();

        httpClient.DefaultRequestHeaders.Authorization =
            new AuthenticationHeaderValue("Bearer", "smt_live_YOUR_KEY");

        httpClient.DefaultRequestHeaders.Accept.Add(
            new MediaTypeWithQualityHeaderValue("application/json")
        );

        var response = await httpClient.GetAsync(
            "https://api.seermartech.cn/v3/serp/google/jobs/locations"
        );

        var content = await response.Content.ReadAsStringAsync();

        if (response.IsSuccessStatusCode)
        {
            Console.WriteLine(content);
        }
        else
        {
            Console.WriteLine(
                $"HTTP 请求失败。状态码:{(int)response.StatusCode},信息:{content}"
            );
        }
    }
}

响应示例

json
{
  "version": "3.20191128",
  "status_code": 20000,
  "status_message": "Ok.",
  "time": "0.4305 sec.",
  "cost": 0,
  "tasks_count": 1,
  "tasks_error": 0,
  "tasks": [
    {
      "id": "082f7c2e-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
      "status_code": 20000,
      "status_message": "Ok.",
      "time": "0.4305 sec.",
      "cost": 0,
      "result_count": 1,
      "path": [
        "v3",
        "serp",
        "google",
        "jobs",
        "locations"
      ],
      "data": {
        "api": "serp",
        "function": "locations",
        "se": "google",
        "se_type": "jobs"
      },
      "result": [
        {
          "location_code": 9041134,
          "location_name": "Vienna International Airport,Lower Austria,Austria",
          "location_code_parent": 20044,
          "country_iso_code": "AT",
          "location_type": "Airport"
        }
      ]
    }
  ]
}

实用场景

  • 获取可用地点代码,为 Google Jobs SERP 查询构造合法的地域参数,因地点不受支持导致任务失败。
  • 构建地点选择器,将地点名称、地点类型和层级展示给运营人员,支持按国家、地区或城市筛选。
  • 校验 SEO 监测,在创建地域化职位搜索排名任务前验证目标地点是否存在于支持列表中。
  • 建立地点层级映射,利用 location_code_parent 机场、城市、州或国家等上下级区域,便于聚合分析。
  • 同步地点字,定期获取最新支持地点列表,为职位搜索、招聘市场分析和区域研究提供标准化数据。

统一入口:官网 · LLM API · 控制台