Skip to main content
This guide is intended for developers. If you’re looking for a business-level overview of what Reporter does, see What is Reporter?.
Get Reporter running in minutes. This guide walks you through the complete journey, from uploading your first template to downloading a generated report.

Before you begin


You need:
  • A running Reporter instance
  • A valid authentication token (if Access Manager is enabled)
  • A .tpl template file ready to upload
All examples use cURL. Replace $TOKEN with your authentication token and https://reporter.example.com with your Reporter URL.

Step 1: Upload a template


Upload a .tpl file that defines the structure and content of your report. The template content must match the selected output format: HTML for HTML and PDF, XML for XML, CSV for CSV, and non-empty text for TXT. The uploaded file itself must have a .tpl extension.
API reference: Upload template
cURL
Save the template id. You will use it to generate reports.

Supported output formats

Step 2: Verify the template


List your templates to confirm the upload was successful.
API reference: List templates
cURL

Step 3: Generate a report


Submit a report generation request with the template ID and the required filters object. Add filters to narrow the data, or send {} when no filtering is needed.
API reference: Create report
cURL
Save the report id for the next steps.

Filter structure

Filters follow the path: data source > table > field > operator > values.
The filters field is required. To generate a report without filtering, pass an empty object: "filters": {}.

Step 4: Check report status


Report generation is asynchronous. Poll the status endpoint until the report is ready.
API reference: Check report status
cURL
Wait for Finished before proceeding to download.

Step 5: Download the report


Once the report is finished, download the generated file.
API reference: Download report
cURL
The file is returned with Content-Disposition headers indicating the filename and format.

Step 6: Explore data sources


To understand what data is available for your templates, list the configured data sources. Then use GET /v1/data-sources/{dataSourceId} to inspect the schema of one data source.
cURL
The list response identifies each data source. The detail response includes its available tables and fields, which you can reference in your templates using the {{ datasource.table.field }} syntax.

Next steps


What is Reporter?

Full overview of template syntax, tags, and filters.

Template formats

Practical examples for HTML, XML, and TXT templates.

Using Reporter

Detailed guide on templates, storage, and data source configuration.

Error handling

Complete list of error codes and how to resolve them.