Skip to main content
Resend Docs

Search documentation

Type to search this documentation.

On this pageOverview

Retrieve Contact

GET

/

contacts

/

:contact_id

Node.js
import { Resend } from 'resend';

const resend = new Resend('re_xxxxxxxxx');

const { data, error } = await resend.contacts.get({
  id: 'e169aa45-1ecf-4183-9955-b1499d5701d3',
  // or: email: 'steve.wozniak@gmail.com',
});
PHP
$resend = Resend::client('re_xxxxxxxxx');

// Get by contact id
$resend->contacts->get(
  idOrEmail: 'e169aa45-1ecf-4183-9955-b1499d5701d3'
);

// Get by contact email
$resend->contacts->get(
  idOrEmail: 'steve.wozniak@gmail.com'
);
Python
import resend

resend.api_key = "re_xxxxxxxxx"

# Get by contact id
resend.Contacts.get(
  id="e169aa45-1ecf-4183-9955-b1499d5701d3",
)

# Get by contact email
resend.Contacts.get(
  email="steve.wozniak@gmail.com",
)
Ruby
require "resend"

Resend.api_key = "re_xxxxxxxxx"

# Get by contact id
params = {
  "id": "e169aa45-1ecf-4183-9955-b1499d5701d3",
}

Resend::Contacts.get(params)

# Get by contact email
params = {
  "email": "steve.wozniak@gmail.com",
}

Resend::Contacts.get(params)
Go
package main

import "github.com/resend/resend-go/v4"

func main() {
	client := resend.NewClient("re_xxxxxxxxx")

	// Get by contact id
	client.Contacts.Get(&resend.GetContactOptions{
		Id: "e169aa45-1ecf-4183-9955-b1499d5701d3",
	})

	// Get by contact email
	client.Contacts.Get(&resend.GetContactOptions{
		Id: "steve.wozniak@gmail.com",
	})
}
Rust
use resend_rs::{Resend, Result};

#[tokio::main]
async fn main() -> Result<()> {
  let resend = Resend::new("re_xxxxxxxxx");

  // Get by contact id
  let _contact = resend
    .contacts
    .get("e169aa45-1ecf-4183-9955-b1499d5701d3")
    .await?;

  // Get by contact email
  let _contact = resend
    .contacts
    .get("steve.wozniak@gmail.com")
    .await?;

  Ok(())
}
Java
import com.resend.Resend;
import com.resend.core.exception.ResendException;
import com.resend.services.contacts.model.GetContactOptions;
import com.resend.services.contacts.model.GetContactResponseSuccess;

public class Main {
    public static void main(String[] args) throws ResendException {
        Resend resend = new Resend("re_xxxxxxxxx");

        GetContactOptions params = GetContactOptions.builder()
                .id("e169aa45-1ecf-4183-9955-b1499d5701d3") // or: .email("steve.wozniak@gmail.com")
                .build();

        GetContactResponseSuccess data = resend.contacts().get(params);
    }
}
.NET
using Resend;

IResend resend = ResendClient.Create( "re_xxxxxxxxx" ); // Or from DI

// Get by contact id
var resp1 = await resend.ContactRetrieveAsync(
    contactId: new Guid( "e169aa45-1ecf-4183-9955-b1499d5701d3" )
);

// Get by contact email
var resp2 = await resend.ContactRetrieveByEmailAsync(
    email: "steve.wozniak@gmail.com"
);

Console.WriteLine( "Contact Email={0}", resp2.Content.Email );
cURL
# Get by contact id
curl -X GET 'https://api.resend.com/contacts/e169aa45-1ecf-4183-9955-b1499d5701d3' \
     -H 'Authorization: Bearer re_xxxxxxxxx'

# Get by contact email
curl -X GET 'https://api.resend.com/contacts/steve.wozniak@gmail.com' \
     -H 'Authorization: Bearer re_xxxxxxxxx'
CLI
# Get by contact id
resend contacts get e169aa45-1ecf-4183-9955-b1499d5701d3

# Get by contact email
resend contacts get steve.wozniak@gmail.com
Response
{
  "object": "contact",
  "id": "e169aa45-1ecf-4183-9955-b1499d5701d3",
  "email": "steve.wozniak@gmail.com",
  "first_name": "Steve",
  "last_name": "Wozniak",
  "created_at": "2026-10-06 23:47:56.678+00",
  "unsubscribed": false,
  "properties": {
    "company_name": {
      "value": "Acme Corp",
      "type": "string"
    },
    "department": {
      "value": "Engineering",
      "type": "string"
    }
  }
}

Either id or email must be provided.

string

