File uploads

Some endpoints accept optional binary attachments. You can use multipart form data, JSON with base64 payloads, or both as documented on each route.

Mechanisms

  1. MultipartContent-Type: multipart/form-data, one or more parts named files.
  2. JSON base64Content-Type: application/json, with a files or filesBase64 array (see below).

Per-file limit: 50 MB after base64 decode.

When both files and filesBase64 are present

If filesBase64 is present on the body (!== undefined), it is used as the base64 file array instead of files, so you can reserve files for other fields if needed.

JSON base64 object shape

Each entry in the array:

FieldTypeRequiredDescription
filename or namestring
Required
File name to use when the attachment is sent upstream (either field name is accepted).
contentBase64 or dataBase64string
Required
File contents encoded as standard base64. Whitespace in the string is allowed.
contentType or mimeTypestring
Optional
MIME type of the file (for example application/pdf). Defaults to application/octet-stream when omitted.

Minimal JSON example

JSON
{
  "files": [
    {
      "filename": "note.txt",
      "contentType": "text/plain",
      "contentBase64": "SGVsbG8gd29ybGQ="
    }
  ]
}