获取企业授权

优质
小牛编辑
141浏览
2023-12-01

获取企业授权


PDF版下载

为了保证信息安全,所有API(包括第三方API及通讯录、发消息等所有API)调用需要验证来源域名。只有在应用开发信息中填写的合法授信域名才能合法调用。 图片

获取第三方应用凭证

该API用于获取第三方应用凭证(suite_access_token)。

由于应用提供商可能托管了大量的企业,其安全问题造成的影响会更加严重,本接口除了合法来源IP校验之外,还额外需要suite_ticket等参数进行校验(在管理后台应用详情-开发信息获取SuiteTicket值)。 通过本接口获取的suite_access_token有效期为2小时,开发者可以进行缓存,避免频繁获取。 图片

请求方式:POST(HTTPS) 请求地址https://api.im.baidu.com/api/service/get_suite_token 请求body

{
    "suite_id": "suite_id_value",
    "suite_secret": "suite_secret_value",
    "suite_ticket": "suite_ticket_value"
}

参数说明

参数类型参数位置是否必须说明
suite_idStringRequestBody在管理后台应用详情-开发信息获取SuiteID值
suite_secretStringRequestBody在管理后台应用详情-开发信息获取SuiteSecret值
suite_ticketStringRequestBody在管理后台应用详情-开发信息获取SuiteTicket值

返回结果

{
    "errcode": "0",
    "errmsg": "ok",
    "suite_access_token": "61W3mEpU66027wgNZ_MhGHNQDHnFATkDa9-2llqrMBjUwxRSNPbVsMmyD-yq8wZETSoE5NQgecigDrSHkPtIYA",
    "expires_in": 7200
}

参数说明

参数说明
suite_access_token第三方应用凭证suite_access_token,最长为512字节
expires_in有效期

获取企业永久授权码

该API用于使用临时授权码auth_code换取授权方的永久授权码,并换取授权信息、企业access_token,临时授权码一次有效。建议第三方以userid为主键,来建立自己的管理员账号。

请求方式:POST(HTTPS)

请求地址https://api.im.baidu.com/api/service/get_permanent_code?suite_access_token=SUITE_ACCESS_TOKEN

请求body

{
    "suite_id": "suite_id_value",
    "auth_code": "auth_code_value"
}

参数说明

参数类型参数位置是否必须说明
suite_access_tokenStringUrl参数上一步获取到的suite_access_token
suite_idStringRequestBody在管理后台应用详情-开发信息的SuiteID值图片
auth_codeStringRequestBody临时授权码,会在授权成功时通过回调推送给服务商。64~512字节图片

返回结果

{
    "access_token": "xxxxxx",
    "expires_in": 7200,
    "permanent_code": "xxxx",
    "auth_corp_info": {
        "id": 1,
        "corpid": "xxxx",
        "corp_name": "name",
        "corp_type": "verified",
        "corp_user_max": 50,
        "corp_agent_max": 30,
        "corp_full_name": "full_name"
    },
    "auth_info": {
        "agent": [
            {
                "agentid": 1,
                "name": "NAME",
                "appid": 1
            },
            {
                "agentid": 2,
                "name": "NAME2",
                "appid": 5
            }
        ],
        "department": [
            {
                "id": 2,
                "name": "PARTYNAME",
                "parentid": 1
            }
        ] ,
        "tag": [
            {
                "id": 2,
                "name": "tagName"
            }
        ],
        "user": [
            {
                "userid": "zhangsan",
                "name": "张三"
            }
        ]
    }
}

参数说明

参数说明
access_token授权方(企业)access_token
expires_in授权方(企业)access_token过期时间
permanent_code企业永久授权码,64~512字节
auth_corp_info授权方企业信息
corpid授权方企业CorpID
corp_name授权方企业名称
corp_type授权方认证级别, 0:未认证,1:普通认证,2:合作方,3:SVIP
corp_user_max授权方企业用户规模
corp_agent_max授权方企业应用上限
corp_full_name授权方认证的企业主体名称(仅认证过的企业有)
auth_info授权信息
agent授权的应用信息,注意是一个数组,但仅旧的多应用套件授权时会返回多个agent,对新的单应用授权,永远只返回一个agent
agentid授权方应用id
agent:name授权方应用名字
appid在管理后台应用详情-基本信息获取AppID值
department授权的应用可见范围(部门)
department:id授权的应用可见范围(部门)id
department:name授权的应用可见范围(部门)名称
department:parentid授权的应用可见范围(部门)父部门id
tag授权的应用可见范围(标签)
tag:id授权的应用可见范围(标签)id
tag:name授权的应用可见范围(标签)名称
user授权的应用可见范围(员工)
user:id授权的应用可见范围(员工)id
user:name授权的应用可见范围(员工)名称

