Skip to main content

Endpoints

POST /1-click

Begin a 1-Click Signup flow

MethodPOST
Path/1-click

Request

Full Definition
note

We recommend looking at the partial definitions below under the integration type tabs (Hosted, Semi-Hosted, and Non-Hosted) because they show only the properties relevant to the integration type you choose. The full definition here shows all possible properties, but some may not be relevant to your integration type.

POST /1-click Request Body
{
phone: string,
email?: string,
birthDate?: string,
credentialRequests?: CredentialRequest[],
content?: {
title?: "Signup" | "Login" | "Verify" | "Apply",
description?: string
}
redirectUrl?: string
}
PropertyRequired?TypeFormatDefaultDescriptionExample
phonerequiredstringE.164noneUser's phone number (in E.164 format)"+10123456789"
emailoptionalstringemailnoneUser's email address"richard@piedpiper.net"
birthDateoptionalstringYYYY-MM-DDnoneUser's birth date"1989-08-01"
credentialRequestsoptionalCredentialRequest[]See CredentialRequestSee Default Credential RequestsList of CredentialRequest objects (which encode which credentials you're asking for)See CredentialRequest example
content.titleoptionalenumTitle Case"Signup"What word should be displayed after "1-Click" (accepted values are Signup, Login, Verify, and Apply)"Verify"
content.descriptionoptionalstringSentence casenoneWhat text should be displayed under the 1-Click page title"Confirm your new Hooli account info:"
redirectUrloptionalstringURLdefined for your brand in the DashboardOverrides the default redirect URL in your brand settings"https://hooli.com/verifiedAlternate"
note

With the Hosted tab active above, your brand's integration type setting should be set to Hosted in the Dashboard. See Determine integration type if you need help deciding which type is right for you.

POST /1-click Request Body (Hosted Integration Type)
{
phone: string,
email?: string,
birthDate?: string,
credentialRequests?: CredentialRequest[],
content?: {
title?: "Signup" | "Login" | "Verify" | "Apply",
description?: string
}
redirectUrl?: string
}
PropertyRequired?TypeFormatDefaultDescriptionExample
phonerequiredstringE.164noneUser's phone number (in E.164 format)"+10123456789"
emailoptionalstringemailnoneUser's email address"richard@piedpiper.net"
birthDateoptionalstringYYYY-MM-DDnoneUser's birth date"1989-08-01"
credentialRequestsoptionalCredentialRequest[]See CredentialRequestSee Default Credential RequestsList of CredentialRequest objects (which encode which credentials you're asking for)See CredentialRequest example
content.titleoptionalenumTitle Case"Signup"What word should be displayed after "1-Click" (accepted values are Signup, Login, Verify, and Apply)"Verify"
content.descriptionoptionalstringSentence casenoneWhat text should be displayed under the 1-Click page title"Confirm your new Hooli account info:"
redirectUrloptionalstringURLdefined for your brand in the DashboardOverrides the default redirect URL in your brand settings"https://hooli.com/verifiedAlternate"

Default Credential Requests

If you don't include credentialRequests in the request body, the default credential requests will apply. These include the core KYC data points, all set to optional and allowing user input.

Default
Default Credential Requests
[
{
"type": "FullNameCredential",
"mandatory": "no",
"allowUserInput": true,
"children": [
{
"type": "FirstNameCredential"
},
{
"type": "MiddleNameCredential"
},
{
"type": "LastNameCredential"
}
]
},
{
"type": "PhoneCredential",
"mandatory": "no",
"allowUserInput": true
},
{
"type": "AddressCredential",
"mandatory": "no",
"allowUserInput": true,
"children": [
{
"type": "Line1Credential"
},
{
"type": "Line2Credential"
},
{
"type": "CityCredential"
},
{
"type": "StateCredential"
},
{
"type": "CountryCredential"
},
{
"type": "ZipCodeCredential"
}
]
},
{
"type": "BirthDateCredential",
"mandatory": "no",
"allowUserInput": true
},
{
"type": "SsnCredential",
"mandatory": "no",
"allowUserInput": true
}
]

Response

Full Definition
note

We recommend looking at the partial definitions below under the integration type tabs (Hosted, Semi-Hosted, and Non-Hosted) because they show only the properties relevant to the integration type you choose. The full definition here shows all possible properties, but some may not be relevant to your integration type.

POST /1-click Response Body
{
uuid: string,
url?: string,
code?: string,
identity?: 1ClickEntity
}
PropertyTypeFormatDescriptionExample
uuidstringVersion 4 UUIDUnique identifier for the 1ClickEntity that will be returned at the end of the 1-Click Signup flow"535dba63-d4bd-442a-b3f6-21b785260a08"
urlstringURLLink to the Verified Wallet, which will prompt the user to enter their verification code, display the user's data to them, and ask the user to share the data with your brand"https://wallet.verified.inc/request/e009d01e-b155-480b-b288-2c9084ab863a?phone=%2B10123456789"
codestring6 digits (0-9)Verification code you should send to the user by SMS"111111"
identity1ClickEntitySee 1ClickEntityA 1ClickEntity object, which contains the user's verified data and metadata about itSee below
note

With the Hosted tab active above, your brand's integration type setting should be set to Hosted in the Dashboard. See Determine integration type if you need help deciding which type is right for you.

POST /1-click Response Body (Hosted Integration Type)
{
uuid: string,
url: string,
code: string
}
PropertyTypeFormatDescriptionExample
uuidstringVersion 4 UUIDUnique identifier for the 1ClickEntity that will be returned at the end of the 1-Click Signup flow"535dba63-d4bd-442a-b3f6-21b785260a08"
urlstringURLLink to the Verified Wallet, which will prompt the user to enter their verification code, display the user's data to them, and ask the user to share the data with your brand"https://wallet.verified.inc/request/e009d01e-b155-480b-b288-2c9084ab863a?phone=%2B10123456789"
codestring6 digits (0-9)Verification code you should send to the user by SMS"111111"

GET /1-click

Get data for a user who has completed a 1-Click Signup flow

MethodGET
Path/1-click/{uuid}?{userInput}

Request

note

With the Hosted tab active above, your brand's integration type setting should be set to Hosted in the Dashboard. See Determine integration type if you need help deciding which type is right for you.

Call:

GET /1-click Request (Hosted Integration Type)
GET /1-click/{identityUuid}
  • For the {uuid} endpoint path parameter, use the value of the identityUuid URL parameter from the redirect URL.
  • The {userInput} endpoint URL parameter isn't relevant here.

Response

GET /1-click Response (All Integration Types)
{
...1ClickEntity
}

See 1ClickEntity.