---
title: "Changes to Retrieve Email"
method: GET
path: "/emails/{id}"
---

# Changes to Retrieve Email

`GET /emails/{id}`

> Every recorded change to this operation, newest first.

## Timeline

Changed in 12 of 43 revisions.

- **2026-10-27** `8fff9c6b1347`: 1 warning, 1 info
- **2026-10-20** `bc6be78752aa`: 1 info
- **2026-09-22** `f00fce908264`: 1 warning
- **2026-08-08** `3a702c095d22`: 1 warning
- **2026-07-26** `fc5d382abadb`: 1 warning
- **2026-07-13** `228cc05ba97d`: 1 warning, 2 info
- **2026-06-07** `13f3bc084194`: 9 breaking, 38 warning, 14 info
- **2026-01-17** `8590daeecaea`: 2 breaking, 4 info
- **2025-10-15** `b366d059d1ae`: 1 breaking, 4 warning, 7 info
- **2025-07-11** `b3fb230c0938`: 3 breaking, 24 info
- **2025-03-24** `b318723a4d8d`: 2 breaking, 10 info
- **2025-02-18** `7b086652e3cf`: 3 breaking, 5 info

## Changes

- **2026-10-27** `8fff9c6b1347`: 1 warning, 1 info
  - removed the optional property `suppression_reason` from the response with the `200` status
  - removed the `suppressed` enum value from the `status` response property for the response status `200`
- **2026-10-20** `bc6be78752aa`: 1 info
  - added the optional property `analytics/anyOf[subschema #1: Analytics]/attempts` to the response with the `200` status
- **2026-09-22** `f00fce908264`: 1 warning
  - added the new `partially_sent` enum value to the `status` response property for the response status `200`
- **2026-08-08** `3a702c095d22`: 1 warning
  - added the new `archive_only` enum value to the `archival_mode` response property for the response status `200`
- **2026-07-26** `fc5d382abadb`: 1 warning
  - added the new `smtp` enum value to the `source` response property for the response status `200`
- **2026-07-13** `228cc05ba97d`: 1 warning, 2 info
  - added the new `custom` enum value to the `template/anyOf[subschema #1: EmailTemplate]/` response property for the response status `200`
  - added the non-success response with the status `422`
  - added the non-success response with the status `429`
- **2026-06-07** `13f3bc084194`: 9 breaking, 38 warning, 14 info
  - response property `attachments` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `publish_date` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `secondary_id` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `slug` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - the `analytics` response's property type changed from `object` to no type for status `200`
  - the `code` response's property type changed from no type to `string` for status `403`
  - the `code` response's property type changed from no type to `string` for status `404`
  - the `source` response's property type changed from no type to `string` for status `200`
  - the `status` response's property type changed from no type to `string` for status `200`
  - removed the optional property `analytics/clicks` from the response with the `200` status
  - removed the optional property `analytics/comments` from the response with the `200` status
  - removed the optional property `analytics/complaints` from the response with the `200` status
  - removed the optional property `analytics/deliveries` from the response with the `200` status
  - removed the optional property `analytics/opens` from the response with the `200` status
  - removed the optional property `analytics/page_views_30` from the response with the `200` status
  - removed the optional property `analytics/page_views_7` from the response with the `200` status
  - removed the optional property `analytics/page_views_lifetime` from the response with the `200` status
  - removed the optional property `analytics/paid_subscriptions` from the response with the `200` status
  - removed the optional property `analytics/permanent_failure_breakdown` from the response with the `200` status
  - removed the optional property `analytics/permanent_failures` from the response with the `200` status
  - removed the optional property `analytics/recipients` from the response with the `200` status
  - removed the optional property `analytics/replies` from the response with the `200` status
  - removed the optional property `analytics/social_mentions` from the response with the `200` status
  - removed the optional property `analytics/subscriptions` from the response with the `200` status
  - removed the optional property `analytics/survey_responses` from the response with the `200` status
  - removed the optional property `analytics/temporary_failure_breakdown` from the response with the `200` status
  - removed the optional property `analytics/temporary_failures` from the response with the `200` status
  - removed the optional property `analytics/unsubscriptions` from the response with the `200` status
  - removed the optional property `analytics/webmentions` from the response with the `200` status
  - added the new `about_to_send` enum value to the `status` response property for the response status `200`
  - added the new `api` enum value to the `source` response property for the response status `200`
  - added the new `app` enum value to the `source` response property for the response status `200`
  - added the new `deleted` enum value to the `status` response property for the response status `200`
  - added the new `draft` enum value to the `status` response property for the response status `200`
  - added the new `errored` enum value to the `status` response property for the response status `200`
  - added the new `external_feed` enum value to the `source` response property for the response status `200`
  - added the new `import` enum value to the `source` response property for the response status `200`
  - added the new `imported` enum value to the `status` response property for the response status `200`
  - added the new `in_flight` enum value to the `status` response property for the response status `200`
  - added the new `managed_by_rss` enum value to the `status` response property for the response status `200`
  - …21 more
- **2026-01-17** `8590daeecaea`: 2 breaking, 4 info
  - the `attachments/items/` response's property type changed from no type to `string` for status `200`
  - the `id` response's property format changed from `uuid` to no format for status `200`
  - for the `path` request parameter `id`, the format was generalized from `uuid` to no format
  - added the optional property `analytics/permanent_failure_breakdown` to the response with the `200` status
  - added the optional property `analytics/temporary_failure_breakdown` to the response with the `200` status
  - removed `subschema #1, subschema #2` from the `attachments/items/` response property `anyOf` list for the response status `200`
