接口说明
商家发布SaaS商品时,首先需根据本接入指南,在生产接口服务器开发一个生产接口。
同一个商品发布时,针对不同的调用场景,只需要配置一个“生产系统接口地址”。
例如:https://www.isvwebsite.com/saasproduce
SaaS 2.0接口规范:
场景 |
通用商品、自服务商品 |
联营商品 |
||||
按次 |
包周期 |
按需 |
按次 |
包周期 |
按需 |
|
创建实例 |
√ |
√ |
√ |
√ |
√ |
√ |
查询实例信息 |
√ |
√ |
√ |
√ |
√ |
√ |
更新实例 |
x |
√ |
√ |
x |
√ |
√ |
更新实例状态 |
x |
√ |
√ |
x |
√ |
√ |
释放实例 |
√ |
√ |
√ |
√ |
√ |
√ |
实例升级 |
x |
O |
x |
x |
O |
x |
企业同步 |
x |
x |
x |
√ |
√ |
√ |
应用授权 |
x |
x |
x |
√ |
√ |
√ |
用户授权同步 |
x |
x |
x |
√ |
√ |
√ |
部门增量同步 |
x |
x |
x |
√ |
√ |
√ |
部门全量同步 |
x |
x |
x |
√ |
√ |
√ |
同一个商品发布时,针对不同的接入方式和销售模式,需要进行不同接口的开发,详情参考如上表格内容。
- “√”:必须开发调测。
- “x”:无须开发调测。
- “o”:“实例升级”场景,不做强制要求,由商家自行确定,如所发布的商品有升级场景,则需实现;如无,则忽略。
SaaS 2.0接口拨测规则
商家完成上架SaaS商品后,为监控接口服务的可用性和保障客户下单交易,云商店平台每天上午和下午,会对该商品接口地址的调测用例进行自动化拨测。当前接口拨测失败时,系统会邮件通知到商家云商店账号绑定的邮箱、短信、站内信,请商家及时修复接口,具体拨测规则如下:
商品状态 |
拨测规则 |
在售 |
执行 |
停售 |
不执行 |
退市 |
不执行 |
当商品的接口连续5天拨测失败,云商店运营经理会对该商品进行冻结交易并隐藏商品处理。根据《云商店商家合作管理规范》,如未及时修复接口,云商店运营有权对该商品进行下架处理。
接口调用场景(下单)
- 创建实例:客户购买商品并付款成功。
- 云商店将调用创建实例接口通知商家根据订单号创建实例。
- 商家系统收到该请求信息,需调用云商店查询订单接口,获取本次订购的相关信息,执行新购对应动作。
- 云商店调用查询实例接口获取实例的相关信息。
- 查询实例信息:查询实例(instanceId)对应的实例信息
- 云商店在获取到创建实例接口返回的实例id(instanceId)后会不断轮询查询实例信息接口,直到商家成功返回实例信息。
- 用户在云商店"已购买服务--查询资源信息"时,云商店会同步调用商家的查询实例信息接口,对用户展示。
- 更新实例:客户试用转正、续费、退续费。
- 更新实例状态:用户资源实例因到期、违规等情况下会对用户的实例进行冻结,同时在用户续费后,或资源解除违规后会对用户的实例进行解锁。
云商店将调用更新实例状态接口,通知商家系统对相应资源执行冻结、解冻操作,并将执行结果返回给云商店。
用户订单到期后,根据客户等级,有最长15天的资源冻结期,冻结期内资源不可使用,但可以对此订单续费以解冻继续使用,故商家需对SaaS商品设置15天的冻结期,并在冻结期内保留用户数据。
- 释放实例:用户释放购买产品的实例时(到期不续费、退订等场景)。
- 云商店将调用释放实例接口,通知商家系统对相应资源执行释放操作,并将执行结果返回云商店。
- 实例升级:用户对已购买的资源进行升级,升级订单付款成功。
- 云商店将调用实例升级接口,通知商家系统对相应资源执行升级操作。
- 商家系统到该请求信息,需调用云商店查询订单接口,获取本次升级订购的相关信息,执行升级动作,并将执行结果返回给云商店。
- 实例升级流程请参考《商品升级和计费规则》。
- 企业同步
- 用户购买联营SaaS商品后,登录到华为云买家中心控制台,将应用与企业绑定时,云商店调用该接口请求商家同步该企业的租户信息,商家接口需要执行租户同步,保存租户信息,并返回通知云商店。
- 针对企业同步场景接口调用失败的情况,由买家选择是否重试,并用短信或邮件的形式通知商家接口调用失败。
- 商家的服务器在处理接口请求时,需要做好幂等性处理。
对于同一个实例,相同的租户要支持多次请求新增,或者删除,多次新增不应产生新的数据,且需要返回成功,如果是删除,多次删除也需要返回成功,不能因已删除返回失败,删除时不需要校验(创建实例)接口产生的实例是否存在。
- 应用同步
- 用户购买联营SaaS类应用后,登录华为云买家中心控制台,将应用与企业绑定时,云商店调用该接口请求商家同步该企业应用的认证信息,商家接口需要执行应用同步,保存应用信息,并返回通知云商店。
- 针对应用同步接口调用失败的情况,由买家选择是否重试,并用短信或邮件的形式通知商家接口调用失败。
- 商家的服务器在处理接口请求时,需要做好幂等性处理。
对于同一个实例,相同的租户,相同的应用,要支持多次请求新增,或者删除,多次新增不应产生新的数据,且需要返回成功,如果是删除,多次删除也需要返回成功,不能因已删除返回失败,删除时不需要校验(创建实例)接口产生的实例是否存在 。
- 用户授权同步
- 管理员被授权管理某企业后,登录到华为云买家中心控制台,对企业内用户授权该企业已绑定的应用,云商店异步调用该接口请求商家同步该企业应用的用户授权信息,商家接口需要执行授权信息同步,保存用户授权信息,并返回通知云商店。
- 针对用户授权同步场景接口调用失败的情况,由企业管理员选择是否要继续进行同步。并用短信或邮件的形式通知商家接口调用失败。
- 商家的服务器在处理接口请求时,需要做好幂等性处理。
对于同一个实例,相同的租户,相同的应用,相同的userName,要支持多次请求新增,或者删除,多次新增不应产生新的数据,且需要返回成功,如果是删除,多次删除也需要返回成功,不能因已删除返回失败,删除时不需要校验(创建实例)接口产生的实例是否存在。
- 部门增量同步
- 管理员被授权管理某企业后,登录到华为云买家中心控制台,对管理的企业执行新建、编辑、删除部门操作时,云商店调用该接口,请求商家同步该企业的组织增量变更;商家接口需要执行增量组织信息同步,保存信息,并返回通知云商店。
- 商家的服务器在处理接口请求时,需要做好幂等性处理。
对于同一个实例,相同的租户,相同的orgCode,要支持多次请求新增,或者删除,多次新增不应产生新的数据,且需要返回成功,如果是删除,多次删除也需要返回成功,不能因已删除返回失败,删除时不需要校验(创建实例)接口产生的实例是否存在。
- 部门全量同步
- 用户购买联营SaaS应用后,登录到华为云买家中心控制台,将应用与企业绑定时,云商店调用该接口请求商家同步该企业全量的组织信息,商家接口需要执行全量组织信息同步,保存组织信息,并返回通知云商店。
- 商家的服务器在处理接口请求时,需要做好幂等性处理。
对于同一个实例,相同的租户,相同的orgCode,要支持多次请求,多次请求不应产生新的数据,且需要返回成功。
接口失败场景及重试机制
当接口响应失败时,系统会邮件通知到商家云商店账号绑定的邮箱,“卖家中心>生产接口消息”中可查询接口“异常信息”,商家收到通知后须尽快处理接口异常,避免订单失败退订。
- 针对创建实例接口调用失败的情况,云商店会持续调用3小时后停止调用,期间商家可在“卖家中心>生产接口消息”页面单击对应订单右侧操作栏的“重新启动”进行手动重试,若商家接口问题在3小时调用后仍未解决,系统则判断订单为失败,并自动进行订单退订。
- 针对更新实例接口调用失败的情况,云商店会持续调用1小时后停止调用,期间“卖家中心>生产接口消息”中可查询接口“异常信息”,请在修复接口异常后,自行在“卖家中心>生产接口消息”页面中查询接口“异常信息”,单击右侧操作栏的“重新启动”进行手动重试。
- 针对更新实例状态接口调用失败的情况,云商店会持续调用1小时后停止调用,期间“卖家中心>生产接口消息”中可查询接口“异常信息”,请在修复接口异常后,自行在“卖家中心>生产接口消息”页面中查询接口“异常信息”,单击右侧操作栏的“重新启动”进行手动重试。
- 针对实例升级接口调用失败的情况,云商店会持续调用3小时后停止调用,期间商家可在“卖家中心>生产接口消息”页面单击对应订单右侧操作栏的“重新启动”进行手动重试,若商家接口问题在3小时调用后仍未解决,系统则判断订单为失败,并自动进行订单退订。
- 针对联营kit接口调用失败,云商店会持续调用5次后停止调用,每次失败发送通知,期间商家可在“卖家中心>生产接口消息”页面单击对应订单右侧操作栏的“重新启动”进行手动重试。
SaaS接口响应失败将通过邮件、短信、站内信进行通知,请注意关注账号绑定的邮箱、手机短信及站内信的相关通知。
若商品单月因接口失败导致的失败订单超过5个或者连续5天接口拨测失败,云商店将对该商品下架处理。
因接口响应失败导致自动退订的订单,请商家及时联系用户进行沟通,避免造成用户投诉。
如因接口响应失败,导致用户过期后仍能正常使用所造成的资源损失,由商家自行承担。