Brevo dataeksport og migrering: Sådan flytter du dine data ind eller ud

Eksportér kontakter, statistik og logfiler fra Brevo, find ud af præcis hvad der ikke følger med, og følg en tjekliste trin for trin til migrering i begge retninger.

Brevo data export
Brevo dataeksport og migrering?

Søgevolumen på fraser som “brevo data export migration to another platform” er drevet af én bekymring: at de data, du har samlet op, er lettere at få ind end at få ud. Det ærlige svar for Brevo er, at det meste kommer rent ud, noget af det kommer ud i en form, du selv skal bygge op igen, og en lille, men vigtig del slet ikke kan flytte sig.

Denne guide dækker begge retninger. Den lister præcis hvad der kan eksporteres, hvad der ikke kan, API-kaldene til konti, der er for store til brugerfladen, og en migreringstjekliste, der behandler undertrykkelseslister og afsenderomdømme som førsteklasses emner frem for eftertanker.

Hvad du faktisk kan eksportere fra Brevo

DataSådan kommer det udFormat
Kontakter og attributterEksport fra kontaktsiden, eller POST /v3/contacts/exportCSV
ListemedlemskabEksport pr. liste, eller metadatafeltet _listIdsCSV
TilmeldingsstatusexportSubscriptionStatus på eksportjobbetCSV
KampagnestatistikEksport af kampagnerapport, eller GET /v3/emailCampaignsCSV, PDF, JSON
Transaktionelle hændelseslogfilerGET /v3/smtp/statistics/events eller et bulkeksportjobJSON, CSV
SkabelonerGET /v3/smtp/templates returnerer htmlContentJSON
Virksomheder og dealsEksport fra den relevante CRM-sideCSV

Kontakter og attributter

Stien i brugerfladen er CRM og derefter Contacts. Vil du eksportere hele databasen, skal du sikre dig, at ingen liste eller segment er indlæst, og at der ikke er filtre på. Vil du eksportere én liste eller ét segment, klikker du først på “Load a list or segment” og vælger den.

Derefter vælger du, hvilke standardattributter og brugerdefinerede attributter der skal med. EMAIL, datoen for seneste ændring og oprettelsesdatoen er valgt som standard, og resten tilføjer du selv, hvilket er det trin, folk oftest laver forkert. Vælg din feltseparator til CSV, semikolon eller komma, og slå eventuelt “Send export by email” til, så et downloadlink går til kontoejerens adresse. Klik på “Start export”, og hent så filen fra notifikationsklokken ved siden af dit kontonavn.

Lister og segmenter

Lister eksporteres som medlemskab: kør én eksport pr. liste, eller tag metadataene _listIds med i én samlet eksport og del filen op bagefter. GET /v3/contacts/lists giver dig listenavne, id’er og mappe-id’er, så du kan genskabe strukturen på den anden side.

Segmenter er noget andet, og her er det første reelle hul. GET /v3/contacts/segments returnerer kun id, segmentName, categoryName og updatedAt. De filterbetingelser, der definerer et segment, er ikke tilgængelige. Du kan eksportere medlemmerne af et segment på et givet tidspunkt, men den regel, der skabte dem, skal aflæses på skærmen og bygges op i hånden i det nye værktøj. Tag et skærmbillede af hvert segment, før du opsiger kontoen.

Kampagnestatistik

Fra en kampagnerapport kan du eksportere dataene som CSV, og rapporter for e-mail og SMS tilbyder også en PDF-version til deling eller print. Til et fuldt historisk udtræk accepterer GET /v3/emailCampaigns en statistics-parameter med værdierne globalStats, linksStats eller statsByDomain samt et par af startDate og endDate, der dækker et interval på op til to år.

Transaktionelle logfiler

To stier, med forskellige vinduer.

GET /v3/smtp/statistics/events returnerer enkelthændelser filtreret på type (delivered, opened, clicks, hardBounces, spam, unsubscribed og flere). Datointervallet må ikke overstige 90 dage, og det falder tilbage til de seneste 30 dage, hvis du hverken angiver et interval eller parameteren days.

Til bulk opretter POST /v3/webhooks/export et eksportjob over de seneste 7 dages rå hændelser, begrænset til 20 eksportjob pr. periode på 7 dage. Den returnerer et processId, kalder din notify-URL, når den er færdig, og leverer CSV med kolonner som date, email, event, message-id, reason, sending_ip, subject, tag og template_id. Store mængder kommer som et komprimeret arkiv med flere CSV-filer.

Den praktiske konsekvens: vil du have mere end 90 dages transaktionel historik, skulle du have eksporteret den efter en fast plan hele vejen. Sæt det job op nu, ikke i den uge hvor du beslutter dig for at rejse.

Hvad der ikke følger med dig

