Skip to main content
POST
Create a report

Authorizations

Authorization
string
header
required

JWT bearer token issued by the identity provider.

Headers

X-Idempotency
string

Client-provided idempotency key that prevents duplicate report creation

Body

application/json

Report input

filters
object
required

Filter conditions grouped by data source, table, and field.

Example:
templateId
string
required

Template identifier used to generate the report.

Example:

"00000000-0000-0000-0000-000000000000"

institution
string

The institution the report reads for: an institution id, or "all" to read every institution's rows in one report. Absent, a tenant with no institution reads everything, a tenant with one takes it, and a tenant with several is refused.

Example:

"00000000-0000-0000-0000-000000000000"

parameters
object

Generation parameters keyed by parameter name, answering what the template declares. A parameter the template does not declare is refused; a declared one that is required and absent is refused unless it carries a default. At most 50 parameters, each value at most 512 characters.

Example:

Response

Created

completedAt
string<date-time> | null
required

Time when report generation completed, when available.

Example:

"2026-01-31T15:04:05Z"

createdAt
string<date-time>
required

Time when the report was created.

Example:

"2026-01-31T15:00:00Z"

deletedAt
string<date-time> | null
required

Time when the report was soft-deleted, when applicable.

Example:

"2026-02-01T09:00:00Z"

filters
object
required

Filter conditions grouped by data source, table, and field.

Example:
id
string
required

Stable report identifier.

Example:

"00000000-0000-0000-0000-000000000001"

metadata
object
required

Additional report metadata keyed by attribute name.

Example:
status
string
required

Current report generation status.

Example:

"Processing"

templateId
string
required

Template snapshot source identifier.

Example:

"00000000-0000-0000-0000-000000000002"

updatedAt
string<date-time>
required

Time when the report was last updated.

Example:

"2026-01-31T15:04:05Z"

allInstitutions
boolean

The caller chose every institution, so the report read every institution's rows unscoped.

Example:

false

approvedAt
string<date-time>

When the report was approved, when it was.

Example:

"2026-03-12T10:00:00Z"

approvedBy
string

Who approved it, as the Access Manager subject identifier the bearer token named. Absent until approval; never blank on a Final, because an approval whose actor the request did not identify is refused.

Example:

"9c1d7e34-2b6a-4f81-90a3-5e7f8d0a1b2c"

correctedAt
string<date-time>

When the draft was last corrected, when it was.

Example:

"2026-03-12T09:40:00Z"

correctedBy
string

Who last corrected it, as the Access Manager subject identifier the bearer token named. Absent until the first correction; never blank on a report that has one, because a correction whose actor the request did not identify is refused.

Example:

"3f9a1c2e-0f5b-4d9a-9b8e-1a2b3c4d5e6f"

documentId
string

Curated document this report generates.

Example:

"br.bcb.cadoc-4010"

documentVersion
string

Pinned version of the document it was generated against.

Example:

"1.0.0"

draftVersion
integer<int64>

Version of the draft; a correction or an approval must present the one it read.

Example:

3

institution
object

The institution the report read for, frozen when it was requested: its scope is the part applied to the tables the report reads. Absent on a report that read for no institution.

openGaps
object[]

What a regulatory Draft still cannot fill, computed on read from the same stored state the approval refusal reads, each field flagged required or not. Present when a Draft is read by id; absent on a Final, on a non-regulatory report, and in the list endpoint, which does not compute it. Absent means unknown, an empty list means nothing is missing, and only a required gap refuses an approval.

parameters
object

Generation parameters recorded with the report, when supplied.

Example:
provenance
object

Everything this report was made of, frozen — what answers, months later, why it says what it says.

subscriptionId
string

Subscription this report files under; present only on the regulatory flow.

templateDescription
string

Description copied from the template when the report was created.

Example:

"Monthly accounting report"

templateOutputFormat
string

Output format selected for the generated report.

Example:

"pdf"

warnings
object[] | null

Non-fatal filter-validation warnings returned when a data source is unavailable and the filter could not be checked against its schema

Example: