---
title: "Connect a User - User Profile"
method: POST
path: "/v1/users/connect/preverified/userProfile"
tags: ["Connect"]
---

# Connect a User - User Profile

`POST /v1/users/connect/preverified/userProfile`

Connect a User that has already been verified using another credit bureau. This API requires Spinwheel Support approval to enable it before it can be used.

## Request body

- PreverifiedUserDataConnectRequest
  - `firstName` string, required — The first name of the user.
  - `lastName` string, required — The last name of the user.
  - `phoneNumber` string, required — The phone number in E.164 format.
  - `dateOfBirth` string, required — The date of birth. Formatted as YYYY-MM-DD.
  - `ssn` string, required — The user's ssn (without hyphens)
  - `addresses` PreverifiedUserDataAddress[], required — Addresses associated with the user
    - `addressLine1` string, required — The first line of the address
    - `addressLine2` string — Optional second line of the address
    - `city` string, required — The city of the address
    - `state` string, required — The state of the address
    - `zip` string, required — The zip code of the address
  - `userId` string, required — An existing userId to connect with. One of extUserId or userId is required.
  - `extUserId` string, required — A unique external ID for the user. One of extUserId or userId is required.
  - `audit` PreverifiedUserDataAudit, required
    - `consentTimestamp` string — When the user consented to the End User Agreement. Must be a UTC RFC 3339 datetime within the last 24 hours. At least one of consentTimestamp or userConsentDate is required. If both are provided, consentTimestamp takes precedence.
    - `tosVersion` 'v1.0' | 'v1.1' — Version of the Spinwheel End User Agreement agreed to by the user. Supported versions: v1.0, v1.1.
    - `tosLanguage` 'en' — Language in which the Spinwheel End User Agreement was presented. Currently only "en" is supported.
    - `consentType` 'WRITTEN' | 'VERBAL' — How consent was obtained. WRITTEN: written or electronic consent. VERBAL: verbal consent during a recorded interaction.
    - `verificationDate` string — The date the user's identity was verified, formatted as YYYY-MM-DD. At least one of verificationDate or identityVerifiedTimestamp is required. If both are provided, identityVerifiedTimestamp takes precedence.
    - `identityVerifiedTimestamp` string — When the user's identity was verified. Must be a UTC RFC 3339 datetime and must not be in the future. At least one of identityVerifiedTimestamp or verificationDate is required. If both are provided, this field takes precedence.
    - `userConsentDate` string — The date the user provided consent, formatted as YYYY-MM-DD. At least one of userConsentDate or consentTimestamp is required. If both are provided, consentTimestamp takes precedence.
    - `verificationType` 'EXPERIAN.PRECISE_ID_KNOWLEDGE_IQ' | 'PROVE.IDENTITY' | 'PROVE.PREFILL' | 'APPROVED.KYC', required — The type of verification performed.

## Response `201`

Success

- ConnectResponse
  - `status` ResponseStatus, required
    - `code` number
    - `desc` string
    - `messages` Message[]
      - `desc` string, required
      - `type` 'ERROR' | 'WARN' | 'INFO'
  - `data` ConnectResponseData, required
    - `userId` string, required — Id of the user
    - `extUserId` string, required — A client id registered with Spinwheel on creation
    - `connectionId` string, required — Id of the connection
    - `connectionStatus` string, required — connectionStatus
    - `profile` SmsUserProfile
      - `firstName` string, required — First Name
      - `lastName` string, required — Last Name
      - `emailAddress` string — Email Address
      - `creditScore` number — Credit Score
      - `ssnLastFourDigits` string, required — Last 4 digits of the ssn
      - `phoneNumber` string — Phone number
      - `dateOfBirth` string, required — The date of birth
      - `addresses` Address[] — Addresses
        - `addressLine1` string, required
        - `addressLine2` string
        - `city` string, required
        - `state` 'AL' | 'AK' | 'AZ' | 'AR' | 'CA' | 'CO' | 'CT' | 'DC' | 'DE' | 'FL' | 'GA' | 'HI' | 'ID' | 'IL' | 'IN' | 'IA' | 'KS' | 'KY' | 'LA' | 'ME' | 'MD' | 'MA' | 'MI' | 'MN' | 'MS' | 'MO' | 'MT' | 'Ne' | 'NE' | 'NV' | 'NH' | 'NJ' | 'NM' | 'NY' | 'NC' | 'ND' | 'OH' | 'OK' | 'OR' | 'PA' | 'RI' | 'SC' | 'SD' | 'TN' | 'TX' | 'UT' | 'VT' | 'VA' | 'WA' | 'WV' | 'WI' | 'WY', required
        - `zip` string, required
        - `zipExtension` string
    - `networkToken` string — The Spinwheel network token, to be used for passing lead data to the network

## Other responses

- `400` — Bad Request

---

[API](https://skmtc.dev/spinwheel/apis/discover.md) · [All operations](https://skmtc.dev/spinwheel/apis/discover/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/spinwheel/discover/revisions/55b90a2e1dd4/schema)
