Skip to content

Frequently Asked Questions

What output formats are supported?

Reports can be downloaded as HTML, DOCX (Word), or PDF. HTML and DOCX are pure Python and always available. PDF requires the WeasyPrint system libraries; see System Dependencies for PDF Export.

Why does my PDF download show "PDF export is not available on this installation"?

The WeasyPrint system libraries are not installed. Install them (and restart Nautobot), or use HTML/DOCX instead. See the installation troubleshooting section.

Do I need any PLUGINS_CONFIG settings?

No. The app requires no plugin-specific settings. All configuration is done through the Nautobot UI. Email delivery is the only optional feature that needs configuration, and that uses Django's standard EMAIL_* settings; see Email Configuration.

How are Nautobot permissions enforced in the reports?

Object permissions are enforced when report data is queried, not when a published report is viewed. See Permissions for the full behavior.

In the report builder and preview

Data-bearing blocks (Saved View, Export Template, Jinja Template) query live Nautobot data with the permissions of the user viewing the preview. Objects you cannot view are omitted from the rendered output.

In published reports

Publishing renders the template with the permissions of the user who ran the publish job — for scheduled runs, the user who created the schedule — and stores the result as a frozen HTML snapshot. Permissions are not re-applied when the snapshot is viewed or downloaded: anyone with the view permission on Published Reports sees the report exactly as captured, including data their own permissions would not let them view directly. Administrators should review Object Permissions and Published Reports before granting that permission.

Why does the same report look different for different users?

Data-bearing blocks (Saved View, Export Template, Jinja Template) query live Nautobot data scoped to the permissions of the user generating the report. A user who cannot see certain objects will get a report that omits them. A Published Report is frozen at generation time and reflects exactly what its author could see when it ran.

Why does my report show fewer rows than the underlying data?

Saved View and Export Template blocks are row-capped to keep reports fast and readable. The default is 10 rows in the report body and 1000 rows in email attachments, with a hard system ceiling of 5000 rows. Adjust the in-report and attachment row counts per block in the report builder. See Scalability for more on the app's limits.

Can I email a report automatically?

Yes. The Publish And Email Report Job publishes a snapshot and emails it in one step: inline in the message body, as whole-report attachments (HTML/DOCX/PDF), and/or as per-block file attachments. It requires a configured Django email backend. See Emailing a report. To run it on a schedule, see Scheduling a report.

What happens to published reports if I edit or delete the template?

Nothing. A Published Report stores its rendered HTML and a snapshot of the template's name at generation time, so existing reports remain intact and reproducible after the source template is changed or deleted.

Can I change the order of blocks?

Yes. Drag blocks to reorder them in the report builder, or use the reorder-blocks REST API action. Title Page and Table of Contents blocks occupy fixed positions and are not reordered.

Which blocks can be attached to emails as separate files?

Only Saved View and Export Template blocks. Enable Attach as File When Emailed on the block and pick an attachment type (CSV, DOCX, or PDF). See Per-block file attachments.