Retrieve Received Email
Retrieve a single received email.
Path Parameters
Section titled “Path Parameters”id(string, required) — The ID for the received email.
Query Parameters
Section titled “Query Parameters”-
html_format('data_uri' | 'cid') — Controls how inline images are returned insidehtml. The response echoes the form actually served ashtml_formaton the body.By default (or when set to
data_uri), inline images appear inhtmlas base64data:URIs. Sethtml_format=cidto keep the original<img src="cid:..." />references instead. Eachcid:matches thecontent_idof an attachment, so you can correlate inline images with entries in theattachmentsarray and fetch them via the attachment download endpoint.Emails whose inlined HTML would exceed 100 MB, typically long reply chains that quote the same inline image hundreds of times, are always stored and returned with
cid:references. For those emails the response reportshtml_format: "cid"regardless of the requested format, so check thehtml_formatfield on the body rather than assuming the format you asked for.
Response Fields
Section titled “Response Fields”-
html_format('data_uri' | 'cid') — How inline images are referenced inhtml. Usually matches the requested format, but iscidwhen the email is too large to inline (see the query parameter above). -
received_for(array) — The recipient addresses the email was forwarded for, taken from theforclause of the message'sReceivedheaders. -
authentication(object | null) — The SPF, DKIM, and DMARC results computed when the email was received. These come from the receiving mail server, not from the message headers, so the sender cannot forge them.nullfor emails received before this field was introduced.properties
spf('pass' | 'fail' | 'gray' | 'processing_failed' | 'unknown') — SPF result.graymeans the result wasnone,softfail, orneutral.dkim('pass' | 'fail' | 'gray' | 'processing_failed' | 'unknown') — DKIM result.graymeans the message is not signed, or the signing domain does not match theFromdomain.dmarc('pass' | 'fail' | 'gray' | 'processing_failed' | 'unknown') — DMARC result.graymeans SPF or DKIM passed but the sending domain has no DMARC policy or usesp=none.
-
raw(object | null) — Raw email content download information. Contains a signed URL to download the original email file including all attachments.properties
download_url(string) — Signed CloudFront URL to download the raw email file.expires_at(string) — ISO 8601 timestamp indicating when the download URL expires.
import { Resend } from 'resend';
const resend = new Resend('re_xxxxxxxxx');
const { data, error } = await resend.emails.receiving.get(
'37e4414c-5e25-4dbc-a071-43552a4bd53b',
);$resend = Resend::client('re_xxxxxxxxx');
$resend->emails->receiving->get('37e4414c-5e25-4dbc-a071-43552a4bd53b');import resend
resend.api_key = "re_xxxxxxxxx"
resend.Emails.Receiving.get(email_id="37e4414c-5e25-4dbc-a071-43552a4bd53b")require "resend"
Resend.api_key = "re_xxxxxxxxx"
Resend::Emails::Receiving.get("37e4414c-5e25-4dbc-a071-43552a4bd53b")package main
import (
"context"
"github.com/resend/resend-go/v4"
)
func main() {
client := resend.NewClient("re_xxxxxxxxx")
client.Emails.Receiving.GetWithContext(
context.TODO(),
"37e4414c-5e25-4dbc-a071-43552a4bd53b",
)
}use resend_rs::{types::GetInboundEmailOptions, Resend, Result};
#[tokio::main]
async fn main() -> Result<()> {
let resend = Resend::new("re_xxxxxxxxx");
let _email = resend
.receiving
.get(
"37e4414c-5e25-4dbc-a071-43552a4bd53b",
GetInboundEmailOptions::default(),
)
.await?;
Ok(())
}import com.resend.Resend;
import com.resend.core.exception.ResendException;
import com.resend.services.receiving.model.ReceivedEmail;
public class Main {
public static void main(String[] args) throws ResendException {
Resend resend = new Resend("re_xxxxxxxxx");
ReceivedEmail email = resend.receiving().get("37e4414c-5e25-4dbc-a071-43552a4bd53b");
}
}using Resend;
IResend resend = ResendClient.Create( "re_xxxxxxxxx" ); // Or from DI
var resp = await resend.ReceivedEmailRetrieveAsync( new Guid( "4ef9a417-02e9-4d39-ad75-9611e0fcc33c" ) );
Console.WriteLine( "Subject={0}", resp.Content.Subject );curl -X GET 'https://api.resend.com/emails/receiving/4ef9a417-02e9-4d39-ad75-9611e0fcc33c' \
-H 'Authorization: Bearer re_xxxxxxxxx'resend emails receiving get 4ef9a417-02e9-4d39-ad75-9611e0fcc33c{
"object": "email",
"id": "4ef9a417-02e9-4d39-ad75-9611e0fcc33c",
"to": ["delivered@resend.dev"],
"from": "onboarding@resend.dev",
"created_at": "2026-04-03T22:13:42.674Z",
"subject": "Hello World",
"html": "Congrats on sending your <strong>first email</strong>!",
"html_format": "data_uri",
"text": null,
"headers": {
"from": "Acme <onboarding@resend.dev>",
"return-path": "lucas.costa@resend.com",
"mime-version": "1.0"
},
"bcc": [],
"cc": [],
"reply_to": [],
"received_for": ["forwarded@example.com"],
"authentication": {
"spf": "pass",
"dkim": "pass",
"dmarc": "pass"
},
"message_id": "<111-222-333@email.example.com>",
"raw": {
"download_url": "https://example.resend.com/receiving/raw/054da427-439a-4e91-b785-e4fb1966285f?Signature=...",
"expires_at": "2026-04-03T23:13:42.674Z"
},
"attachments": [
{
"id": "2a0c9ce0-3112-4728-976e-47ddcd16a318",
"filename": "avatar.png",
"content_type": "image/png",
"content_disposition": "inline",
"content_id": "img001",
"size": 4096
},
{
"id": "3b1d0df1-4223-5839-087f-54eedd27b419",
"filename": "document.pdf",
"content_type": "application/pdf",
"content_disposition": null,
"content_id": null,
"size": 13264
}
]
}