The Files API is currently in preview with a planned beta release in December 2026. Preview APIs are not yet available in sandbox or production and can change before beta. Use these pages to plan an integration, not to build one. Once released in beta, it will be available to all partners in sandbox, and in production for select programs. Beta APIs may change without a version increment, and changes will be announced in advance. See Versioning and backwards compatibility.
How files relate to the rest of the model
Files are linked to three objects:- Entity: Create an Entity and link files to the identity documents or additional documents arrays.
- Applications: Create an application and link files to the documents array.
- User Accounts: Create a user account and link files to the documents array.
Where it fits in onboarding
A file can be created before or after the objects they’re intended to be linked to. Lead recommends the following sequence:1
Upload each file
Call
POST /v2/files once per file, in parallel. Each returns a file_id. You can upload multiple files in parallel.2
Create the object with file IDs
Call
POST /v2/entities, /v2/applications, or /v2/user_accounts with file_ids in the document arrays.1
Create the object without documents
Create your Entity, Application, or User Account object with no documents (
documents: [] on Applications and User Accounts; identification_documents: [] and additional_documents: [] or no file_ids on Entity identification_document or additional_document entries).2
Upload each file
Call
POST /v2/files once per file, in parallel. Each returns a file_id.3
Link the files
Call
PATCH /v2/entities/{id}, /v2/applications/{id}, or /v2/user_accounts/{id} with file_ids in the document arrays.If you accidentally link the wrong file, or create the file with an impermissible type for the intended object, you’ll need to create a new file, and
PATCH the document array with the new file_id.What you can do
POST /v2/files: Create a file.GET /v2/files/{id}: Retrieve a file and its metadata.- Link a file to any number of objects.
Authentication
file/read_writeto create a file. Also grants read access.file/readfor theGETendpoint only. Use this to retrieve a file’s metadata.
What you cannot do
- Change a file. Once created, the file cannot be changed.
- Delete a file. Once created, the file cannot be deleted.
- Download a file’s contents.
- Link the same file to the same object more than once.
- Link a file to an object’s document array that does not permit that file type.
- Subscribe to webhooks. Files cannot be changed after creation, so Lead emits no events for them.

