API
动态更新接口 |
分享到明道 | |||||||||||||||
通过分享到明道服务,外部资源信息可以被分享到明道系统内部
分享图标请参见资源下载-Logo 分享方式通过特定目标页面完成,见如下https://www.mingdao.com/share 页面所带参数
分享页面
|
账单计费(暂不开放) | ||||||||||||||||||||||||||||||||||||||||
进入明道应用大全的企业公共扩展应用如果需要利用明道企业账户余额来支付则需要使用明道账单部分的接口,
无论是年费、月费还是根据实际使用量产生的费用,都应当向明道提交账单,提交账单时明道会验证来源的安全与合法性,
会采用一定的签名算法来进行验证。
创建即时扣费账单(适用于预付费或者组合模式的企业公共应用)
地址:https://api.mingdao.com/billing/create 协议:POST 描述:即时扣费账单是指企业必须先支付才能够继续使用应用付费功能的计费账单, 当用户在应用界面点击购买后,应用向明道提交该计费账单, 明道会立即返回支付地址, 应用应当立即跳转到支付地址供用户支付,支付完成后会以支付事件通知的形式通知应用,支付事件通知详见事件通知的支付事件。 注意:账单支付是有有效期的,请在最后付款日期之前完成支付,超过最后付款日期此账单将自动关闭, 同时明道以事件通知的支付事件(账单关闭状态)通知到应用。如果提交内容有问题(比如签名等信息不对), 明道会将错误状态码包含在响应信息中,如果提交内容没有问题,会将转跳的支付链接包含在响应内容中, 应用在接收到支付地址之后需要跳转到该支付页面,在这个页面中确认输入个人用户登录密码进行明道余额支付, 在扣费成功之后,会将支付成功信息post给应用设置的地址,触发支付事件,并转跳到扩展应用, 应用根据支付信息开通相应的授权。应用向明道提交即时计费账单时,需要确保此公司是在明道高级模式下和安装了此应用, 另外明道会判断账单的重复性,应用应当传入自己的账单编号或者唯一标识, 也就是在content里面包含扩展应用自己的账单编号或者其他唯一标识编号。 如果应用重复插入账单,明道会根据重复账单的支付状态,重新将信息响应给应用。 传输内容:
加密签名算法具体参见加密签名算法章节
提交账单之后的响应内容 json { status:状态码,具体参见错误代码和含义章节 id:明道账单编号,成功之后会返回该值,失败返回空值 redirect:转跳明道支付地址,成功之后会返回该值,失败返回空值 } 创建自动扣费账单(适用于后付费或者组合模式的企业公共应用)
地址:https://api.mingdao.com/billing/create_auto 协议:POST 描述:自动扣费账单是指企业已经使用了应用的提供的收费功能,应用出具自动扣除明道余额的账单。 它将在最后付款日期前一天自动扣除明道余额,当明道余额充足并且扣除成功之后明道将以支付事件(支付成功状态)的形式通知应用, 当余额不足扣除失败的时候将以支付事件(支付失败状态)的形式通知应用。支付事件详见事件通知的支付事件。 注意:最后付款日期必须晚于账单创建日期,这意味着最后付款日期之前未完成支付的情况下还允许企业授权登录, 过期之后尚未支付成功将强行进入明道余额充值流程。对明道来说,也意味着从生成账单到最后付款日是作为用户对账单的质疑期, 如果用户没有质疑则明道会在最后付款日期前一天进行自动扣款。扩展应用向明道提交自动扣费账单时, 需要确保此公司是在明道高级模式下和安装了此应用, 另外明道会判断账单的重复性,扩展应用应当传入自己的账单编号或者唯一标识, 也就是在content里面包含扩展应用自己的账单编号或者其他唯一标识编号。如果应用重复插入账单,且重复插入的订单已经支付, 会将已经支付的状态码包含在响应信息中,如果未支付,则会返回重复创建的状态码在响应信息中。 在明道登录应用的时候,如果发现有未支付的即时扣费账单,明道会跳转到支付或者充值页面,并进行相应的提醒。 传输内容:
获取账单信息
地址:https://api.mingdao.com/billing/detail 协议:POST 描述:获取应用创建的账单详细信息 传输内容:
加密签名算法具体参见加密签名算法章节
获取账单之后的响应内容 json 参考billing.html 关闭账单
地址:https://api.mingdao.com/billing/close
协议:POST 描述:关闭应用创建的计费账单 传输内容:
明道扣款之后,会触发支付事件,请见事件通知的支付事件
|
事件通知 | ||||||||||||||||||||||||||||||||||||||||||
凡是扩展应用需要在明道某些特定事件之后进行操作的,明道目前提供了事件通知的方式来触发回传给(Post请求)扩展应用,
类似触发器,即某个明道的事件操作去触发扩展应用的事件行为,它是通知类型的行为且是单向的,请在5秒之内响应请求并返回状态200,
明道会在超过5秒会断开连接。如果返回状态不为200,明道会进行总计10次的通知,失败10次则本事件不再推送通知, 明道目前的事件通知包含三种,回调地址有效性验证、应用安装和应用卸载,下面分别进行描述
回调地址有效性验证
描述:每一个工作日会校验回调地址(Webhook URL)有效性,校验失败则不再进行事件通知,开发者可在应用详情页手动重新开通。协议:http/https post请求至应用提供的事件回调地址 传输内容:
加密签名算法具体参见加密签名算法章节
应用安装
描述:在明道应用大全安装应用之后触发协议:http/https post请求至应用提供的事件回调地址 传输内容:
加密签名算法具体参见加密签名算法章节
应用卸载
描述:在明道应用大全卸载应用之后触发协议:http/https post请求至应用提供的事件回调地址 传输内容:
加密签名算法具体参见加密签名算法章节
|
签名算法简介 | |
扩展应用或者明道均通过校验signature对请求进行验证,若确认此次请求来自明道服务器或者扩展应用服务器,
则进行后续流程操作,加密和签名均都以utf-8为编码格式。
将应用appkey和appsecret的值转换为小写,按照字典排序并拼接成字符串, 将拼接字符串进行md5加密形成32位appinfo信息,也转换为小写, 将appinfo、timestamp、nonce、content四个内容按照字典排序, 将四个字符串拼接成一个小写字符串进行sha1算法加密。 扩展应用或者明道将加密后的字符串与signature参数做对比,验证其有效性,如果相等则说明请求的安全与合法 C#签名SDK如下
signature.cs
Nodejs签名SDK如下
signature.js
|