Zum Hauptinhalt springen

Upload Document

POST 

/documents

Upload a document to the project associated with the API key.

The document will be uploaded to the project that the API key belongs to. Maximum file size allowed is 100MB.

Supported file types:

  • PDF: .pdf
  • Word: .doc, .docx, .rtf
  • PowerPoint: .ppt, .pptx
  • Excel: .xls, .xlsx
  • CSV: .csv (converted to a single-sheet .xlsx on upload)
  • Images: .png, .jpg, .bmp
  • TIFF: .tif, .tiff (single- or multi-page — converted to PDF on upload)
  • Text: .txt, .md (Markdown is rendered with formatting)
  • Emails: .eml, .msg
  • XML: only structured EN 16931 e-invoices, in CII syntax (XRechnung-CII / ZUGFeRD 2.x / Factur-X) or UBL syntax (XRechnung-UBL / Peppol BIS 3.0). Legacy ZUGFeRD 1.0 standalone XML, a Peppol invoice still wrapped in its SBDH envelope (StandardBusinessDocument) and any other XML are rejected with 400 Unsupported file type.

Parameters:

  • file: The file to upload (multipart/form-data)
  • description: Optional description of the document
  • folder_path: Optional folder path within the project (/ as separator, max 255 chars per segment)
  • metadata: Optional JSON metadata (key-value pairs)
  • group_id: Optional UUID of a case (group) in the same project; the document is attached to it on creation

Filename requirements:

  • Maximum 255 characters (longer names are truncated automatically).
  • Path separators and directory components are stripped automatically.
  • Returns 400 Invalid Filename if the name is empty after validation.

group_id responses:

  • 404 Group not found if it does not name an active group in the API key's project. Nothing is stored.
  • 422 if the API key has no owner to attribute the attach to. The membership is recorded against the API key's creator, falling back to the project's creator; when neither exists the upload is rejected.

Request​

Responses​

Document uploaded successfully