为什么所有 API 地址都一样?
因为 GEOBase 开放平台使用统一实时请求入口/v1/openapi/execute,实际调用的业务能力由请求体中的 apiCode 决定。
不同 apiCode 的 data 能一样吗?
不能假设一样。每个业务 API 应以自己的接口文档定义为准;例如geo.brand 的 data 只定义了可选的 brandId,而 geo.competitors 的 data.brandId 为必填。
这些接口是同步还是异步?
全部为 SYNC · 实时请求。请求发出后服务端同步执行并直接返回业务结果,无需轮询、无任务中间态。返回的 data 结构都一样吗?
外层data 是统一响应中的业务数据位置,但其中具体字段由 apiCode 对应业务决定:
- 分页结构(含
records):geo.brand、geo.competitors、brand.prompt、prompt.analysis.detail、source.citation.list - 数组结构:
brand.topic、prompt.analysis.overview、llm.comparison - 对象结构(含
brand与competitor):brand.overview - 按平台分组(平台名 → 趋势数组):
llm.trend - 按名称分组(主题名 / AI 对话问题 → 统计数组):
llm.topic、llm.prompt - 按场景意图分组:
llm.intention,无数据时返回空数组[]
调用返回 403 怎么办?
检查AIBase-API-Key 是否有效、是否过期、客户端 IP 是否在 Key 的 IP 白名单内,以及该 Key 是否被授予对应 apiCode 的调用权限。
本地如何调试?
本地开发环境服务端口为6006,直接调用 http://localhost:6006/v1/openapi/execute 即可;生产环境替换为 https://geobaseapi.aibase.com。
联调排错清单
按错误码逐项定位问题。
响应与错误处理
查看完整错误码与处理建议。