1. 接口调用PHP示例

[PHP代码示例-点击这里下载]

2. 获取corpid和code

1、由云助手跳转到第三方网页H5应用的时候在header头中包含了corpid和code信息,第三方应用可以从header中获取到这两个参数。见下图

注:code有效期为1分钟

获取header信息(PHP参考代码):

$code = isset(\Yii::$app->request->headers["code"]) ? 
\Yii::$app->request->headers["code"] : I('__sso_code');

$corpid = isset(\Yii::$app->request->headers["corpid"]) ? 
\Yii::$app->request->headers["corpid"] : I('tenant_id');

部分手机可能会存在无法解析header头信息的问题,接入方可以做下兼容处理,云助手APP在打开应用时,同时会在 url中追加参数"__sso_code","tenant_id",此参数的值与header中"code","corpid"的值等价

3. 通过云助手corpid换取异构系统corpid

接口地址:

/api/open1/get-third-corpid?corpid=@corpid&appsecret=@appsecret

请求方式:

GET

参数说明
参数 说明
corpid 云助手corpid,从header中获取,参考获取corpid和code
appsecret 异构系统应用秘钥key 参考注册应用,app_key字段
返回值格式
成功
{      
    "errcode": 0,     
    "errmsg": “ok”,
    "data":{
        "corpid": jq2
    }
}

4. 获取access_token

调用云助手所有接口,第一步都需要先换取access_token

接口地址:

/api/open1/get-access-token?corpid=@corpid&agentid=@agentid&appsecret=@appsecret

请求方式:

GET

参数说明
参数 说明
corpid 异构系统租户code,原生APP可以通过云助手SDK获取,网页H5应用调用接口云助手corpid换取异构系统corpid获取
agentid 异构系统应用code 参考注册应用,third_app_code字段
appsecret 异构系统应用秘钥key 参考注册应用,app_key字段
返回值格式
成功
{
    "access_token":"xxxxxxxxxxx",//token
    "expires_in":7200 //有效期 秒
}
失败
{
    “errcode”:10
    "errmsg":'错误信息'
}

5. 单点登录接口

5.1. 原生APP单点登录

接口地址

/api/open1/verify-login-token?access_token=@access_token

请求方式

POST

参数说明
参数 说明
tenant_code 异构系统租户code 参考AppCloud插件
user_code 异构系统用户code 参考AppCloud插件
agent_id 异构系统应用code 参考AppCloud插件
customer_id 租户唯一标识(未使用),参考AppCloud插件
timestamp 时间戳 参考AppCloud插件
login_token 登录验证token 参考AppCloud插件
{
    tenant_code : "@tenant_code",
    user_code : "@user_code",
    agent_id : "@agent_id",
    customer_id : "@customer_id",
    timestamp : "@timestamp",
    login_token : "@login_token",

}
返回值格式
成功
{      
    "errcode": 0,     
    "errmsg": “ok”
}
失败
{      
    "errcode": 10,     
    "errmsg": “错误信息”
}
备注
  • errcode 等于0是成功,其他值为失败code
  • 传递参数中的login_token有效期为1分钟

5.2. 网页H5单点登录

接口地址

/api/open1/get-third-user?access_token=@access_token

请求方式

POST

参数说明
参数 说明
code 云助手身份代码,有效期为1分钟,获取方式参考这里
{
    code : "@code",
}
返回值格式
成功
{      
    "errcode": 0,     
    "errmsg": “ok”,
    "data":{
        "agent_id": “rental”
        "tenant_code": “jq2”,
        "user_code": “czy”
    }
}
失败
{      
    "errcode": 10,     
    "errmsg": “错误信息”
}
返回字段说明
字段 说明
agent_id 异构系统应用code 参考注册应用,third_app_code字段
tenant_code 异构系统租户code(在云助手新增组织时填入)
user_code 异构系统用户code 参考用户获取接口
备注
  • errcode 等于0是成功,其他值为失败code
  • 传递参数中的code有效期为1分钟

6. 消息推送接口

接口地址

/api/open1/send-message?access_token=xxxx

请求方式

POST

参数说明
参数 类型 说明
touser String 必须,异构系统组织用户guid,多个用户用"竖线"隔开
agentid string 必须, 第三方应用code 参考注册应用,third_app_code字段
msgtype String 必须,消息类型。目前支持text、news、OA类型
text、news、oa Object 必须,消息实体
text类型消息格式
{
    "touser": "39d72ade-dad7-4724-9a98-ff7a0df63cfb|39d72ade-dad7-4724-9a98-ff7a0df63654",
    "agentid": "MobileCheckRoom",
    "msgtype": "text",
    "text": {
        "content": "你有一个待办事项,点击<a herf='http://xxxxx'> 查看详情</a>"
    }
}
news类型消息格式(支持单图文和多图文两种模式)
{
    "touser": "39d72ade-dad7-4724-9a98-ff7a0df63cfb",
    "agentid": "MobileCheckRoom",
    "msgtype": "news",
    "news": {
        "articles": [
            {
                "title": "待办提醒",
                "description": "亲爱的主人,您今天的待办事项如下:\r\n即将签约的客户有 3 位,\r\n请您及时进行催办,加油哦~~",
                "url": "http://qy-ci.mysoft.com.cn/sale-micro/my56a9c966df069/remind/contract/zygw?p_TaskWakeId=1&UserGuid=7A916792-56C5-11E5-A33B-00155D0AB842&TaskIdentifier=1&__from=wx",
                "senddate": "2015-09-11 10:10:00"
            }
        ]
    }
}
oa类型消息格式
{
    "touser": "39d72ade-dad7-4724-9a98-ff7a0df63cfb",
    "agentid": "MobileCheckRoom",
    "msgtype": "oa",
    "oa": {
        "message_url": "http://dingtalk.com",
        "head": {
            "bgcolor": "FFBBBBBB",
            "text": "头部标题"
        },
        "body": {
            "title": "正文标题",
            "form": [
                {
                    "key": "姓名:",
                    "value": "张三"
                }
            ],
            "rich": {
                "num": "15.6",
                "unit": "元"
            },
            "content": "大段文本",
            "file_count": "3",
            "author": "李四",
            "relation": "3个",
            "ywstatus": {
                "text": "已归档",
                "color": "FFBBBBBB"
            },
            "mark": [
                {
                    "bgcolor": "FFFFFF",
                    "text": "会议"
                }
            ]
        }
    }
}
返回值格式
成功
{      
    "errcode": 0,     
    "errmsg": “ok”
}
失败
{      
    "errcode": 10,     
    "errmsg": “错误信息”
}
备注
  • errcode 等于0是成功,其他值为失败code

results matching ""

    No results matching ""