---
title: "List emails"
method: GET
path: "/api/v1/emails"
tags: ["Email"]
---

# List emails

`GET /api/v1/emails`

Retrieve all emails objects.

## Query parameters

- `page_size` integer
- `cursor` string
- `id` integer[]
- `created_at_before` string, date-time
- `created_at_after` string, date-time
- `subject` string
- `queue` integer[]
- `inbox` integer
- `documents` integer
- `from__email` string, email
- `from__name` string
- `to` string, email
- `last_thread_email_created_at_before` string, date-time
- `last_thread_email_created_at_after` string, date-time
- `type` 'incoming' | 'outgoing'
- `email_thread` integer
- `has_documents` boolean
- `ordering` 'id' | '-id' | 'created_at' | '-created_at' | 'subject' | '-subject' | 'queue' | '-queue' | 'inbox' | '-inbox' | 'from__email' | '-from__email' | 'from__name' | '-from__name'

## Response `200`

OK

- object
  - `pagination` Pagination, required
    - `next` string, uri, nullable — URL for the next page of results. Contains an opaque signed `cursor` query parameter. Use this URL directly to fetch the next page — do not attempt to construct or modify the cursor value.
    - `previous` string, uri, nullable — URL for the previous page of results. Contains an opaque signed `cursor` query parameter. Use this URL directly to fetch the previous page — do not attempt to construct or modify the cursor value.
  - `results` Email[], required
    - `id` integer, required — ID of the email
    - `url` string, uri, required — URL of the email
    - `queue` string, uri, required — Queue URL.
    - `inbox` string, uri, required — URL of the associated inbox
    - `parent` string, uri, nullable, required — URL of the parent email
    - `email_thread` string, uri, nullable, required — URL of the associated email thread
    - `children` string[], required — List of URLs of the children emails
    - `documents` string[], required — List of documents attached to email
    - `created_at` string, date-time, required — Timestamp of incoming email
    - `last_thread_email_created_at` string, date-time, nullable, required — (Deprecated) Timestamp of the most recent email in this email thread
    - `subject` string, nullable, required — Email subject
    - `from` object, required — Information about sender containing keys `email` and `name`
      - `email` string, email, required — Email address.
      - `name` string, nullable — Name of the email recipient.
    - `to` EmailAddress[], required — List that contains information about recipients
      - `email` string, email, required — Email address.
      - `name` string, nullable — Name of the email recipient.
    - `cc` EmailAddress[], required — List that contains information about recipients of carbon copy
      - `email` string, email, required — Email address.
      - `name` string, nullable — Name of the email recipient.
    - `bcc` EmailAddress[], required — List that contains information about recipients of blind carbon copy
      - `email` string, email, required — Email address.
      - `name` string, nullable — Name of the email recipient.
    - `body_text_plain` string, nullable, required — Plain text email section (shortened to 4kB)
    - `body_text_html` string, nullable, required — HTML email section (shortened to 4kB)
    - `metadata` Metadata, required — Client data. May be used to store e.g. external system object IDs. See [Metadata](/guides/overview#metadata) for more details.
    - `type` 'incoming' | 'outgoing', required — Email type. Can be `incoming` or `outgoing`
    - `annotation_counts` AnnotationCounts, required — This attribute is intended for **INTERNAL** use only and may be changed in the future. Information about how many annotations were extracted from email attachments and in which state they currently are.
      - `annotations` integer — Total number of annotations (Annotation status: Any)
      - `annotations_processed` integer — Number of processed annotations (Annotation status: exported, deleted, purged, split)
      - `annotations_purged` integer — Number of purged annotations (Annotation status: purged)
      - `annotations_unprocessed` integer — Number of not yet processed annotations (Annotation status: importing, failed_import, to_review, reviewing, confirmed, exporting, postponed, failed_export)
      - `annotations_rejected` integer — Number of rejected annotations (Annotation status: rejected)
      - `related_annotations` integer — Total number of related annotations (Annotation status: Any)
    - `annotations` string[], required — List of URLs of annotations that arrived via email
    - `related_annotations` string[], required — List of URLs of annotations that are related to the email (e.g. rejected by that, added as attachment etc.)
    - `related_documents` string[], required — List of URLs of documents related to the email (e.g. by forwarding email containing document as attachment etc.)
    - `creator` string, uri, nullable, required — User that have sent the email. `null` if email has been received via SMTP
    - `filtered_out_document_count` integer, required — This attribute is intended for **INTERNAL** use only and may be changed in the future without notice. Number of documents automatically filtered out by Rossum smart inbox (this feature can be configured in inbox settings).
    - `labels` string[], required — List of email labels. Email objects can have assigned any number of labels. | Label name | Description | |-------------------------------|------------------------------------------------------------------------------------------------| | rejection | Outgoing informative email sent by Rossum after email was manually rejected. | | automatic_rejection | Informative automatic email sent by Rossum when no document was extracted from incoming email. | | automatic_status_changed_info | Informative automatic email sent by Rossum about document status change. | | rejected | Incoming email rejected together with all attached documents. | | forwarded | Outgoing email sent by forwarding other email. | | reply | Outgoing email sent by replying to another email. |
    - `content` string, uri — URL of the emails [content](/api/email#retrieve-email-content).

## Other responses

- `400` — Invalid input data.
- `401` — The username/password is invalid or token is invalid (e.g. expired).
- `403` — Insufficient permission, missing authentication, invalid CSRF token and similar issue.
- `404` — The specified resource was not found.
- `409` — Conflict
- `429` — Request rate is too high, wait before sending more requests. See [Rate Limiting](/guides/overview#rate-limiting) for more details.
- `500` — Server failure while processing the request.
- `502` — Invalid response from the upstream server.
- `503` — We're temporarily offline for maintenance. Please try again later.
- `504` — Upstream server could not complete the request in time.

---

[API](https://skmtc.dev/rossum/apis/rossum-api.md) · [All operations](https://skmtc.dev/rossum/apis/rossum-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/rossum/rossum-api/revisions/f1b5a910991d/schema)