Det er den del, de fleste migreringsguider springer over.

  • Strukturen i automatiserede flows. API’et kan udløse automatiseringer via hændelser, men der findes intet dokumenteret endpoint, der læser et flows forgreninger, forsinkelser og betingelser tilbage. Hvert flow bygges manuelt op igen på den nye platform.
  • Definitioner af segmentfiltre. Som ovenfor: kun navnene og de aktuelle medlemmer kan hentes.
  • Fuld engagementshistorik pr. kontakt. Du kan eksportere dem, der åbnede, klikkede, ikke åbnede, frameldte sig, hard bouncede eller soft bouncede en bestemt kampagne, med customContactFilter på eksport-endpointet. Det, du ikke kan trække, er én ryddelig fil med “hver eneste åbning og hvert eneste klik, denne kontakt nogensinde har lavet”, fordi endpoints til rå hændelser er afgrænset til 90 dage.
  • Skabelonernes visuelle troværdighed. htmlContent eksporteres rent, men træk og slip-blokke, syntaks til fletfelter og pladsholdere til frameldingslinks er platformsspecifikke. Den HTML, du eksporterer, er et udgangspunkt, ikke en færdig skabelon. Afsæt tid til at teste hver skabelon igen i den nye editor.
  • Omdømme for leveringsevne. Afsenderomdømme lever på afsender-IP’erne og det autentificerede domæne. Ny platform, ny IP-pulje, ny opvarmning. Beholder du samme domæne og samme DKIM-opsætning, bevarer du domænesiden af omdømmet, hvilket faktisk hjælper, men det tager ikke IP-siden med.
  • Identifikatorer til formularer, landingssider og sporing. Tilmeldingsformularer, landingssider og sporingsscriptet har alle platformsspecifikke id’er. Alt, der er indlejret på dit website, skal skiftes ud, og enhver analyse knyttet til de id’er går i stykker ved skiftet.

Scriptet eksport til store konti

Over cirka 100.000 kontakter bliver eksport via brugerfladen langsom og besværlig, og du vil alligevel gerne have et job, du kan gentage. Endpointet til kontakteksport er asynkront: det tager et filter, returnerer et proces-id og giver dig en CSV, når det er færdigt.

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"
}'

Et vellykket kald returnerer HTTP 202 og en body med et processId. exportMandatoryAttributes er som standard true og dækker EMAIL, ADDED_TIME og MODIFIED_TIME, så exportAttributes er der, hvor du navngiver dine egne felter. Det er exportSubscriptionStatus, der lægger tilmeldingsstatus for e-mail og SMS ind i filen, og at udelade den er den absolut mest almindelige måde at fremstille en eksport, der er ubrugelig til en lovlig migrering.

Vil du hellere paginere gennem poster end vente på et job, accepterer GET /v3/contacts et limit på op til 1000 med et offset plus modifiedSince og createdSince til inkrementelle udtræk. Hver kontakt kommer tilbage med emailBlacklisted, smsBlacklisted, listIds, listUnsubscribed og consentGroups, hvilket er alt, du skal bruge for at genskabe samtykkestatus.

Hold øje med rate limits, mens du scripter det. Kontakt-endpoints tillader 36.000 forespørgsler i timen og 10 i sekundet på standardplaner, det dobbelte på Professional og Enterprise, mens de fleste andre endpoints ligger på 100 forespørgsler i timen. At paginere en million kontakter med 1000 pr. side er 1000 forespørgsler, komfortabelt inden for kontaktbudgettet, men at hamre løs på kampagne- eller skabelon-endpoints i en løkke er det ikke.

Derfor skal din undertrykkelsesliste migreres først

Flyt frameldingerne, før du flytter noget som helst andet.

Det juridiske argument er enkelt. En kontakt, der frameldte sig, trak samtykket tilbage fra dit brand. Den tilbagetrækning nulstilles ikke, fordi du skiftede leverandør. Under GDPR er dokumentationen for samtykke og dets tilbagetrækning din forpligtelse som dataansvarlig, og under CAN-SPAM skal en framelding respekteres inden for ti hverdage og forbliver respekteret på ubestemt tid. At miste listen under en migrering er ikke et teknisk uheld, det er et compliance-svigt med et papirspor, der peger på dig.

Argumentet om leveringsevne er værre i praksis. Undertrykte adresser er i uforholdsmæssig grad folk, der klagede, hard bouncede eller aktivt ville ud. At maile dem fra en helt ny IP uden omdømme er den hurtigste kendte måde at få en frisk afsenderopsætning strubet eller blokeret i sin første uge. Et par tusind genbrugte spamfælder og klagere kan spolere en måneds omhyggelig opvarmning.

