Lettermint Team API

Look up sent messages, follow their delivery events, and retrieve the original source, HTML or text body.


Resend a message

POST
https://api.lettermint.co/v1
/messages/{messageId}/resend
Bearer
or
x-lettermint-token (header)

Sends the stored content of a sent message again as a new message with its own ID. The new message links to the original through resent_from_message_id, uses the current settings of the original route and project, and counts towards usage like any other send. Leave out recipients to resend to every original recipient. The original To and Cc headers stay, and only the chosen recipients receive the message. A message can be resent while its content is retained, and at most 5 times in 24 hours.

Resend a message › path Parameters

messageId
​string · required

Resend a message › Headers

Idempotency-Key
​string

Optional key (1-255 characters) that makes the request safe to retry. Repeating a request with the same key and body within 24 hours returns the original response instead of sending again.

Resend a message › Request Body

recipients
​string[] · minItems: 1 · maxItems: 150 · unique

Recipients of the original message to resend to. Omit to resend to every original recipient.

Example: ["recipient@example.com"]

Resend a message › Responses

Message accepted for delivery

An accepted message that is queued for delivery.
message_id
​string · required
status
​string · const · required
Const value: pending
sandbox
​boolean · const

Present when the project uses Sandbox delivery

Const value:
sandbox_result
​SandboxResult · enum

The simulated delivery result. Present when the project uses Sandbox delivery

Enum values:
delivered
hard_bounced
soft_bounced
deferred
failed
suppressed
spam_complaint
auto_replied

Get message details

GET
https://api.lettermint.co/v1
/messages/{messageId}
Bearer

Returns detailed information about a specific message including optional nested resources.

Get message details › path Parameters

messageId
​string · required

Get message details › Responses

MessageData

id
​string · required
type
​MessageType · enum · required
Enum values:
inbound
outbound
status
​MessageStatus · enum · required
Enum values:
scheduled
pending
queued
quarantined
suppressed
processed
delivered
opened
delivery_mode
​DeliveryMode · enum · required
Enum values:
live
sandbox
​required
status_changed_at
​string | null · date-time · required
scheduled_at
​string | null · date-time · required
tag
​string | null · required
​object[] · required
from_email
​string · required
from_name
​string | null · required
reply_to
​array | null · required
subject
​string | null · required
​array | null · required
​array | null · required
​array | null · required
​array | null · required
​object | null · required
route_id
​string · required
created_at
​string · date-time · required
retained_until
​string | null · date-time · required

Until when the message is available. Null while a scheduled message waits to be sent, because its retention period starts when it is sent

resent_from_message_id
​string | null · required

The ID of the message this message resent. Null when it is not a resend

spam_score
​number | null

Overall spam assessment score. Scores below 5 are clean, 5 through 10 indicate potential spam, scores above 10 and below 15 are likely spam, and 15 or higher is definite spam. Null means no assessment is available. Available on plans with Spam Insights

​SpamSymbol[]

Detailed rules that contributed to the spam assessment. Available on plans with Spam Insights in individual-message responses


Reschedule a message

PATCH
https://api.lettermint.co/v1
/messages/{messageId}
Bearer
or
x-lettermint-token (header)

Changes the delivery time of a pending scheduled message.

Reschedule a message › path Parameters

messageId
​string · required

Reschedule a message › Request Body

scheduled_at
​string · maxLength: 255 · required

Reschedule a message › Responses

Message rescheduled

The schedule state of a message after it was rescheduled or canceled.
message_id
​string · required
​required
scheduled_at
​string | null · required

The scheduled delivery time in ISO 8601 format


Cancel a scheduled message

POST
https://api.lettermint.co/v1
/messages/{messageId}/cancel
Bearer
or
x-lettermint-token (header)

Cancels a pending scheduled message. Cancellation is final.

Cancel a scheduled message › path Parameters

messageId
​string · required

Cancel a scheduled message › Responses

Scheduled message canceled

The schedule state of a message after it was rescheduled or canceled.
message_id
​string · required
​required
scheduled_at
​string | null · required

The scheduled delivery time in ISO 8601 format


List messages for the team

