Ekspor Data dan Migrasi Brevo: Cara Memindahkan Data Masuk atau Keluar

Ekspor kontak, statistik, dan log dari Brevo, pahami persis apa yang tidak ikut pindah, dan ikuti daftar periksa langkah demi langkah untuk migrasi dua arah.

Brevo data export
Ekspor Data dan Migrasi Brevo?

Volume pencarian untuk frasa seperti “brevo data export migration to another platform” didorong oleh satu kekhawatiran: bahwa data yang sudah Anda kumpulkan lebih mudah dimasukkan daripada dikeluarkan. Jawaban jujurnya untuk Brevo adalah sebagian besar data keluar dengan rapi, sebagian keluar dalam bentuk yang harus Anda bangun ulang, dan sebagian kecil namun penting sama sekali tidak bisa dipindahkan.

Panduan ini membahas kedua arah. Panduan ini merinci persis apa yang bisa diekspor, apa yang tidak, panggilan API untuk akun yang terlalu besar bagi antarmuka, serta daftar periksa migrasi yang memperlakukan daftar suppression dan reputasi pengiriman sebagai perhatian utama, bukan sekadar pelengkap.

Apa yang benar-benar bisa Anda ekspor dari Brevo

DataCara mengeluarkannyaFormat
Kontak dan atributEkspor dari halaman Contacts, atau POST /v3/contacts/exportCSV
Keanggotaan daftarEkspor per daftar, atau field metadata _listIdsCSV
Status langgananexportSubscriptionStatus pada job eksporCSV
Statistik kampanyeEkspor laporan kampanye, atau GET /v3/emailCampaignsCSV, PDF, JSON
Log event transaksionalGET /v3/smtp/statistics/events atau job ekspor massalJSON, CSV
TemplateGET /v3/smtp/templates mengembalikan htmlContentJSON
Perusahaan dan dealEkspor dari halaman CRM terkaitCSV

Kontak dan atribut

Jalur di antarmuka adalah CRM, lalu Contacts. Untuk mengekspor seluruh basis data, pastikan tidak ada daftar atau segmen yang dimuat dan tidak ada filter yang diterapkan. Untuk mengekspor satu daftar atau segmen, klik “Load a list or segment” dan pilih lebih dulu.

Setelah itu Anda memilih atribut standar dan kustom mana yang disertakan. EMAIL, tanggal perubahan terakhir, dan tanggal pembuatan terpilih secara default, dan sisanya Anda tambahkan sendiri, dan langkah inilah yang paling sering dilewatkan orang. Pilih pemisah kolom CSV Anda, titik koma atau koma, dan bila perlu aktifkan “Send export by email” agar tautan unduhan dikirim ke alamat pemilik akun. Klik “Start export”, lalu unduh berkasnya dari lonceng notifikasi di sebelah nama akun Anda.

Daftar dan segmen

Daftar diekspor sebagai keanggotaan: jalankan satu ekspor per daftar, atau sertakan metadata _listIds dalam satu ekspor penuh lalu pecah berkasnya setelah itu. GET /v3/contacts/lists memberikan nama daftar, id, dan id folder sehingga Anda bisa membuat ulang strukturnya di sisi lain.

Segmen berbeda, dan di sinilah celah nyata pertama muncul. GET /v3/contacts/segments hanya mengembalikan id, segmentName, categoryName, dan updatedAt. Kondisi filter yang mendefinisikan sebuah segmen tidak diekspos. Anda bisa mengekspor anggota sebuah segmen pada satu titik waktu, tetapi aturan yang menghasilkan anggota tersebut harus dibaca dari layar dan dibangun ulang secara manual di alat baru. Ambil tangkapan layar setiap segmen sebelum Anda membatalkan akun.

Statistik kampanye

Dari laporan kampanye Anda dapat mengekspor datanya sebagai CSV, dan laporan email serta SMS juga menawarkan versi PDF untuk dibagikan atau dicetak. Untuk penarikan historis penuh, GET /v3/emailCampaigns menerima parameter statistics dengan nilai globalStats, linksStats, atau statsByDomain, serta pasangan startDate dan endDate yang mencakup rentang hingga dua tahun.

Log transaksional

Dua jalur, dengan jendela waktu yang berbeda.

