---
title: "Submit a form response"
method: POST
path: "/api/forms/{form_id}/submissions"
tags: ["Forms"]
---

# Submit a form response

`POST /api/forms/{form_id}/submissions`

Submits a respondent's answers for a form. No authentication required. On success, the service stores the submission, increments the form's submission count, emails recipients (if configured), and returns 201 with no body.

Maximum request size is **250 MB** (to support file attachments).

## Path parameters

- `form_id` string, uuid, required

## Request body

- FormSubmissionRequest
  - `form_data` object, required — Key-value pairs matching the form's field schema (`form_json`). Structure varies per form.
  - `attachments` object[] — Optional file attachments
    - `name` string, required — Filename
    - `content` string, required — Base64-encoded file content

## Response `201`

Submission accepted

## Other responses

- `400` — Missing required `form_data` field
- `404` — Form not found

---

[API](https://skmtc.dev/paubox/apis/paubox-forms-api.md) · [All operations](https://skmtc.dev/paubox/apis/paubox-forms-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/paubox/paubox-forms-api/revisions/71f6affe238c/schema)