The Contact ID.

string

The Contact Email.

Node.js
import { Resend } from 'resend';

const resend = new Resend('re_xxxxxxxxx');

const { data, error } = await resend.contacts.get({
  id: 'e169aa45-1ecf-4183-9955-b1499d5701d3',
  // or: email: 'steve.wozniak@gmail.com',
});
PHP
$resend = Resend::client('re_xxxxxxxxx');

// Get by contact id
$resend->contacts->get(
  idOrEmail: 'e169aa45-1ecf-4183-9955-b1499d5701d3'
);

// Get by contact email
$resend->contacts->get(
  idOrEmail: 'steve.wozniak@gmail.com'
);
Python
import resend

resend.api_key = "re_xxxxxxxxx"

# Get by contact id
resend.Contacts.get(
  id="e169aa45-1ecf-4183-9955-b1499d5701d3",
)

# Get by contact email
resend.Contacts.get(
  email="steve.wozniak@gmail.com",
)
Ruby
require "resend"

Resend.api_key = "re_xxxxxxxxx"

# Get by contact id
params = {
  "id": "e169aa45-1ecf-4183-9955-b1499d5701d3",
}

Resend::Contacts.get(params)

# Get by contact email
params = {
  "email": "steve.wozniak@gmail.com",
}

Resend::Contacts.get(params)
Go
package main

import "github.com/resend/resend-go/v4"

func main() {
	client := resend.NewClient("re_xxxxxxxxx")

	// Get by contact id
	client.Contacts.Get(&resend.GetContactOptions{
		Id: "e169aa45-1ecf-4183-9955-b1499d5701d3",
	})

	// Get by contact email
	client.Contacts.Get(&resend.GetContactOptions{
		Id: "steve.wozniak@gmail.com",
	})
}
Rust
use resend_rs::{Resend, Result};

#[tokio::main]
async fn main() -> Result<()> {
  let resend = Resend::new("re_xxxxxxxxx");

  // Get by contact id
  let _contact = resend
    .contacts
    .get("e169aa45-1ecf-4183-9955-b1499d5701d3")
    .await?;

  // Get by contact email
  let _contact = resend
    .contacts
    .get("steve.wozniak@gmail.com")
    .await?;

  Ok(())
}
Java
import com.resend.Resend;
import com.resend.core.exception.ResendException;
import com.resend.services.contacts.model.GetContactOptions;
import com.resend.services.contacts.model.GetContactResponseSuccess;

public class Main {
    public static void main(String[] args) throws ResendException {
        Resend resend = new Resend("re_xxxxxxxxx");

        GetContactOptions params = GetContactOptions.builder()
                .id("e169aa45-1ecf-4183-9955-b1499d5701d3") // or: .email("steve.wozniak@gmail.com")
                .build();

        GetContactResponseSuccess data = resend.contacts().get(params);
    }
}
.NET
using Resend;

IResend resend = ResendClient.Create( "re_xxxxxxxxx" ); // Or from DI

// Get by contact id
var resp1 = await resend.ContactRetrieveAsync(
    contactId: new Guid( "e169aa45-1ecf-4183-9955-b1499d5701d3" )
);

// Get by contact email
var resp2 = await resend.ContactRetrieveByEmailAsync(
    email: "steve.wozniak@gmail.com"
);

Console.WriteLine( "Contact Email={0}", resp2.Content.Email );
cURL
# Get by contact id
curl -X GET 'https://api.resend.com/contacts/e169aa45-1ecf-4183-9955-b1499d5701d3' \
     -H 'Authorization: Bearer re_xxxxxxxxx'

# Get by contact email
curl -X GET 'https://api.resend.com/contacts/steve.wozniak@gmail.com' \
     -H 'Authorization: Bearer re_xxxxxxxxx'
CLI
# Get by contact id
resend contacts get e169aa45-1ecf-4183-9955-b1499d5701d3

# Get by contact email
resend contacts get steve.wozniak@gmail.com
JSON
{
  "object": "contact",
  "id": "e169aa45-1ecf-4183-9955-b1499d5701d3",
  "email": "steve.wozniak@gmail.com",
  "first_name": "Steve",
  "last_name": "Wozniak",
  "created_at": "2026-10-06 23:47:56.678+00",
  "unsubscribed": false,
  "properties": {
    "company_name": {
      "value": "Acme Corp",
      "type": "string"
    },
    "department": {
      "value": "Engineering",
      "type": "string"
    }
  }
}

Was this page helpful?

⌘I

Suggest an edit

Propose a replacement for this page. The site team reviews it before applying any changes.

Export
Documentation menu