Så eksportér de undertrykte grupper eksplicit i stedet for at håbe, at de er underforstået. På eksport-endpointet accepterer actionForContacts værdien unsubscribed for kontakter, der er blokeret på hvilken som helst måde, og unsubscribedPerList for kontakter, der har frameldt sig én bestemt liste. Kør en separat runde for hardBounces pr. kampagne. På vej ind i en ny platform skal den fil importeres til platformens undertrykkelsesliste, ikke til en liste med modtagelige kontakter.

Brevo håndterer også den omvendte situation: platformen understøtter import af en liste med blokerede kontakter, og import-API’et tager booleanerne emailBlacklist og smsBlacklist, så en importeret fil lander som undertrykt. Bemærk den asymmetri, som Brevo med rette håndhæver: kontakter kan ikke afblokeres i bulk, fordi det ville være ulovligt at genindmelde nogen i bulk, som har bedt om at blive ladt i fred. Undertrykkelse er let at tilføje og bevidst svær at fjerne. Betragt det som den korrekte adfærd, ikke som en forhindring.

Migreringstjekliste, ud af Brevo

  1. Kortlæg. Tæl kontakter, lister, segmenter, aktive automatiseringer, skabeloner og integrationer. Skriv ned, hvilke integrationer der skriver ind i Brevo, for det er de rør, du skal pege et nyt sted hen.
  2. Eksportér. Kontakter med alle attributter plus tilmeldingsstatus, én fil pr. liste eller én samlet fil med _listIds, undertrykte grupper som separate filer, kampagnestatistik, transaktionelle hændelser så langt tilbage som vinduet på 90 dage tillader, og HTML fra skabelonerne.
  3. Arkivér det, der udløber. Alt tidsbegrænset (rå hændelser, logfiler) er væk, når vinduet ruller. Gem det i dit eget datalager eller objektlager nu.
  4. Rens og kortlæg felter. Fjern dubletter, ensret dato- og telefonformater, og skriv en eksplicit kortlægning fra kolonne til felt for den nye platform. Det er også det naturlige tidspunkt at droppe adresser, der ikke har engageret sig i et år, hvilket er billigere end at betale for at varme dødvægt op. Vores guide til at rense e-maillisten gennemgår tærsklerne.
  5. Indlæs undertrykkelser først. Importér frameldinger og hard bounces til den nye platforms undertrykkelsesliste, kontrollér at antallene passer med din eksport, og indlæs først derefter modtagelige kontakter.
  6. Varm op. Start med dit mest engagerede segment, øg volumen gradvist, og hold dagligt øje med bounce- og klagerater. Vores guide til leveringsevne for e-mail har rækkefølgen i detaljer.
  7. Kør parallelt. Hold Brevo i live og lad platformen sende dine kritiske transaktionelle mails, mens den nye platform tager en voksende andel af marketingafsendelserne. Skift ikke begge dele på én gang.
  8. Verificér. Afstem antallet af kontakter, stikprøv tyve kontakter felt for felt, bekræft at undertrykte kontakter faktisk er undertrykt ved at forsøge en testafsendelse, og sammenlign en uges afsendelsesvolumen med den gamle platform.
  9. Skift over, og hold en rollback klar. Skift DNS og integrations-endpoints i et tidsrum, hvor nogen holder øje. Hold Brevo-kontoen aktiv og betalt i mindst én hel faktureringsperiode efter skiftet, med de eksporterede filer gemt uden for begge platforme. Det, og ikke et løfte fra en leverandør, er din reelle rollback-plan.

Migrering ind i Brevo fra en anden platform

Den samme tjekliste kører baglæns, med tre bemærkninger, der er specifikke for Brevo.

Få en rigtig eksport fra den nuværende leverandør. De fleste platforme giver dig kontakter og deres brugerdefinerede felter som CSV. Bed specifikt om undertrykkelseslisten og bounce-listen, som ofte ligger i en separat eksport, folk glemmer at bede om. Kommer du fra en prismodel pr. kontakt, kan du sammenligne, hvad du faktisk kommer til at betale på vej ind, med vores guide til Brevos priser.

Kortlæg felterne, før du uploader. Brevo-attributter har typer (tekst, tal, dato, boolean, kategori), og en dato, der lander i en tekstattribut, kan ikke filtreres senere. Opret attributterne med de rigtige typer først, og importér derefter.

Importér via API’et for alt af en vis størrelse. POST /v3/contacts/import accepterer indlejret CSV i fileBody, et JSON-array i jsonBody, begge begrænset til omkring 10 MB, eller en fjernfil via fileUrl, plus listIds eller et newList-objekt. updateExistingContacts er som standard true og matcher på e-mail. Kør én import med emailBlacklist sat til true for din undertrykkelsesfil, og derefter en import nummer to for modtagelige kontakter. De fuldt fungerende scripts ligger i vores guide til import af CSV-kontakter til Brevo med et script.

Byg derefter det op igen, der ikke fulgte med: automatiseringer, segmenter, formularer og skabeloner. Send en testafsendelse til en håndfuld indbakkeudbydere, før du sender til nogen rigtige modtagere.

