---
title: "Retrieve Email History"
method: GET
path: "/emails/{id}/history"
tags: ["Emails"]
---

# Retrieve Email History

`GET /emails/{id}/history`

Retrieve the edit history for a specific email

## Path parameters

- `id` string, required

## Query parameters

- `expand` string[] — If provided, expand the given field.
- `field` string, required — The field to retrieve history for.
- `page` integer — The page number of the paginated response.
- `ordering` 'creation_date' | '-creation_date' — The ordering to apply to the results.
- `query` string — If provided, only return history entries matching the given query.
- `page_size` integer — The number of results per page.

## Response `200`

OK

- HistoryPage
  - `results` History[], required — The list of results for this page.
    - `history_id` integer, required — A monotonically increasing history entry ID.
    - `creation_date` string, date-time, required — The date and time at which the object was first created.
    - `value` string, required — The field's value at the time of this history entry.
    - `user_id` string, nullable — The ID of the user who made this change, if attributable.
    - `user` User
      - `permissions` Permissions, required
        - `subscriber` 'none' | 'read' | 'write' — An enumeration.
        - `email` 'none' | 'read' | 'write' — An enumeration.
        - `sending` 'none' | 'read' | 'write' — An enumeration.
        - `styling` 'none' | 'read' | 'write' — An enumeration.
        - `administrivia` 'none' | 'read' | 'write' — An enumeration.
        - `automations` 'none' | 'read' | 'write' — An enumeration.
        - `surveys` 'none' | 'read' | 'write' — An enumeration.
        - `forms` 'none' | 'read' | 'write' — An enumeration.
      - `email_address` string, required — The email address of the user.
      - `id` string, required — A unique TypeID associated with the object.
      - `creation_date` string, date-time, required — The date and time at which the object was first created.
      - `status` 'pending' | 'accepted' | 'declined' | 'revoked' | 'owner', required — An enumeration.
      - `last_logged_in` string, date-time, nullable — When the user last logged in, or null if they haven't accepted the invitation.
  - `next` string, nullable — The URL to the next page of results, if any.
  - `previous` string, nullable — The URL to the previous page of results, if any.
  - `count` integer, required — The total number of results across all pages.

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `409` — Conflict
- `422` — Unprocessable Entity
- `429` — Too Many Requests

---

[API](https://skmtc.net/buttondown/apis/buttondown-api.md) · [All operations](https://skmtc.net/buttondown/apis/buttondown-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/buttondown/buttondown-api/versions/3a702c095d22/schema)
