Atribu
API Reference

Reports

Templates, schedules, generation and delivery — the client-facing artifact an agency actually sends.

A report is a rendered, brandable artifact built from a profile's attribution data: generated on demand or on a schedule, delivered by email or shared by link.

Four objects, in the order you meet them:

objectroute familywhat it is
template/reports/templateswhich sections, which metrics, which branding
schedule/reports/scheduleswhen it runs and who receives it
generated report/reports, /reports/{id}one rendered instance
delivery/reports/deliveriesone attempt to get it to someone

Preview before you schedule

Endpoints
POST /api/v1/reports/preview
POST /api/v1/reports/send-test

preview builds the report data without storing anything — the right call when you are still deciding what a template should contain. send-test sends one real email to you, which is the only way to check branding, the sender domain and how it renders in a client's inbox.

Generating and sending

Endpoints
POST /api/v1/reports/generate
GET  /api/v1/reports/{id}
POST /api/v1/reports/{id}/send

Generation is separate from sending on purpose: an agency reviews before a client sees it.

Sharing without a credential

Endpoint
GET /api/v1/public/reports/{share_slug}

The one route on this API with no credential at all. The slug is the capability — treat it like a password: anyone holding it reads the report.

Across many profiles at once

An agency's bulk operations are workspace-scoped and live under /workspaces:

  • GET /api/v1/workspaces/{workspaceId}/reports/hub — the hub view
  • POST /api/v1/workspaces/{workspaceId}/reports/bulk-generate
  • POST /api/v1/workspaces/{workspaceId}/reports/schedules/bulk

Branding and the verified sending domain are also workspace-level — see Workspaces & profiles.

MethodPathWhat it does
GET/api/v1/public/reports/{share_slug}Fetch a shared report (no credential)
GET/api/v1/reportsList generated reports
GET/api/v1/reports/{id}Fetch a generated report
DELETE/api/v1/reports/{id}Delete a generated report
POST/api/v1/reports/{id}/sendEmail a generated report
GET/api/v1/reports/deliveriesList report deliveries
POST/api/v1/reports/generateGenerate a report
POST/api/v1/reports/previewPreview report data without storing it
GET/api/v1/reports/schedulesGet the report schedule
POST/api/v1/reports/schedulesCreate or update the report schedule
PATCH/api/v1/reports/schedules/{id}Update the report schedule
DELETE/api/v1/reports/schedules/{id}Delete the report schedule
GET/api/v1/reports/schedules/changesList report schedule changes
POST/api/v1/reports/send-testSend a test report email
GET/api/v1/reports/templatesList report templates
POST/api/v1/reports/templatesCreate a report template
PATCH/api/v1/reports/templates/{id}Update a report template
DELETE/api/v1/reports/templates/{id}Delete a report template

Generated from openapi.json. The full request and response schema for every operation is in the OpenAPI document.

Next steps

On this page