> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lerian.studio/llms.txt
> Use this file to discover all available pages before exploring further.

# Managing deadlines

> Track when regulatory and business reports are due with Reporter deadlines: create recurring obligations, monitor their status, and mark them delivered.

A **deadline** is Reporter's tracking layer for report deliveries. Templates define *how* a report looks, and report generation produces the *output*. A deadline records *when* a report is due and its delivery state. Each deadline represents a delivery obligation, typically a regulatory filing or a recurring business report. You can optionally link a deadline to the template that fulfills it.

Deadlines don't generate reports themselves. They sit alongside the [reporting lifecycle](/en/products/reporter/reporter-quick-start#the-reporting-lifecycle) as an operational tracker, so teams can see what's `pending`, `overdue`, or already `delivered`.

## Why deadlines exist

***

Report generation answers *how* and *what*. Deadlines answer *when* and *whether it was met*. Without a tracking layer, a team can produce perfect reports and still miss a filing window. Nothing in the reporting engine itself knows that a report was *due*.

Deadlines solve a delivery-compliance problem. They turn recurring reporting obligations into tracked, dated commitments so that nothing slips silently:

* **Regulatory reporting obligations**: many filings must reach a regulator on a fixed schedule. A deadline records that obligation, its recurrence, and its delivery state, so a missed or late filing is visible before it becomes a compliance incident.
* **Internal SLAs**: recurring business reports often carry internal commitments ("finance receives the monthly close pack by the 5th"). Deadlines make those commitments explicit and measurable.
* **Audit trails for delivery**: each deadline records `deliveredAt` and moves through `pending` → `overdue` → `delivered`. It leaves an auditable history of *when* each obligation was satisfied, not just that a report exists.

## Who uses deadlines

***

Deadlines are a business and compliance tool layered on top of the reporting engine. Typical users include:

* A **fintech delivering regulatory reports to BACEN** on fixed monthly or annual schedules. It uses deadlines to track and meet each filing window.
* A **treasury or finance team** tracking recurring monthly report deliveries, using the calendar and status view to confirm each routine output went out on time.
* A **compliance officer** monitoring overdue obligations across the organization, filtering by `overdue` status to catch anything at risk before it escalates.

For these teams, the value is *knowing the obligation landscape*: what's coming up, what's late, and what's done.

## How deadlines fit the Reporter workflow

***

Deadlines wrap around reports and data sources to add a **delivery status layer** on top of the reporting engine. Data Sources provide the data, Templates define the output, and the reporting lifecycle produces the file. A deadline sits above all of that. It optionally links to the template that fulfills the obligation, watches the due date, and exposes a single status. The status tells the business whether the obligation has been met.

Deadlines are *non-intrusive*. They never trigger, generate, or submit a report. They observe and record. You still generate reports through the normal lifecycle, and the deadline records the delivery status.

## What a deadline tracks

***

Each deadline captures the due date for a report obligation plus the metadata your team needs to manage it:

| Field              | Description                                                                                         |
| ------------------ | --------------------------------------------------------------------------------------------------- |
| `name`             | Human-readable name of the deadline (for example, *Monthly Regulatory Report*).                     |
| `description`      | Optional longer description of the obligation.                                                      |
| `type`             | Classification of the deadline, such as `regulatory` or `custom`.                                   |
| `frequency`        | How often the deadline recurs, such as `monthly` or `annual`.                                       |
| `dueDate`          | When the report is due, in RFC 3339 format.                                                         |
| `color`            | Hex color used to visually identify the deadline in dashboards.                                     |
| `notifyDaysBefore` | Number of days before the due date when notifications start.                                        |
| `monthsOfYear`     | Months (1–12) in which the deadline applies.                                                        |
| `templateId`       | Optional UUID of the [template](/en/products/reporter/using-reporter) used to fulfill the deadline. |
| `active`           | Whether the deadline is currently active.                                                           |

Reporter also maintains read-only fields on each deadline: `id`, `status` (`pending`, `overdue`, or `delivered`), `deliveredAt`, `templateName`, `createdAt`, and `updatedAt`.

<Info>
  Include an `Authorization: Bearer <token>` header on every deadline request if your environment enables [Access Manager](/en/platform/access-manager).
</Info>

## Creating a deadline

***

Create a deadline with the [Create a Deadline](/en/reference/products/reporter/create-deadline) endpoint (`POST /v1/deadlines`).

The required fields are `name`, `type`, `frequency`, `dueDate`, and `color`. The remaining fields are optional. Set `templateId` to link the deadline to the template that fulfills it, and `notifyDaysBefore` to control when reminders begin.

```json theme={null}
{
  "name": "Monthly Regulatory Report",
  "description": "Monthly regulatory compliance report",
  "type": "regulatory",
  "frequency": "monthly",
  "dueDate": "2026-03-31T23:59:59Z",
  "color": "#FF5733",
  "notifyDaysBefore": 5,
  "monthsOfYear": [1, 6],
  "templateId": "00000000-0000-0000-0000-000000000000",
  "active": true
}
```

A successful request returns `201 Created` with the full deadline, including its generated `id` and an initial `status`.

<Tip>
  API reference: [Create a Deadline](/en/reference/products/reporter/create-deadline)
</Tip>

## Listing deadlines

***

Retrieve deadlines with the [Retrieve Deadlines](/en/reference/products/reporter/retrieve-deadlines) endpoint (`GET /v1/deadlines`). The endpoint paginates results, and you can filter them by status.

| Query parameter | Description                                     | Default |
| --------------- | ----------------------------------------------- | ------- |
| `status`        | Filter by `pending`, `overdue`, or `delivered`. | —       |
| `limit`         | Number of records per page (integer ≥ 1).       | `10`    |
| `page`          | Page number to return (integer ≥ 1).            | `1`     |

For example, to list overdue deadlines, ten per page:

```
GET /v1/deadlines?status=overdue&limit=10&page=1
```

The response contains an `items` array plus `page`, `limit`, and `total` for pagination.

<Tip>
  API reference: [Retrieve Deadlines](/en/reference/products/reporter/retrieve-deadlines)
</Tip>

## Updating a deadline

***

Update an existing deadline with the [Update a Deadline](/en/reference/products/reporter/update-deadline) endpoint (`PATCH /v1/deadlines/{id}`). The endpoint changes only the fields in the request body, so you can send a partial payload. For example, push back a due date or deactivate a deadline:

```json theme={null}
{
  "dueDate": "2026-06-30T23:59:59Z",
  "notifyDaysBefore": 10,
  "active": false
}
```

A successful request returns `200 OK` with the updated deadline.

<Tip>
  API reference: [Update a Deadline](/en/reference/products/reporter/update-deadline)
</Tip>

## Deleting a deadline

***

Remove a deadline you no longer need to track with the [Delete a Deadline](/en/reference/products/reporter/delete-deadline) endpoint (`DELETE /v1/deadlines/{id}`). A successful request returns `204 No Content`.

<Tip>
  API reference: [Delete a Deadline](/en/reference/products/reporter/delete-deadline)
</Tip>

## Marking a deadline as delivered

***

After you file or send the report behind a deadline, mark the deadline as delivered. Use the [Deliver a Deadline](/en/reference/products/reporter/deliver-deadline) endpoint (`PATCH /v1/deadlines/{id}/deliver`). It moves the deadline's `status` to `delivered` and stamps `deliveredAt`.

```json theme={null}
{
  "delivered": true
}
```

Because `delivered` is a boolean, the same endpoint can also reverse the action. Send `"delivered": false` to reopen a deadline that you marked delivered by mistake. A successful request returns `200 OK` with the updated deadline.

<Note>
  Delivering a deadline only tracks the obligation. It records that the obligation was met. It does not generate or submit the underlying report. Generate the report through the [reporting lifecycle](/en/products/reporter/reporter-quick-start), then mark the deadline delivered to keep your tracker accurate.
</Note>

<Tip>
  API reference: [Deliver a Deadline](/en/reference/products/reporter/deliver-deadline)
</Tip>

## How deadlines fit the workflow

***

A typical obligation moves through these states:

<Steps>
  <Step title="Create the deadline">Register the obligation with its due date, frequency, and optional template.</Step>
  <Step title="Track its status">It shows as `pending` until the due date, then `overdue` if you do not deliver the report in time.</Step>
  <Step title="Generate the report">Produce the report through the normal [reporting lifecycle](/en/products/reporter/reporter-quick-start), using the linked template.</Step>
  <Step title="Mark it delivered">Call the deliver endpoint to set `status` to `delivered` and record `deliveredAt`.</Step>
</Steps>

## Next steps

***

<CardGroup cols={2}>
  <Card title="Getting started with Reporter" icon="rocket" href="/en/products/reporter/reporter-quick-start">
    Walk through the reporting lifecycle that deadlines track.
  </Card>

  <Card title="Using Reporter" icon="file-code" href="/en/products/reporter/using-reporter">
    Build the templates that fulfill your deadlines.
  </Card>

  <Card title="BACEN templates" icon="landmark" href="/en/products/reporter/reporter-bacen-templates">
    Ready-to-use templates for Brazilian regulatory reporting.
  </Card>

  <Card title="Deadlines API" icon="code" href="/en/reference/products/reporter/create-deadline">
    Full request and response reference for every deadline endpoint.
  </Card>
</CardGroup>
