Typical usage

Here’s how the workflow goes from start to finish:

Step 1 – Create the .tpl file

Write your template using the structure that matches your desired output: HTML, XML, CSV, or TXT. For example, if your goal is an XML report, the file should follow XML syntax and include Reporter blocks. Check the Template examples pages for a few examples on how to create your file.
Regardless of the format, the file must be saved with a .tpl extension. This is required for proper processing.

Step 2 – Upload the template

Once your .tpl file is ready, upload it using the Upload a Template endpoint.
  • Set the outputFormat field to define the expected report format.
  • The system automatically names the file using a UUID: 0196159b-4f26-7300-b3d9-f4f68a7c85f3.tpl.
You can manage your templates with the following endpoints:
  • List Templates – View all templates in your organization.
  • Retrieve Template details – Access the information for a specific template.
  • Update a Template – Replace the .tpl file, edit the description, or change the output format.
  • Delete a Template – Marks a template as deleted by setting the deletedAt timestamp. The data remains stored, but won’t appear in standard queries.

Step 3 – Generate the report

With your template uploaded, use the Create a Report endpoint to trigger report generation.
  • The API returns a reportId that you can use to track the process and fetch the final output when it’s ready.

Step 4 – Check the report status

Use the Check Report Status endpoint to monitor progress.
  • You’ll see whether the report is processing or finished.
  • Additional context may be included to help troubleshoot or confirm completion.

Step 5 – Download the report

Once the report status is finished, download the file using the Download a Report endpoint.
  • The file is returned in the response body.
  • The Content-Disposition header sets the correct filename and format to support a smooth download experience.

Mapping data sources for dynamic filters

To support dynamic filtering during report generation, the Reporter plugin offers two supporting endpoints: These endpoints are especially useful if you’re building an interface where users can select a data source and apply filters dynamically before generating a report. This separation helps reduce payload size and improves performance by allowing systems to load only what they need, when they need it.
These endpoints are optional and designed for advanced use cases, like building custom UIs or automating report workflows based on schema data.