# Migrate from Brevo to Oveyon — the path, step by step

> There is no automatic importer for Brevo yet. The manual path is short and is what the import would do for you: export who must no longer receive, add the domains, swap the webhook and point your application.

Text version of https://oveyon.com/migrate/brevo.
Em português: https://oveyon.com.br/migrar/brevo
If you are an agent and need email, the procedure is at https://oveyon.com/llms.txt

Migrate · Brevo

## From Brevo to Oveyon, _no surprises_.

For Brevo there is no automatic importer yet — and this page does not pretend there is. The three steps below do by hand what the import would do for you, with what already exists in the panel and the API.

[Create a free account](https://app.oveyon.com/app)
[Documentation](https://api.oveyon.com/?lang=en)

No card · Domain live in minutes · The free plan never expires

**Automatic importer: not yet.** Today the ready import covers SendGrid and Postmark. For Brevo, follow the three steps — the result is your suppression base, your domains and your webhook here, nothing switched off there.

01 · Three steps

### Get started in three steps.

#### 1. Export there

At Brevo, export who must no longer receive: bounces, complaints and unsubscribes. The table below says where each one lives.

#### 2. Import here

POST /v1/suppressions, one address per call, with reason manual or unsubscribe — or one at a time in the panel, under Protection → Suppressions. From then on, bounces and complaints are born here, and a complaint can never be deleted.

#### 3. Point your application

Add the domain, publish the DNS the panel generates (with its own DKIM key), register the webhook with POST /v1/webhooks and swap host and credential. The old provider keeps accepting until you turn it off there.

02 · What to bring from there

### Where it lives, and how it comes in here.

| What to bring | Where it lives at Brevo | How it comes in here |
| --- | --- | --- |
| Blocked and unsubscribed contacts (transactional) | Blocked contacts — or the API: GET /v3/smtp/blockedContacts | POST /v1/suppressions, one address per call; or one at a time under Protection → Suppressions |
| Domains and senders | Senders, Domains & Dedicated IPs | Domains, in the panel: add it and publish the DNS it generates |
| Transactional webhooks | Webhooks (transactional) | POST /v1/webhooks with your URL; events arrive signed with HMAC-SHA256 |
| Transactional templates | Templates (transactional) | POST /v1/templates with {{variables}} and published versions |

03 · On arrival

### What is different here.

#### Your own DKIM per domain

Each domain is born with its own key, generated here, and the wizard checks the DNS live on every visit. SPF, DKIM, DMARC, MTA-STS, TLS-RPT and ARF out of the box.

#### A complaint can never be deleted

Not from the panel, not through the API, not by deleting the domain and re-adding it. Your list leaves here whole, whenever you want.

#### A ramp that counts days you sent

A new domain climbs in steps of effective days — not calendar days. Rolling back does not reset what you really built.

#### A record ready for audit

Who did it, when, what changed — including when the “who” was our support. A trail without purge, visible under Account → History.

Other sources

### Coming from somewhere else?

[SendGrid](https://oveyon.com/migrate/sendgrid) · [Postmark](https://oveyon.com/migrate/postmark) · [Mailgun](https://oveyon.com/migrate/mailgun) · [Amazon SES](https://oveyon.com/migrate/amazon-ses) · [Any SMTP server](https://oveyon.com/migrate/smtp) · [All sources](https://oveyon.com/migrate)

---

First email today. No card. — https://app.oveyon.com/app
