Skip to main content

Types

CredentialRequest

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.

CredentialRequest Type
{
type: string,
mandatory?: "yes" | "no" | "if_available",
children?: CredentialRequest[],
description?: string,
allowUserInput?: boolean
}
PropertyRequired?TypeFormatDefaultDescriptionExample
typerequired
enum

Most common values:

  • "PhoneCredential"
  • "EmailCredential"
  • "FullNameCredential"
  • "FirstNameCredential"
  • "MiddleNameCredential"
  • "LastNameCredential"
  • "BirthDateCredential"
  • "AddressCredential"
  • "Line1Credential"
  • "Line2Credential"
  • "CityCredential"
  • "StateCredential"
  • "ZipCodeCredential"
  • "CountryCredential"
  • "SsnCredential"
PascalCasenoneThe type of user data a credential has"FirstNameCredential"
mandatoryoptionalenumsnake_case"no"Whether the credential is required, not required, or required if available (accepted values "yes", "no", and "if_available")"if_available"
childrenoptionalCredentialRequest[]See CredentialRequestnoneList of child CredentialRequests relative to the parent CredentialRequestChild CredentialRequests with types "FirstNameCredential" and "LastNameCredential" relative to a parent CredentialRequest with type "FullNameCredential"
descriptionoptionalstringSentence casenoneText shown to the user on the form field corresponding to the credential"We are required by federal regulation to collect your SSN"
allowUserInputoptionalbooleanbooleantrueWhether to allow user input on the form field corresponding to the credentialfalse
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.

CredentialRequest Type (Hosted Integration Type)
{
type: string,
mandatory?: "yes" | "no" | "if_available",
children?: CredentialRequest[],
description?: string,
allowUserInput?: boolean
}
PropertyRequired?TypeFormatDefaultDescriptionExample
typerequired
enum

Most common values:

  • "PhoneCredential"
  • "EmailCredential"
  • "FullNameCredential"
  • "FirstNameCredential"
  • "MiddleNameCredential"
  • "LastNameCredential"
  • "BirthDateCredential"
  • "AddressCredential"
  • "Line1Credential"
  • "Line2Credential"
  • "CityCredential"
  • "StateCredential"
  • "ZipCodeCredential"
  • "CountryCredential"
  • "SsnCredential"
PascalCasenoneThe type of user data a credential has"FirstNameCredential"
mandatoryoptionalenumsnake_case"no"Whether the credential is required, not required, or required if available (accepted values "yes", "no", and "if_available")"if_available"
childrenoptionalCredentialRequest[]See CredentialRequestnoneList of child CredentialRequests relative to the parent CredentialRequestChild CredentialRequests with types "FirstNameCredential" and "LastNameCredential" relative to a parent CredentialRequest with type "FullNameCredential"
descriptionoptionalstringSentence casenoneText shown to the user on the form field corresponding to the credential"We are required by federal regulation to collect your SSN"
allowUserInputoptionalbooleanbooleantrueWhether to allow user input on the form field corresponding to the credentialfalse

Example

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.

CredentialRequest Example (Hosted Integration Type)
{
"type": "FullNameCredential",
"children": [
{
"type": "FirstNameCredential",
"mandatory": "no",
"allowUserInput": true
},
{
"type": "LastNameCredential",
"mandatory": "if_available",
"allowUserInput": false
}
]
}

1ClickEntity

1ClickEntity Type
{
"identifiers": {
[identifierKey: string]: string
},
"credentials": {
[credentialKey: string]: string
},
"metadata": {
"identifiers": {
[identifierKey: string]: {
[metadataKey: string]: string
}
},
"credentials": {
[credentialKey: string]: {
[metadataKey: string]: string
}
}
}
}
PropertyTypeFormatDescriptionExample
identifiersObjectSee aboveUser identifiers, keyed on identifierKeySee Example 1ClickEntity
identifierKey
enum

Possible values (see identifiers for details):

  • phone
  • email
camelCaseThe type of identifier"phone"
credentialsObjectSee aboveUser credentials, keyed on credentialKeySee Example 1ClickEntity
credentialKey
enum

Possible values (see credentials for details):

  • phone
  • email
  • fullName.firstName
  • fullName.middleName
  • fullName.lastName
  • address.line1
  • address.line2
  • address.city
  • address.state
  • address.zipCode
  • address.country
  • birthDate
  • ssn
camelCase

The type of user data a credential has

"firstName"
metadataObjectSee aboveMetadata, keyed on metadataKeySee Example 1ClickEntity
metadataKey
enum

Possible values:

  • id
  • verificationMethod
  • status
  • issuanceDate
  • expirationDate
camelCaseAny additional data that's not a user's identity data (identifiers or credentials)"verificationMethod"

Example

1ClickEntity Example
{
"identifiers": {
"phone": "+10123456789"
},
"credentials": {
"email": "richard@piedpiper.net",
"fullName": {
"firstName": "Richard",
"lastName": "Hendricks"
},
"address": {
"line1": "5320 Newell Rd",
"city": "Palo Alto",
"state": "CA",
"zip": "94303",
"country": "US"
},
"birthDate": "1989-08-01",
"ssn": "123456789"
},
"metadata": {
"identifiers": {
"verificationMethod": {
"phone": "otp"
}
},
"credentials": {
"id": {
"email": "8a1d4e35-413d-496b-b499-8810b55cfb5c",
"fullName": {
"firstName": "2e6a7b9a-e93e-43ba-98a9-c554f4e16457",
"lastName": "9a5817ef-e621-4277-8c48-c8ee3776b6c4"
},
"address": {
"line1": "f5a4dc93-bc06-4bb8-bd05-17b5ba912bcd",
"city": "efd3820f-676a-4db1-b63e-695b66ed8ba0",
"state": "b65022a2-2016-41df-88f3-252e8e3a29c5",
"zip": "b747ff84-39d8-4df9-98f9-24a465f1a9ae",
"country": "d57a7bca-2a7c-4671-86ad-5647731cad02"
},
"birthDate": "ec1ef0ce-eeed-46a4-94a9-29b46e64403d",
"ssn": "ec1ef0ce-eeed-46a4-94a9-29b46e64403d"
},
"verificationMethod": {
"email": "self_attested",
"fullName": {
"firstName": "phone_carrier",
"lastName": "phone_carrier"
},
"address": {
"line1": "credit_bureau",
"city": "credit_bureau",
"state": "credit_bureau",
"zip": "credit_bureau",
"country": "credit_bureau"
},
"birthDate": "phone_carrier",
"ssn": "phone_carrier"
},
"status": {
"email": "valid",
"fullName": {
"firstName": "valid",
"lastName": "valid"
},
"address": {
"line1": "valid",
"city": "valid",
"state": "valid",
"zip": "valid",
"country": "valid"
},
"birthDate": "valid",
"ssn": "valid"
},
"expirationDate": {
"email": "1871839024044",
"fullName": {
"firstName": "1871839024044",
"lastName": "1871839024044"
},
"address": {
"line1": "1871839024044",
"city": "1871839024044",
"state": "1871839024044",
"zip": "1871839024044",
"country": "1871839024044"
},
"birthDate": null,
"ssn": null
}
}
}
}