Migrate from Resend
Move an existing Resend integration to usend.
usend's API uses the same paths and payloads as Resend's. Moving over means verifying your domain on usend, then swapping the SDK, the API key and the base URL.
1. Verify your domain
Add your sending domain in the usend dashboard and publish its records. usend uses the DKIM selector rs1 and a return-path CNAME named send-ses, so the records can live next to your existing ones while you switch. See Verify a domain.
2. Create an API key
Create a key under API Keys. usend keys start with us_. See API keys.
3. Swap the SDK
Replace the resend package with @usend/node. The method names and payloads are the same:
npm uninstall resend && npm install @usend/nodeimport { Usend } from '@usend/node';
const usend = new Usend(process.env.USEND_API_KEY);
const { data, error } = await usend.emails.send({
from: 'Acme <[email protected]>',
to: ['[email protected]'],
subject: 'Hello',
html: '<p>Hello from usend</p>',
});In Python, pip install usend and use from usend import Usend. Note that the Python SDK raises UsendError on failure instead of returning an error object.
Keep the Resend SDK
If you prefer not to change packages, point the Resend SDK at usend's base URL:
import { Resend } from 'resend';
const resend = new Resend(process.env.USEND_API_KEY, { baseUrl: 'https://api.usend.et' });For any other client, set the base URL to https://api.usend.et or call the REST API directly.
Differences to check
- Unsubscribe placeholder: usend documents
{{{UNSUBSCRIBE_URL}}}.{{{RESEND_UNSUBSCRIBE_URL}}}in existing broadcasts and templates keeps working. - Webhooks and suppressions have their own endpoints: see Webhooks and Suppressions. Webhooks are signed per Standard Webhooks.
- Sandbox: new organizations can send only to their verified members until production access is approved. See Sandbox and limits.
- Rate limit: 10 requests per second per API key. See Rate limits.
- Endpoints that do not exist in usend return
404 not_found. Check the API reference for what is supported.