Skip to content
Reports

Create reports

POST/api/v1alpha1/runs/{run_id}/reports

Creates immutable JSON or Markdown reports from stored canonical answers. This presentation-only operation does not re-run analysis.

AuthorizationBearer <token>

In: header

Path Parameters

run_id*string

Identifier of an analysis run, as returned when the run was created.

Query Parameters

expand[]?array<>

Optional related data to include:

  • events: timeline event details.
  • events.evidence: evidence attached to each timeline event.
  • evidence: answer evidence details.
  • provenance: curated provenance details.
  • snapshots: stored profile, input, and output snapshot references.
  • content: rendered report content.
  • manifest: report trust bindings and evidence URLs. Expand depth is limited to two path segments. For this endpoint, use content or manifest.

Header Parameters

Idempotency-Key?string

Optional key for safe retry of this POST. The key is retained for 24 hours and compared with the request payload and concrete path parameters.

Lengthlength <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

curl -X POST "https://example.com/api/v1alpha1/runs/run_0190b5d4-7e1f-7a2b-9c3d-1234567890ab/reports" \  -H "Authorization: Bearer $DEEPFRAME_API_KEY" \  -H "Content-Type: application/json" \  -d '{    "formats": [      "json",      "markdown"    ],    "report_template": {      "blocks": [        {          "answer_key": "inspection_timeline",          "field_labels": [            {              "key": "activity",              "label": "Activity"            },            {              "key": "description",              "label": "Description"            }          ],          "label": "Activity timeline",          "type": "timeline"        },        {          "answer_key": "inspection_summary",          "label": "Summary",          "type": "narrative"        }      ],      "id": "procedure-report-en",      "language": "en",      "version": 1    }  }'
{  "data": [    {      "analysis_profile_ref": "snap_profile-snapshot-example",      "content_identity": "snap_rerender-json-content-example",      "content_ref": "artifact://rep_0190b5d4-rerendered-json/content",      "content_type": "application/json",      "created_at": "2026-08-21T09:04:31.000Z",      "format": "json",      "id": "rep_0190b5d4-rerendered-json",      "output_identity": "snap_output-snapshot-example",      "report_template_ref": "procedure-report-en@1",      "request_id": "0190b5d4-7e1f-7a2b-9c3d-1234567890ab",      "run_id": "run_0190b5d4-7e1f-7a2b-9c3d-1234567890ab",      "updated_at": "2026-08-21T09:04:31.000Z"    },    {      "analysis_profile_ref": "snap_profile-snapshot-example",      "content_identity": "snap_rerender-markdown-content-example",      "content_ref": "artifact://rep_0190b5d4-rerendered-markdown/content",      "content_type": "text/markdown",      "created_at": "2026-08-21T09:04:31.000Z",      "format": "markdown",      "id": "rep_0190b5d4-rerendered-markdown",      "output_identity": "snap_output-snapshot-example",      "report_template_ref": "procedure-report-en@1",      "request_id": "0190b5d4-7e1f-7a2b-9c3d-1234567890ab",      "run_id": "run_0190b5d4-7e1f-7a2b-9c3d-1234567890ab",      "updated_at": "2026-08-21T09:04:31.000Z"    }  ],  "has_more": false,  "next_cursor": null}