GET /v3/smtp/statistics/events mengembalikan event individual yang difilter berdasarkan tipe (delivered, opened, clicks, hardBounces, spam, unsubscribed, dan lainnya). Rentang tanggalnya tidak boleh melebihi 90 hari, dan secara default mencakup 30 hari terakhir jika Anda tidak memberikan rentang maupun parameter days.

Untuk skala massal, POST /v3/webhooks/export membuat job ekspor atas 7 hari terakhir event mentah, dibatasi 20 job ekspor per periode 7 hari. Job ini mengembalikan processId, memanggil notify URL Anda saat selesai, dan menghasilkan CSV dengan kolom antara lain date, email, event, message-id, reason, sending_ip, subject, tag, dan template_id. Volume besar datang sebagai arsip terkompresi berisi beberapa berkas CSV.

Konsekuensi praktisnya: jika Anda menginginkan lebih dari 90 hari riwayat transaksional, Anda seharusnya sudah mengekspornya secara terjadwal sejak awal. Siapkan job itu sekarang, bukan pada minggu Anda memutuskan pergi.

Apa yang tidak ikut bersama Anda

Bagian inilah yang paling sering dilewatkan panduan migrasi.

  • Struktur alur kerja otomatisasi. API bisa memicu otomatisasi melalui event, tetapi tidak ada endpoint terdokumentasi yang membaca kembali cabang, jeda, dan kondisi sebuah alur kerja. Setiap alur kerja dibangun ulang secara manual di platform baru.
  • Definisi filter segmen. Seperti di atas, hanya nama dan anggota saat ini yang bisa diambil.
  • Riwayat engagement lengkap per kontak. Anda dapat mengekspor pembuka, pengeklik, non-pembuka, pemberhenti langganan, hard bounce, atau soft bounce dari satu kampanye tertentu menggunakan customContactFilter pada endpoint ekspor. Yang tidak bisa Anda tarik adalah satu berkas rapi berisi “setiap pembukaan dan klik yang pernah dilakukan kontak ini”, karena endpoint event mentah dibatasi 90 hari.
  • Kesetiaan rendering template. htmlContent terekspor dengan bersih, tetapi blok drag and drop, sintaks merge tag, dan placeholder tautan berhenti berlangganan bersifat khas platform. HTML yang Anda ekspor adalah titik awal, bukan template jadi. Sediakan waktu untuk menguji ulang setiap template di editor baru.
  • Reputasi deliverability. Reputasi pengirim hidup pada IP pengirim dan domain yang terautentikasi. Platform baru, kumpulan IP baru, warm up baru. Mempertahankan domain dan konfigurasi DKIM yang sama menjaga sisi domain dari reputasi, dan itu benar-benar membantu, tetapi tidak membawa sisi IP.
  • Identifier formulir, landing page, dan pelacakan. Formulir pendaftaran, landing page, dan skrip pelacakan semuanya punya id khas platform. Apa pun yang tertanam di situs Anda harus diganti, dan analitik apa pun yang terkait id tersebut akan rusak saat pergantian.

Ekspor terskrip untuk akun besar

Di atas kira-kira 100.000 kontak, ekspor lewat antarmuka menjadi lambat dan merepotkan, dan Anda memang menginginkan job yang bisa diulang. Endpoint ekspor kontak bersifat asinkron: menerima sebuah filter, mengembalikan process id, dan menyerahkan CSV kepada Anda saat selesai.

Terminal window
curl --request POST \
--url https://api.brevo.com/v3/contacts/export \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--header 'api-key: YOUR_API_KEY' \
--data '{
"customContactFilter": { "actionForContacts": "allContacts" },
"exportMandatoryAttributes": true,
"exportAttributes": ["FIRSTNAME", "LASTNAME", "SMS", "COUNTRY"],
"exportMetadata": ["_listIds", "ADDED_TIME", "MODIFIED_TIME"],
"exportSubscriptionStatus": ["email_marketing", "sms_marketing"],
"exportDateInUTC": true,
"notifyUrl": "https://example.com/hooks/brevo-export"
}'

Panggilan yang berhasil mengembalikan HTTP 202 dan body berisi processId. exportMandatoryAttributes bernilai true secara default dan mencakup EMAIL, ADDED_TIME, serta MODIFIED_TIME, jadi exportAttributes adalah tempat Anda menyebutkan field kustom Anda. Mengatur exportSubscriptionStatus adalah yang memasukkan status persetujuan pemasaran untuk email dan SMS ke dalam berkas, dan menghilangkannya adalah cara paling umum orang menghasilkan ekspor yang tidak berguna untuk migrasi yang patuh aturan.

