# Overview report

Source: https://docs.mirafive.io/rest-api/overview

> Read a MIRA FIVE project's key numbers and trend for a period, against the period before, with optional event filters.

The overview report answers what a project's Overview screen shows at the top: the key numbers of the period against the period before, and a trend per bucket. Use it for a daily or weekly summary. For where the numbers came from, read [Acquisition](https://docs.mirafive.io/rest-api/acquisition); for who, read [People](https://docs.mirafive.io/rest-api/people).

## Get the overview

```text
GET /api/v1/projects/{project_id}/overview
```

| Name | Type | Default | Description |
| --- | --- | --- | --- |
| `period` | string | `30d` | `1h`, `24h`, `7d`, `30d`, `90d`, `12m` or `custom`. See [Periods](https://docs.mirafive.io/rest-api#periods). |
| `from` | string | none | First day of a custom period, `YYYY-MM-DD`. **Required** with `period=custom`. |
| `to` | string | none | Last day of a custom period, inclusive. **Required** with `period=custom`. |
| `compare` | string | none | `previous` adds the previous period's series to `trend.comparison`. The key numbers carry `previous` either way. |
| `filters[i][field]`, `filters[i][op]`, `filters[i][value]` | string | none | Event filters, all of which must hold. See [Filters](https://docs.mirafive.io/rest-api#filters). |

```bash
curl -G https://app.mirafive.io/api/v1/projects/01932c4e-8a7b-7c3d-9e2f-4b5a6c7d8e9f/overview \
  -H "Authorization: Bearer $MIRAFIVE_API_KEY" \
  --data-urlencode 'period=7d'
```

```json title="200 OK"
{
  "data": {
    "id": "01932c4e-8a7b-7c3d-9e2f-4b5a6c7d8e9f",
    "type": "overviews",
    "attributes": {
      "consentless": false,
      "coverage": 0.62,
      "numbers": [
        { "key": "people", "value": 4218, "previous": 3970, "format": "number", "currency": null, "others": [] },
        { "key": "newPeople", "value": 2875, "previous": 2711, "format": "number", "currency": null, "others": [] },
        { "key": "known", "value": 611, "previous": 574, "format": "number", "currency": null, "others": [] },
        { "key": "buyers", "value": 138, "previous": 121, "format": "number", "currency": null, "others": [] },
        {
          "key": "revenue",
          "value": 9214.8,
          "previous": 8102.35,
          "format": "currency",
          "currency": "EUR",
          "others": [{ "currency": "CHF", "amount": 189 }]
        }
      ],
      "trend": {
        "interval": "day",
        "timezone": "Europe/Berlin",
        "format": "number",
        "currency": null,
        "series": [
          {
            "key": "visits",
            "points": [
              { "t": "2026-09-21T00:00:00+02:00", "v": 1012 },
              { "t": "2026-09-22T00:00:00+02:00", "v": 968 },
              { "t": "2026-09-23T00:00:00+02:00", "v": 1041 },
              { "t": "2026-09-24T00:00:00+02:00", "v": 995 },
              { "t": "2026-09-25T00:00:00+02:00", "v": 887 },
              { "t": "2026-09-26T00:00:00+02:00", "v": 1124 },
              { "t": "2026-09-27T00:00:00+02:00", "v": 603 }
            ]
          },
          {
            "key": "people",
            "points": [
              { "t": "2026-09-21T00:00:00+02:00", "v": 704 },
              { "t": "2026-09-22T00:00:00+02:00", "v": 671 },
              { "t": "2026-09-23T00:00:00+02:00", "v": 725 },
              { "t": "2026-09-24T00:00:00+02:00", "v": 690 },
              { "t": "2026-09-25T00:00:00+02:00", "v": 612 },
              { "t": "2026-09-26T00:00:00+02:00", "v": 781 },
              { "t": "2026-09-27T00:00:00+02:00", "v": 418 }
            ]
          }
        ],
        "comparison": []
      }
    }
  },
  "meta": {
    "period": {
      "preset": "7d",
      "from": "2026-09-21T00:00:00+02:00",
      "to": "2026-09-28T00:00:00+02:00",
      "timezone": "Europe/Berlin",
      "interval": "day",
      "comparison": {
        "from": "2026-09-14T00:00:00+02:00",
        "to": "2026-09-21T00:00:00+02:00"
      },
      "clampedToRetention": false
    }
  }
}
```

The last bucket is today so far.

| Field | Type | Description |
| --- | --- | --- |
| `id` | string | The project's id. |
| `attributes.consentless` | boolean | `true` when the project collects without consent only. It then has no people, and the numbers are visits instead. |
| `attributes.coverage` | number or null | Share (0–1) of pageviews collected with consent. People counts rest on these. |
| `attributes.numbers` | array | The key numbers, in the order shown below. |
| `attributes.numbers[].key` | string | Which number. |
| `attributes.numbers[].value` | number or null | The period's value. `null` when it cannot exist, for example `newPeople` without enough earlier history, or `revenue` without a purchase. |
| `attributes.numbers[].previous` | number or null | The previous period's value, `null` when that period is outside the history. |
| `attributes.numbers[].format` | string | `number`, `percent`, `currency` or `duration`. |
| `attributes.numbers[].currency` | string or null | For `revenue`: the currency of `value`, the reporting currency when it has revenue, else the currency with the most. |
| `attributes.numbers[].others` | array | For `revenue`: `{ currency, amount }` of every other currency, never added to `value`. |
| `attributes.trend.interval` | string | `minute`, `hour`, `day`, `week` or `month`. See [Periods](https://docs.mirafive.io/rest-api#periods). |
| `attributes.trend.timezone` | string | The project's timezone. |
| `attributes.trend.format` | string | The format of the values. |
| `attributes.trend.currency` | string or null | The currency of the values, for a revenue series. |
| `attributes.trend.series` | array | `{ key, points }` per series. Each point is `t` (the bucket's start, ISO 8601 in the project's timezone) and `v` (its value). |
| `attributes.trend.comparison` | array | The previous period's series, paired with `series` by position. Empty unless `compare=previous`. |
| `meta.period` | object | The window read, and the one the numbers compare with. See [Periods](https://docs.mirafive.io/rest-api#periods). |

### Key numbers

| Project | `key` | Meaning |
| --- | --- | --- |
| With consent | `people` | Everyone active in the period. |
| With consent | `newPeople` | People first seen in the period. Needs as much history before the period as the period is long, else `null`. |
| With consent | `known` | People who signed in at least once. |
| With consent | `buyers` | People who bought in the period. |
| With consent | `revenue` | Purchases in the period, per currency. |
| Consentless | `visits` | Visits in the period. |
| Consentless | `pageviews` | Pageviews in the period. |
| Consentless | `conversions` | Goals reached in the period, intent goals left out. `null` while no goal is defined. |
| Consentless | `conversionRate` | Conversions per visit, 0–1 (`format` is `percent`). |

The trend's series are `visits` and `people` on a project with consent, `visits` and `pageviews` on a consentless one.

Filters choose people through their visits, and their purchases count wherever they happened. A consentless-only project refuses a `channel` filter.
