Upload File
Changed onUpload a file and return a stable proxy URL.
The returned URL can be used as an attachment in start_design_task. Supports images, PDFs, Office documents (PowerPoint, Word, and Excel spreadsheets), CSV, plain-text/Markdown/HTML, and web-playable video (MP4, WebM, MOV). Pass folder_id to file the upload into a drive folder (see GET /v1/drive/tree).
Size limit: the API gateway caps inbound HTTP request bodies at 32 MiB (33,554,432 bytes) and rejects anything larger with a bare 413 that carries no error envelope — the request never reaches the app. Files above that size (and up to the max_file_bytes cap from GET /v1/uploads/limits, which is per-workspace) must use the two-step signed-URL flow (POST /v1/uploads/url + POST /v1/uploads/register) instead — the bytes go directly to storage and never traverse the gateway. GET /v1/uploads/limits reports both numbers machine-readably.
Request
- Base URLhttps://api.moda.app/v1
- URLhttps://api.moda.app/v1/uploads
- AuthHTTP bearer
Headers
Calendar-dated API version pin. New integrations should pin 2026-05-01 to opt into the newest response shapes. For back-compat the server also accepts requests with no header and resolves them to the current default (today: 2026-04-12); that default advances on each sunset date. Any unsupported value returns 400 unsupported_version.
Request body multipart/form-data
Response
Successful Response
Example response
{
"id": "file_01HT9WK8N3M2J4A5Z6P7Q8R9TV",
"folder_id": "fld_01HT9WK8N3M2J4A5Z6P7Q8R9TV"
}Changes
- info
added the new optional request property
- info
added the new optional request property
- info
added the non-success response with the status
- info
added the non-success response with the status
- info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status
- info