跳转到主要内容

创建流程

这是所有 Web 和 SDK 集成的入口点。您的后端调用它来创建流程;您的前端使用返回的令牌来渲染 iFrame、重定向用户或初始化原生 SDK。

有关完整集成流程,请参阅 Web & SDK 概述

端点

环境URL
生产环境POST https://api.idcloud.unico.app/client/v1/process
沙盒环境POST https://api.idcloud.uat.unico.app/client/v1/process

请求

请求头
请求头
AuthorizationBearer <access_token>(参见身份验证
Content-Typeapplication/json
请求体参数
字段类型必填描述
callbackUristring旅程结束后将用户重定向到的 URL。对于在应用内处理回调的原生 SDK 流程,使用 /
flowstring流程标识符——决定运行哪些功能。示例:idunicodocsidunicosignidchecktrustidtokenidsmart。参见可用流程
purposestring业务目的。可接受的值:creditprocessbiometryonboardingcarpurchaseageverification
person.duiTypeenum证件类型。可接受的值:DUI_TYPE_BR_CPFDUI_TYPE_MX_CURPDUI_TYPE_US_SSNDUI_TYPE_BR_PASSPORTDUI_TYPE_AR_PASSPORTDUI_TYPE_AR_DNIDUI_TYPE_NG_NINDUI_TYPE_CL_RUNDUI_TYPE_EC_NIDUI_TYPE_US_PASSPORTDUI_TYPE_GT_CUIDUI_TYPE_UY_CIDUI_TYPE_ZZ_EMAILDUI_TYPE_ID_NIKDUI_TYPE_ZZ_PHONE_NUMBERDUI_TYPE_US_DRIVER_LICENSEDUI_TYPE_NG_BVN
person.duiValuestring证件号码,不含格式化符号。
person.friendlyNamestring旅程界面中显示的用户名称。最多 50 个字符。
person.phonestringDDI + DDD + 号码格式的电话号码,不含分隔符。通过短信或 WhatsApp 发送通知时必填。
person.emailstring电子邮件地址。包含电子签名的流程必填。
person.notificationsarray发送旅程链接的通知渠道。每项包含 notificationChannelNOTIFICATION_CHANNEL_WHATSAPPNOTIFICATION_CHANNEL_SMSNOTIFICATION_CHANNEL_EMAIL
bioTokenIdstring (UUID)条件必填已弃用。 请改用 references。参考生物特征流程的 ID。1:1 验证流程(idtokenidtokentrustidtokensign)和 Smart Revalidation(idsmart)必填。
referencesarray条件必填用于 1:1 验证和 Smart Revalidation 流程的参考输入,替代 bioTokenId。每项包含 referenceTypeREFERENCE_TYPE_IMAGE_BASE64REFERENCE_TYPE_PROCESS_ID)和 referenceContent(base64 编码图像或流程 UUID)。
useCasestring条件必填Smart Revalidation 使用场景。idsmart 必填。示例:USE_CASE_LOGINUSE_CASE_IDENTITY_REVALIDATION_7_DAYSUSE_CASE_FIN_TRANSACTIONS
clientReferencestring您对此流程的内部标识符(用于在门户中交叉引用的外键)。
companyBranchIdstring (UUID)分支机构 ID。仅当服务账户关联多个分支机构时必填。
expiresInstring从创建起的流程有效期窗口。格式:"3600s"。省略时默认为 7 天。
flow_configobject每个流程的配置覆盖项。
flow_config.biometry_capture.enabled_back_cameraboolean使用设备后置摄像头。与文件采集或电子签名流程不兼容。
contextualizationobject旅程期间向用户展示的交易背景信息,用于说明采集目的。
contextualization.currencystring向用户显示的货币代码。可接受的值:BRLMXNUSD
contextualization.pricenumber向用户显示的交易金额。
contextualization.localeobject本地化的原因文本。键:ptBrenUsesMx——每项包含旅程中显示的 reason 字符串。

示例

