Skip to content

content_analysis/locations

GET /v3/content_analysis/locations

#分析位置列表

接口说明

GET /v3/content_analysis/locations

本接口用于获取分析 API 支持的地理位置列表位置名称和对应的 ISO 国家代码。

本接口调用,不收取任务费用。扣费以响应头 X-SeerMarTech-Charge-CNY 为准。

> 注意:俄罗斯和白俄罗斯境的所有位置目前均不再支持。

接口返回 JSON 数据 tasks 数组及任务执行信息。

请求

请求方法与路径

http
GET https://api.seermartech.cn/v3/content_analysis/locations

本接口无需请求体,也不需要查询参数。

请求头

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

响应字段

顶层字段

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

tasks 数组字段

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

完整响应状态码和错误说明请参考错误码文档。

result 数组字段

字段类型说明
location_namestring地理位置的完整名称
country_iso_codestring地理位置所属国家或地区的 ISO 代码

请求示例

cURL

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

Python

python
import requests

url = "https://api.seermartech.cn/v3/content_analysis/locations"

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

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

if result.get("status_code") == 20000:
    # 获取位置列表
    for task in result.get("tasks", []):
        for location in task.get("result", []):
            print(
                location.get("location_name"),
                location.get("country_iso_code"),
            )
else:
    print(
        "请求失败,状态码:{},说明:{}".format(
            result.get("status_code"),
            result.get("status_message"),
        )
    )

TypeScript

typescript
import axios from "axios";

axios
  .get("https://api.seermartech.cn/v3/content_analysis/locations", {
    headers: {
      Authorization: "Bearer smt_live_YOUR_KEY",
      "Content-Type": "application/json",
    },
  })
  .then((response) => {
    const result = response.data;

    if (result.status_code === 20000) {
      // 获取位置列表
      for (const task of result.tasks ?? []) {
        for (const location of task.result ?? []) {
          console.log(
            location.location_name,
            location.country_iso_code
          );
        }
      }
    } else {
      console.error(
        `请求失败,状态码:${result.status_code},说明:${result.status_message}`
      );
    }
  })
  .catch((error) => {
    console.error("网络请求失败:", error.message);
  });

PHP

php
<?php

$url = 'https://api.seermartech.cn/v3/content_analysis/locations';

$ch = curl_init($url);

curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer smt_live_YOUR_KEY',
        'Content-Type: application/json',
    ],
]);

$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);

$result = json_decode($response, true);

if (($result['status_code'] ?? null) === 20000) {
    foreach ($result['tasks'] ?? [] as $task) {
        foreach ($task['result'] ?? [] as $location) {
            echo $location['location_name'] . ' - '
                . $location['country_iso_code'] . PHP_EOL;
        }
    }
} else {
    echo '请求失败,HTTP 状态码:' . $httpCode . PHP_EOL;
    echo '接口状态码:' . ($result['status_code'] ?? '未知') . PHP_EOL;
    echo '错误说明:' . ($result['status_message'] ?? '未知') . PHP_EOL;
}

C#

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

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

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

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

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

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

响应示例

json
{
  "version": "3.20191128",
  "status_code": 20000,
  "status_message": "Ok.",
  "time": "0.4305 sec.",
  "cost": 0,
  "tasks_count": 1,
  "tasks_error": 0,
  "tasks": [
    {
      "id": "00000000-0000-0000-0000-000000000000",
      "status_code": 20000,
      "status_message": "Ok.",
      "time": "0.1200 sec.",
      "cost": 0,
      "result_count": 2,
      "path": [
        "v3",
        "content_analysis",
        "locations"
      ],
      "data": {
        "api": "content_analysis",
        "function": "locations"
      },
      "result": [
        {
          "location_name": "United States",
          "country_iso_code": "US"
        },
        {
          "location_name": "United Kingdom",
          "country_iso_code": "GB"
        }
      ]
    }
  ]
}

实用场景

  • 加载支持的位置列表:在分析任务创建前校验目标国家或地区,提交不受支持的位置。
  • 构建位置选择器:将 location_namecountry_iso_code 转换为后台下拉选项,帮助用户准确选择分析市场。
  • 标准化市场数据:使用 ISO 国家代码统一不同来源的地区名称,便于跨国家 SEO 报告汇总。
  • 筛选可用分析区域:根据接口返回结果动态控制分析覆盖范围,减少无效任务提交。
  • 维护区域缓存:定期获取并缓存位置字,为批量分析和多市场研究提供稳定的参数基础。

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