本月上线内容:地理编码、IP、时区等
API 近期工作汇总:新的兼容主机、更快的时区和海拔查询、控制台新功能,以及更清晰的配额可见性。
Nominatim 基于 OpenStreetMap 数据运行,长期以来一直是那些想要一个不附带商业许可的地理编码方案的团队的默认选择。随着流量增长,共享公共实例的使用政策可能让这种方式越来越难以依赖,而这正是兼容的、具备配额感知的主机派上用场的地方。
我们的 Nominatim 兼容主机完全复刻原服务的请求参数和响应正文,唯一的区别是版权、条款和隐私文本,这些是 My Geocode 自己的内容。按 Nominatim 格式构建的请求可以不加修改地发送到我们的主机,返回的响应结构与现有解析代码原本期望的相同。
这里的身份验证同样采用我们一贯的四种方式:X-API-Key 请求头、Authorization: Bearer 请求头、以密钥作为用户名的 HTTP Basic 认证,或查询参数。由于 Nominatim 的公共实例通常根本不需要密钥,在这里加上一个密钥还意味着获得一份专属的、可跟踪的配额,而不是共享一个无人管理的公共资源。
定价与我们运行的其他所有主机和端点一致。任何地址无需密钥即可获得每天 2,500 次免费请求,按网络统计。密钥还会在此基础上额外提供每天 2,500 次免费请求。超出这两项配额后,预付额度为每次请求 €0.0001,或者用每月 €50 的 Unlimited 套餐覆盖全部用量。
共享的公共实例必须用使用政策来保护自己,而这些政策必然是保守的,因为它无法事先区分不同调用方的流量。密钥改变了这一点:一个账户的用量按其自己的配额计量,无论当天服务上还发生了什么;这是共享资源无论其公布的政策多么慷慨都无法提供的另一种保证。
这个主机上的每个响应都附带配额响应头,与没有按调用方可见性的共享公共实例相比,这是一项实质性的变化:X-Quota-Limit、X-Quota-Used、X-Quota-Free-Remaining、X-Quota-Network-Used 和 X-Credits-Remaining 全部包含在内,因此您始终准确知道自己的用量状况,而不必去猜测一项未公开的使用政策。
对于希望获得比兼容响应默认返回内容更多信息的项目,在请求中加上 mg_extras=1,或发送 X-MG-Extras 请求头,即可在其上叠加可选的额外字段;除非您主动要求,否则不会改变基础结构。
如果您不确定切换后在某个特定国家或地区的表现如何,位于 /coverage/ 的覆盖范围页面详细说明了哪些地方有地理编码数据;在把生产流量指向任何新主机(无论是否为 Nominatim 格式)之前,这是一个合理的第一站。
该主机的文档位于 /compatibility/nominatim/,关于切换提供商的通用指南位于 /docs/compatibility/。对于目前依赖公共 Nominatim 实例的用户,这提供了相同的请求结构,同时附带专属配额和清晰的配额响应头。