Skip to main content

Manage reports

You manage dynamic reports through the API. This page walks you through creating a report and points you to the reference for the rest of the operations.

Create a report

Send a POST request to https://api.nullplatform.com/report.

💡 Tip: Only name is required: you can start with just a name and fill in the schema, form, and queries later. If you don't send visibility, the report is created as user, so it stays private to you until you decide to share it.

curl -L -X POST 'https://api.nullplatform.com/report' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <token>' \
-d '{
"name": "Deployment frequency",
"description": "How often each application deploys",
"visibility": "user",
"schema": { "type": "object", "properties": { "environment": { "type": "string" } } },
"ui_schema": { "environment": { "ui:widget": "select" } },
"queries": {}
}'

Other operations

The rest of the operations follow the same REST pattern. Each link takes you to the full reference, with request and response details:

  • List reports: returns a lightweight index without schema, ui_schema, and queries. You can filter by visibility and paginate with limit and offset.
  • Read a report: returns the full report definition.
  • Update a report: a PATCH that only changes the fields you send.
  • Copy a report: creates your own copy of an existing report. The copy has user visibility, so you own it and can edit it freely.
  • Delete a report: soft-deletes the report.
note

A user report can only be changed or deleted by its owner. An organization report can be changed or deleted by anyone in the organization.

Next steps

Once your report is ready, publish it so others can see it in Insights.