GET
https://api.lettermint.co/v1
/messages
Bearer

Returns a paginated list of messages with filtering and sorting capabilities.

List messages for the team › query Parameters

sort
​string[]
Enum values:
type
-type
status
-status
from_email
-from_email
subject
-subject
Default: ["-created_at"]
filter[search]
​string

Search in sender, recipients, and subject. A complete email address matches the sender, To, CC or BCC address exactly and does not search the subject.

filter[tags][0][name]
​string

Exact tag name. Add more numbered pairs to match all pairs.

filter[tags][0][value]
​string

Exact tag value.

filter[from_email]
​string

Search by sender email (partial match)

filter[subject]
​string

Search by subject (partial match)

page[size]
​integer

Number of results per page

Default: 30
page[cursor]
​string

Cursor for the next or previous page

​object
filter[tags]
​string
filter[overdue]
​string
filter[project]
​string

Filter by project ID

filter[type]
​MessageType · enum
Enum values:
inbound
outbound
filter[status]
​MessageStatus · enum
Enum values:
scheduled
pending
queued
quarantined
suppressed
processed
delivered
opened
filter[delivery_mode]
​DeliveryMode · enum
Enum values:
live
sandbox
filter[route_id]
​string

Filter by route ID

filter[domain_id]
​string

Filter by domain ID

filter[tag]
​string

Filter by tag name

filter[from_date]
​string

Filter messages created on or after this date

filter[to_date]
​string

Filter messages created on or before this date

List messages for the team › Responses

Paginated set of MessageListData

​MessageListData[] · required
path
​string | null · required

Base path for paginator generated URLs.

per_page
​integer · min: 0 · required

Number of items shown per page.

next_cursor
​string | null · required

The "cursor" that points to the next set of items.

next_page_url
​string | null · uri · required
prev_cursor
​string | null · required

The "cursor" that points to the previous set of items.

prev_page_url
​string | null · uri · required

Get message events

GET
https://api.lettermint.co/v1
/messages/{messageId}/events
Bearer

Returns a paginated list of events for a specific message with sorting capabilities.

Get message events › path Parameters

messageId
​string · required

Get message events › query Parameters

page[size]
​integer

The number of results that will be returned per page.

Default: 30
page[cursor]
​string

The cursor to start the pagination from.

include_machine_events
​boolean

Include security scanner, preview, and other machine-only tracking events. Supported privacy opens are included without this option.

sort
​string[]
Enum values:
timestamp
-timestamp
event
-event

Get message events › Responses

Paginated set of MessageEventData

​MessageEventData[] · required
path
​string | null · required

Base path for paginator generated URLs.

per_page
​integer · min: 0 · required

Number of items shown per page.

next_cursor
​string | null · required

The "cursor" that points to the next set of items.

next_page_url
​string | null · uri · required
prev_cursor
​string | null · required

The "cursor" that points to the previous set of items.

prev_page_url
​string | null · uri · required

Get message source

GET
https://api.lettermint.co/v1
/messages/{messageId}/source
Bearer

Returns the raw EML source of the message.

Get message source › path Parameters

messageId
​string · required

Get message source › Responses

string

Get message HTML content

GET
https://api.lettermint.co/v1
/messages/{messageId}/html
Bearer

Returns the HTML body of the message if available.

Get message HTML content › path Parameters

messageId
​string · required

Get message HTML content › Responses

string

Get message plain text content

GET
https://api.lettermint.co/v1
/messages/{messageId}/text
Bearer

Returns the plain text body of the message if available.

Get message plain text content › path Parameters

messageId
​string · required

Get message plain text content › Responses

string

Process one quarantined inbound message

POST
https://api.lettermint.co/v1
/messages/{messageId}/process
Bearer

Process one quarantined inbound message › path Parameters

messageId
​string · uuid · required

The message UUID

Process one quarantined inbound message › Headers

Idempotency-Key
​string

Optional key for an idempotent request

Process one quarantined inbound message › Responses

The message was queued for webhook delivery

The queued release of a quarantined inbound message.
​ProcessInboundMessageResult · required

A quarantined inbound message that was queued for webhook delivery.