- **2025-10-15** `b366d059d1ae`: 1 breaking, 4 warning, 7 info
  - the `attachments/items/` response's property type changed from `string` to no type, and format from `uuid` to no format for status `200`
  - removed the optional property `analytics/page_views__30` from the response with the `200` status
  - removed the optional property `analytics/page_views__7` from the response with the `200` status
  - removed the optional property `analytics/page_views__lifetime` from the response with the `200` status
  - added the new `suppressed` enum value to the `status/allOf[subschema #1: Status]/` response property for the response status `200`
  - added the optional property `analytics/page_views_30` to the response with the `200` status
  - added the optional property `analytics/page_views_7` to the response with the `200` status
  - added the optional property `analytics/page_views_lifetime` to the response with the `200` status
  - added the optional property `suppression_reason` to the response with the `200` status
  - added `subschema #1, subschema #2` to the `attachments/items/` response property `anyOf` list for the response status `200`
  - removed the `airy` enum value from the `template/allOf[subschema #1: EmailTemplate]/` response property for the response status `200`
  - added the required property `should_trigger_pay_per_email_billing` to the response with the `200` status
- **2025-07-11** `b3fb230c0938`: 3 breaking, 24 info
  - the `source` response's property type changed from `string` to no type for status `200`
  - the `status` response's property type changed from `string` to no type for status `200`
  - the `template` response's property type changed from `string` to no type for status `200`
  - added `#/components/schemas/EmailSource` to the `source` response property `allOf` list for the response status `200`
  - added `#/components/schemas/EmailStatus` to the `status` response property `allOf` list for the response status `200`
  - added `#/components/schemas/NewsletterEmailTemplate` to the `template` response property `allOf` list for the response status `200`
  - removed the `about_to_send` enum value from the `status` response property for the response status `200`
  - removed the `airy` enum value from the `template` response property for the response status `200`
  - removed the `api` enum value from the `source` response property for the response status `200`
  - removed the `app` enum value from the `source` response property for the response status `200`
  - removed the `classic` enum value from the `template` response property for the response status `200`
  - removed the `deleted` enum value from the `status` response property for the response status `200`
  - removed the `draft` enum value from the `status` response property for the response status `200`
  - removed the `errored` enum value from the `status` response property for the response status `200`
  - removed the `external_feed` enum value from the `source` response property for the response status `200`
  - removed the `hidden` enum value from the `email_type/allOf[subschema #1: Type]/` response property for the response status `200`
  - removed the `import` enum value from the `source` response property for the response status `200`
  - removed the `imported` enum value from the `status` response property for the response status `200`
  - removed the `in_flight` enum value from the `status` response property for the response status `200`
  - removed the `managed_by_rss` enum value from the `status` response property for the response status `200`
  - removed the `modern` enum value from the `template` response property for the response status `200`
  - removed the `naked` enum value from the `template` response property for the response status `200`
  - removed the `paused` enum value from the `status` response property for the response status `200`
  - removed the `plaintext` enum value from the `template` response property for the response status `200`
  - removed the `scheduled` enum value from the `status` response property for the response status `200`
  - removed the `sent` enum value from the `status` response property for the response status `200`
  - added the required property `featured` to the response with the `200` status
- **2025-03-24** `b318723a4d8d`: 2 breaking, 10 info
  - the response property `email_type` became optional for the status `200`
  - the `email_type` response's property type changed from `string` to no type for status `200`
  - added `#/components/schemas/EmailType` to the `email_type` response property `allOf` list for the response status `200`
  - the `email_type` response's property default value `public` was added for the status `200`
  - removed the `archival` enum value from the `email_type` response property for the response status `200`
  - removed the `churned` enum value from the `email_type` response property for the response status `200`
  - removed the `free` enum value from the `email_type` response property for the response status `200`
  - removed the `hidden` enum value from the `email_type` response property for the response status `200`
  - removed the `modern-german` enum value from the `template` response property for the response status `200`
  - removed the `premium` enum value from the `email_type` response property for the response status `200`
  - removed the `private` enum value from the `email_type` response property for the response status `200`
  - removed the `public` enum value from the `email_type` response property for the response status `200`
- **2025-02-18** `7b086652e3cf`: 3 breaking, 5 info
  - removed the required property `custom_teaser` from the response with the `200` status
  - removed the required property `is_comments_disabled` from the response with the `200` status
  - removed the required property `should_send_teaser` from the response with the `200` status
  - the endpoint scheme security `PermissionAuthenticationRequirement` was added to the API
  - the endpoint scheme security `AuthenticationRequirement` was removed from the API
  - added the optional property `analytics/social_mentions` to the response with the `200` status
  - added the required property `commenting_mode` to the response with the `200` status
  - added the required property `related_email_ids` to the response with the `200` status

---

[Operation](https://skmtc.dev/buttondown/apis/buttondown-api/docs/emails/:id/get.md) - [API](https://skmtc.dev/buttondown/apis/buttondown-api.md) - [Page](https://skmtc.dev/buttondown/apis/buttondown-api/changes/emails/:id/get)