Jika Anda lebih suka menelusuri record daripada menunggu sebuah job, GET /v3/contacts menerima limit hingga 1.000 dengan offset, ditambah modifiedSince dan createdSince untuk penarikan inkremental. Setiap kontak kembali dengan emailBlacklisted, smsBlacklisted, listIds, listUnsubscribed, dan consentGroups, yang merupakan semua yang Anda butuhkan untuk merekonstruksi status persetujuan.

Perhatikan rate limit saat Anda membuat skrip ini. Endpoint kontak mengizinkan 36.000 permintaan per jam dan 10 per detik pada paket standar, dua kali lipat pada tingkat Professional dan Enterprise, sementara sebagian besar endpoint lain berada di 100 permintaan per jam. Menelusuri satu juta kontak pada 1.000 per halaman berarti 1.000 permintaan, masih nyaman di dalam anggaran kontak, tetapi menggempur endpoint kampanye atau template dalam perulangan jelas tidak.

Mengapa daftar suppression Anda harus dimigrasikan lebih dulu

Pindahkan data opt out sebelum memindahkan apa pun yang lain.

Argumen hukumnya sederhana. Kontak yang berhenti berlangganan menarik persetujuannya dari merek Anda. Penarikan itu tidak menjadi batal karena Anda berganti vendor. Di bawah GDPR, catatan persetujuan dan penarikannya adalah kewajiban Anda sebagai pengendali data, dan di bawah CAN-SPAM sebuah opt out harus dihormati dalam sepuluh hari kerja dan tetap dihormati selamanya. Kehilangan daftar itu dalam migrasi bukan kecelakaan teknis, melainkan kegagalan kepatuhan dengan jejak dokumen yang menunjuk kepada Anda.

Argumen deliverability-nya lebih buruk dalam praktik. Alamat yang ditekan secara tidak proporsional berisi orang-orang yang mengeluh, mengalami hard bounce, atau memang ingin keluar. Mengirimi mereka dari IP yang benar-benar baru tanpa reputasi adalah cara tercepat yang diketahui untuk membuat setup pengiriman baru dibatasi atau diblokir pada minggu pertamanya. Beberapa ribu spam trap daur ulang dan pengeluh dapat merusak sebulan warm up yang dilakukan dengan hati-hati.

Jadi ekspor kelompok yang ditekan secara eksplisit, jangan berharap mereka tersirat dengan sendirinya. Pada endpoint ekspor, actionForContacts menerima unsubscribed untuk kontak yang di-blocklist dengan cara apa pun dan unsubscribedPerList untuk kontak yang keluar dari satu daftar tertentu. Lakukan lintasan terpisah untuk hardBounces per kampanye. Saat masuk ke platform baru, impor berkas itu ke daftar suppression platform tersebut, bukan ke daftar yang siap dikirimi email.

Brevo juga menangani kasus sebaliknya: Brevo mendukung impor daftar kontak yang di-blocklist, dan API impor menerima boolean emailBlacklist dan smsBlacklist sehingga berkas yang diimpor langsung berstatus ditekan. Perhatikan asimetri yang memang tepat ditegakkan Brevo: kontak tidak bisa dikeluarkan dari blocklist secara massal, karena mengembalikan langganan secara massal untuk orang yang meminta tidak diganggu jelas melanggar hukum. Penekanan mudah ditambahkan dan sengaja dibuat sulit dihapus. Anggap itu perilaku yang benar, bukan penghalang.