Lad ikke den næste migrering blive en klippekant

Grunden til, at en platformsmigrering føles som en klippekant, er, at platformen er blevet dit register. Ordrehistorik, modtagerstatus og kampagneresultater ligger inde hos én leverandør, og at flytte dem betyder en evakuering.

Alternativet er at holde din egen kilde til sandhed og lade afsendelsesplatformen være en destination frem for en boks. Hvis dine butiksdata, din samtykkestatus og dine engagementshændelser løbende synkroniseres ind i dine egne systemer, er det en konfigurationsændring frem for et projekt at skifte eller tilføje en kanal. Det er det arbejde, Tajo udfører mellem Brevo og en forhandlers tekniske opsætning: holde dataene i bevægelse begge veje, så platformen aldrig er den eneste kopi.

Uanset hvad er de eksportjob, der er beskrevet ovenfor, værd at køre efter en fast plan lige nu, uanset om du planlægger at rejse. Den billigste migrering er den, hvor dataene allerede ligger uden for platformen, når du træffer beslutningen.

Ofte Stillede Spørgsmål

Kan jeg eksportere alle mine data fra Brevo?
Du kan eksportere kontakter og deres attributter som CSV, kampagnerapporter som CSV eller PDF, transaktionelle hændelseslogfiler som CSV og HTML fra skabeloner via API'et. Strukturen i automatiserede flows og definitionerne af segmentfiltre har ingen eksportsti, så dem bygger du op i hånden igen.
Hvordan eksporterer jeg kontakter fra Brevo?
Gå til CRM og derefter Contacts. Vil du eksportere det hele, skal du sikre dig, at ingen liste, intet segment og intet filter er indlæst. Vil du eksportere én liste eller ét segment, skal du først klikke på Load a list or segment. Vælg de attributter, du vil have med, vælg komma eller semikolon som separator, klik på Start export, og hent filen fra notifikationsklokken.
Hvilket format eksporterer Brevo kontakter i?
CSV. Du vælger selv feltseparatoren, enten semikolon eller komma. Eksport-endpointet i API'et leverer også en CSV-fil, og eksport af transaktionelle hændelser kommer som CSV, pakket i et arkiv med flere CSV-filer, når volumen er stor.
Følger min engagementshistorik med, når jeg forlader Brevo?
Kun delvist. Statistik på kampagneniveau kan eksporteres som rapporter, og du kan eksportere dem, der åbnede, klikkede, bouncede eller frameldte sig en bestemt kampagne. Rå transaktionelle hændelseslogfiler er begrænset til et vindue på 90 dage via rapport-endpointet og 7 dage via bulkeksportjobbet, så langsigtet historik pr. kontakt skal arkiveres, før du rejser.
Skal jeg migrere min frameldingsliste?
Ja. Kontakter, der har frameldt sig dine mails, gjorde det hos dig, ikke hos Brevo, så pligten til at undertrykke dem følger dit brand over på den nye platform. At maile dem igen er både en juridisk risiko under GDPR og CAN-SPAM og den hurtigste vej til spamklager på et helt nyt afsenderdomæne.
Kan jeg beholde mit afsenderomdømme, når jeg skifter platform?
Nej. Omdømmet hænger på afsender-IP'erne og det autentificerede domæne, ikke på din konto. Bruger den nye platform andre IP'er, starter du en ny opvarmning. Beholder du samme domæne og samme DKIM-selector, bevarer du domænets omdømme, hvilket hjælper, men delte IP-puljer nulstiller IP-siden helt.
Hvor lang tid tager en Brevo-migrering?
Selve eksporten og importen tager som regel under en dag for konti under et par hundrede tusind kontakter. Den realistiske tidsplan er to til seks uger, for så lang tid tager en opvarmning af afsendelsen og en parallel kørsel af dine vigtigste automatiseringer, før du trygt kan skifte over.
Findes der et API til eksport af Brevo-kontakter?
Ja. POST /v3/contacts/export starter et asynkront job, returnerer et processId og leverer en CSV. Du kan også paginere gennem GET /v3/contacts med op til 1000 poster pr. forespørgsel, hvilket er lettere at scripte, men langsommere for meget store databaser.
Kan jeg importere min blokeringsliste til Brevo?
Ja. Brevo understøtter import af en liste med blokerede kontakter, og import-API'et accepterer flagene emailBlacklist og smsBlacklist, så en importeret fil lander som undertrykt frem for som modtagelig. Gør det, før du importerer dine modtagelige kontakter.

Bed om tidlig adgang til Tajo

Indtast dit fornavn og en e-mailadresse eller et telefonnummer. Vi kontakter dig med oplysninger om adgang til Tajo.

automatisk genkendelse
Få Brevo