---
title: "List watched brand emails"
method: GET
path: "/gallery/watchlist/emails"
tags: ["References"]
---

# List watched brand emails

`GET /gallery/watchlist/emails`

## Request

- Base URL: `https://api.sequenzy.com/api/v1`
- URL: `https://api.sequenzy.com/api/v1/gallery/watchlist/emails`
- Auth: HTTP bearer

Lists emails from the brands your company watches, newest sent first, a page at a time. Emails usually arrive a few hours after they are sent. Hidden and removed emails are never included. Requires `templates:read`.

## Query parameters

- `domain` string
- `since` string
- `limit` integer
- `cursor` string

## Response `200`

Emails from your watched brands

- object
  - `success` boolean
  - `emails` GalleryWatchedBrandEmail[]
    - `id` string
    - `subject` string, nullable
    - `preheader` string, nullable
    - `type` string, nullable
    - `subtype` string, nullable
    - `sentAt` string, date-time
    - `collectedAt` string, date-time: When the gallery received the email, usually a few hours after `sentAt`.
    - `analysis` GalleryEmailAnalysis, nullable: The email's breakdown, `null` until it has been analyzed. Counts come from its HTML; `voice`, `language`, `structure` and `takeaways` from AI reading the copy. Any field is `null` (or an empty list) when unknown.
      - `mainButton` string, nullable: Label of the first button, the primary call to action.
      - `buttonLabels` string[]: Button labels in reading order, up to 5.
      - `buttonCount` integer, nullable
      - `linkCount` integer, nullable: Links of any kind, buttons included.
      - `wordCount` integer, nullable
      - `readingTimeSeconds` integer, nullable
      - `imageCount` integer, nullable: Content images; icons and spacers are left out.
      - `hasGif` boolean, nullable
      - `darkMode` boolean, nullable: Whether the email ships custom `prefers-color-scheme` dark styles.
      - `fonts` string[]: Most used font families, up to 3.
      - `columns` 'single' | 'multi' | 'null', nullable
      - `format` 'plain' | 'text_heavy' | 'balanced' | 'visual' | 'null', nullable
      - `voice` 'friendly' | 'professional' | 'playful' | 'urgent' | 'inspirational' | 'informative' | 'personal' | 'null', nullable
      - `language` string, nullable: BCP 47 language code, such as `en`.
      - `structure` string[]: The email's beats in order, such as "Logo header" and "Primary button".
      - `takeaways` string[]: Why the email works, as observations about its choices. Never performance claims.
      - `sender` object, nullable: The sender as shown on gallery pages, with personal details redacted. `null` when unknown.
        - `name` string, nullable
        - `address` string, nullable
    - `brand` object
      - `name` string
      - `domain` string
      - `slug` string
    - `url` string: The email's gallery page. Also accepted as `url` by [Create Template from Example](/api-reference/templates/create-from-example).
  - `nextCursor` string, nullable: Pass as `cursor` for the next page. `null` on the last page.

## Other responses

- `400`: `domain` is not a website, `since` is not an ISO 8601 date, or `cursor` is not one returned by this endpoint
- `401`: Unauthorized
- `403`: API key lacks `templates:read`
- `422`: The request body or parameters are invalid

## Changes

- **2026-10-16** `db3873ca3d4d`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/sequenzy/apis/sequenzy-api/changes/gallery/watchlist/emails/get.md)

---

[API](https://skmtc.dev/sequenzy/apis/sequenzy-api.md) - [All operations](https://skmtc.dev/sequenzy/apis/sequenzy-api/llms.txt) - [OpenAPI document](https://skmtc.dev/sequenzy/apis/sequenzy-api/revisions/3d816357b738?raw)
