Skip to main content
Many APIs need more than a JSON body: identity checks that require a document scan, invoice or attachment uploads, payment providers that take URL-encoded forms, or legacy services that expect XML. A request node can send each of these.

Choosing a body type

Open a request node, go to Body and pick the type at the top: Quixa sets the Content-Type header for the body itself (for multipart it includes the boundary), so you do not need to add one.
Bindings ({{CreateCustomer.response.id}}), QMock values ({{QMock.person.firstName}}) and QPlugin calls work in form field values and in raw bodies, exactly as in JSON bodies.

Files

In a multipart form, set a field’s type to File, then:
  • Upload a file from your computer, or
  • Choose a file your workspace uploaded earlier.
The file is uploaded once and stored for your workspace; the request keeps only a reference to it. The same file can be used by many requests and flows. A Binary file body works the same way with a single file.
  • Files belong to your workspace; other workspaces cannot read or reference them.
  • File contents never appear in execution results or logs; only the field name and file name are shown.
  • The default limit is 25 MB per file. Accepted types include PDF, images (PNG, JPEG, GIF, WebP, TIFF), text, CSV, JSON, XML, ZIP and Office documents.
Use test documents only. Do not upload real identity documents or personal data.

Imports

Body types are set automatically when you import:
  • OpenAPI 3.x: multipart/form-data becomes a multipart form (properties with format: binary, format: base64 or contentMediaType become file fields; encoding.contentType is used per part), application/x-www-form-urlencoded a URL-encoded form, application/octet-stream and image/PDF types a binary body, and XML/text a raw body.
  • Swagger 2.0: in: formData parameters become form fields; type: file parameters become file fields.
  • Postman: form-data, URL-encoded, raw XML/text and file bodies keep their type. The files themselves are not part of a Postman export, so file fields show Select <file name> until you pick a file.

Self-hosted installations

Files are stored on a volume (quixa-files, mounted at /app/data/files) by default. To use Azure Blob Storage instead, set: