import { Resend } from 'resend';
const resend = new Resend('re_xxxxxxxxx');
const { data, error } = await resend.domains.claims.create({
name: 'example.com',
});
use resend_rs::{Resend, Result, types::CreateDomainClaimOptions};
#[tokio::main]
async fn main() -> Result<()> {
let resend = Resend::new("re_xxxxxxxxx");
let domain_claim = CreateDomainClaimOptions::new("example.com");
let _data = resend.domains.claim(domain_claim).await?;
Ok(())
}
curl -X POST 'https://api.resend.com/domains/claim' \
-H 'Authorization: Bearer re_xxxxxxxxx' \
-H 'Content-Type: application/json' \
-d $'{
"name": "example.com"
}'
resend domains claim create --name example.com
{
"object": "domain_claim",
"id": "dacf4072-4119-4d88-932f-6c6126d3a9d1",
"name": "example.com",
"status": "pending",
"domain_id": "d91cd9bd-1176-453e-8fc1-35364d380206",
"region": "us-east-1",
"record": {
"type": "TXT",
"name": "example.com",
"value": "resend-domain-verification=3f8a1c2d4e5b6a7f8091a2b3c4d5e6f7",
"ttl": "Auto"
},
"blocked_reason": null,
"failure_reason": null,
"created_at": "2026-06-16 17:12:02.059593+00",
"expires_at": "2026-06-23 17:12:02.059593+00"
}
Claim Domain
Claim a domain that is already verified by another team.
POST
/
domains
/
claim
import { Resend } from 'resend';
const resend = new Resend('re_xxxxxxxxx');
const { data, error } = await resend.domains.claims.create({
name: 'example.com',
});
use resend_rs::{Resend, Result, types::CreateDomainClaimOptions};
#[tokio::main]
async fn main() -> Result<()> {
let resend = Resend::new("re_xxxxxxxxx");
let domain_claim = CreateDomainClaimOptions::new("example.com");
let _data = resend.domains.claim(domain_claim).await?;
Ok(())
}
curl -X POST 'https://api.resend.com/domains/claim' \
-H 'Authorization: Bearer re_xxxxxxxxx' \
-H 'Content-Type: application/json' \
-d $'{
"name": "example.com"
}'
resend domains claim create --name example.com
{
"object": "domain_claim",
"id": "dacf4072-4119-4d88-932f-6c6126d3a9d1",
"name": "example.com",
"status": "pending",
"domain_id": "d91cd9bd-1176-453e-8fc1-35364d380206",
"region": "us-east-1",
"record": {
"type": "TXT",
"name": "example.com",
"value": "resend-domain-verification=3f8a1c2d4e5b6a7f8091a2b3c4d5e6f7",
"ttl": "Auto"
},
"blocked_reason": null,
"failure_reason": null,
"created_at": "2026-06-16 17:12:02.059593+00",
"expires_at": "2026-06-23 17:12:02.059593+00"
}
Use this endpoint when creating a
domain fails because the domain is
already verified by another team. Resend creates a placeholder domain on your
team and returns a
domain_claim with a TXT record to add to your DNS. Learn
more in Claiming a domain.Body Parameters
The name of the domain you want to claim.
The region where emails will be sent from. Possible values:
'us-east-1' | 'eu-west-1' | 'sa-east-1' | 'ap-northeast-1'import { Resend } from 'resend';
const resend = new Resend('re_xxxxxxxxx');
const { data, error } = await resend.domains.claims.create({
name: 'example.com',
});
use resend_rs::{Resend, Result, types::CreateDomainClaimOptions};
#[tokio::main]
async fn main() -> Result<()> {
let resend = Resend::new("re_xxxxxxxxx");
let domain_claim = CreateDomainClaimOptions::new("example.com");
let _data = resend.domains.claim(domain_claim).await?;
Ok(())
}
curl -X POST 'https://api.resend.com/domains/claim' \
-H 'Authorization: Bearer re_xxxxxxxxx' \
-H 'Content-Type: application/json' \
-d $'{
"name": "example.com"
}'
resend domains claim create --name example.com
{
"object": "domain_claim",
"id": "dacf4072-4119-4d88-932f-6c6126d3a9d1",
"name": "example.com",
"status": "pending",
"domain_id": "d91cd9bd-1176-453e-8fc1-35364d380206",
"region": "us-east-1",
"record": {
"type": "TXT",
"name": "example.com",
"value": "resend-domain-verification=3f8a1c2d4e5b6a7f8091a2b3c4d5e6f7",
"ttl": "Auto"
},
"blocked_reason": null,
"failure_reason": null,
"created_at": "2026-06-16 17:12:02.059593+00",
"expires_at": "2026-06-23 17:12:02.059593+00"
}
Was this page helpful?
⌘I