GMB Lodging API的getLodging与updateLodging调用问题咨询
GMB Lodging API getLodging/updateLodging调用异常解决方案
- 首先校验鉴权权限:调用getLodging、updateLodging时,OAuth scope必须包含
https://www.googleapis.com/auth/business.manage,仅申请lodging相关只读scope无法执行写入操作;同时需要确认当前账号对目标测试商家有所有者/管理者权限,访客、预览权限均无法调用属性修改接口。 - 核对接口调用规则:很多开发者容易混淆两类接口的使用逻辑:
locations.get方法本身不直接返回lodging属性,需要在请求的readMask参数中显式指定lodging字段才能拉取到对应住宿属性;调用locations.updateLodging时必须填写updateMask参数,明确标注需要修改的字段路径,未携带该参数的请求会直接被拦截返回400错误。 - 确认测试商家状态:如果是未上线的sandbox测试商家,需要先在GMB后台完成基础信息核验(地址验证、服务范围确认),未完成核验的测试商家默认禁止通过API修改住宿类扩展属性,仅允许调用
getGoogleUpdated拉取谷歌侧同步的公开数据,完全匹配你当前getGoogleUpdated可正常调用、读写接口异常的表现。
可行调用示例参考
getLodging请求示例
GET https://mybusinesslodging.googleapis.com/v1/accounts/{你的账号ID}/locations/{你的商家ID}/lodging
updateLodging请求示例
PATCH https://mybusinesslodging.googleapis.com/v1/accounts/{你的账号ID}/locations/{你的商家ID}/lodging?updateMask=lodging.amenities.parking.freeParking 请求体: { "lodging": { "amenities": { "parking": { "freeParking": true } } } }
完成以上排查后如果还是无法调用,大概率是API侧的灰度发布限制:新版Lodging API目前仅对已完成企业资质认证的开发者开放全量接口权限,个人开发者账号默认只开放只读类接口调用权限,可通过Google Cloud控制台提交API配额申请,备注需要使用lodging属性的读写能力,一般1-3个工作日会完成审核。
内容的提问来源于stack exchange,提问作者devinthemaking
相关产品推荐
相关产品推荐

