---
title: "What was actually sent"
method: GET
path: "/v1/notifications/log"
tags: ["notifications"]
---

# What was actually sent

`GET /v1/notifications/log`

## Request

- Base URL: `https://api.flowral.app`
- URL: `https://api.flowral.app/v1/notifications/log`
- Auth: one of:
  - HTTP bearer
  - OAuth 2 (client credentials, token URL `https://api.flowral.app/v1/oauth/token`, scopes: `notifications:read`)

One row per email that left the building, newest first — batches and digests alike. Use it to answer "did they get told", and to see what was suppressed because they had unsubscribed.

## Query parameters

- `size` integer
- `memberId` string, required: The person these settings belong to. A credential has no inbox, so this is never optional.

## Response `200`

SUCCESS

- object
  - `total` integer, required: Total matching, not the length of `items`.
  - `items` NotificationDelivery[], required
    - `id` string, required
    - `kind` string, required: `batch` (assignments and unblocked work, grouped) or `digest`.
    - `status` string, required: `sent`, `failed`, `skipped`, `skipped-empty`, or `claimed` while in flight.
    - `sentAt` string, date-time: When the send was claimed.
    - `subject` string, nullable
    - `itemCount` integer: How many events one batch covered. Notifications are batched after a quiet period, so this is usually more than one.
    - `flowIds` string[]
    - `suppressed` integer: Events dropped because the person had unsubscribed since they were queued.

## Other responses

- `401`: UNAUTHORIZED
- `403`: FORBIDDEN · PLAN_REQUIRED · INSUFFICIENT_SCOPE
- `404`: MEMBER_NOT_FOUND
- `429`: RATE_LIMITED

---

[API](https://skmtc.dev/flowral/apis/flowral-api.md) · [All operations](https://skmtc.dev/flowral/apis/flowral-api/llms.txt) · [OpenAPI document](https://skmtc.dev/flowral/apis/flowral-api/revisions/6cd2337b682c?raw)
