Contract
中国移动公众服务云SaaS应用管理平台与第三方应用服务
协议规范
修订记录表
日期 | 修改者 | 版本号 | 修改说明 |
2014-09-26 | xxx | V1.0 | 始创 |
2014-10-01 | xxx | V1.1 | 修改 1、4.4.1企业业务开通与变更接口修改请求报文 中opttype以及bossorderid的说明以及字段类型 |
2014-10-06 | xxx | V1.2 | 修改 1、 OAuth2单点鉴权接口(SaaS1001)应答报文中roles节点改为isadmin 2、 获取企业员工列表接口(SaaS2003 )应答报文中roles节点改为isadmin 3、 4.3.4统一消息发送接口(SaaS2004 )请求报文调整 4、 4.5.2 获取企业增量数据接口(SaaS3002)请求报文增加client_id节点 5、 4.5.3 获取组织架构增量数据接口(SaaS3003 ) 请求报文增加client_id节点 6、 4.5.4获取用户增量数据接口 (SaaS3004) 请求报文增加client_id节点 |
2014-09-26 | xxx | V1.3 | 修改 4.4.1-4.4.5接口的申请单规则 |
2014-11-03 | xxx | V1.4 | 修改 修改long类型的示例,去掉小数点 |
2014-11-15 | xxx | V1.5 | 成员级业务施工只支持全部成功或者全部失 败(不支持部分成功部分失败),修改了应答报 |
文与报文范例涉及接口: 成员业务开通与变更接口 (SaaS0003) 成员业务状态变更接口(SaaS0004) | |||
2015-01-21 | xxx | V1.6 | 修改 1、4.3.1获取用户基本信息接口(SaaS2001 ) 支撑扩展参数查询 2、4.3.3 获取企业员工列表接口(SaaS2003)支撑扩展参数查询 |
2015-02-04 | xxx | V1.7 | 修改 4.4.1 企业业务开通与变更接口(SaaS0001)请求报文增加手机、邮箱字段 |
2015-02-10 | xxx | V1.8 | 修改 4.3.4 统一消息发送接口(SaaS2004) |
2015-03-02 | xxx | V1.9 | 修改OAuth2单点鉴权接口(SAAS1001)应答 报文添加用户名字段 |
2015-04-02 | xxx | V2.0 | 新增两个接口的协议: 4.3.5 短信发送接口(SaaS2006) 4.3.6 短信能力权限校验接口(SaaS2007) |
2015-04-02 | xxx | V2.1 | 修改两个接口的协议: 4.3.5 短信发送接口(SaaS2006) 4.3.6 短信能力权限校验接口(SaaS2007)移除所有接口的xml报文范例 |
2015-04-10 | xxx | V2.2 | 增加 5.5地址汇总 |
2015-04-20 | xxx | V2.3 | 修改两个接口的协议: 4.3.5 短信发送接口(SaaS2006) 4.3.6 短信能力权限校验接口(SaaS2007) |
2015-06-11 | xxx | V2.4 | 增加 |
4.6 话单接口 | |||
2015-06-15 | xxx | V2.5 | 修改 4.6.1 话单数据上传接口(SaaS4001)修改字段名称,以及错误描述 |
2015-07-06 | xxx | V2.6 | 修改 4.3.6 短信能力权限校验接口(SaaS2007)应答报文增加错误说明 |
2015-07-07 | xxx | V2.7 | 修改 4.3.6 短信能力权限校验接口(SaaS2007)应答报文增加错误说明 |
2015-08-19 | Hualc | V2.8 | 由于加上短信风险管控逻辑,对短信能力两个接口的协议进行修改: 短信发送接口(SaaS2005)增加错误编码513至517 短信能力权限校验接口(SaaS2006)增加结果编码104和错误编码507 |
2015-10-19 | xxx | V2.9 | 修改 4.4.1企业业务开通与变更接口(SaaS0001 ) 调整节点说明 |
2015-10-20 | xxx | V3.0 | 新增 4.7.1 可用性巡检接口(saas5001) |
2016-08-16 | xxx | V3.1 | 补充SaaS用户授权协议(OAuth2),支撑应用访问超时重新请求授权或应用独立手机 App请求授权 |
2016-08-23 | xxx | V3.2 | 修改 补充SaaS1002接口的业务流程图 |
2016-08-26 | xxx | V3.3 | 修改 统一消息发送接口SaaS2005 |
请求报文增加处理地址节点 | |||
2016-08-29 | xxx | V3.4 | 修改 统一消息发送接口SaaS2005 修改请求参数 |
2016-08-30 | xxx | V3.5 | 修改 统一消息发送接口SaaS2005 修改请求参数 |
2016-09-20 | xxx | V3.6 | 修改 统一消息发送接口SaaS2005 修改请求参数新增 App统一消息发送接口SaaS2008 |
2016-12-05 | xxx | V3.7 | 增加 企业移动云app单点登录到第三方app流程 |
目录
4.2.1 OAuth2单点鉴权接口(SaaS1001) 10
4.2.2 OAuth2请求授权接口(SaaS1002) 13
4.2.3 企业移动云app单点登录到第三方app流程 15
4.3.1 获取用户基本信息接口 (SaaS2001) 17
4.3.2 获取企业组织结构列表接口(SaaS2002) 20
4.3.7 App统一消息发送接口 (SaaS2008) 37
4.4.1 企业业务开通与变更接口 (SaaS0001) 41
4.4.3 成员业务开通与变更接口 (SaaS0003) 48
4.5.2 获取企业增量数据接口 (SaaS3002) 61
4.5.3 获取组织结构增量数据接口 (SaaS3003) 65
4.5.4 获取用户增量数据接口 (SaaS3004) 68
4.7 巡检接口 80
4.7.1 可用性巡检接口 (SaaS5001) 80
5 附录 81
5.1 业务数据字典 81
5.2 行业编码 82
5.3 实现参考 85
5.4 附件文档 85
5.5 地址汇总 85
6 接口文档常见问题 86
1 产权说明
x文件中出现的任何文字叙述、文档格式、插图、照片、方法、过程等内容,除另有特别注明,版权均属北京三五通联科技发展有限公司,受到有关产权及版权法保护。任何个人、机构未经北京三五通联科技发展有限公司书面授权许可,不得复制或引用本文件的任何片断,无论是电子形式或非电子形式。
2 概述
2.1 文档概述
x文档主要用于SaaS应用管理平台与第三方合作平台的数据交互提供文档依据。正文主要描述双方(SaaS应用管理平台与第三方合作平台)的数据交互模式、约定、实现方式以及对接口的功能、报文格式以及使用场景进行详细的描述。
2.2 术语及定义
2.2.1 缩写表
缩写 | 英文拼写 | 中文说明 |
EC | Enterprise Customer | 集团客户 |
SI | Service INTegrator | 系统集成商、需要接入SaaS应用管理平 台的所有平台 |
2.2.2 术语
术语 中文说明 | |
服务方 | 描述拥有或者存储用户受保护资源(数据(图片、文档、通讯录) 、事件(发表博文、转账)或者任何有访问限制的URL)并向消费者提供访问服务的站点或者Web服务。本文档特指SaaS应用管理平台。 |
AccessToken | 用户访问令牌,用于代替用户凭据来访问用户受保护资源。 |
消费方 | 描述希望获取用户资源的消费,在本文档特指集团通讯录产品方。 |
数据信息 | 集团的数据中心,在集团授权许可的前提下,为应用提供相关数据 或接受应用同步到集团的数据 |
授权 | 为应用用户提供统一的授权服务,唯有在获得授权的前提下,应用 方可借助开放接口获取相关数据。 |
第三方 | 需要接入SaaS应用管理平台的所有平台 |
2.2.3 符号说明
在本文档中以表格的形式表示XML格式,以下为表格中对元素约束(出现次数)的表示方法的描述:
符号 中文说明 | |
? | 0..1,可选项 |
* | 0..n,可以没有,也可以有多项 |
+ | 1..n,至少有1项,也可以有多项 |
1 | 数字1,代表必须且只能填1项,但值可以为空(string类型)或者0 (int类型) |
F | 指固定长度 |
V | 表示变长 |
2.3 引用标准
3 总体规范
3.1 消息交互约定与实现
SaaS应用管理平台与第三方平台的接口主要采用REST方式,部分接口采用的文件方式。
文件接口采用FTPS协议,REST方式接口使用HTTPS协议。
3.2 FTPS协议要求
x规范中所使用的FTPS协议,应符合W3C
RFC959对FTPS协议的要求,具体参考:xxxx://xxx.x0.xxx/Xxxxxxxxx/xxx000/ 。
3.3 REST协议要求
3.3.1 协议形式
基于HTTPS协议的REST
API接口,使用JSON格式进行消息封装。通信双方采用一问一答的通讯机制,即一次请求对应于一次应答。
接口采用重发机制,通信双方之间的消息发送后等待T秒后未收到响应,应立即重发
,再连续发送N-1次后仍未得到响应则停发。现阶段建议取值为:T=60秒,N=3。
3.3.2 消息头定义
3.3.2.1 公共请求头(Common Request Headers)
名称 | 描述 | 是否必选 |
Content-Type | 表示发送的实体的MIME类型,本系统为json格式 ,语法:application/json | 必选 |
Accept | 定义客户端可以处理的媒体类型,默认为ap plication/json | 可选 |
X-Auth-Token | Token ID | 可选 |
3.3.2.2 公共响应头(Common Response Headers)
名称 | 描述 | 是否必须 |
Content-Type | 表示相应的实体的MIME类型,本系统为jso n格式,语法:application/json | 可选 |
3.3.3 HTTP状态码
编码 | 含义 | 描述 |
200 | OK,成功 | Resource retrieved successfully资源查询成功 |
201 | Created,已创建 | Resource created successfully资源创建成功 |
202 | Accepted,已接受 | LONG running operation accepted for processign已经接受处理 |
203 | ||
204 | No Content,无内容 | Operation successful,no data操作成功,但无数据 |
400 | Bad Request,错误的请求 | Missign or invalid request contents 请求内容缺失或无效的请求内容 |
401 | Unauthorized ,无权限 | Invalid authentication/authorization credentials权限无效 |
403 | Forbidden,禁止 | This user is not allowed to perform this request不允许执行当前请求 |
404 | Not Found,没有发现 | Requested resource not found请求的资源没有找到 |
405 | Method Not Allowed,操作不允许 | Requested HTTP verb not allowed on this resource对资源的操作不允许 |
406 | Not Acceptable,不可接受 | No media type can be produced at this URI that matches the request请求的资源的内容特性无法满足请求头中的 条件,因而无法生成响应实体。 |
409 | Conflict,冲突 | The request would cause an invalid state transition on the server 由于和被请求的资源的当前状态之间存在冲突,请 求无法完成。 |
411 | Missign Content- | Must provide the Content-Length of HTTP header请求的报文中缺少http content-length头域 |
Length,缺少 content- length头域 | ||
413 | Request Entity Too Large,请求数据太大 | Request Entity Too Large 服务器拒绝处理当前请求,因为该请求提交的实体数据大小超过了服务器愿意或者能够处理的范围。 |
416 | Requested range not satisfiable,请求的范围有问题 | Requested range not satisfiable 如果请求中包含了 Range 请求头,并且 Range 中指定的任何数据范围都与当前资源的可用范围不重合,同时请求中又没有定义 If-Range 请求头,那么服务器就应当返回416状态码。 |
500 | INTernal Server Error, 服务器内部错 误 | An unexpected vendor specific error 服务器遇到了一个未曾预料的状况,导致了它无法完成对请求的处理。 |
501 | Not Implemented ,未实现 | An operation or metadata value was attempted that is not implemented 请求中所涉及到的操作和元数据,系统未实现,不 能处理 |
3.3.4 接口字段命名规则
SaaS应用平台与第三方应用接口采用全小写命名。
3.3.5 请求参数说明
请求参数都通过请求的Url地址进行传递(get、post请求都一样)
3.3.6 请求报文和应答报文说明
请求报文和应答报文都通过HTTPS报文体进行传递(get、post请求都一样)
3.3.7 日期、时间格式说明
所有日期、时间进行数据传输时,都以unix时间戳格式传输,类型:long
时间戳计算规则:1970 年1月1日(00:00:00 )至当前时间的总毫秒数例如:当前时间为:2014-09-26 16:01:50.123
对应的时间戳:1411718510123
3.3.8 签名说明
1)、对client_id(消费方公钥)和client_key(消费方私钥)加上timestamp(时间戳),按照对应的顺序,并按key=value方式拼接起来
2)、将步骤1拼接的字符串使用MD5加密。如:
client_id=124124client_key=72ff7f4e-9b2e-4b33-8232- 07cb0d08bbf3timestamp=1411718510123
通过MD5加密后为70d86baf02b64003b7383785db93d143
4 接口协议
4.1 接口清单
4.2 鉴权接口
4.2.1 OAuth2单点鉴权接口(SaaS1001)
4.2.1.1 业务功能
用户在SaaS平台登陆后,根据用户的应用授权管理关系,用户可以直接单点使用应用,为用户提供一体化的应用使用体验。
SaaS平台与各应用系统之间使用OAuth2协议实现单点登陆功能。
4.2.1.2 业务流程
SaaS应用管理平台
第三方应用
用户点击使用应用
为用户生成code(授权码)
重定向到应用使用页面(url为应用提供的使用地址)传递code+appId给应用方(单次使用,60s有效)
获取url地址上的code参数和appId
调用单点登录接口(SaaS1001) 获取用户访问令牌
为用户颁发token(访问令牌)
返回token给应用方
4.2.1.3 请求地址
提供方 | 请求方 | 请求方法 | URI |
SaaS平台 | 应用 | POST | ~/restful/services/oauth2/authorization |
4.2.1.4 请求参数
名称 | 类型 | 约束 | 说明 |
grant_type | string | 1 | 鉴权类型,默认为:authorization_co de |
client_id | string | 1 | 消费者公钥,应用接入时平台提供 |
scope | string | ? | 保留参数 |
redirect_uri | string | ? | CallbackUrl,传入应用的使用地址或 者url scheme |
code | string | 1 | 用户授权码 |
4.2.1.5 请求报文
无
4.2.1.6 应答报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | response | - - | - - | - - | 1 | |
1.1 | access_token | response | strin g | V64 | 1 | 访问令牌,调用API接口的凭据,一般小时间为6小时 |
1.2 | expires | response | long | - - | 1 | 有效时间 |
1.3 | refresh_token | response | strin g | V64 | 1 | 刷新令牌,用于acces s_token过期后重新获取的凭据,一般有效时间为3个月 |
1.4 | uid | response | int | - - | 1 | 当前登陆用户id |
1.5 | username | response | strin g | V128 | 1 | 当前登录用户名 |
4.2.1.7 错误编码
编码 | 描述 |
500 | 服务方未定义异常 |
501 | grant_type的值错误 |
502 | client_id的值错误 |
503 | scope的值错误 |
504 | redirect_uri的值错误 |
505 | code的值错误 |
506 | code已失效 |
507 | 找不到code所关联的用户 |
4.2.1.8 报文范例
4.2.1.8.1.1请求地址范例
~/restful/services/oauth2/authorization?grant_type=authorization_code&client_id=1234&sc
ope=&redirect_uri=&code=7a7811ea-17cd-4a70-8c48-e08c881039ec
4.2.1.8.1.1请求报文范例
4.2.1.8.1.1.1 JSON范例
无
4.2.1.8.1.2应答报文范例
4.2.1.8.1.2.1.1 正常报文范例
4.2.1.8.1.2.1.1.1 JSON范例
{
"access_token":"6031bdf8-af92-47fc-9dd2-6ef84de3e443", "expires":1411718510123,
"refresh_token":"1234bdf8-af92-47fc-9dd2-6ef84de3e456", "uid":1001,
"username":"libing"
}
4.2.1.8.1.2.1.2 异常报文范例
4.2.1.8.1.2.1.2.1 JSON范例
{
"code":501, "msg":"grant_type的值错误"
}
4.2.2 OAuth2请求授权接口(SaaS1002)
4.2.2.1 业务功能
第三方应用请求SaaS平台用户身份鉴权。适用场景:
⚫ 未单点登录用户访问应用web端页面,重定向到此接口请求授权;
⚫ 用户单点登录应用web端,长时间不操作超时后,重定向到此接口请求授权;
⚫ 应用为用户提供独立安装的手机App,使用SaaS平台用户账号请求授权,使用We bView控件加载此接口,请求授权;
4.2.2.2 业务流程
1、打开手机app
2、通过WebView方式打开SaaS1002接口中的地址, redirect_uri传入App自定义的URL Scheme
3、接受单点请求处理
4、返saas登录页面
5、显示saas登录页面给用户
6、输入移动云账号、
密码进行登录
7、将账号、密码提交到saas进行登录
8、验证账号,密码
9、用户登录成功,saas生成授权码code,重定向到SaaS1002接口中的redirect_uri定义的url,并将code作为url参数传入
10、获取redirect_uri的code参数
11、调用SaaS1001接口获取用户的访问令牌token
12、颁发用户访问令牌token
13、返 用户访问令牌token
14、接收接口返 的token
15、通过token调用SaaS2001接口
获取用户信息
16、查找token对应的用户数据
17、返 用户数据
18、接收接口返 的用户数据,app自行处理
19、返 登录后的页面给用户
SaaS
手机
App
用户
4.2.2.3 请求地址
提供方 | 请求方 | 请求方法 | URI |
SaaS平台 | 应用 | GET |
e |
4.2.2.4 请求参数
名称 | 类型 | 约束 | 说明 |
response_typ | string | 1 | 默认值,固定为“code |
client_id | string | 1 | 消费者公钥,应用接入时平台提供 |
state | string | ? | 状态参数,请求授权时传入,原值返回 |
redirect_uri | string | 1 | 授权成功后,重定向Url地址,如果是手机App使用WebView请求授权,此 参数传入App自定义的URL Scheme |
4.2.2.5 请求报文
无
4.2.2.6 应答报文
HTTP 302重定向:
用户未登录,重定向到登录授权页面,授权成功后,再重定向到redirect_uri地址用户已登录,直接重定向到redirect_uri地址
通过url querystring传入code(用户授权码)、state(状态参数)。
4.2.3 企业移动云app单点登录到第三方app流程
4.2.3.1 业务功能
适用场景:
⚫ 用户登录企业移动云app,在工作台上点击打开第三方app,saas平台通过app包名调用打开第三方应用,如果是html5站点,将通过WebView控件嵌入打开;
4.2.3.2 业务流程
机App
SaaS 手
用户
SaaS服
务端
应用
app
1、用户打开SaaS app 工作台,点击打开第三方app
2、请求生成授权码code
3、生成授权码
3、返回code
4、SaaS app 通过系统调用打开第三方app,进入app
自定义的页面,并传递code参数、appId参数
5、获取code参数
6、调用SaaS1001接口获取用户访问令牌token
7、颁发用户访问令牌
8、返回访问令牌token
9、获取访问令牌
10、通过token调用SaaS2001
接口获取用户信息
查找
11、通过token
用户信息
12、返回用户信息
13、app获取用户信息后,自行处理
14、返回登录成功后的结果给用户
4.2.3.3 请求地址
提供方 | 请求方 | 请求方法 | URI |
应用 | SaaS平台 | GET | 应用提供,原生app的页面地址或者html5页面地 址 |
4.2.3.4 请求参数
名称 | 类型 | 约束 | 说明 |
code | string | 1 | 授权码 |
appId | string | 1 | 应用编码 |
userid | int | 1 | SaaS用户id |
eid | int | 1 | SaaS企业id |
4.2.3.5 请求报文
无
4.2.3.6 应答报文
无
4.3 数据接口
4.3.1 获取用户基本信息接口 (SaaS2001)
4.3.1.1 业务功能
用户从SaaS平台单点到应用系统,OAuth2鉴权成功后,调用此接口获取当前登陆用户基本信息。
4.3.1.2 业务流程
第三方应用
SaaS应用管理平台
单点鉴权成功,获取到token
调用获取用户基本信息接口 (SaaS2001)
获取用户基本信息
返回用户信息
4.3.1.3 请求地址
提供方 | 请求方 | 请求方法 | URI |
SaaS平台 | 应用 | GET | ~/restful/services/user/info |
4.3.1.4 请求参数
名称 | 类型 | 约束 | 说明 |
access_token | string | 1 | 访问令牌 |
userid | int | 1 | 用户id |
expandkeys | string | ? | 扩展key,多个是用逗号分割 头像key:headphoto |
4.3.1.5 请求报文
无
4.3.1.6 应答报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | response | - - | - - | - - | 1 | |
1.1 | userid | response | int | - - | 1 | 用户标识ID |
1.2 | custid | response | int | - - | 1 | 企业id |
1.3 | custcode | response | strin g | V32 | 1 | 企业编码 |
1.4 | custtype | response | int | - - | 1 | 客户类型 1:个人用户2:企业用户 |
1.5 | status | response | int | - - | 1 | 用户状态 1:未激活2:正常3 :挂起4:已注销5:非法6:非法且挂起 |
1.6 | username | response | strin g | V32 | 1 | 用户名。 |
1.7 | useralias | response | strin g | V32 | ? | 用户中文姓名 |
1.8 | isadmin | response | bool | - - | 1 | 是否管理员 |
1.9 | entprise | response | strin g | V255 | ? | 企业名称,个人用户则可选,企业用户则必选 |
1.10 | departments | response | strin g | V255 | ? | 企业部门Id,个人用户则可选,企业用户则必选 多个部门使用,分割 |
1.11 | departmentn ames | response | strin g | V100 0 | ? | 企业部门名称,个人用户则可选,企业用户则必选 多个部门使用,分割 |
1.12 | mobile | response | strin g | V15 | 1 | 用户手机号,用于短信通知 |
1.13 | response | strin g | V100 | 1 | 用户邮箱,用户通知 | |
1.14 | expandkeys | response | - - | - - | ? | 扩展key集合(当前请求参数传入了扩展key ,此节点才有效) |
1.14.1 | expandkey | expandkeys | - - | - - | + | 扩展key对象 |
1.14.1.1 | key | expandkey | strin g | V100 | 1 | 扩展key 头像key:headphot o |
1.14.1.2 | value | expandkey | strin g | V500 | 1 | 扩展key对应的值 |
4.3.1.7 错误编码
编码 | 描述 |
500 | 服务方未定义异常 |
501 | access_token的值错误 |
502 | access_token已失效 |
503 | 未能找到用户 |
504 | access_token所关联的用户不是要获取的用户 |
4.3.1.8 报文范例
4.3.1.8.1.1请求地址范例
~/restful/services/user/info?access_token=6031bdf8-af92-47fc-9dd2-
6ef84de3e443&userid=1001&expandkeys=headphoto
4.3.1.8.1.2请求报文范例
4.3.1.8.1.2.1 JSON范例
无
4.3.1.8.1.3应答报文范例
4.3.1.8.1.3.1.1 正常报文范例
4.3.1.8.1.3.1.1.1 JSON范例
{
"userid":1001, "custid":12245,
"custcode":"1234214324324",
"custype":2,
"status":2, "username":"admin",
"useralias":"测试用户",
"isadmin":true, "entprise":"中国移动",
"departments":"12,13", "departmentnames":"部门1,部门2", "mobile":"00000000000", "email":"00000000000@000.xxx", "expandkeys":[
{"key":"headphoto",
"value":" xxxx://000.000.000.00/xxxxxxxxx.xxx",}
]
}
4.3.1.8.1.3.1.1 异常报文范例
4.3.1.8.1.3.1.1.1 JSON范例
{
"code":501, "msg":"access_token的值错误"
}
4.3.2 获取企业组织结构列表接口(SaaS2002)
4.3.2.1 业务功能
应用系统调用此接口获取当前登陆用户企业组织结构列表。
4.3.2.2 业务流程
第三方应用
SaaS应用管理平台
单点鉴权成功,获取到token,用户使用应用
调用获取企业组织结构列表接口(SaaS2002) 获取用户所在企业组织结构信息
返回用户所在企业组织结构列表
4.3.2.3 请求地址
提供方 | 请求方 | 请求方法 | URI |
SaaS平台 | 应用 | GET | ~/restful/services/department/list |
4.3.2.4 请求参数
名称 | 类型 | 约束 | 说明 |
access_token | string | 1 | 访问令牌 |
custid | int | 1 | 企业id |
4.3.2.5 请求报文
无
4.3.2.6 应答报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | list | - - | - - | - - | 1 |
1.1 | department | list | - - | - - | + | |
1.1.1 | id | department | int | - - | 1 | 组织id |
1.1.2 | name | department | strin g | V20 | 1 | 组织名称 |
1.1.3 | desc | department | strin g | V500 | 1 | 组织描述 |
1.1.4 | parent | department | int | - - | 1 | 上级组织id,值为0时标示没有上级组织 |
1.1.5 | order | department | int | - - | 1 | 排序(按升序排列) |
4.3.2.7 错误编码
编码 | 描述 |
500 | 服务方未定义异常 |
501 | access_token的值错误 |
502 | access_token已失效 |
503 | 未能找到access_token所关联的用户 |
504 | access_token所关联的用户不是当前指定企业的用户 |
4.3.2.8 报文范例
4.3.2.8.1.1请求地址范例
~/restful/services/department/list?access_token=6031bdf8-af92-47fc-9dd2-
6ef84de3e443&custid=12245
4.3.2.8.1.2请求报文范例
4.3.2.8.1.2.1 JSON范例
无
4.3.2.8.1.3应答报文范例
4.3.2.8.1.3.1.1 正常报文范例
4.3.2.8.1.3.1.1.1 JSON范例
[
{"id":12,
"name":"部门1",
"desc":"部门1简介", "parent":0,
"order":"1"},
{"id":14,
"name":"部门11",
"desc":"部门11简介", "parent":12,
"order":"1"},
{"id":13,
"name":"部门2",
"desc":"部门2简介", "parent":0, "order":"2"}
]
4.3.2.8.1.3.1.2 异常报文范例
4.3.2.8.1.3.1.2.1 JSON范例
{
"code":501, "msg":"access_token的值错误"
}
4.3.3 获取企业员工列表接口(SaaS2003)
4.3.3.1 业务功能
应用系统调用此接口获取当前登陆用户企业员工列表。
4.3.3.2 业务流程
第三方应用
SaaS应用管理平台
单点鉴权成功,获取到token,用户使用应用
调用获取企业员工列表接口(SaaS2003) 获取用户所在企业员工信息
返回用户所在企业员工列表
4.3.3.3 请求地址
提供方 | 请求方 | 请求方法 | URI |
SaaS平台 | 应用 | GET | ~/restful/services/user/list |
4.3.3.4 请求参数
名称 | 类型 | 约束 | 说明 |
access_token | string | 1 | 访问令牌 |
custid | int | 1 | 企业id |
expandkeys | string | ? | 扩展key,多个是用逗号分割 头像key:headphoto |
4.3.3.5 请求报文
无
4.3.3.6 应答报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | list | - - | - - | - - | 1 | |
1.1 | user | list | - - | - - | + | |
1.1.1 | userid | user | int | - - | 1 | 用户标识ID |
1.1.2 | status | user | int | - - | 1 | 用户状态 1:未激活2:正常3 :挂起4:已注销5:非法6:非法且挂起 |
1.1.3 | username | user | strin g | V32 | 1 | 用户名。 |
1.1.4 | useralias | user | strin g | V32 | ? | 用户中文姓名 |
1.1.5 | isadmin | response | bool | - - | 1 | 是否管理员 |
1.1.6 | departments | user | strin g | V255 | ? | 企业部门Id,个人用户则可选,企业用户则必选 多个部门使用,分割 |
1.1.7 | departmentn ames | user | strin g | V100 0 | ? | 企业部门名称,个人用户则可选,企业用户则必选 多个部门使用,分割 |
1.1.8 | mobile | user | strin g | V15 | 1 | 用户手机号,用于短信通知 |
1.1.9 | user | strin g | V100 | 1 | 用户邮箱,用户通知 |
1.10 | expandkeys | response | - - | - - | ? | 扩展key集合(当前请求参数传入了扩展key ,此节点才有效) |
1.10.1 | expandkey | expandkeys | - - | - - | + | 扩展key对象 |
1.10.1.1 | key | expandkey | strin g | V100 | 1 | 扩展key 头像key:headphot o |
1.10.1.2 | value | expandkey | strin g | V500 | 1 | 扩展key对应的值 |
4.3.3.7 错误编码
编码 | 描述 |
500 | 服务方未定义异常 |
501 | access_token的值错误 |
502 | access_token已失效 |
503 | 未能找到access_token所关联的用户 |
504 | access_token所关联的用户不是当前指定企业的用户 |
4.3.3.8 报文范例
4.3.3.8.1.1请求地址范例
~/restful/services/user/list?access_token=6031bdf8-af92-47fc-9dd2-
6ef84de3e443&custid=12245&expandkeys=headphoto
4.3.3.8.1.2请求报文范例
4.3.3.8.1.2.1 JSON范例
无
4.3.3.8.1.3应答报文范例
4.3.3.8.1.3.1.1 正常报文范例
4.3.3.8.1.3.1.1.1 JSON范例
[
{"userid":1001,
"status":2, "username":"admin",
"useralias":"测试用户",
"isadmin":true, "departments":"12,13", "departmentnames":"部门1,部门2", "mobile":"00000000000", "email":"00000000000@000.xxx", "expandkeys":[
{"key":"headphoto",
"value":" xxxx://000.000.000.00/xxxxxxxxx.xxx",}
]
},
{"userid":1001,
"status":2, "username":"admin",
"useralias":"测试用户",
"isadmin":false, "departments":"12,13", "departmentnames":"部门1,部门2",
"mobile":"00000000000",
"email":"00000000000@000.xxx", "expandkeys":[
{"key":"headphoto",
"value":" xxxx://000.000.000.00/xxxxxxxxx.xxx",}
]
}
]
4.3.3.8.1.3.1.2 异常报文范例
4.3.3.8.1.3.1.2.1 JSON范例
{
"code":501, "msg":"access_token的值错误"
}
4.3.4 统一消息发送接口 (SaaS2004)
4.3.4.1 业务功能
用户在应用系统处理各种业务,应用系统调用此接口将业务消息向用户发送SaaS平台站内信。
4.3.4.2 业务流程
第三方应用
SaaS应用管理平台
单点鉴权成功,获取到token,用户使用应用
推送消息给指定用户
调用统一消息发送接口 (SaaS2004)
发送消息
发送成功
4.3.4.3 请求地址
提供方 | 请求方 | 请求方法 | URI |
SaaS平台 | 应用 | POST | ~/restful/services/message/send |
4.3.4.4 请求参数
名称 | 类型 | 约束 | 说明 |
access_token | string | 1 | 访问令牌 |
refresh_token | string | ? | 刷新令牌(当访问令牌失效时,系统使 用刷新令牌进行验证) |
4.3.4.5 请求报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | request | - - | - - | - - | 1 | |
1.1 | userid | request | int | - - | 1 | 发送者用户ID |
1.2 | priority | request | int | - - | 1 | 优先级别 1:低 2:中 3:高 |
1.3 | sendtime | request | long | - - | 1 | 发送时间 |
1.4 | receivers | request | strin g | xxx | 1 | 接收者用户ID集合,多个时用逗号分割,每次最多只能发1000个用户 |
1.5 | msglevel | request | int | - - | 1 | 消息内容类型: 0:一般消息, 1:告警消息, 2:错误消息, 3:提醒信息 |
1.6 | appcode | request | strin g | - - | 1 | 应用编码 |
1.7 | web | request | -- | -- | ? | Web站内信消息 |
1.7.1 | templateco de | web | strin g | V64 | 1 | 模版编码 |
1.7.2 | data | web | -- | -- | ? | 模版参数集合 |
1.7.2.1 | item | data | -- | -- | + | 模板参数 |
1.7.2.1.1 | key | data | strin g | V64 | 1 | 参数名 |
1.7.2.1.2 | value | data | strin g | V500 | 1 | 参数值 |
1.7.3 | handles | web | -- | -- | ? | 处理集合 |
1.7.3.1 | handle | handles | -- | -- | + | 处理项 |
1.7.3.1.1 | url | handle | -- | V500 | 1 | 处理地址 调整时saas将会在改地址后加上code(Sa aS1001接口中的cod e参数) |
1.7.3.1.2 | type | handle | -- | int | 1 | 地址类型 1:web |
4.3.4.6 应答报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | response | - - | - - | - - | 1 | |
1.1 | result | response | bool | - - | 1 | 结果 |
1.2 | errmsg | response | strin g | - - | ? | 错误说明 |
4.3.4.7 错误编码
编码 | 描述 |
500 | 服务方未定义异常 |
501 | access_token的值错误 |
502 | access_token已失效 |
503 | 请求报文中部分节点的值错误、格式错误,返回具体的错误 说明 |
504 | 未能找到access_token所关联的用户 |
505 | access_token所关联的用户不是当前指定企业的用户 |
506 | appcode不存在 |
507 | appcode关联的消费者不是当前指定的access_token所关 联的消费者 |
508 | receivers格式错误 |
509 | 部分接收者不存在 |
510 | 发送时间格式错误 |
4.3.4.8 报文范例
4.3.4.8.1.1请求地址范例
~/restful/services/message/send?access_token=6031bdf8-af92-47fc-9dd2-
6ef84de3e443&refresh_token=
4.3.4.8.1.2请求报文范例
4.3.4.8.1.2.1 JSON范例
{
"userid":1001, "priority":1,
"sendtime":1411718510123, "receivers":"1002,1003", "sendtype":4,
"msglevel":0, "appcode":"TXL001", "web":{
"templatecode":"TP1023", "data":[{
"key":"name",
"value":"xx"
},{
"key":"date", "value":"2015年7月31日"
},{
"key":"amount",
"value":"5675.21"
}]
}
}
4.3.4.8.1.3应答报文范例
4.3.4.8.1.3.1.1 正常报文范例
4.3.4.8.1.3.1.1.1 JSON范例
{
"result":true, "errmsg":""
}
4.3.4.8.1.3.1.2 异常报文范例
4.3.4.8.1.3.1.2.1 JSON范例
{
"code":501, "msg":"access_token的值错误"
}
4.3.5 短信发送接口 (SaaS2005)
4.3.5.1 业务功能
用户在应用系统处理各种业务,应用系统调用此接口将业务消息向用户指定的接受者发送SaaS平台短信消息。
4.3.5.2 业务流程
第三方应用
SaaS应用管理平台
单点鉴权成功,获取到token,用户使用应用
推送消息给指定用户
调用短信发送接口 (SaaS2006)
发送消息
发送成功
4.3.5.3 请求地址
提供方 | 请求方 | 请求方法 | URI |
SaaS平台 | 应用 | POST | ~/sms/services/smsmessage/send |
4.3.5.4 请求参数
名称 | 类型 | 约束 | 说明 |
access_token | string | 1 | 访问令牌 |
4.3.5.5 请求报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | request | - - | - - | - - | 1 | |
1.1 | userid | request | int | - - | 1 | 发送者用户ID |
1.2 | priority | request | int | - - | 1 | 优先级别 1:低 2:中 3:高 |
1.3 | sendtime | request | long | - - | 1 | 发送时间 |
1.4 | receivers | request | strin g | xxx | 1 | 接收者手机号码集合 ,多个时用逗号分割 |
1.5 | custcode | request | strin g | V32 | 1 | 企业编码(BOSS侧唯一标识) |
1.6 | appcode | request | strin g | V32 | 1 | 应用编码 |
1.7 | templateco de | request | strin g | V64 | 1 | 模板编码 |
1.8 | sms | request | -- | -- | + | 模版参数 |
1.8.1 | key | sms | strin g | V64 | 1 | 参数名 |
1.8.2 | value | sms | strin g | V500 | 1 | 参数值 |
4.3.5.6 应答报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | response | - - | - - | - - | 1 | 结果 |
1.1 | item | response | bool | - - | + | 结果项 |
1.1.1 | mobile | item | strin g | - - | 1 | 手机号码 |
1.1.2 | result | item | bool | - - | 1 | 结果 |
1.1.3 | errmsg | item | strin g | - - | 1 | 错误说明 |
1.1.4 | messageid | item | int | - - | 1 | 消息id(当result为tr ue时值才有效,否则值为0) |
4.3.5.7 错误编码
编码 | 描述 |
500 | 服务方未定义异常 |
501 | access_token的值错误 |
502 | access_token已失效 |
503 | 请求报文中部分节点的值错误、格式错误,返回具体的错误 说明 |
504 | 未能找到access_token所关联的用户 |
505 | access_token所关联的用户不是当前指定企业的用户 |
506 | 请求报文中的节点的值不正确(具体的错误说明) |
507 | 该企业尚未订购短信应用 |
508 | 找不到对应的模板 |
509 | 请求报文中部分模板参数和模板的参数不一致 |
510 | 参数值的长度超过模板的参数值的长度限制 |
511 | 找不到发送者,或者发送者不是当前指定企业的用户 |
512 | 当前要求发送短信的应用被企业设置为黑名单,不允许发 送短信 |
513 | 当前企业订购的短信应用已暂停使用 |
514 | 当前要求发送短信的应用被运营商设置为不允许使用短信 能力 |
515 | 发送失败,订购了按条计费套餐的互联网客户每小时发送不允许超过XX条短信,在当前时间[yyyy-MM-dd HH:mm:ss]已经发送了XX条,还能发送XX条 |
516 | 发送失败,包月套餐包含[XX]条短信,套餐外每小时发送 不允许超过[XX]条短信,当月已经发送[XX]条,当前这个小时已经发送[XX]条,一次发送不能超过[XX]。 |
517 | 应用编码不存在 |
4.3.5.8 报文范例
4.3.5.8.1.1 请求地址范例
~/sms/services/smsmessage/send?access_token=6031bdf8-af92-47fc-9dd2-6ef84de3e443
4.3.5.8.1.2请求报文范例
4.3.5.8.1.2.1 JSON范例
{
"userid":1001, "priority":1,
"sendtime":1411718510123,
"receivers":"13877582580, 13877582581,13877582582",
"custcode":"121312421", "appcode":"10001223455",
"templatecode":"TP1028", "sms": [{
"key":"name",
"value":"xx"
},{
"key":"date", "value":"2015年7月31日"
},{
"key":"amount",
"value":"5675.21"
}]
}
4.3.5.8.1.3 应答报文范例
4.3.5.8.1.3.1.1 正常报文范例
4.3.5.8.1.3.1.1.1 JSON范例
{
"item":[{"mobile":"00000000000", "result":true,
"errmsg":"", "messageid":1001},
{"mobile":"00000000000",
"result":false, "errmsg":"发送失败",
"messageid":0}]
}
4.3.5.8.1.3.1.2 异常报文范例
4.3.5.8.1.3.1.2.1 JSON范例
{
"code":501, "msg":"access_token的值错误"
}
4.3.6 短信能力权限校验接口 (SaaS2006)
4.3.6.1 业务功能
用户在应用系统处理各种业务,应用系统调用此接口查询本系统是否有权限发送短信或者指定的手机号码是否有权限接收短信(在黑名单上面的手机号码不能接收短信)。
4.3.6.2 业务流程
第三方应用
SaaS应用管理平台
单点鉴权成功,获取到token,用户使用应用
调用短信能力权限校验接口 (SaaS2007)
返回结果
4.3.6.3 请求地址
提供方 | 请求方 | 请求方法 | URI |
SaaS平台 | 应用 | POST | ~/sms/services/smsmessage/checkright |
4.3.6.4 请求参数
名称 | 类型 | 约束 | 说明 |
access_token | string | 1 | 访问令牌 |
4.3.6.5 请求报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | request | - - | - - | - - | 1 | |
1.1 | userid | request | int | - - | 1 | 用户ID |
1.2 | custcode | request | strin g | V32 | 1 | 企业编码(BOSS侧唯一标识) |
1.3 | appcode | request | strin g | V32 | 1 | 应用编码 |
1.4 | telephones | request | strin g | xxx | 1 | 手机号码集合,多个时用逗号分割 |
4.3.6.6 应答报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | response | - - | - - | - - | 1 | |
1.1 | code | response | strin g | F3 | 1 | 结果编码 000:应用有权限发送短信 101:企业未定购短信应用 102:企业限制当前应用发送短信 103:当前企业订购的短信应用已暂停使用 104:运营商限制当前应用发送短信 |
1.2 | error | response | strin g | V255 | 1 | 错误说明 |
1.3 | results | response | -- | -- | 1 | 手机号码校验结果列表 |
1.3.1 | result | results | -- | -- | + | 结果 |
1.3.1.1 | key | result | strin g | V64 | 1 | 手机号码 |
1.3.1.2 | code | result | strin g | F3 | 1 | 结果编码 000:手机有权限发送短信 101:手机号码没有权限发送短信 102:手机号码非企业的员工手机号码 |
1.3.1.3 | error | result | strin g | V255 | 1 | 错误说明 |
4.3.6.7 错误编码
编码 | 描述 |
500 | 服务方未定义异常 |
501 | access_token的值错误 |
502 | access_token已失效 |
503 | 请求报文中部分节点的值错误、格式错误,返回具体的错误 说明 |
504 | 未能找到access_token所关联的用户 |
505 | access_token所关联的用户不是当前指定企业的用户 |
506 | 请求报文中的节点的值不正确(具体的错误说明) |
507 | 应用编码不存在 |
4.3.6.8 报文范例
4.3.6.8.1.1 请求地址范例
~/sms/services/smsmessage/send?access_token=6031bdf8-af92-47fc-9dd2-6ef84de3e443
4.3.6.8.1.2请求报文范例
4.3.6.8.1.2.1 JSON范例
{
"userid":1001, "custcode":"121312421", "appcode":"0000000000000",
"telephones":"00000000000, 00000000000,13877582582"
}
4.3.6.8.1.3 应答报文范例
4.3.6.8.1.3.1.1 正常报文范例
4.3.6.8.1.3.1.1.1 JSON范例
{
"code":"000",
"error":"",
"results":[{
"key":"13800138000",
"code":"000",
"error":""},
{ "key":"13800138001",
"code":"101",
"error":"手机号码没有权限发送短信"}]
}
4.3.6.8.1.3.1.2 异常报文范例
4.3.6.8.1.3.1.2.1 JSON范例
{
"code":501, "msg":"access_token的值错误"
}
4.3.7 App统一消息发送接口 (SaaS2008)
4.3.7.1 业务功能
用户在应用系统处理各种业务,应用系统调用此接口将业务消息向用户发送App应用消息。
4.3.7.2 业务流程
SaaS应用管理平台
第三方应用
单点鉴权成功,获取到token,用户使用应用
推送消息给指定用户
调用统一消息发送接口 (SaaS2008)
发送消息
发送成功
4.3.7.3 请求地址
提供方 | 请求方 | 请求方法 | URI |
SaaS平台 | 应用 | POST | ~/restful/services/message/sendtoapp |
4.3.7.4 请求参数
名称 | 类型 | 约束 | 说明 |
access_token | string | 1 | 访问令牌 |
refresh_token | string | ? | 刷新令牌(当访问令牌失效时,系统使 用刷新令牌进行验证) |
4.3.7.5 请求报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | request | - - | - - | - - | 1 | |
1.1 | userid | request | int | - - | 1 | 发送者用户ID |
1.2 | sendtime | request | long | - - | 1 | 发送时间 |
1.3 | receivers | request | strin g | xxx | 1 | 接收者用户ID集合,多个时用逗号分割,每次最多只能发1000个用户 |
1.4 | appcode | request | strin g | - - | 1 | 应用编码 |
1.5 | content | request | -- | -- | ? | 消息体 |
1.5.1 | minexplain | content | strin g | V32 | 1 | 简短说明 |
1.5.2 | data | content | -- | -- | ? | 模版参数集合 |
1.5.2.1 | item | data | -- | -- | + | 模板参数 |
1.5.2.1.1 | key | item | strin g | V15 | 1 | 参数名(唯一) |
1.5.2.1.2 | tip | item | strin g | V15 | 1 | 参数提示显示说明,空时不则不显示 |
1.5.2.1.3 | value | item | strin g | V100 | 1 | 参数值 |
1.5.2.1.4 | order | item | -- | int | 1 | 参数排序号,app展示消息时按照升序展示相应的内容 |
1.5.2.1.5 | isshow | item | -- | bool | 1 | 是否显示,true:ap p展示该参数的值,否则不展示 |
1.5.3 | handles | content | -- | -- | ? | 处理集合 |
1.5.3.1 | handle | handles | -- | -- | + | 处理项 |
1.5.3.1.1 | url | handle | -- | V255 | 1 | 处理地址 调整时saas将会在改地址后加上code(Sa aS1001接口中的cod e参数) |
1.5.3.1.2 | type | handle | -- | int | 1 | 地址类型 1:android 2:ios 3:html5 |
4.3.7.6 应答报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | response | - - | - - | - - | 1 | |
1.1 | result | response | bool | - - | 1 | 结果 |
1.2 | errmsg | response | strin g | - - | ? | 错误说明 |
4.3.7.7 错误编码
编码 | 描述 |
500 | 服务方未定义异常 |
501 | access_token的值错误 |
502 | access_token已失效 |
503 | 请求报文中部分节点的值错误、格式错误,返回具体的错误 说明 |
504 | 未能找到access_token所关联的用户 |
505 | access_token所关联的用户不是当前指定企业的用户 |
506 | appcode不存在 |
507 | appcode关联的消费者不是当前指定的access_token所关 联的消费者 |
508 | receivers格式错误 |
509 | 部分接收者不存在 |
510 | 发送时间格式错误 |
4.3.7.8 报文范例
4.3.7.8.1.1请求地址范例
~/restful/services/message/sendtoapp?access_token=6031bdf8-af92-47fc-9dd2- 6ef84de3e443&refresh_token=
4.3.7.8.1.2请求报文范例
4.3.7.8.1.2.1 JSON范例
{
"userid":1001, "sendtime":1411718510123, "receivers":"1002,1003", "appcode":"TXL001", "content":{
"minexplain":"小明提交了请假申请",
"data":[{
"key":"title",
"tip":"标题",
"value":"小明提交了请假申请", "order":1,
"ishow":true
},{
"key":"type",
"tip":"类型",
"value":"请假申请",
"order":2, "ishow":true
},{
"key":"operate",
"tip":"操作",
"value":"待处理", "order":3, "ishow":true
}],
"handle":[{
"url":"saas://xx?action=todealitem", "type":"1"
},{
"url": "saaspoa://xxx?action=todealitem", "type": 2
}]
]
}
}
4.3.7.8.1.3应答报文范例
4.3.7.8.1.3.1.1 正常报文范例
4.3.7.8.1.3.1.1.1 JSON范例
{
"result":true, "errmsg":""
}
4.3.7.8.1.3.1.2 异常报文范例
4.3.7.8.1.3.1.2.1 JSON范例
{
"code":501, "msg":"access_token的值错误"
}
4.4 业务支撑接口
4.4.1 企业业务开通与变更接口 (SaaS0001)
4.4.1.1 业务功能
客户在SaaS应用管理平台开通或者变更应用业务,在Boss系统业务处理完成后,调用此接口向应用系统施工。
4.4.1.2 业务流程
SaaS应用管理平台
运营管理平台
第三方应用
企业开通、变更应用
发起开通、变更应用申请
异步返回申请结果
调用企业业务开通与变更接口 (SaaS0001),发起通知
处理业务通知
返回结果
通知企业开通、变更结果
4.4.1.3 请求地址
提供方 | 请求方 | 请求方法 | URI |
应用 | SaaS平台 | POST | 由应用方提供 |
4.4.1.4 请求参数
名称 | 类型 | 约束 | 说明 |
timestamp | long | 1 | 时间戳 |
sign | int | 1 | 签名 |
4.4.1.5 请求报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | request | - - | - - | - - | 1 | |
1.1 | applyno | request | strin g | V64 | 1 | 申请单号,格式:CIDC -O- [UUID],UUID为32 字节的字符串 |
1.2 | ecordercode | request | strin g | V32 | 1 | 企业应用订购编码(唯一性,标志一个企业的订购关系) |
1.3 | opttype | request | int | - - | 1 | 操作类型 0:开通; 1:变更; 2:试用转商用 3:预开通 4:再次开通 |
1.4 | trial | request | bool | - - | 1 | 是否试用 |
1.5 | bossorderid | request | strin g | - - | ? | Boss订单ID(当optty pe为预开通时,此节点的值为空,当optty pe为重复开通时,该节点的值为新的Boss订单ID) |
1.6 | custid | request | int | - - | 1 | 企业ID |
1.7 | custcode | request | strin g | V32 | 1 | 企业编码(BOSS侧唯一标识) |
1.8 | custtype | request | int | - - | ? | 客户类型 1:个人用户2:企业用户 |
1.9 | registersourc e | request | int | - - | ? | 注册来源,枚举取值:0-运管平台、1-BBOSS、2-政企BOSS |
1.10 | custname | request | strin g | V255 | 1 | 客户名称 |
1.11 | userid | request | strin g | V32 | 1 | 应用管理员Id |
1.12 | username | request | strin g | V32 | 1 | 应用管理员用户名。 |
1.13 | useralias | request | strin g | V32 | ? | 应用管理员中文姓名 |
1.14 | mobile | request | strin g | V15 | 1 | 用户手机号,用于短信通知 |
1.15 | request | strin g | V100 | 1 | 用户邮箱,用户通知 | |
1.16 | productcode | request | strin g | V32 | 1 | SaaS服务产品编号 |
1.17 | begintime | request | long | - - | 1 | 生效时间 |
1.18 | endtime | request | long | - - | 1 | 失效时间 |
1.19 | productparas | request | - - | - - | ? | 应用开通参数列表 |
1.19.1 | productpara | productpara s | - - | - - | + | 应用开通参数 |
1.19.1.1 | key | productpara | Strin g | V255 | 1 | 产品参数名 |
1.19.1.2 | value | productpara | strin g | V255 | 1 | 产品参数值 |
1.20 | services | request | - - | - - | 1 | 业务列表 |
1.20.1 | service | services | - - | - - | + | 业务项 |
1.20.1.2 | opttype | service | int | - - | 1 | 操作代码 0:新增业务, 1:注销业务 2:修改业务 |
1.20.1.3 | code | service | strin g | V255 | 1 | 业务编码,业务唯一 标识 |
1.20.1.4 | begintime | service | long | - - | 1 | 生效时间 |
1.20.1.5 | endtime | service | long | - - | 1 | 失效时间 |
1.20.1.6 | serviceparas | service | - - | - - | ? | 业务开通参数列表 |
1.20.1.6 .1 | servicepara | serviceparas | - - | - - | + | 业务开通参数 |
1.20.1.6 .1.1 | key | servicepara | strin g | V255 | 1 | 业务参数名 |
1.20.1.6 .1.2 | value | servicepara | strin g | V255 | 1 | 业务参数值 |
4.4.1.6 应答报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | response | - - | - - | - - | 1 | |
1.1 | result | response | bool | - - | 1 | 结果 |
1.2 | errmsg | response | strin g | - - | ? | 错误说明 |
4.4.1.7 错误编码
编码 | 描述 |
500 | 服务方未定义异常 |
501 | sign的值错误 |
502 | productcode不存在 |
503 | 业务编码不存在 |
504 | 产品参数错误 |
505 | 业务参数错误 |
506 | 企业应用订购编码不存在(变更时) |
507 | 客户不存在(变更时) |
4.4.1.8 报文范例
4.4.1.8.1.1请求地址范例
应用方接口地址?timestamp=1232413432&sign=wrewetqwe213123123efsdgfdsgwe
4.4.1.8.1.2请求报文范例
4.4.1.8.1.2.1 JSON范例
{
"applyno":"CIDC-O-DDF12ADB96874484BF2FA8DD8F06111B",
"ecordercode":"121243544", "opttype":0,
"trial":0, "bossorderid":12312434, "custid":12312312, "custcode":"21436575564", "custtype":2, "registersource":0, "custname":"中国移动",
"userid":1001, "username":"用户名",
"useralias":"姓名", "mobile":"00000000000", "email":"00000000000@000.xxx", "productcode":"2121212", "begintime":1411718510123, "endtime":1411718510123,
"productparas":[
{"key":"sad",
"value":"111"},
{"key":"qweqw",
"value":"222"}
],
"services":[
{"opttype":0,
"code":"111", "begintime":1411718510123, "endtime":1411718510123,
"serviceparas":[
{"key":"sad",
"value":"111"},
{"key":"qweqw",
"value":"222"}
]
}
]
}
4.4.1.8.1.3应答报文范例
4.4.1.8.1.3.1.1 正常报文范例
4.4.1.8.1.3.1.1.1 JSON范例
{
"result":true, "errmsg":""
}
4.4.1.8.1.3.1.2 异常报文范例
4.4.1.8.1.3.1.2.1 JSON范例
{
"code":501,
"msg":"sign的值错误"
}
4.4.2 企业业务状态变更接口(SaaS0002)
4.4.2.1 业务功能
客户在SaaS应用管理平台或者其他业务平台退订、暂停(欠费暂停,信控暂停等)
、暂停后恢复应用业务,在Boss系统业务处理完成后,调用此接口向应用系统施工
。
4.4.2.2 业务流程
SaaS应用管理平台
运营管理平台
第三方应用
企业应用注销
发起注销应用申请
异步返回申请结果
调用企业业务状态变更
接口(SaaS0002),发送变更通知
处理业务通知
返回结果
通知企业应用注销结果
4.4.2.3 请求地址
提供方 | 请求方 | 请求方法 | URI |
应用 | SaaS平台 | POST | 由应用方提供 |
4.4.2.4 请求参数
名称 | 类型 | 约束 | 说明 |
timestamp | long | 1 | 时间戳 |
sign | int | 1 | 签名 |
4.4.2.5 请求报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | request | - - | - - | - - | 1 | |
1.1 | applyno | request | strin g | V64 | 1 | 申请单号,格式:CIDC -O- [UUID],UUID为32 字节的字符串 |
1.2 | ecordercode | request | strin g | V32 | 1 | 企业应用订购编码 |
1.3 | opttype | request | int | - - | 1 | 操作类型 0:退订; 1:暂停; 2:恢复; |
1.4 | custid | request | int | - - | 1 | 企业ID |
1.5 | custcode | request | strin g | V32 | 1 | 客户编码(BOSS侧唯一标识) |
1.6 | productcode | request | strin g | V32 | 1 | SaaS服务产品编号 |
1.7 | operatime | request | long | - - | 1 | 受理时间 |
1.8 | effecttime | request | long | - - | 1 | 生效时间 |
4.4.2.6 应答报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | response | - - | - - | - - | 1 | |
1.1 | result | response | bool | - - | 1 | 结果 |
1.2 | errmsg | response | strin g | - - | ? | 错误说明 |
4.4.2.7 错误编码
编码 | 描述 |
500 | 服务方未定义异常 |
501 | sign的值错误 |
502 | productcode不存在 |
503 | 企业应用订购编码不存在 |
504 | 客户不存在 |
4.4.2.8 报文范例
4.4.2.8.1.1请求地址范例
应用方接口地址?timestamp=1232413432&sign=wrewetqwe213123123efsdgfdsgwe
4.4.2.8.1.2请求报文范例
4.4.2.8.1.2.1 JSON范例
{
"applyno":"CIDC-O-DDF12ADB96874484BF2FA8DD8F06111B",
"ecordercode":"121243544",
"opttype":0, "custid":12312312, "custcode":"21436575564", "productcode":"2121212", "operatime":1411718510123, "effecttime":1411718510123
}
4.4.2.8.1.3应答报文范例
4.4.2.8.1.3.1.1 正常报文范例
4.4.2.8.1.3.1.1.1 JSON范例
{
"result":true, "errmsg":""
}
4.4.2.8.1.3.1.2 异常报文范例
4.4.2.8.1.3.1.2.1 JSON范例
{
"code":501,
"msg":"sign的值错误"
}
4.4.3 成员业务开通与变更接口 (SaaS0003)
4.4.3.1 业务功能
客户在SaaS应用管理平台为企业成员进行应用授权管理,授权用户的业务信息开通与变更通过此接口向应用系统施工。
4.4.3.2 业务流程
SaaS应用管理平台
第三方应用
企业进行成员应用开通、变更
调用成员业务开通与变更接口 (SaaS0003),发起通知
处理业务通知
返回结果
通知企业成员开通、变更结果
4.4.3.3 请求地址
提供方 | 请求方 | 请求方法 | URI |
应用 | SaaS平台 | POST | 由应用方提供 |
4.4.3.4 请求参数
名称 | 类型 | 约束 | 说明 |
timestamp | long | 1 | 时间戳 |
sign | int | 1 | 签名 |
4.4.3.5 请求报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | request | - - | - - | - - | 1 | |
1.1 | applyno | request | strin g | V64 | 1 | 申请单号,格式:CIDC -O- [UUID],UUID为32 字节的字符串 |
1.2 | ecordercode | request | strin g | V32 | 1 | 企业应用订购编码 |
1.3 | custid | request | int | - - | 1 | 企业ID |
1.4 | productcode | request | strin g | V32 | 1 | SaaS服务产品编号 |
1.5 | users | request | - - | - - | 1 | 业务列表 |
1.5.1 | user | user | - - | - - | + | 业务项 |
1.5.1.1 | opttype | user | int | - - | 1 | 操作类型 0:开通; 1:变更; |
1.5.1.2 | userid | user | int | - - | 1 | 用户标识ID |
1.5.1.3 | username | user | strin g | V32 | 1 | 用户名。 |
1.5.1.4 | useralias | user | strin g | V32 | ? | 用户中文姓名 |
1.5.1.5 | mobile | user | strin g | V15 | 1 | 用户手机号,用于短信通知 |
1.5.1.6 | user | strin g | V100 | 1 | 用户邮箱,用户通知 | |
1.5.1.7 | begintime | user | long | - - | 1 | 生效时间 |
1.5.1.8 | endtime | user | long | - - | 1 | 失效时间 |
1.5.1.9 | paras | user | - - | - - | ? | 业务开通参数列表 |
1.5.1.9. 1 | para | paras | - - | - - | + | 业务开通参数 |
1.5.1.9. 1.1 | key | para | strin g | V255 | 1 | 业务参数名 |
1.5.1.9. 1.2 | value | para | strin g | V255 | 1 | 业务参数值 |
4.4.3.6 应答报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | result | - - | - - | - - | + | 施工结果 |
1.1 | success | result | bool | - - | 1 | 是否成功 |
1.2 | errmsg | result | strin g | - - | ? | 错误说明 |
4.4.3.7 错误编码
编码 | 描述 |
500 | 服务方未定义异常 |
501 | sign的值错误 |
502 | productcode不存在 |
503 | 产品参数错误 |
504 | 业务参数错误 |
505 | 企业应用订购编码不存在(变更时) |
506 | 客户不存在(变更时) |
4.4.3.8 报文范例
4.4.3.8.1.1请求地址范例
应用方接口地址?timestamp=1232413432&sign=wrewetqwe213123123efsdgfdsgwe
4.4.3.8.1.2请求报文范例
4.4.3.8.1.2.1 JSON范例
{
"applyno":"CIDC-O-DDF12ADB96874484BF2FA8DD8F06111B",
"ecordercode":"121243544", "custid":12312312, "productcode":"2121212", "users":[
{"opttype":0, "userid":1001, "username":"admin",
"useralias":"测试用户",
"mobile":"00000000000", "email":"00000000000@000.xxx", "begintime":1411718510123, "endtime":1411718510123,
"paras":[
{"key":"sad",
"value":"111"},
{"key":"qweqw",
"value":"222"}
]
},
{"opttype":0, "userid":1002, "username":"admin1", "useralias":"测试用户1",
"mobile":"00000000000",
"email":"00000000000@000.xxx" "begintime":1411718510123, "endtime":1411718510123,
"paras":[
{"key":"sad",
"value":"111"},
{"key":"qweqw",
"value":"222"}
]
}
]
}
4.4.3.8.1.3应答报文范例
4.4.3.8.1.3.1.1 正常报文范例
4.4.3.8.1.3.1.1.1 JSON范例
{"success":true,
"errmsg":""}
4.4.3.8.1.3.1.2 异常报文范例
4.4.3.8.1.3.1.2.1 JSON范例
{
"code":501,
"msg":"sign的值错误"
}
4.4.4 成员业务状态变更接口(SaaS0004)
4.4.4.1 业务功能
客户在SaaS应用管理平台为企业成员进行应用授权管理,对已授权用户进行取消授权、暂停(欠费暂停,信控暂停等)、暂停后恢复应用业务,调用此接口向应用系统施工。
4.4.4.2 业务流程
SaaS应用管理平台
第三方应用
企业暂停、注销、恢复成员使用应用
调用成员业务状态变更
接口(SaaS0004),发送变更通知
处理业务通知
返回结果
通知企业、成员应用处理结果
4.4.4.3 请求地址
提供方 | 请求方 | 请求方法 | URI |
应用 | SaaS平台 | POST | 由应用方提供 |
4.4.4.4 请求参数
名称 | 类型 | 约束 | 说明 |
timestamp | long | 1 | 时间戳 |
sign | int | 1 | 签名 |
4.4.4.5 请求报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | request | - - | - - | - - | 1 | |
1.1 | applyno | request | strin g | V64 | 1 | 申请单号,格式:CIDC -O- [UUID],UUID为32 字节的字符串 |
1.2 | ecordercode | request | strin g | V32 | 1 | 企业应用订购编码 |
1.3 | custid | request | int | - - | 1 | 企业ID |
1.4 | productcode | request | strin g | V32 | 1 | SaaS服务产品编号 |
1.5 | operatime | request | long | - - | 1 | 受理时间 |
1.6 | effecttime | request | long | - - | 1 | 生效时间 |
1.7 | users | request | - - | - - | 1 | 业务列表 |
1.7.1 | user | user | - - | - - | + | 业务项 |
1.7.1.1 | opttype | user | int | - - | 1 | 操作类型 0:取消授权; 1:暂停; 2:恢复; |
1.7.1.2 | userid | user | int | - - | 1 | 用户标识ID |
4.4.4.6 应答报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | result | response | - - | - - | + | 施工结果 |
1.1 | success | result | bool | - - | 1 | 是否成功 |
1.2 | errmsg | result | strin g | - - | ? | 错误说明 |
4.4.4.7 错误编码
编码 | 描述 |
500 | 服务方未定义异常 |
501 | sign的值错误 |
502 | productcode不存在 |
505 | 企业应用订购编码不存在 |
506 | 客户不存在 |
4.4.4.8 报文范例
4.4.4.8.1.1请求地址范例
应用方接口地址?timestamp=1232413432&sign=wrewetqwe213123123efsdgfdsgwe
4.4.4.8.1.2请求报文范例
4.4.4.8.1.2.1 JSON范例
{
"applyno":"CIDC-O-DDF12ADB96874484BF2FA8DD8F06111B",
"ecordercode":"121243544", "custid":12312312, "productcode":"2121212", "begintime":1411718510123,
"endtime":1411718510123,
"users":[
{"opttype":0,
"userid":1001},
{"opttype":0, "userid":1002}
]
}
4.4.4.8.1.3应答报文范例
4.4.4.8.1.3.1.1 正常报文范例
4.4.4.8.1.3.1.1.1 JSON范例
{
"success":true, "errmsg":""
}
4.4.4.8.1.3.1.2 异常报文范例
4.4.4.8.1.3.1.2.1 JSON范例
{
"code":501,
"msg":"sign的值错误"
}
4.4.5 业务参数校验接口(SaaS0005)
4.4.5.1 业务功能
用户从SaaS应用管理平台进行应用企业业务开通,企业业务变更,成员业务开通,成员业务变更等业务操作,使用此接口向应用系统进行业务参数校验。
4.4.5.2 业务流程
SaaS应用管理平台
第三方应用
企业进行应用开通、变更成员应用开通、变更
调用业务参数校验
接口(SaaS0005),发送参数验证
处理参数验证
返回结果
4.4.5.3 请求地址
提供方 | 请求方 | 请求方法 | URI |
应用 | SaaS平台 | POST | 由应用方提供 |
4.4.5.4 请求参数
名称 | 类型 | 约束 | 说明 |
timestamp | long | 1 | 时间戳 |
sign | int | 1 | 签名 |
4.4.5.5 请求报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | request | - - | - - | - - | 1 | |
1.1 | applyno | request | strin g | V64 | 1 | 申请单号,格式:CIDC -O- [UUID],UUID为32 字节的字符串 |
1.2 | ecordercode | request | strin g | V32 | ? | 企业应用订购编码,o pttype为0时为空,其他必选 |
1.3 | opttype | request | int | - - | 1 | 操作类型 0:企业业务开通; 1:企业业务变更; 2:成员业务开通; 3:成员业务变更; |
1.4 | trial | request | bool | - - | 1 | 是否试用 |
1.5 | custid | request | int | - - | 1 | 企业ID |
1.6 | custtype | request | int | - - | 1 | 客户类型 1:个人用户2:企业用户 |
1.7 | custname | request | strin g | V255 | 1 | 客户名称 |
1.8 | number | request | int | - - | 1 | 开通成员数 |
1.9 | userid | request | strin g | V32 | ? | 应用管理员Id |
1.10 | scene | request | strin g | V32 | 1 | 校验场景编码 |
1.11 | paras | request | - - | - - | ? | 应用开通参数列表 |
1.11.1 | para | paras | - - | - - | + | 应用开通参数 |
1.11.1.1 | key | para | Strin g | V255 | 1 | 产品参数名 |
1.11.1.2 | value | para | strin g | V255 | 1 | 产品参数值 |
4.4.5.6 应答报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | response | - - | - - | - - | 1 | |
1.1 | result | response | bool | - - | 1 | 结果 |
1.2 | errmsg | response | strin g | - - | ? | 错误说明 |
4.4.5.7 错误编码
编码 | 描述 |
500 | 服务方未定义异常 |
501 | sign的值错误 |
4.4.5.8 报文范例
4.4.5.8.1.1请求地址范例
应用方接口地址?timestamp=1232413432&sign=wrewetqwe213123123efsdgfdsgwe
4.4.5.8.1.2请求报文范例
4.4.5.8.1.2.1 JSON范例
{
"applyno":"CIDC-O-DDF12ADB96874484BF2FA8DD8F06111B",
"ecordercode":"121243544", "opttype":0,
"trial":0, "custid":12312312, "custtype":2, "custname":"中国移动", "number":10, "userid":1001, "scene":"12124", "paras":[
{"key":"sad",
"value":"111"},
{"key":"qweqw",
"value":"222"}
]
}
4.4.5.8.1.3应答报文范例
4.4.5.8.1.3.1.1 正常报文范例
4.4.5.8.1.3.1.1.1 JSON范例
{
"result":true, "errmsg":""
}
4.4.5.8.1.3.1.2 异常报文范例
4.4.5.8.1.3.1.2.1 JSON范例
{
"code":501,
"msg":"sign的值错误"
}
4.5 数据增量同步接口
4.5.1 数据变更通知接口 (SaaS3001)
4.5.1.1 业务功能
客户在SaaS应用管理平台进行企业信息、组织信息、用户信息变更后,SaaS应用管理平台调用此接口通知应用平台。
4.5.1.2 业务流程
SaaS应用管理平台
第三方应用
企业信息、组织结构、用户信息变更
调用数据变更通知
接口 (SaaS3001),发送变更通知
接收处理通知
接收成功
4.5.1.3 请求地址
提供方 | 请求方 | 请求方法 | URI |
应用 | SaaS平台 | POST | 由应用方提供 |
4.5.1.4 请求参数
名称 | 类型 | 约束 | 说明 |
timestamp | long | 1 | 时间戳 |
sign | int | 1 | 签名 |
4.5.1.5 请求报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | request | - - | - - | - - | 1 | |
1.1 | applyno | request | strin g | V64 | 1 | 申请单号,格式:SAA SSIYYYYMMDDHH MMSSFFF ,即SAASSI+时间 |
1.2 | items | request | - - | - - | 1 | 变更集合 |
1.3 | item | items | - - | - - | 1 | 变更项 |
1.4 | type | item | int | - - | 1 | 变更数据类型 0:企业, 1:组织结构 2:用户 |
1.6 | custs | item | - - | - - | ? | 企业集合,只有当数据变更类型为1或者2时才有效 |
1.7 | cust | custs | - - | - - | + | 企业项 |
1.8 | custid | cust | strin g | V32 | 1 | 企业id |
1.9 | custcode | cust | strin g | V32 | 1 | 企业编码 |
4.5.1.6 应答报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | response | - - | - - | - - | 1 | |
1.1 | result | response | bool | - - | 1 | 结果 |
1.2 | errmsg | response | strin g | - - | ? | 错误说明 |
4.5.1.7 错误编码
编码 | 描述 |
500 | 服务方未定义异常 |
501 | sign的值错误 |
4.5.1.8 报文范例
4.5.1.8.1.1请求地址范例
应用方接口地址?timestamp=1232413432&sign=wrewetqwe213123123efsdgfdsgwe
4.5.1.8.1.2请求报文范例
4.5.1.8.1.2.1 JSON范例
{
"applyno":"SAASSI20141012141115123",
"items":[
{"type":0,
"custs":[]},
{"type":1,
"custs":[
{"custid":1001, "custcode":"21312421423"},
{"custid":1002, "custcode":"2343546454"}
]}
]
}
4.5.1.8.1.3应答报文范例
4.5.1.8.1.3.1.1 正常报文范例
4.5.1.8.1.3.1.1.1 JSON范例
{
"result":true, "errmsg":""
}
4.5.1.8.1.3.1.2 异常报文范例
4.5.1.8.1.3.1.2.1 JSON范例
{
"code":501,
"msg":"sign的值错误"
}
4.5.2 获取企业增量数据接口 (SaaS3002)
4.5.2.1 业务功能
客户在SaaS应用管理平台进行企业信息变更后,SaaS应用管理平台通知应用企业数据变更,应用调用此接口获取企业变更信息 。
分批次返回数据,每批次最多返回500条企业变更数据。
4.5.2.2 业务流程
第三方应用
SaaS应用管理平台
接收到企业数据变更通知
调用获取企业增量数据
接口 (SaaS3002),请求增量数据
处理请求
分批次返回数据
处理数据,判断是否还有下一批次数据,如果有
继续调用接口数据请求
4.5.2.3 请求地址
提供方 | 请求方 | 请求方法 | URI |
SaaS平台 | 应用 | GET | ~/restful/services/enterprise/increment |
4.5.2.4 请求参数
名称 | 类型 | 约束 | 说明 |
client_id | int | 1 | 消费者公钥,应用接入时平台提供 |
timestamp | long | 1 | 时间戳 |
sign | int | 1 | 签名 |
lastupdatetime | long | 1 | 最后修改时间 |
lastcustid | int | 1 | 最后修改的企业数据的id(首次请求时 值为0) |
applyno | string | 1 | 请求流水号,格式:SAASSIYYYYMMD DHHMMSSFFF ,即SAASSI+时间 |
4.5.2.5 请求报文
无
4.5.2.6 应答报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | response | - - | - - | - - | 1 | |
1.1 | custs | response | - - | - - | 1 | 企业集合 |
1.1.1 | cust | custs | - - | - - | + | 企业项 |
1.1.1.1 | custid | cust | int | - - | 1 | 企业id |
1.1.1.2 | custcode | cust | strin g | V32 | 1 | 企业编码(BOSS侧唯 一标识) |
1.1.1.3 | custtype | cust | int | - - | 1 | 客户类型 1:个人客户2:企业客户 |
1.1.1.4 | status | cust | int | - - | 1 | 客户状态 0:正常 1:删除 |
1.1.1.5 | paymode | cust | int | - - | 1 | 付费模式 (1:预付费2:后付费) |
1.1.1.6 | custname | cust | strin g | V32 | 1 | 客户名称 |
1.1.1.7 | entprisetype | cust | strin g | V255 | ? | 企业类别,就是行业 类别,以BOSS分类为准 |
1.1.1.8 | areacode | cust | strin g | V32 | ? | 省级地区编码。以BO SS编码为准 |
1.1.1.9 | lastupdatetim e | cust | long | - - | 1 | 最后修改日期 |
1.2 | repeatsign | response | int | - - | 1 | 再次请求标志: 0:否 1:是 |
4.5.2.7 错误编码
编码 | 描述 |
500 | 服务方未定义异常 |
501 | 找不到消费者 |
502 | sign的值错误 |
503 | 最后修改时间格式错误 |
504 | {0}值不能为空 |
4.5.2.8 报文范例
4.5.2.8.1.1请求地址范例
~/restful/services/enterprise/increment?client_id=1234×tamp=1232413432&sign=wrewetqwe2131 23123efsdgfdsgwe&lastupdatetime=1235689006&lastcustid=1001&applyno=SAASSI2014101214111512 3
4.5.2.8.1.2请求报文范例
4.5.2.8.1.2.1 JSON范例
无
4.5.2.8.1.3应答报文范例
4.5.2.8.1.3.1.1 正常报文范例
4.5.2.8.1.3.1.1.1 JSON范例
{
"custs":[
{"custid":1001, "custcode":"123123", "status":0,
"paymode":1, "custname":"中国移动",
"entprisetype":"",
"areacode":"", "lastupdatetime":1112341243},
{"custid":1002, "custcode":"123122", "status":0,
"paymode":1, "custname":"中国移动",
"entprisetype":"",
"areacode":"", "lastupdatetime":1112341243}
],
"repeatsign":0
}
4.5.2.8.1.3.1.2 异常报文范例
4.5.2.8.1.3.1.2.1 JSON范例
{
"code":501,
"msg":"sign的值错误"
}
4.5.3 获取组织结构增量数据接口 (SaaS3003)
4.5.3.1 业务功能
客户在SaaS应用管理平台进行组织结构信息变更后,SaaS应用管理平台通知应用组织结构数据变更,应用调用此接口获取组织结构变更信息 。
分批次返回数据,每批次最多返回500条组织结构变更数据。
4.5.3.2 业务流程
第三方应用
SaaS应用管理平台
接收到组织结构变更通知
调用获取组织结构增量数据接口 (SaaS3003),请求增量数据
处理请求
分批次返回数据
处理数据,判断是否还有下一批次数据,如果有
继续调用接口数据请求
4.5.3.3 请求地址
提供方 | 请求方 | 请求方法 | URI |
SaaS平台 | 应用 | GET | ~/restful/services/department/increment |
4.5.3.4 请求参数
名称 | 类型 | 约束 | 说明 |
client_id | int | 1 | 消费者公钥,应用接入时平台提供 |
timestamp | long | 1 | 时间戳 |
sign | int | 1 | 签名 |
custid | int | 1 | 企业id |
lastupdatetime | long | 1 | 最后修改时间 |
lastdepartmenti d | int | 1 | 最后修改的组织结构数据的id(首次请 求时值为0) |
applyno | string | 1 | 请求流水号,格式:SAASSIYYYYMMD DHHMMSSFFF ,即SAASSI+时间 |
4.5.3.5 请求报文
无
4.5.3.6 应答报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | response | - - | - - | - - | 1 | |
1.1 | departments | response | - - | - - | 1 | 企业集合 |
1.1.1 | department | departments | - - | - - | + | 企业项 |
1.1.1.1 | id | department | int | - - | 1 | 组织id |
1.1.1.2 | name | department | strin g | V20 | 1 | 组织名称 |
1.1.1.3 | desc | department | strin g | V500 | 1 | 组织描述 |
1.1.1.4 | parent | department | int | - - | 1 | 上级组织id,值为0时标示没有上级组织 |
1.1.1.5 | order | department | int | - - | 1 | 排序(按升序排列) |
1.1.1.6 | path | department | strin g | V255 | 1 | 组织架构路径,表示方式为:根组织ID.二级组织架构ID.三级组织架构ID.……(如3423. 4556.6788.……) |
1.1.1.7 | status | department | int | - - | 1 | 状态 0:正常 1:删除 |
1.1.1.8 | lastupdatetim e | department | long | - - | 1 | 最后修改日期 |
1.2 | repeatsign | response | int | - - | 1 | 再次请求标志: 0:否 1:是 |
4.5.3.7 错误编码
编码 | 描述 |
500 | 服务方未定义异常 |
501 | 找不到消费者 |
501 | sign的值错误 |
502 | 最后修改时间格式错误 |
503 | {0}值不能为空 |
4.5.3.8 报文范例
4.5.3.8.1.1请求地址范例
~/restful/services/enterprise/increment?client_id=1234×tamp=1232413432&sign=wrewetqwe2131 23123efsdgfdsgwe&lastupdatetime=1235689006&lastcustid=1001&applyno=SAASSI2014101214111512 3
4.5.3.8.1.2请求报文范例
4.5.3.8.1.2.1 JSON范例
无
4.5.3.8.1.3应答报文范例
4.5.3.8.1.3.1.1 正常报文范例
4.5.3.8.1.3.1.1.1 JSON范例
{
"departments":[
{"id":12,
"name":"部门1",
"desc":"部门1简介", "parent":0,
"order":"1"
"path":"12", "status":0,
"lastupdatetime":1112341243},
{"id":12,
"name":"部门1",
"desc":"部门1简介", "parent":0,
"order":"1"
"path":"12", "status":0,
"lastupdatetime":1112341243}
],
"repeatsign":0
}
4.5.3.8.1.3.1.2 异常报文范例
4.5.3.8.1.3.1.2.1 JSON范例
{
"code":501,
"msg":"sign的值错误"
}
4.5.4 获取用户增量数据接口 (SaaS3004)
4.5.4.1 业务功能
客户在SaaS应用管理平台进行用户信息变更后,SaaS应用管理平台通知应用用户数据变更,应用调用此接口获取用户变更信息 。
分批次返回数据,每批次最多返回500条用户变更数据。
4.5.4.2 业务流程
第三方应用
SaaS应用管理平台
接收到用户变更通知
调用获取用户增量数据
接口 (SaaS3003),请求增量数据
处理请求
分批次返回数据
处理数据,判断是否还有下一批次数据,如果有
继续调用接口数据请求
4.5.4.3 请求地址
提供方 | 请求方 | 请求方法 | URI |
SaaS平台 | 应用 | GET | ~/restful/services/user/increment |
4.5.4.4 请求参数
名称 | 类型 | 约束 | 说明 |
client_id | int | 1 | 消费者公钥,应用接入时平台提供 |
timestamp | long | 1 | 时间戳 |
sign | int | 1 | 签名 |
custid | int | 1 | 企业id |
lastupdatetime | long | 1 | 最后修改时间 |
lastduserid | int | 1 | 最后修改的用户的id(首次请求时值为 0) |
applyno | string | 1 | 请求流水号,格式:SAASSIYYYYMMD DHHMMSSFFF ,即SAASSI+时间 |
4.5.4.5 请求报文
无
4.5.4.6 应答报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | response | - - | - - | - - | 1 | |
1.1 | users | response | - - | - - | 1 | 用户集合 |
1.1.1 | user | users | - - | - - | + | 用户项 |
1.1.1.1 | userid | user | int | - - | 1 | 用户标识ID |
1.1.1.2 | username | user | strin g | V32 | 1 | 用户名。 |
1.1.1.3 | useralias | user | strin g | V32 | ? | 用户中文姓名 |
1.1.1.4 | isadmin | user | bool | - - | 1 | 是否管理员 |
1.1.1.5 | departments | user | strin g | V255 | ? | 企业部门Id,个人用户则可选,企业用户则必选 多个部门使用,分割 |
1.1.1.6 | departmentn ames | user | strin g | V100 0 | ? | 企业部门名称,个人用户则可选,企业用户则必选 多个部门使用,分割 |
1.1.1.7 | mobile | user | strin g | V15 | 1 | 用户手机号,用于短信通知 |
1.1.1.8 | user | strin g | V100 | 1 | 用户邮箱,用户通知 | |
1.1.1.9 | status | user | int | - - | 1 | 状态 0:正常 1:删除 |
1.1.1.10 | lastupdatetim e | user | long | - - | 1 | 最后修改日期 |
1.2 | repeatsign | response | int | - - | 1 | 再次请求标志: 0:否 1:是 |
4.5.4.7 错误编码
编码 | 描述 |
500 | 服务方未定义异常 |
501 | 找不到消费者 |
502 | sign的值错误 |
503 | 最后修改时间格式错误 |
504 | {0}值不能为空 |
4.5.4.8 报文范例
4.5.4.8.1.1请求地址范例
~/restful/services/user/increment?client_id=1234×tamp=1232413432&sign=wrewetqwe213123123 efsdgfdsgwe&lastupdatetime=1235689006&lastcustid=1001&applyno=SAASSI20141012141115123
4.5.4.8.1.2请求报文范例
4.5.4.8.1.2.1 JSON范例
无
4.5.4.8.1.3应答报文范例
4.5.4.8.1.3.1.1 正常报文范例
4.5.4.8.1.3.1.1.1 JSON范例
{
"departments":[
{"userid":1001,
"username":"admin",
"useralias":"测试用户", "isadmin":true, "departments":"12,13", "departmentnames":"部门1,部门2",
"mobile":"00000000000", "email":"00000000000@000.xxx", "status":0, "lastupdatetime":1112341243},
{"userid":1002, "username":"admin1", "useralias":"测试用户", "isadmin":false,
"departments":"12,13", "departmentnames":"部门1,部门2", "mobile":"00000000000",
"email":"00000000000@000.xxx",
"status":0, "lastupdatetime":1112341243}
],
"repeatsign":0
}
4.5.4.8.1.3.1.2 异常报文范例
4.5.4.8.1.3.1.2.1 JSON范例
{
"code":501,
"msg":"sign的值错误"
}
4.6 话单接口
4.6.1 话单数据上传接口 (SaaS4001)
4.6.1.1 业务功能
客户在应用平台进行业务操作后,产生话单费用,应用平台通过调用此接口将话单数据上传给SaaS应用管理平台。
4.6.1.2 业务流程
第三方应用
SaaS应用管理平台
用户操作产生话单
话单数据上传接口 (SaaS4001),传递话单数据
处理请求
返回处理结果数据
4.6.1.3 请求地址
提供方 | 请求方 | 请求方法 | URI |
SaaS平台 | 应用 | POST | ~/restful/services/bill/add |
4.6.1.4 请求参数
名称 | 类型 | 约束 | 说明 |
client_id | int | 1 | 消费者公钥,应用接入时平台提供 |
timestamp | long | 1 | 时间戳 |
sign | int | 1 | 签名 |
4.6.1.5 请求报文
序号 | 节点名称 | 上级节点 | 类型 | 长度 | 约束 | 说明 |
1 | request | - - | - - | - - | 1 | |
1.1 | applyno | request | strin g | V64 | 1 | 申请单号,格式:SAA SSIYYYYMMDDHH MMSSFFF ,即SAASSI+时间 |
1.2 | items | request | - - | - - | 1 | 话单集合 |
1.2.1 | item | items | - - | - - | 1 | 话单项 |
1.2.1.1 | itemno | item | strin g | V255 | 1 | 话单流水号 |
1.2.1.2 | custcode | item | strin g | V32 | 1 | 企业编码(BOSS侧唯一标识) |
1.2.1.3 | ecordercode | item | strin g | V32 | 1 | 企业应用订购编码 |
1.2.1.4 | servicecode | item | strin g | V255 | 1 | 业务编码,业务唯一 标识 |
1.2.1.5 | chargemode | item | strin g | F2 | 1 | 选择如下其一: 01-按次数计费 02-按时长计费 03- 按流量计费(byte) 04- 按license数量计费 05- 按内存计费(byte) 06- 按存储、备份计费(b yte) 07- 按head/get请求计费 (次) 08- 按其他请求计费(次 ) 09- 按带宽计费(bit) 10- 峰值带宽静态网页(b it) 11- 峰值带宽动态网页(b it) 12-话单数计费 13-超出成员费(厘) |
1.2.1.6 | timestamp | item | strin g | F14 | 1 | 话单产生时间 格式:yyyyMMddH Hmmss |