Returns presigned S3 PUT URLs for direct file upload. Use this to upload files (images, attachments) without sending them through the API server. Supports up to 50 files per request.

Upload flow:

  1. Call this endpoint with an array of files (filename + content type)
  2. PUT each file's bytes to its returned upload_url with the matching Content-Type header
  3. Create blocks via POST /v3/blocks with value set to the S3 URL: https://s3.amazonaws.com/arena_images-temp/<key>

Presigned URLs expire after 1 hour.

Authentication required.

Body Params
files
array
required
Array of files to generate presigned URLs for
POST
https://api.are.na/v3/uploads/presign
Response containing presigned S3 upload URLs
files
PresignedFile[]!
Presigned URLs for each requested file
[items]
PresignedFile
A presigned S3 upload URL for a single file
upload_url
string (uri)!
Presigned S3 PUT URL. Upload your file by sending a PUT request
key
string!
The S3 object key where the file will be stored
content_type
string!
The content type that was validated and should be used in the PUT request
expires_in
integer!
Seconds until the presigned URLs expire