Skip to main content
The Create Report endpoint creates a persistent Report object. The server processes the report asynchronously. Use the returned id to poll for completion.

Request body

string
required
Topic for the report. Maximum 1000 characters.
string
required
Instructions for the report structure. Maximum 5000 characters.
string
required
Intended audience for the report. Maximum 1000 characters.
string
required
Approximate report length. Must be one of SHORT_MEMO, EXEC_MEMO, MID_REPORT, or LONG_REPORT.
boolean
Set to true to validate the request and create a Report with example data without running report generation. Required fields such as topic, structure, audience, and length are still validated normally.
object
Custom dummy data to store when is_test is true. Use this to test downstream handling of report results.

Response

On success, returns the created Report object. For normal requests, result is null until processing completes. Use the returned id to retrieve the Report.
number | string
Unique identifier for the Report. Use this to retrieve results.
string
Report type. For this endpoint, the value is BRIEF.
object
Stored request fields, including topic, structure, audience, and numeric target length.
string
Timestamp when the Report was created (ISO 8601, UTC).
string | null
Timestamp when report generation finished, or null while processing.
object | null
Generated report content when processing is complete, or dummy report content in test mode.
number
Processing progress from 0 to 100.
string | null
Error message if report generation failed; otherwise null.
string
Public UUID for the Report.
boolean
Whether the Report was created in test mode.

Test mode

Use is_test: true to test your integration without running report generation. The endpoint still validates the request body the same way it does for a normal Create Report request. In test mode, POST /reports/ returns a dummy Report object with result, progress: 100, and finished_at populated. If you include test_data.result, that value is stored exactly as provided.
Example test request body
Example test response