Endpoints
Create report
Create a persistent Report object processed asynchronously, with generated report content available via polling.
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
Useis_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