Upload a document (flat resource)
Uploads a document. Owner is inferred from the body:
investor_idset → owner is the investoruser_idset → owner is the user (e.g., UBO)- neither set → owner is the calling tenant
investor_idanduser_idare mutually exclusive.
Authorizations
HTTP Basic Authentication using the API Key as username and API Secret as password.
Body
The file to upload (PDF, JPG, PNG, DOC, DOCX up to 10MB).
Free-form document classifier (e.g., passport, proof_of_address).
Optional purpose tag; used for retention bookkeeping.
KYC, KYB, EDD, TAX, FUNDING_VERIFICATION, AGREEMENT, ACCOUNT_STATEMENT, TRADE_CONFIRMATION, OTHER Investor owner (prefixed inv_… id). Mutually exclusive with user_id.
User owner (e.g., UBO uploads). Mutually exclusive with investor_id.
Optional explicit retention deadline.
Optional compliance workflow to link this document to.
Optional compliance check to link this document to.
Optional metadata key-value pairs. For multipart clients that cannot send nested objects, pass a JSON-encoded string; the API accepts either form.
Response
Document created
Document resource returned by /v1/documents endpoints. Uses the
flat document shape: document_id is the public id, owner_type /
owner_id are polymorphic ownership refs (INVESTOR / USER /
TENANT). purpose indicates what the doc is for (KYC, KYB, EDD,
TAX, FUNDING_VERIFICATION, AGREEMENT, OTHER).
"doc_01j9x8m2k7qpzwv3t5r6y8n0ab"
document tenant, investor, user UUID of the owning entity (raw, not prefix-encoded).
Free-form classifier (e.g. PASSPORT, BANK_STATEMENT, CIP_RESULT).
"id_verification"
"id-front.png"
"image/png"
uploaded, processing, accepted, rejected, expired kyc, kyb, edd, tax, funding_verification, agreement, account_statement, trade_confirmation, other