---
title: "Upload signed consent PDF (minors)"
method: POST
path: "/api/consents/{consent_id}/upload-signed-pdf"
tags: ["consents"]
---

# Upload signed consent PDF (minors)

`POST /api/consents/{consent_id}/upload-signed-pdf`

Upload the signed consent PDF for this consent. Only the PDF that replaces the generated consent document is accepted (path is fixed per consent type). After upload, the consent is marked as signed; if all documents are uploaded, status becomes pending_approval.

## Path parameters

- `consent_id` string, uuid, required

## Response `200`

Successful Response

- MarkConsentPDFSignedResponse — Response after marking the consent PDF as signed (minors).
  - `consent_id` string, uuid, required — Consent UUID
  - `status` 'draft' | 'pending_otp' | 'pending_approval' | 'revision_required' | 'verified' | 'expired' | 'revoked', required — Informed consent status constants.
  - `consent_pdf_signed` boolean, required — Always true after marking as signed
  - `next_action` 'none' | 'upload_documents' | 'sign_pdf' | 'wait_approval' | 'verify_otp' | 'complete_form' | 'renew', required — Next action for consent flow.

## Other responses

- `422` — Validation Error

---

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