Create signed upload URL
Issues a short-lived pre-signed PUT so the browser uploads straight to
storage, plus the public URL the object will be served from. The client
must send the same Content-Type on the PUT, since it is part of the
signature.
fileSizeInBytes is declared by the client and not enforced by the
signature — the effective cap is applied when the shortcut referencing the
file is saved.
Authorizations
Behalf of an Operator (default). A JWT issued by Talqui Core when an operator signs in, scoped to every tenant that operator belongs to. Send as Authorization: Bearer <jwt-token>.
Path Parameters
The tenant the upload belongs to.
^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$Body
MIME type; must be in the supported allowlist.
1Upload purpose; determines the storage key prefix, the size cap applied below AND whether the object is public. contact-import is stored privately — it is a customer list — and is referenced afterwards by storageKey, not by resourceUrl.
operator-shortcut, support-ticket-attachment, contact-import Original file name; slugified before composing the key.
1 - 255Declared file size in bytes; capped per fileKind (12 MB for shortcuts, 20 MB for ticket attachments, 50 MB for contact imports).
x <= 9007199254740991Response
Response for status 200.
Seconds the pre-signed URL stays valid.
Public URL the object is served from once the PUT completes. Does not resolve for a private upload.
Storage key of the object. How a private upload (contact-import) is referenced afterwards.
Pre-signed PUT target. Short-lived; never persist it.