平台简介
新手指南
API协议
API文档
单点登录集成
小程序插件
APP SDK
常见问题
开放平台API接口调用常见报错以及解决方法汇总
帮助中心 / 开放平台帮助文档 / 单点登录模块授权页面
单点登录模块授权页面
开放平台客户使用单点登录功能时,需要对本方公司进行模块授权,以方便直接单点登录进入契约锁页面。此接口会返回授权页面的链接,注意:开放平台单点登录免密签署不生效,接口支持并发,不支持幂等,接口支持回调。

单点登录模块授权页面

描述

开放平台客户使用单点登录功能时,需要对本方公司进行模块授权,以方便直接单点登录进入契约锁页面。此接口会返回授权页面的链接,注意:开放平台单点登录免密签署不生效,接口支持并发,不支持幂等,接口支持回调。

请求地址

/v2/ssoprivilege/url

请求方式

POST

请求格式

application/json;charset=UTF-8

请求参数

Y:必填 N:非必填 CY:条件必填,即其他参数的输入情况会影响当前参数是否必填(具体逻辑参照各参数的描述)

参数名称 类型 是否必填 长度 描述 示例
company Company Y 单点登录的公司或子公司,以及外部企业 详见Company
user User Y 单点登录的用户 详见User
successUrl String N 单点登录成功后的跳转契约锁的地址 www.baidu.com
callbackUrl String N 单点登录成功后回调地址 www.sina.com.cn
pageStyle PageStyle N 页面风格 详见PageStyle

Company(单点登录公司):

参数名称 类型 是否必填 长度 描述 示例
id String CY 19 公司id,不可与名称同时为空 2931411786447082238
name String CY 100 公司名称,不可与id同时为空 众畅科技有限公司

User(单点登录的用户):

参数名称 类型 是否必填 长度 描述 示例
contact String Y 20 单点用户联系方式 10001230001
contactType String Y 10 联系方式类型:MOBILE或EMAIL MOBILE

PageStyle(页面风格):

参数名称 类型 是否必填 长度 描述 示例
themeColor String N 7 自定义页面主题色,RGB颜色(16进制),默认取业务系统令牌配置的主题色(#2489F2) #222333

请求示例

Http示例

POST /v2/ssoprivilege/url HTTP/1.1
Host: [host]
x-qys-open-timestamp: [替换为请求头生成的Timestamp]
x-qys-open-signature: [替换为请求头生成的Signature]
x-qys-open-accesstoken: [替换为请求头生成的Token]
Content-Type: application/json
Content-Length: 157
{
    "company":{
        "name":"上海亘岩网络科技有限公司"
    },
    "user":{
        "contact":"136****0110",
        "contactType":"MOBILE"
    },
    "successUrl":"http://www.qiyuesuo.com/open/moduleprivilege/url?openPageToken=ddb9f487-0e75-43cf-90a0-30cf9a6e50a0"
}
Java示例

// 初始化sdkClient
String serverUrl = "https://openapi.qiyuesuo.cn";
String accessKey = "替换为您申请的开放平台App Token";
String accessSecret = "替换为您申请的开放平台App Secret";
SdkClient sdkClient = new SdkClient(serverUrl, accessKey, accessSecret);
// 合同页面
OpenSSOPrivilegeUrlRequest request = new OpenSSOPrivilegeUrlRequest(new Company("上海亘岩网络科技有限公司"), new User("136****0000", "MOBILE"));
request.setSuccessUrl("https://www.qiyuesuo.com");
String response = sdkClient.service(request);
SdkResponse responseObj = JSONUtils.toQysResponse(response, OpenSSOPrivilegeUrlResult.class);
if("00000000".equals(responseObj.getResponseCode())) {
    logger.info("请求成功,授权页面为:{}", responseObj.getResult().getPageUrl());
} else {
    logger.info("请求失败,错误码:{},错误信息:{}", responseObj.getCode(), responseObj.getMessage());
}
C#示例

敬请期待
PHP示例

// 初始化$sdkClient
class Util {
    const     url = "https://openapi.qiyuesuo.me";
    const     accessKey = "替换为您申请的开放平台App Token";
    const     accessSecret = "替换为您申请的开放平台App Secret";
}
$sdkClient = Util::getSDk();
$baseRequest = new OpenSSOPrivilegeUrlRequest();
$company = new Company();
$company->setName("上海亘岩网络科技有限公司");
$baseRequest->setCompany($company);
$user = new User();
$user->setContact("136****0110");
$user->setContactType("MOBILE");
$baseRequest->setUser($user);
$baseRequest->setSuccessUrl("http://www.qiyuesuo.com");
$baseRequest->setCallbackUrl("https://openapi.qiyuesuo.cn");
$result = $sdkClient->service($baseRequest);
print_r($result);
Python示例

#初始化SdkClient
url = "https://openapi.qiyuesuo.cn"
accessToken = '替换为您申请的开放平台App Token'
accessSecret = '替换为您申请的开放平台App Secret'
sdkClient = SdkClient(url, accessToken, accessSecret)
request = OpenSSOPrivilegeUrlRequest()
company = Company()
company.set_name("上海亘岩网络科技有限公司")
request.set_company(company)
# 操作人设置
user1 = User()
user1.set_contact("131xxxxxxxx")
user1.set_contactType("MOBILE")
request.set_user(user1)
openSSOPrivilege = sdkClient.request(request)
print('单点登录模板授权页面:\n', str(openSSOPrivilege), '\n')
Go示例

sdkClient := http.NewSdkClient("https://openapi.qiyuesuo.cn", "替换为您申请的开放平台App Token", "替换为您申请的开放平台App Secret")
req := request.OpenSSOPrivilegeUrlRequest{}
company := model.Company{}
company.Name = "测试11-8-1"
req.Company = &company
user := model.User{}
user.Contact = "10000000011"
user.ContactType = "MOBILE"
req.User = &user
response, err := sdkClient.Service(req)
if err != nil {
    fmt.Println("request failed,", err.Error())
    return
}
fmt.Println(response)

返回参数

参数名称 类型 长度 描述
responseCode Integer 响应码
message String 200 响应消息
result Result 返回数据

Result(授权页面数据):

参数名称 类型 长度 描述
pageUrl String 授权页面链接,链接有效期30分钟

响应码

(全局响应码请查看文档末“全局响应码”):

响应码 描述
11041801 COMPANY NOT FOUND,当前公司不存在。
11041802 NO COMPANY PERMISSION,当前公司无权限;
仅支持对接方以及其子公司。