Google Trends API
查询趋势随时间变化、相关主题和相关查询。
接口地址
GET https://api.goanyapi.com/api/v1/google-trends当前配置按每个关键词消耗 6 积分。
鉴权
Authorization: Bearer YOUR_API_KEY请求参数
| 参数 | 必填 | 说明 |
|---|---|---|
q | 是 | 查询词。TIMESERIES 最多支持 5 个以逗号分隔的查询;其他模式每次只接受一个查询。每个查询最长 100 个字符。 |
date | 否 | 可选值:now 1-H、now 4-H、now 1-d、now 7-d、today 1-m、today 3-m、today 12-m、today 5-y、all。默认 today 12-m。 |
geo | 否 | 地区代码,例如 US。TIMESERIES 可传入与查询数量匹配的逗号分隔地区。 |
data_type | 否 | TIMESERIES、RELATED_TOPICS 或 RELATED_QUERIES,默认 TIMESERIES。 |
请求示例
curl --get 'https://goanyapi.com/api/v1/google-trends' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--data-urlencode 'q=ai video,chatgpt'curl --get 'https://goanyapi.com/api/v1/google-trends' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--data-urlencode 'q=ai video' \
--data-urlencode 'data_type=RELATED_TOPICS'curl --get 'https://goanyapi.com/api/v1/google-trends' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--data-urlencode 'q=ai video' \
--data-urlencode 'data_type=RELATED_QUERIES'只有 TIMESERIES 支持 q 的逗号分隔多关键词;只有该模式支持 geo 的逗号分隔多地区,并且地区数量必须与查询数量一致。
响应示例
{
"code": "ok",
"message": "ok",
"data": {
"endpoint": "google-trends",
"remainingCredits": 96,
"query": {
"q": "ai video,chatgpt",
"date": "today 12-m",
"data_type": "TIMESERIES"
},
"q": "ai video,chatgpt",
"date": "today 12-m",
"tz": 420,
"dataType": "TIMESERIES",
"interestOverTime": {
"timeline_data": [],
"averages": []
}
}
}响应对象字段
| 字段 | 类型 | 说明 |
|---|---|---|
code | string | 公开响应状态,成功请求通常为 ok。 |
message | string 或 null | 公开响应消息。 |
data.endpoint | string | 固定为 google-trends。 |
data.costCredits | number | 本次请求消耗的积分,按关键词数量计算。 |
data.remainingCredits | number | 请求完成后的账户剩余积分。 |
data.query.q | string | 规范化后的查询词。 |
data.query.date | string | 规范化后的时间范围。 |
data.query.geo | string | 可选的规范化地区代码。 |
data.query.data_type | string | 规范化后的数据类型。 |
data.q | string | 趋势数据服务返回的查询词。 |
data.date | string | 趋势数据服务返回的时间范围。 |
data.geo | string 或 null | 趋势数据服务返回的地区。 |
data.tz | number | 趋势数据附带的时区偏移。 |
data.dataType | string | 返回的数据类型。 |
data.interestOverTime | object | TIMESERIES 返回,包含 timeline_data 和 averages。 |
data.relatedTopics | object | RELATED_TOPICS 返回,包含 top 和 rising。 |
data.relatedQueries | object | RELATED_QUERIES 返回,包含 top 和 rising。 |
RELATED_TOPICS 返回 relatedTopics,其中包含 top 和 rising;RELATED_QUERIES 返回 relatedQueries,其中包含 top 和 rising。当前模式不适用的字段会被省略。
TIMESERIES 响应字段
所有模式都会返回规范化后的 q、date、可选的 geo、tz 和 dataType 字段。TIMESERIES 还会返回:
| 字段 | 说明 |
|---|---|
data.interestOverTime.timeline_data[] | 时间线数据点。 |
data.interestOverTime.timeline_data[].date | 展示用日期或日期范围。 |
data.interestOverTime.timeline_data[].timestamp | 数据点时间戳。 |
data.interestOverTime.timeline_data[].partial_data | 未完成数据点的可选标记。 |
data.interestOverTime.timeline_data[].values[] | 每个查询词的数值。 |
data.interestOverTime.timeline_data[].values[].query | 查询词。 |
data.interestOverTime.timeline_data[].values[].query_index | 从 0 开始的查询词索引。 |
data.interestOverTime.timeline_data[].values[].value | 展示用热度值。 |
data.interestOverTime.timeline_data[].values[].extracted_value | 数值化热度。 |
data.interestOverTime.averages[] | 每个查询词的平均值。 |
data.interestOverTime.averages[].query | 查询词。 |
data.interestOverTime.averages[].value | 平均热度值。 |
RELATED_TOPICS 响应字段
| 字段 | 说明 |
|---|---|
data.relatedTopics.top[] | 热门相关主题。 |
data.relatedTopics.rising[] | 上升相关主题。 |
data.relatedTopics.*[].topic.value | 主题标识。 |
data.relatedTopics.*[].topic.title | 主题标题。 |
data.relatedTopics.*[].topic.type | 主题类型。 |
data.relatedTopics.*[].value | 展示用相关性数值。 |
data.relatedTopics.*[].extracted_value | 数值化相关性。 |
data.relatedTopics.*[].link | 公开趋势链接。 |
RELATED_QUERIES 响应字段
| 字段 | 说明 |
|---|---|
data.relatedQueries.top[] | 热门相关查询。 |
data.relatedQueries.rising[] | 上升相关查询。 |
data.relatedQueries.*[].query | 相关查询词。 |
data.relatedQueries.*[].value | 展示用相关性数值。 |
data.relatedQueries.*[].extracted_value | 数值化相关性。 |
data.relatedQueries.*[].link | 公开趋势链接。 |
value 是用于展示的原始值,extracted_value 在可用时提供数值化结果。partial_data 只会出现在未完成的时间线数据点中。
计费
每个关键词按照上方显示的当前配置单价计费。TIMESERIES 最多支持 5 个关键词,因此单次请求最多消耗该单价的 5 倍。仅在返回有效响应后扣除积分。参数错误、请求失败或结果不完整不会扣除积分。