Skip to main content
POST
Create a staged upload

Authorizations

Authorization
string
header
required

Create a key under Settings → API Keys and send it as Authorization: Bearer amd_live_…. See https://docs.anythingmd.com/authentication.

Headers

Idempotency-Key
string

If reused within the retention window, replay the original result instead of a second mutation

Minimum string length: 1

Body

application/json
fileName
string
required

Original file name used for the object key and metadata

Minimum string length: 1
fileType
string
required

MIME type of the file being uploaded

Minimum string length: 1
idempotencyKey
string

If the same key is reused within the idempotency window, return the original upload slot instead of creating a duplicate

Minimum string length: 1
content_hash
string

Optional SHA-256 payload checksum (e.g. sha256:)

Minimum string length: 1
contentHash
string

Alias for content_hash

Minimum string length: 1

Response

Existing upload slot returned for a replayed idempotency key

documentId
string
required

Id of an uploaded source document

Minimum string length: 1
uploadUrl
string
required

Pre-signed URL for HTTP PUT of the file bytes

accessUrl
string
required

Object URL the conversion worker will read after upload

objectKey
string
required

Storage object key for the uploaded file

expiresAt
string<date-time>

ISO-8601 expiry of the pre-signed upload URL, if known

Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z))$