---
title: "Upload an attachment to a facility workflow record"
method: POST
path: "/facility-credentialing-workflows/{workflowId}/attachments"
tags: ["FacilityCredentialingWorkflow"]
---

# Upload an attachment to a facility workflow record

`POST /facility-credentialing-workflows/{workflowId}/attachments`

Uploads a file attachment and associates it with a specific section row of the facility credentialing workflow. **When to use:** Use to attach supporting files (e.g., scanned certificates, signed forms) to a specific record within the workflow. The `id` form field identifies the target section row using the format `{section}-{index}` (e.g., `licenses-0`). To attach a file at the workflow level rather than a row level, use `POST /facility-credentialing-workflows/{workflowId}/supporting-documents`. **Request:** Multipart form data with fields: `id` (section-index string, required), `file` (binary, required), `expirationDate` (optional). **Side effects:** File is stored in Cloud Storage. The attachment record is created in the workflow. **Returns:** `201 Created` with the attachment record. Returns `400` for a malformed request, `404` if the workflow is not found.

## Path parameters

- `workflowId` string, required

## Headers

- `tenant-id` string, required

## Response `201`

Attachment uploaded successfully

## Other responses

- `400` — Bad request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not found
- `500` — Internal server error

---

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