Users
Upload application documents
https://api.firstleeward.com/v0/users/:id/application/documentsUploads one supporting document type for a user whose application is awaiting documents. Set documentType to one of the pending documents from the advance response's nextAction, and attach its file(s) as files (repeat for multi-page or front/back). Upload one type per request, across as many requests as there are pending documents; each response reports the remaining documents in nextAction. When the last required document is received the application advances to review.
Authorizations
Authorizationstring · headerrequiredAPI key as Bearer token, e.g. Bearer YOUR_API_KEY
Headers
Leeward-Versionenum<string>requiredAPI version (YYYY-MM-DD). Available option: 2026-09-18
Path Parameters
idstring<uuid>requiredUser ID
Body
multipart/form-data
documentTypestringrequiredWhich supporting document this upload is for (one type per request; from the pending documents in nextAction)
IDENTITYPROOF_OF_ADDRESSCURPfilesany | any[]requiredThe document file(s) for this type. Send a single file, or repeat the files field for multi-page or front/back (max 15).
Response
200Application state after uploading documents
statusstringrequiredCurrent KYC application status
NOT_STARTEDAWAITING_DOCUMENTSIN_REVIEWAPPROVEDREJECTEDRETRY_REQUIREDnextActionobject | nullrequiredAction the client must take next, or null if none remains
Show child attributes
Option 1 · Provider SDK
typestringrequiredproviderstringrequiredSUMSUBsdkTokenstringrequiredToken for initializing the provider verification widget
Option 2 · Document upload
typestringrequireddocumentsobject[]requiredSupporting documents to upload, each with its current upload state
Show child attributes
typestringrequiredSupporting document category
IDENTITYPROOF_OF_ADDRESSCURPstatusstringrequiredReview state of this document
PENDINGUPLOADEDRETRY_REQUIREDREJECTED400Response for status 400
Option 1 · InvalidApplicationStatusError
errorobjectrequiredShow child attributes
codestringrequiredmessagestringrequireddetailobject | nullrequiredOption 2 · UserDocumentNotRequiredError
errorobjectrequiredShow child attributes
codestringrequiredmessagestringrequireddetailobject | nullrequiredOption 3 · ApplicationSubmissionRejectedError
errorobjectrequiredShow child attributes
codestringrequiredmessagestringrequireddetailobject | nullrequired403The requested verification method is not enabled for this project
errorobjectrequiredShow child attributes
codestringrequiredmessagestringrequireddetailobject | nullrequired404User not found
errorobjectrequiredShow child attributes
codestringrequiredmessagestringrequireddetailobject | nullrequired