Daftar periksa migrasi, keluar dari Brevo

  1. Audit. Hitung kontak, daftar, segmen, otomatisasi aktif, template, dan integrasi. Catat integrasi mana yang menulis ke Brevo, karena itulah saluran yang harus Anda arahkan ulang.
  2. Ekspor. Kontak dengan semua atribut ditambah status langganan, satu berkas per daftar atau satu berkas tunggal yang membawa _listIds, kelompok suppression sebagai berkas terpisah, statistik kampanye, event transaksional sejauh yang diizinkan jendela 90 hari, dan HTML template.
  3. Arsipkan yang akan kedaluwarsa. Apa pun yang dibatasi waktu (event mentah, log) akan hilang begitu jendelanya bergulir. Simpan sekarang di gudang data atau penyimpanan objek Anda sendiri.
  4. Bersihkan dan petakan. Hapus duplikat, normalkan format tanggal dan nomor telepon, dan tulis pemetaan kolom ke field yang eksplisit untuk platform baru. Ini juga momen alami untuk membuang alamat yang tidak berinteraksi selama setahun, yang lebih murah daripada membayar untuk memanaskan beban mati. Panduan pembersihan daftar email kami membahas ambang batasnya.
  5. Muat suppression lebih dulu. Impor data opt out dan hard bounce ke daftar suppression platform baru, verifikasi jumlahnya cocok dengan ekspor Anda, dan baru setelah itu muat kontak yang siap dikirimi email.
  6. Warm up. Mulai dari segmen paling aktif Anda, tingkatkan volume bertahap, dan pantau angka bounce serta keluhan setiap hari. Panduan deliverability email kami memuat urutannya secara rinci.
  7. Jalankan paralel. Biarkan Brevo tetap aktif dan mengirim email transaksional kritis Anda sementara platform baru menangani porsi pengiriman pemasaran yang terus bertambah. Jangan mengalihkan keduanya sekaligus.
  8. Verifikasi. Rekonsiliasi jumlah kontak, periksa dua puluh kontak field demi field, konfirmasi kontak yang ditekan memang benar-benar ditekan dengan mencoba pengiriman uji, dan bandingkan volume pengiriman selama seminggu dengan platform lama.
  9. Berpindah dan siapkan rencana mundur. Ubah DNS dan endpoint integrasi pada jendela waktu ketika ada orang yang mengawasi. Pertahankan akun Brevo tetap aktif dan berbayar setidaknya satu siklus penagihan penuh setelah perpindahan, dengan berkas hasil ekspor disimpan di luar kedua platform. Itulah rencana mundur Anda yang sesungguhnya, bukan janji vendor.

Migrasi masuk ke Brevo dari platform lain

Daftar periksa yang sama berjalan terbalik, dengan tiga catatan khusus Brevo.

Dapatkan ekspor sungguhan dari platform lama. Sebagian besar platform akan memberi Anda kontak dan field kustomnya sebagai CSV. Minta secara khusus daftar suppression dan daftar bounce, yang sering berada di ekspor terpisah dan lupa diminta orang. Jika Anda datang dari model harga per kontak, bandingkan berapa yang benar-benar akan Anda bayar saat masuk dengan panduan harga Brevo kami.

Petakan field sebelum mengunggah. Atribut Brevo memiliki tipe (teks, angka, tanggal, boolean, kategori), dan tanggal yang mendarat di atribut teks tidak akan bisa difilter nanti. Buat atributnya dengan tipe yang benar lebih dulu, baru impor.

Impor melalui API untuk apa pun yang berukuran besar. POST /v3/contacts/import menerima CSV inline di fileBody, array JSON di jsonBody, keduanya dibatasi sekitar 10 MB, atau berkas jarak jauh melalui fileUrl, ditambah listIds atau objek newList. updateExistingContacts bernilai true secara default dan mencocokkan berdasarkan email. Jalankan satu impor dengan emailBlacklist bernilai true untuk berkas suppression Anda, lalu impor kedua untuk kontak yang siap dikirimi email. Skrip lengkap yang berfungsi ada di panduan kami tentang mengimpor kontak CSV ke Brevo dengan skrip.

Setelah itu bangun ulang yang tidak ikut pindah: otomatisasi, segmen, formulir, dan template. Kirim uji seed ke beberapa penyedia inbox sebelum Anda mengirim ke orang sungguhan.

Jangan biarkan migrasi berikutnya jadi jurang

Alasan migrasi platform terasa seperti jurang adalah karena platform tersebut sudah menjadi sistem pencatatan. Riwayat pesanan, status pelanggan email, dan hasil kampanye hidup di dalam satu vendor, dan memindahkannya berarti evakuasi.

Alternatifnya adalah memiliki sumber kebenaran Anda sendiri dan membiarkan platform pengirim menjadi tujuan, bukan brankas. Jika data toko, status persetujuan, dan event engagement Anda tersinkron terus-menerus ke sistem Anda sendiri, berpindah atau menambah kanal menjadi perubahan konfigurasi, bukan sebuah proyek. Itulah pekerjaan yang dilakukan Tajo di antara Brevo dan tumpukan teknologi merchant: menjaga data mengalir dua arah sehingga platform tidak pernah menjadi satu-satunya salinan.

