Izvoz podataka i migracija u platformi Brevo: kako premjestiti podatke unutra ili van
Izvezite kontakte, statistiku i zapise iz platforme Brevo, saznajte što točno ne prelazi i slijedite kontrolnu listu korak po korak za migraciju u oba smjera.
Volumen pretraživanja za izraze poput „brevo data export migration to another platform” pokreće jedna briga: da je podatke koje ste nakupili lakše unijeti nego iznijeti. Iskren odgovor za platformu Brevo jest da većina izlazi čisto, dio izlazi u obliku koji morate iznova izgraditi, a mali, ali važan dio uopće se ne može premjestiti.
Ovaj vodič pokriva oba smjera. Navodi što se točno izvozi, što ne, koje API pozive koristiti za račune prevelike za sučelje te kontrolnu listu za migraciju koja popise isključenih kontakata i reputaciju slanja tretira kao prvorazredne teme, a ne kao naknadnu misao.
Što doista možete izvesti iz platforme Brevo
| Podaci | Kako izlaze | Format |
|---|---|---|
| Kontakti i atributi | Izvoz sa stranice Contacts ili POST /v3/contacts/export | CSV |
| Članstvo u popisima | Izvoz po popisu ili metapodatkovno polje _listIds | CSV |
| Status pretplate | exportSubscriptionStatus na zadatku izvoza | CSV |
| Statistika kampanja | Izvoz izvještaja o kampanji ili GET /v3/emailCampaigns | CSV, PDF, JSON |
| Zapisi o transakcijskim događajima | GET /v3/smtp/statistics/events ili zadatak skupnog izvoza | JSON, CSV |
| Predlošci | GET /v3/smtp/templates vraća htmlContent | JSON |
| Tvrtke i poslovi | Izvoz s odgovarajuće CRM stranice | CSV |
Kontakti i atributi
Putanja u sučelju je CRM, zatim Contacts. Za izvoz cijele baze provjerite da nije učitan nijedan popis ni segment i da nisu primijenjeni filtri. Za izvoz jednog popisa ili segmenta prvo kliknite „Load a list or segment” i odaberite ga.
Zatim birate koje standardne i prilagođene atribute uključiti. EMAIL, datum posljednje promjene i datum stvaranja odabrani su prema zadanim postavkama, a ostalo dodajete sami, što je korak koji ljudi najčešće promaše. Odaberite razdjelnik polja za CSV, točku sa zarezom ili zarez, i po želji uključite „Send export by email” kako bi poveznica za preuzimanje otišla na adresu vlasnika računa. Kliknite „Start export”, zatim preuzmite datoteku iz zvonca s obavijestima pokraj imena vašeg računa.
Popisi i segmenti
Popisi se izvoze kao članstvo: pokrenite jedan izvoz po popisu ili uključite metapodatke _listIds u jedan cjeloviti izvoz i podijelite datoteku naknadno. GET /v3/contacts/lists daje vam imena popisa, ID-eve i ID-eve mapa kako biste strukturu mogli ponovno stvoriti na drugoj strani.
Segmenti su druga priča i tu je prva stvarna praznina. GET /v3/contacts/segments vraća samo id, segmentName, categoryName i updatedAt. Uvjeti filtra koji definiraju segment nisu izloženi. Možete izvesti članove segmenta u određenom trenutku, ali pravilo koje ih je proizvelo morate pročitati sa zaslona i ručno ga izgraditi u novom alatu. Snimite zaslon svakog segmenta prije nego što ukinete račun.
Statistika kampanja
Iz izvještaja o kampanji možete izvesti podatke kao CSV, a izvještaji za e-poštu i SMS nude i PDF verziju za dijeljenje ili ispis. Za potpuno povijesno povlačenje GET /v3/emailCampaigns prima parametar statistics s vrijednostima globalStats, linksStats ili statsByDomain, te par startDate i endDate koji pokriva raspon do dvije godine.
Transakcijski zapisi
Dvije putanje, s različitim prozorima.
GET /v3/smtp/statistics/events vraća pojedinačne događaje filtrirane po vrsti (delivered, opened, clicks, hardBounces, spam, unsubscribed i drugi). Raspon datuma ne smije prijeći 90 dana, a prema zadanim postavkama pokriva posljednjih 30 dana ako ne proslijedite ni raspon ni parametar days.
Za skupno povlačenje POST /v3/webhooks/export stvara zadatak izvoza za posljednjih 7 dana sirovih događaja, ograničen na 20 zadataka izvoza u razdoblju od 7 dana. Vraća processId, poziva vaš URL za obavijest kada završi i isporučuje CSV sa stupcima uključujući date, email, event, message-id, reason, sending_ip, subject, tag i template_id. Veliki volumeni stižu kao sažeta arhiva s nekoliko CSV datoteka.
Praktična posljedica: ako želite više od 90 dana transakcijske povijesti, trebali ste je izvoziti po rasporedu cijelo vrijeme. Postavite taj zadatak sada, a ne u tjednu kada odlučite otići.
Što ne ide s vama
Ovo je dio koji većina vodiča za migraciju preskače.
- Strukture automatiziranih tijekova rada. API može pokretati automatizacije kroz događaje, ali ne postoji dokumentirana krajnja točka koja čita natrag grane, odgode i uvjete tijeka rada. Svaki tijek rada ručno se izrađuje iznova na novoj platformi.
- Definicije filtara segmenata. Kao i gore, moguće je dohvatiti samo imena i trenutne članove.
- Potpuna povijest angažmana po kontaktu. Možete izvesti one koji su otvorili, kliknuli, nisu otvorili, odjavili se, trajno odbili ili privremeno odbili poruku u određenoj kampanji koristeći
customContactFilterna krajnjoj točki za izvoz. Ono što ne možete povući jest jedna uredna datoteka sa „svakim otvaranjem i klikom koje je taj kontakt ikad napravio”, jer su krajnje točke sirovih događaja ograničene na 90 dana. - Vjernost iscrtavanja predložaka.
htmlContentizvozi se čisto, ali blokovi za povuci i ispusti, sintaksa oznaka za spajanje i rezervirana mjesta za poveznicu odjave specifični su za platformu. HTML koji izvezete polazna je točka, a ne gotov predložak. Predvidite vrijeme za ponovno testiranje svakog predloška u novom uređivaču. - Reputacija isporučivosti. Reputacija pošiljatelja živi na IP adresama za slanje i na autentificiranoj domeni. Nova platforma, novi skup IP adresa, novo zagrijavanje. Zadržavanje iste domene i DKIM konfiguracije čuva domenski dio reputacije, što doista pomaže, ali ne prenosi IP dio.
- Identifikatori obrazaca, odredišnih stranica i praćenja. Obrasci za prijavu, odredišne stranice i skripta za praćenje svi imaju ID-eve specifične za platformu. Sve što je ugrađeno na vašu web-stranicu mora se zamijeniti, a svaka analitika vezana uz te ID-eve puca pri prebacivanju.
Skriptirani izvoz za velike račune
Iznad otprilike 100.000 kontakata izvoz kroz sučelje postaje spor i nezgrapan, a ionako želite zadatak koji se može ponoviti. Krajnja točka za izvoz kontakata je asinkrona: prima filtar, vraća ID procesa i predaje vam CSV kada završi.
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" }'Uspješan poziv vraća HTTP 202 i tijelo koje sadrži processId. exportMandatoryAttributes prema zadanim postavkama ima vrijednost true i pokriva EMAIL, ADDED_TIME i MODIFIED_TIME, pa je exportAttributes mjesto gdje imenujete svoja prilagođena polja. Postavljanje exportSubscriptionStatus stavlja u datoteku stanje marketinške privole za e-poštu i SMS, a njegovo izostavljanje najčešći je pojedinačni način da proizvedete izvoz beskoristan za usklađenu migraciju.
Ako radije straničite kroz zapise nego čekate na zadatak, GET /v3/contacts prima limit do 1000 uz offset, plus modifiedSince i createdSince za inkrementalna povlačenja. Svaki kontakt vraća se s emailBlacklisted, smsBlacklisted, listIds, listUnsubscribed i consentGroups, što je sve što trebate za rekonstrukciju stanja privole.
Pripazite na ograničenja zahtjeva dok ovo skriptirate. Krajnje točke za kontakte dopuštaju 36.000 zahtjeva na sat i 10 u sekundi na standardnim planovima, dvostruko na razinama Professional i Enterprise, dok većina drugih krajnjih točaka stoji na 100 zahtjeva na sat. Straničenje milijuna kontakata po 1000 po stranici iznosi 1000 zahtjeva, udobno unutar proračuna za kontakte, ali udaranje po krajnjim točkama kampanja ili predložaka u petlji nije.
Zašto vaš popis isključenih kontakata mora migrirati prvi
Premjestite odjave prije nego što premjestite bilo što drugo.
Pravni argument je jednostavan. Kontakt koji se odjavio povukao je privolu vašem brendu. To povlačenje ne poništava se zato što ste promijenili dobavljača. Prema GDPR-u evidencija privole i njezina povlačenja vaša je obveza kao voditelja obrade, a prema CAN-SPAM-u odjava se mora poštovati u roku od deset radnih dana i ostaje poštovana neograničeno. Gubitak tog popisa u migraciji nije tehnička nezgoda, nego propust u usklađenosti s papirnatim tragom koji pokazuje na vas.
Argument isporučivosti u praksi je još gori. Isključene adrese nerazmjerno su ljudi koji su se žalili, trajno odbili poruku ili su aktivno htjeli van. Slanje njima s posve nove IP adrese bez reputacije najbrži je poznati način da svježa postava za slanje bude prigušena ili blokirana već u prvom tjednu. Nekoliko tisuća recikliranih zamki za neželjenu poštu i pritužitelja može poništiti mjesec dana pažljivog zagrijavanja.
Zato izvezite isključene skupine izričito umjesto da se nadate da su podrazumijevane. Na krajnjoj točki za izvoz actionForContacts prima unsubscribed za kontakte blokirane na bilo koji način i unsubscribedPerList za kontakte odjavljene s jednog određenog popisa. Napravite zaseban prolaz za hardBounces po kampanji. Pri ulasku u novu platformu tu datoteku uvezite u njezin popis isključenih kontakata, a ne u popis za slanje.
Brevo pokriva i obrnut slučaj: podržava uvoz popisa blokiranih kontakata, a API za uvoz prima booleane emailBlacklist i smsBlacklist pa uvezena datoteka sleti kao isključena. Primijetite asimetriju koju Brevo s pravom nameće: kontakti se ne mogu skupno odblokirati, jer bi skupno ponovno prijavljivanje nekoga tko je tražio da ga se ostavi na miru bilo nezakonito. Isključivanje je lako dodati i namjerno teško ukloniti. To tretirajte kao ispravno ponašanje, ne kao prepreku.
Kontrolna lista za migraciju iz platforme Brevo
- Revizija. Prebrojite kontakte, popise, segmente, aktivne automatizacije, predloške i integracije. Zapišite koje integracije zapisuju u platformu Brevo, jer su to cijevi koje ćete morati preusmjeriti.
- Izvoz. Kontakti sa svim atributima i statusom pretplate, jedna datoteka po popisu ili jedna datoteka koja nosi
_listIds, isključene skupine kao zasebne datoteke, statistika kampanja, transakcijski događaji koliko god unatrag prozor od 90 dana dopušta, i HTML predložaka. - Arhivirajte ono što istječe. Sve vremenski ograničeno (sirovi događaji, zapisi) nestaje kada se prozor pomakne. Pohranite to u vlastito skladište podataka ili objektnu pohranu sada.
- Očistite i mapirajte. Uklonite duplikate, normalizirajte formate datuma i telefona i napišite izričito mapiranje stupaca u polja za novu platformu. Ovo je i prirodan trenutak da odbacite adrese koje se nisu angažirale godinu dana, što je jeftinije od plaćanja zagrijavanja mrtvog tereta. Naš vodič za čišćenje popisa e-pošte pokriva pragove.
- Prvo učitajte isključene kontakte. Uvezite odjave i trajno odbijene poruke u popis isključenih kontakata nove platforme, provjerite podudaraju li se brojke s vašim izvozom i tek onda učitajte kontakte kojima šaljete.
- Zagrijavanje. Krenite s najangažiranijim segmentom, postupno povećavajte volumen i svakodnevno pratite stope odbijanja i pritužbi. Naš vodič za isporučivost e-pošte donosi detaljan slijed.
- Radite paralelno. Držite platformu Brevo aktivnom i neka šalje vašu ključnu transakcijsku poštu dok nova platforma preuzima sve veći dio marketinških slanja. Nemojte prebaciti oboje odjednom.
- Provjerite. Uskladite broj kontakata, nasumično provjerite dvadeset kontakata polje po polje, potvrdite da su isključeni kontakti doista isključeni pokušajem testnog slanja i usporedite tjedan dana volumena slanja sa starom platformom.
- Prebacite se i zadržite mogućnost povratka. Promijenite DNS i krajnje točke integracija u terminu kada netko gleda. Držite Brevo račun aktivnim i plaćenim barem jedan puni obračunski ciklus nakon prebacivanja, uz izvezene datoteke pohranjene izvan obje platforme. To, a ne obećanje dobavljača, vaš je stvarni plan povratka.
Migracija u platformu Brevo s druge platforme
Ista kontrolna lista radi obrnuto, uz tri napomene specifične za platformu Brevo.
Nabavite stvaran izvoz od dosadašnjeg dobavljača. Većina platformi dat će vam kontakte i njihova prilagođena polja kao CSV. Zatražite izričito popis isključenih kontakata i popis odbijenih adresa, koji su često u zasebnom izvozu koji ljudi zaborave tražiti. Ako dolazite s modela cijena po kontaktu, usporedite koliko ćete stvarno plaćati na ulasku uz naš vodič za cijene platforme Brevo.
Mapirajte polja prije prijenosa. Atributi u platformi Brevo imaju tipove (tekst, broj, datum, boolean, kategorija), a datum koji sleti u tekstualni atribut kasnije se neće moći filtrirati. Prvo stvorite atribute s ispravnim tipovima, pa onda uvozite.
Za bilo što veće uvozite kroz API. POST /v3/contacts/import prima ugrađeni CSV u fileBody, JSON polje u jsonBody, oboje ograničeno na oko 10 MB, ili udaljenu datoteku kroz fileUrl, plus listIds ili objekt newList. updateExistingContacts prema zadanim postavkama ima vrijednost true i podudara se po e-pošti. Pokrenite jedan uvoz s emailBlacklist postavljenim na true za datoteku s isključenim kontaktima, pa drugi uvoz za kontakte kojima šaljete. Potpune radne skripte nalaze se u našem vodiču za uvoz CSV kontakata u platformu Brevo skriptom.
Zatim izgradite iznova ono što nije prešlo: automatizacije, segmente, obrasce i predloške. Pošaljite probno slanje na šačicu pružatelja poštanskih sandučića prije nego što pošaljete ikome stvarnome.
Nemojte dopustiti da sljedeća migracija bude litica
Razlog zbog kojeg migracija platforme djeluje kao litica jest to što je platforma postala sustav evidencije. Povijest narudžbi, stanje pretplatnika i rezultati kampanja žive unutar jednog dobavljača, pa njihovo premještanje znači evakuaciju.
Alternativa je držati vlastiti izvor istine i pustiti da platforma za slanje bude odredište, a ne trezor. Ako se podaci o vašoj trgovini, stanje privola i događaji angažmana kontinuirano sinkroniziraju u vaše vlastite sustave, prebacivanje ili dodavanje kanala postaje promjena konfiguracije umjesto projekta. To je posao koji Tajo obavlja između platforme Brevo i trgovčeva sustava: održava protok podataka u oba smjera tako da platforma nikada nije jedina kopija.
U svakom slučaju, gore opisane zadatke izvoza vrijedi pokretati po rasporedu već sada, bez obzira planirate li otići. Najjeftinija je migracija ona u kojoj su podaci već izvan platforme kada odlučite.