v1

latestOpenAPI 3.1.02026-07-26457177.8 KB
User

Create a User Intent

📘

You can place your application's client_id into the username field, and your client_secret into the password form field of the Authentication section of this documentation 👉.

A User Intent manages the lifecycle of the creation of a User, before that User has been fully created. This endpoint creates a User Intent, starting the process of verifying the end-user's identity in the background.\n

For managing UserIntents, Astra recommends that once a UserIntent is created, you should store that UserIntent ID with the User record. The UserIntent ID can then be sent as a query string parameter to the Astra OAuth flow. Once your application receives the authorization_code, you can make a call to the GET /v1/user endpoint which will give you a user_id.

📘

For receive-only Users, the SSN and DOB fields become optional. For unverified Users, the SSN field becomes optional. For verified Users, SSN and DOB are required, unless your program is approved for KYC Delegation. If your program is approved for KYC delegation, the SSN field becomes optional.

🚧

Note that a new UserIntent should only be created if an end-user is starting from scratch or had originally provided incorrect information.

🚧

Note that if a UserIntent doesn't have an address2 value, send Astra an empty string instead of a null or you'll recieve a 400 response upon POSTing the request.

❗️

Note that you may only attempt to create 3 UserIntents per email address. If you reach this limit while creating UserIntents in your Sandbox Environment, you will receive an error.

❗️

The ip_address field is the IP address of the User’s device they are using to access our Platform. Submission of Private IP Addresses or VPNs can result in downgraded User capabilities or even a rejected UserIntent / User Profile.

post/v1/user_intent

Request body

emailstring required

Email address of the user

phonestring required

Phone number of the user (format: +15557771234)

first_namestring required

First name of the user

last_namestring required

Last name of the user

preferred_first_namestring

Preferred first name of the user

preferred_last_namestring

Preferred last name of the user

preferred_pronounsstring

Preferred pronouns of the user

address1string required

Address line 1 of the user (PO Boxes are not allowed)

address2string

Address line 2 of the user (PO Boxes are not allowed)

citystring required

City of the user

statestring required

State of the user's address

postal_codestring required

Postal code of the user

date_of_birthstring required

Date of birth of the user (format: YYYY-MM-DD)

ssnstring required

Social Security Number of the user (format: Last four ####)

ip_addressstring required

IP address of the User's device they are using to access Astra's Platform

kyc_type'receive-only' | 'unverified' | 'verified'

The verification type of the user, which determines the user's capabilities to send and/or receive funds (will default to 'verified' if not provided)

metadataobject

An optional metadata object for submitting custom metadata that will be associated with the User Intent and the User.

Do not submit any sensitive information (bank account numbers, card details, PII, etc.) as metadata keys or values.

metadata key: 1–64 chars, allowed chars set [a-zA-Z0-9_.-]

metadata values: 1–256 chars

Max keys: 25

Recommended use case: Submitting a customer specific unique identifier (UUID format). Uniqueness not required.

Response

Successful response

idstring

Unique Astra user intent ID