获取企业授权信息

该API用于通过永久授权码换取企业的授权信息。 永久授权码的获取,是通过临时授权码使用get_permanent_code 接口获取到的permanent_code。 请求方式:POST(HTTPS) 请求地址https://api.im.baidu.com/api/service/get_auth_info?suite_access_token=SUITE_ACCESS_TOKEN 请求body

{
    "suite_id": "suite_id_value",
    "auth_corpid": "auth_corpid_value",
    "permanent_code": "permanent_code_value"
}

参数说明

参数类型参数位置是否必须说明
suite_access_tokenStringUrl参数上一步获取到的suite_access_token
suite_idStringRequestBody在管理后台应用详情-开发信息获取SuiteID值图片
auth_corpidStringRequestBody授权方CorpID,上一步响应中的auth_corp_info.corpId
permanent_codeStringRequestBody永久授权码,通过get_permanent_code获取

返回结果

{
    "auth_corp_info":  {
        "id": 1,
        "corpid": "corpid_value",
        "corp_name": "name",
        "corp_type": 1,
        "corp_user_max": 50,
        "corp_agent_max": 30,
        "corp_full_name": "full_name"
    },
    "auth_info": {
        "agent": [
            {
                "agentid": 1,
                "name": "NAME",
                "appid": 1
            }
        ],
        "department": [
            {
                "id": 2,
                "name": "PARTYNAME",
                "parentid": 1
            }
        ],
        "tag": [
            {
                "id": 2,
                "name": "tagName"
            }
        ],
        "user": [
            {
                "userid": "zhangsan",
                "name": "张三"
            }
        ]
    }
 }

参数说明

参数说明
auth_corp_info授权方企业信息
corpid授权方企业CorpID
corp_name授权方企业名称
corp_type授权方认证级别,0:未认证,1:普通认证,2:合作方,3:SVIP
corp_user_max授权方企业用户规模
corp_agent_max授权方企业应用规模
corp_full_name授权方认证的企业主体名称(仅认证过的企业有)
auth_info授权信息
agent授权的应用信息,注意是一个数组,但仅旧的多应用套件授权时会返回多个agent,对新的单应用授权,永远只返回一个agent
agentid授权方应用id
agent:name授权方应用名字
appid在管理后台应用详情-基本信息获取AppID值
department授权的应用可见范围(部门)
department:id授权的应用可见范围(部门)id
department:name授权的应用可见范围(部门)名称
department:parentid授权的应用可见范围(部门)父部门id
tag授权的应用可见范围(标签)
tag:id授权的应用可见范围(标签)id
tag:name授权的应用可见范围(标签)名称
user授权的应用可见范围(员工)
user:id授权的应用可见范围(员工)id
user:name授权的应用可见范围(员工)名称

获取企业凭证

第三方服务商在取得企业的永久授权码后,通过此接口可以获取到企业的access_token, 获取后可通过通讯录、应用、消息等企业接口来运营这些应用。建议在有效期内缓存起来,定时更新避免重复调用。 请求方式:POST(HTTPS) 请求地址https://api.im.baidu.com/api/service/get_corp_token?suite_access_token=SUITE_ACCESS_TOKEN 请求body

{
    "suite_id": "suite_id_value",
    "auth_corpid": "auth_corpid_value",
    "permanent_code": "permanent_code_value"
}

参数说明

参数类型参数位置是否必须说明
suite_access_tokenStringUrl参数上一步获取到的suite_access_token
suite_idStringRequestBody在管理后台应用详情-开发信息获取SuiteID值图片
auth_corpidStringRequestBody授权方CorpID,上一步响应中的auth_corp_info.corpId
permanent_codeStringRequestBody永久授权码,通过get_permanent_code获取

返回结果

{
    "access_token": "xxxxxx",
    "expires_in": 7200
}

参数说明

参数说明
access_token授权方(企业)access_token
expires_in授权方(企业)access_token超时时间