Skip to main content
POST
/
v1
/
files
/
upload-url
Create upload URL
curl --request POST \
  --url https://api.cadanapay.com/v1/files/upload-url \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "purpose": "kyc-id-front",
  "contentType": "image/jpeg"
}
'
{
  "fileId": "517075a2-17db-469f-9481-eb8347cb920c",
  "putUrl": "https://cadana-kyc.s3.amazonaws.com/tmp/file_9c52fa2e ?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=…",
  "expiresIn": 900
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

X-MultiTenantKey
string

Required when using a Platform API token. The tenant key identifying which business to operate on.

Body

application/json
purpose
enum<string>
required

Logical reason for the upload

Available options:
kyc-id-front,
kyc-id-back,
kyc-selfie,
kyc-id-selfie,
kyb-incorporation-document,
kyb-tax-certificate,
kyb-address-proof,
kyc-address-proof,
reimbursements-proof,
business-onboarding-document,
contract
Example:

"kyc-id-front"

contentType
string
required

MIME type that must be used in the PUT request

Example:

"image/jpeg"

Response

Pre-signed PUT URL and file identifier

fileId
string<uuid>
required
Example:

"517075a2-17db-469f-9481-eb8347cb920c"

putUrl
string<uri>
required

Pre-signed HTTPS URL (single-use)

expiresIn
integer
required

Seconds until the URL expires

Example:

900