Bagaimanapun juga, job ekspor yang dijelaskan di atas layak dijalankan secara terjadwal mulai sekarang, terlepas dari apakah Anda berencana pergi atau tidak. Migrasi termurah adalah migrasi ketika datanya sudah berada di luar platform saat Anda memutuskan.

Pertanyaan yang sering diajukan

Bisakah saya mengekspor semua data saya dari Brevo?
Anda dapat mengekspor kontak beserta atributnya sebagai CSV, laporan kampanye sebagai CSV atau PDF, log event transaksional sebagai CSV, dan HTML template melalui API. Struktur alur kerja otomatisasi dan definisi filter segmen tidak punya jalur ekspor, jadi keduanya harus dibangun ulang secara manual.
Bagaimana cara mengekspor kontak dari Brevo?
Buka CRM, lalu Contacts. Untuk mengekspor semuanya, pastikan tidak ada daftar, segmen, atau filter yang dimuat. Untuk mengekspor satu daftar atau segmen, klik Load a list or segment terlebih dahulu. Pilih atribut yang Anda inginkan, tentukan pemisah koma atau titik koma, lalu klik Start export dan unduh berkasnya dari lonceng notifikasi.
Dalam format apa Brevo mengekspor kontak?
CSV. Anda memilih pemisah kolomnya, titik koma atau koma. Endpoint ekspor pada API juga menghasilkan berkas CSV, dan ekspor event transaksional datang dalam bentuk CSV, dikompresi menjadi arsip berisi beberapa berkas CSV ketika volumenya besar.
Apakah riwayat engagement saya ikut pindah saat meninggalkan Brevo?
Hanya sebagian. Statistik tingkat kampanye bisa diekspor sebagai laporan, dan Anda dapat mengekspor pembuka, pengeklik, penerima bounce, atau pemberhenti langganan dari satu kampanye tertentu. Log event transaksional mentah dibatasi jendela 90 hari melalui endpoint laporan event dan 7 hari melalui job ekspor massal, sehingga riwayat per kontak jangka panjang harus diarsipkan sebelum Anda pergi.
Apakah saya harus memigrasikan daftar berhenti berlangganan saya?
Ya. Kontak yang memilih keluar dari email Anda melakukannya terhadap Anda, bukan terhadap Brevo, sehingga kewajiban menekan pengiriman itu mengikuti merek Anda ke platform baru. Mengirimi mereka lagi merupakan paparan hukum di bawah GDPR dan CAN-SPAM sekaligus cara tercepat memicu keluhan spam di domain pengirim yang masih baru.
Bisakah saya mempertahankan reputasi pengirim saat berpindah platform?
Tidak. Reputasi melekat pada IP pengirim dan domain yang terautentikasi, bukan pada akun Anda. Jika platform baru memakai IP yang berbeda, Anda memulai warm up dari awal. Mempertahankan domain dan selector DKIM yang sama menjaga reputasi domain, dan itu membantu, tetapi kumpulan IP bersama mengatur ulang sisi IP sepenuhnya.
Berapa lama migrasi Brevo berlangsung?
Proses ekspor dan impornya sendiri biasanya selesai kurang dari sehari untuk akun di bawah beberapa ratus ribu kontak. Lini masa realistisnya dua sampai enam minggu, karena selama itulah warm up pengiriman dan uji paralel otomatisasi utama Anda berjalan sebelum Anda bisa berpindah dengan aman.
Apakah ada API untuk mengekspor kontak Brevo?
Ya. POST /v3/contacts/export memulai job asinkron, mengembalikan processId, dan menghasilkan CSV. Anda juga bisa menelusuri GET /v3/contacts hingga 1.000 record per permintaan, yang lebih mudah dibuatkan skrip tetapi lebih lambat untuk basis data yang sangat besar.
Bisakah saya mengimpor blocklist saya ke Brevo?
Ya. Brevo mendukung impor daftar kontak yang di-blocklist, dan API impor menerima flag emailBlacklist serta smsBlacklist sehingga berkas yang diimpor langsung berstatus ditekan, bukan siap dikirimi. Lakukan ini sebelum Anda mengimpor kontak yang siap dikirimi email.

Ajukan akses awal

Masukkan nama depan serta email atau nomor telepon Anda. Kami akan menghubungi Anda dengan detail akses Tajo.

deteksi otomatis
Dapatkan Brevo