curl -X POST https://api.idcloud.unico.app/client/v1/process \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"callbackUri": "https://app.client.com/callback",
"flow": "idunicodocs",
"purpose": "biometryonboarding",
"person": {
"duiType": "DUI_TYPE_BR_CPF",
"duiValue": "12345678909",
"friendlyName": "Luke Skywalker",
"phone": "5511912345678",
"email": "[email protected]"
}
}'

响应

200 OK
{
"process": {
"id": "53060f52-f146-4c12-a234-5bb5031f6f5b",
"state": "PROCESS_STATE_CREATED",
"flow": "idunicosign",
"purpose": "biometryonboarding",
"callbackUri": "https://app.client.com/callback",
"clientReference": "your-internal-id-123",
"companyBranchId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"userRedirectUrl": "https://cadastro.unico.app/process/53060f52-f146-4c12-a234-5bb5031f6f5b",
"token": "eyJhbGciOiJSUzI1NiIs...",
"webAppToken": "eyJhbGciOiJSUzI1NiIs...",
"createdAt": "2023-10-09T09:15:25.417105Z",
"expiresAt": "2023-10-09T16:15:25.417105Z",
"capacities": [],
"authenticationInfo": {},
"person": {
"duiType": "DUI_TYPE_BR_CPF",
"duiValue": "12345678909",
"friendlyName": "Luke Skywalker",
"phone": "5511912345678",
"email": "[email protected]",
"notifications": []
},
"companyData": {
"branchId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"countryCode": "BR"
}
}
}
字段类型描述
process.idstring (UUID)流程标识符。用于通过获取流程获取结果。
process.stateenumPROCESS_STATE_CREATED — 流程已创建,旅程尚未开始。PROCESS_STATE_FAILED — 流程创建失败。
process.flowstring创建时发送的流程标识符。
process.purposestring创建时发送的业务目的。
process.callbackUristring创建时发送的回调 URI。
process.clientReferencestring创建时发送的内部标识符。仅当请求中提供时出现。
process.companyBranchIdstring (UUID)分支机构 ID。仅当请求中提供时出现。
process.userRedirectUrlstring用于重定向用户的 URL(Web 重定向和 iFrame 集成)。请勿修改此 URL。
process.tokenstring用于初始化 Web SDK iFrame 的 JWT。
process.webAppTokenstring用于初始化原生 SDK(Android、iOS、Flutter)的 JWT。
process.createdAtstring (date-time)流程创建时的时间戳。
process.expiresAtstring (date-time)流程过期且无法再完成的时间戳。
process.capacitiesarray为该流程配置的功能。
process.authenticationInfoobject流程的身份验证信息(创建时为空)。
process.personobject创建时发送的 person 对象的回显。
process.companyData.branchIdstring (UUID)与流程关联的分支机构 ID。
process.companyData.countryCodestring与分支机构关联的国家代码(例如 BRMX)。
400 Bad Request

当请求体格式错误、缺少必填字段或 flow 值未知时返回。

401 Unauthorized

Bearer 令牌缺失、已过期或无效。参见身份验证

429 Too Many Requests

已达到速率限制。请在响应头中指示的时间间隔后重试。

错误代码

代码消息描述
3invalid flow指定的流程不存在时。
3invalid person: friendly name exceeds 50 characters.友好名称超过 50 个字符时。
3invalid purpose提供的目的无效时。
3invalid callbackUri: unable to parse callbackUri: parse "": empty url, invalid callbackUri: url:提供的 callbackUri 无效时。
3invalid person: email required for notification channel NOTIFICATION_CHANNEL_EMAIL, invalid email address for notification channel NOTIFICATION_CHANNEL_EMAIL提供的电子邮件无效且配置了电子邮件通知时。
3invalid person: phone number required for notification channel NOTIFICATION_CHANNEL_WHATSAPP, phone number does not contain 13 chars for notification channel NOTIFICATION_CHANNEL_WHATSAPP提供的电话号码无效且配置了短信或 WhatsApp 通知时。
3idnsv2/GetPublicID request error: rpc error: code = InvalidArgument desc = invalid dui value提供的标识符(duiValue)无效时。
3invalid expiresIn argumentexpiresIn 值无效时。
9XX ID Apikeys are not setAPI Key 未正确配置时。

下一步