---
title: "Fill Report Endpoint"
method: POST
path: "/tools/fillreport"
tags: ["Report Filling"]
---

# Fill Report Endpoint

`POST /tools/fillreport`

Endpoint to fill a report based on a transcript ID and a template ID.
The template ID must correspond to an active template in the database.
The transcript ID must correspond to an existing transcript owned by the user.
The filled PDF will be stored in Supabase and a signed URL will be returned.

## Request body

- FillReportRequest
  - `transcript_id` string, uuid, required
  - `template_id` string, uuid, required
  - `task_id` string, nullable

## Response `200`

Successful Response

- FillReportResponse
  - `report_id` string, uuid, required
  - `filled_pdf_url` string, required
  - `json_output` object, required

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/noso/apis/crucible-backend-api.md) · [All operations](https://skmtc.dev/noso/apis/crucible-backend-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/noso/crucible-backend-api/revisions/112efbdea3eb/schema)
