---
title: "Upload a new supporting document to a workflow"
method: POST
path: "/monitoring-workflows/{workflowId}/supporting-documents"
tags: ["MonitoringWorkflow"]
---

# Upload a new supporting document to a workflow

`POST /monitoring-workflows/{workflowId}/supporting-documents`

Uploads a single supporting document file and appends it to the workflow's supporting documents collection. Use this endpoint to add one document without affecting the others; use `PUT /monitoring-workflows/{workflowId}/supporting-documents` to replace the entire collection. The request is a multipart/form-data upload: `file` is required (the binary content); `fileType` is required (e.g. 'Medical License'); `state` is optional; `expirationDate` is optional and must be in `YYYY-MM-DD` format when provided — an invalid format returns 400. Requires `MONITORING_WORKFLOW_DETAILS_CREATE`, `MONITORING_WORKFLOW_DETAILS_UPDATE`, and `MONITORING_WORKFLOW_DETAILS_SUPPORTING_DOCUMENTS_CREATE`. The `tenant-id` header is mandatory.

## Path parameters

- `workflowId` string, required

## Headers

- `tenant-id` string, required

## Response `201`

Supporting document uploaded successfully

- object

## Other responses

- `400` — Bad request - file is missing, fileType is missing, or expirationDate is not in YYYY-MM-DD format
- `401` — Unauthorized - Authentication required
- `403` — Forbidden - Insufficient permissions
- `404` — Monitoring workflow not found
- `500` — Internal server error

## Changes

- **2026-08-19** `563848e0ecc0` — 2 breaking, 22 warning, 4 info
  - the request property `file` became required
  - the `errorDetails` response's property type/format changed from `array`/`` to `object`/`` for status `400`
  - removed the optional property `errorDetails/array` from the response with the `400` status
  - removed the optional property `errorDetails/bigDecimal` from the response with the `400` status
  - …24 more

[Change history](https://skmtc.dev/certifyos/apis/certify-api-layer/changes/monitoring-workflows/:workflowId/supporting-documents/post.md)

---

[API](https://skmtc.dev/certifyos/apis/certify-api-layer.md) · [All operations](https://skmtc.dev/certifyos/apis/certify-api-layer/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/certifyos/certify-api-layer/revisions/563848e0ecc0/schema)
