Dataexport och migrering i Brevo: så flyttar du dina data in eller ut

Exportera kontakter, statistik och loggar från Brevo, lär dig exakt vad som inte följer med, och följ en checklista steg för steg för migrering åt båda hållen.

Brevo data export
Dataexport och migrering i Brevo?

Sökvolymen för fraser som “brevo data export migration to another platform” drivs av en enda oro: att de data du samlat på dig är lättare att lägga in än att få ut. Det ärliga svaret för Brevo är att det mesta kommer ut rent, en del kommer ut i en form du får bygga om, och en liten men viktig del inte kan flyttas alls.

Den här guiden täcker båda riktningarna. Den listar exakt vad som exporteras, vad som inte gör det, API-anropen för konton som är för stora för gränssnittet, och en migreringschecklista som behandlar spärrlistor och avsändarrykte som förstahandsfrågor snarare än eftertankar.

Vad du faktiskt kan exportera från Brevo

DataHur det kommer utFormat
Kontakter och attributExport från kontaktsidan, eller POST /v3/contacts/exportCSV
ListmedlemskapExport per lista, eller metadatafältet _listIdsCSV
PrenumerationsstatusexportSubscriptionStatus i exportjobbetCSV
KampanjstatistikExport av kampanjrapport, eller GET /v3/emailCampaignsCSV, PDF, JSON
Transaktionella händelseloggarGET /v3/smtp/statistics/events eller ett massexportjobbJSON, CSV
MallarGET /v3/smtp/templates returnerar htmlContentJSON
Företag och affärerExport från respektive CRM-sidaCSV

Kontakter och attribut

Vägen i gränssnittet är CRM och sedan Contacts. För att exportera hela databasen ska ingen lista och inget segment vara inläst och inga filter tillämpade. För att exportera en enskild lista eller ett segment klickar du på “Load a list or segment” och väljer det först.

Sedan väljer du vilka standardattribut och egna attribut som ska ingå. EMAIL, datum för senaste ändring och skapandedatum är förvalda, och resten lägger du till själv, vilket är steget folk oftast missar. Välj fältavgränsare för din CSV, semikolon eller komma, och slå eventuellt på “Send export by email” så att en nedladdningslänk går till kontoägarens adress. Klicka på “Start export” och ladda sedan ner filen från notisklockan bredvid ditt kontonamn.

Listor och segment

Listor exporteras som medlemskap: kör en export per lista, eller inkludera metadatat _listIds i en enda fullständig export och dela upp filen efteråt. GET /v3/contacts/lists ger dig listnamn, id:n och mapp-id:n så att du kan återskapa strukturen på andra sidan.

Segment är annorlunda, och här kommer den första verkliga luckan. GET /v3/contacts/segments returnerar bara id, segmentName, categoryName och updatedAt. Filtervillkoren som definierar ett segment exponeras inte. Du kan exportera medlemmarna i ett segment vid en viss tidpunkt, men regeln som skapade dem måste läsas av från skärmen och byggas om för hand i det nya verktyget. Ta skärmbild på varje segment innan du säger upp kontot.

Kampanjstatistik

Från en kampanjrapport kan du exportera data som CSV, och rapporter för e-post och SMS erbjuder även en PDF-version för att dela eller skriva ut. För en fullständig historisk hämtning tar GET /v3/emailCampaigns emot en statistics-parameter med värdena globalStats, linksStats eller statsByDomain, plus ett par av startDate och endDate som täcker upp till två år.

Transaktionella loggar

Två vägar, med olika fönster.

GET /v3/smtp/statistics/events returnerar enskilda händelser filtrerade på typ (delivered, opened, clicks, hardBounces, spam, unsubscribed och fler). Datumintervallet får inte överstiga 90 dagar, och det faller tillbaka på de senaste 30 dagarna om du varken anger ett intervall eller parametern days.

För massuttag skapar POST /v3/webhooks/export ett exportjobb över de senaste 7 dagarnas råa händelser, begränsat till 20 exportjobb per sjudagarsperiod. Det returnerar ett processId, anropar din notifierings-URL när det är klart, och levererar CSV med kolumner som date, email, event, message-id, reason, sending_ip, subject, tag och template_id. Stora volymer kommer som ett komprimerat arkiv med flera CSV-filer.

Den praktiska konsekvensen: om du vill ha mer än 90 dagars transaktionell historik behövde du ha exporterat den schemalagt hela tiden. Sätt upp det jobbet nu, inte den vecka du bestämmer dig för att lämna.

Vad som inte följer med dig

Det här är delen de flesta migreringsguider hoppar över.

  • Strukturen i automatiserade flöden. API:et kan utlösa automatiseringar via händelser, men det finns ingen dokumenterad slutpunkt som läser tillbaka ett flödes grenar, fördröjningar och villkor. Varje flöde byggs om manuellt i den nya plattformen.
  • Segmentens filterdefinitioner. Som ovan går bara namnen och de aktuella medlemmarna att hämta.
  • Fullständig engagemangshistorik per kontakt. Du kan exportera de som öppnat, klickat, inte öppnat, avregistrerat sig, hårdstudsat eller mjukstudsat i en viss kampanj med customContactFilter på exportslutpunkten. Det du inte kan hämta är en enda prydlig fil med “varje öppning och klick den här kontakten någonsin gjort”, eftersom de råa händelseslutpunkterna är begränsade till 90 dagar.
  • Mallarnas renderingstrogenhet. htmlContent exporteras rent, men dra-och-släpp-block, syntax för sammanfogningstaggar och platshållare för avregistreringslänkar är plattformsspecifika. HTML-koden du exporterar är en startpunkt, inte en färdig mall. Räkna med tid för att testa om varje mall i den nya editorn.
  • Rykte för leveransbarhet. Avsändarryktet lever på de avsändande IP-adresserna och den autentiserade domänen. Ny plattform, ny IP-pool, ny uppvärmning. Att behålla samma domän och DKIM-konfiguration bevarar domänsidan av ryktet, vilket verkligen hjälper, men det tar inte med IP-sidan.
  • Identifierare för formulär, landningssidor och spårning. Registreringsformulär, landningssidor och spårningsskriptet har alla plattformsspecifika id:n. Allt som är inbäddat på din webbplats måste bytas ut, och all analys som är knuten till de id:na går sönder vid övergången.

Skriptad export för stora konton

Över ungefär 100 000 kontakter blir exporten i gränssnittet långsam och otymplig, och du vill ändå ha ett upprepbart jobb. Exportslutpunkten för kontakter är asynkron: den tar emot ett filter, returnerar ett process-id och ger dig en CSV när den är klar.

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

Ett lyckat anrop svarar HTTP 202 med en kropp som innehåller ett processId. exportMandatoryAttributes är sant som standard och täcker EMAIL, ADDED_TIME och MODIFIED_TIME, så exportAttributes är där du namnger dina egna fält. Att sätta exportSubscriptionStatus är det som lägger in samtyckesstatus för e-post och SMS i filen, och att utelämna det är det absolut vanligaste sättet att skapa en export som är oanvändbar för en regelrätt migrering.

Om du hellre bläddrar igenom poster än väntar på ett jobb tar GET /v3/contacts emot limit upp till 1000 med en offset, plus modifiedSince och createdSince för inkrementella hämtningar. Varje kontakt kommer tillbaka med emailBlacklisted, smsBlacklisted, listIds, listUnsubscribed och consentGroups, vilket är allt du behöver för att rekonstruera samtyckesläget.

Håll koll på hastighetsgränserna medan du skriptar detta. Kontaktslutpunkterna tillåter 36 000 anrop per timme och 10 per sekund på standardplaner, dubbelt så mycket på Professional och Enterprise, medan de flesta andra slutpunkter ligger på 100 anrop per timme. Att bläddra igenom en miljon kontakter med 1000 per sida är 1000 anrop, bekvämt inom kontaktbudgeten, men att hamra på kampanj- eller mallslutpunkter i en loop är det inte.

Varför din spärrlista måste migreras först

Flytta avregistreringarna innan du flyttar något annat.

Det juridiska argumentet är enkelt. En kontakt som avregistrerade sig drog tillbaka sitt samtycke från ditt varumärke. Det tillbakadragandet nollställs inte för att du bytte leverantör. Enligt GDPR är dokumentationen av samtycke och dess återkallande din skyldighet som personuppgiftsansvarig, och enligt CAN-SPAM måste en avregistrering respekteras inom tio arbetsdagar och gäller sedan för alltid. Att tappa listan i en migrering är inte en teknisk olycka, det är ett regelbrott med ett papperspår som pekar på dig.

Argumentet om leveransbarhet är värre i praktiken. Spärrade adresser är oproportionerligt ofta personer som anmälde spam, hårdstudsade eller aktivt ville bort. Att mejla dem från en helt ny IP-adress utan rykte är det snabbaste kända sättet att få en färsk sändningsuppsättning strypt eller blockerad under första veckan. Några tusen återanvända spamfällor och klagande kan förstöra en månads noggrann uppvärmning.

Så exportera de spärrade grupperna uttryckligen i stället för att hoppas att de är underförstådda. På exportslutpunkten tar actionForContacts emot unsubscribed för kontakter som spärrats på något sätt och unsubscribedPerList för kontakter som avregistrerat sig från en viss lista. Gör en separat körning för hardBounces per kampanj. På väg in i en ny plattform importerar du den filen till dess spärrlista, inte till en mejlbar lista.

Brevo klarar det omvända fallet också: det stöder import av en lista med spärrade kontakter, och import-API:et tar de booleska fälten emailBlacklist och smsBlacklist så att en importerad fil landar som spärrad. Notera asymmetrin som Brevo har rätt i att upprätthålla: kontakter kan inte avspärras i bulk, eftersom att massprenumerera någon som bad att bli lämnad ifred skulle vara olagligt. Spärrning är lätt att lägga till och medvetet svår att ta bort. Se det som korrekt beteende, inte som ett hinder.

Migreringschecklista, ut ur Brevo

  1. Inventera. Räkna kontakter, listor, segment, aktiva automatiseringar, mallar och integrationer. Skriv ner vilka integrationer som skriver in i Brevo, för det är de rören du kommer att behöva rikta om.
  2. Exportera. Kontakter med alla attribut plus prenumerationsstatus, en fil per lista eller en enda fil som bär _listIds, spärrade grupper som separata filer, kampanjstatistik, transaktionella händelser så långt tillbaka som 90-dagarsfönstret tillåter, och mallarnas HTML.
  3. Arkivera det som förfaller. Allt som är tidsbegränsat (råa händelser, loggar) är borta när fönstret rullar vidare. Lagra det i ditt eget datalager eller din egen objektlagring nu.
  4. Städa och mappa. Ta bort dubbletter, normalisera datum- och telefonformat, och skriv en uttrycklig mappning från kolumn till fält för den nya plattformen. Det här är också det naturliga tillfället att rensa bort adresser som inte engagerat sig på ett år, vilket är billigare än att betala för att värma upp dödvikt. Vår guide till listrensning går igenom tröskelvärdena.
  5. Ladda spärrlistan först. Importera avregistreringar och hårda studsar till den nya plattformens spärrlista, kontrollera att antalen stämmer med din export, och ladda först därefter in mejlbara kontakter.
  6. Värm upp. Börja med ditt mest engagerade segment, öka volymen gradvis, och följ studs- och klagomålsfrekvens dagligen. Vår guide till leveransbarhet har sekvensen i detalj.
  7. Kör parallellt. Håll Brevo igång och skickande för din kritiska transaktionella e-post medan den nya plattformen tar en växande andel av marknadsföringsutskicken. Byt inte båda samtidigt.
  8. Verifiera. Stäm av antalet kontakter, stickprova tjugo kontakter fält för fält, bekräfta att spärrade kontakter verkligen är spärrade genom att försöka med en testsändning, och jämför en veckas sändningsvolym mot den gamla plattformen.
  9. Byt över och behåll en återgång. Ändra DNS och integrationsslutpunkter i ett tidsfönster när någon är vaken. Håll Brevo-kontot aktivt och betalt i minst en hel faktureringsperiod efter övergången, med de exporterade filerna lagrade utanför båda plattformarna. Det, och inte ett löfte från en leverantör, är din faktiska återgångsplan.

Att migrera in i Brevo från en annan plattform

Samma checklista körs baklänges, med tre Brevo-specifika noteringar.

Få en riktig export från den nuvarande leverantören. De flesta plattformar ger dig kontakter och deras egna fält som CSV. Fråga uttryckligen efter spärrlistan och studslistan, som ofta ligger i en separat export som folk glömmer att begära. Om du kommer från en prismodell per kontakt kan du jämföra vad du faktiskt kommer att betala på vägen in med vår guide till Brevos priser.

Mappa fälten innan du laddar upp. Brevos attribut har typer (text, tal, datum, boolesk, kategori), och ett datum som landar i ett textattribut går inte att filtrera på senare. Skapa attributen med rätt typer först, importera sedan.

Importera via API:et för allt av storlek. POST /v3/contacts/import tar emot inbäddad CSV i fileBody, en JSON-array i jsonBody, båda begränsade till runt 10 MB, eller en fjärrfil via fileUrl, plus listIds eller ett newList-objekt. updateExistingContacts är sant som standard och matchar på e-postadress. Kör en import med emailBlacklist satt till true för din spärrfil, och sedan en andra import för mejlbara kontakter. De fullständiga skripten finns i vår guide till import av CSV-kontakter till Brevo med ett skript.

Bygg sedan om det som inte följde med: automatiseringar, segment, formulär och mallar. Skicka ett testutskick till en handfull inkorgsleverantörer innan du skickar till någon riktig mottagare.

Låt inte nästa migrering bli ett stup

Anledningen till att en plattformsmigrering känns som ett stup är att plattformen har blivit systemet med sanningen. Orderhistorik, prenumerantstatus och kampanjresultat lever inne hos en leverantör, och att flytta dem blir en evakuering.

Alternativet är att ha en egen källa till sanning och låta sändningsplattformen vara en destination i stället för ett valv. Om dina butiksdata, ditt samtyckesläge och dina engagemangshändelser synkroniseras löpande in i dina egna system blir det en konfigurationsändring i stället för ett projekt att byta eller lägga till en kanal. Det är jobbet Tajo gör mellan Brevo och en handlares tekniska stack: håller data flödande åt båda hållen så att plattformen aldrig är den enda kopian.

Hur du än gör är exportjobben som beskrivs ovan värda att köra schemalagt redan nu, oavsett om du planerar att lämna eller inte. Den billigaste migreringen är den där data redan ligger utanför plattformen när du bestämmer dig.

Vanliga Frågor

Kan jag exportera alla mina data från Brevo?
Du kan exportera kontakter och deras attribut som CSV, kampanjrapporter som CSV eller PDF, transaktionella händelseloggar som CSV, och mallarnas HTML via API:et. Strukturen i automatiserade flöden och segmentens filterdefinitioner saknar exportväg, så dem bygger du upp för hand.
Hur exporterar jag kontakter från Brevo?
Gå till CRM och sedan Contacts. För att exportera allt ska ingen lista, inget segment och inget filter vara inläst. För att exportera en enskild lista eller ett segment klickar du först på Load a list or segment. Välj de attribut du vill ha, välj komma eller semikolon som avgränsare, klicka sedan på Start export och ladda ner filen från notisklockan.
I vilket format exporterar Brevo kontakter?
CSV. Du väljer fältavgränsare, antingen semikolon eller komma. API:ets exportslutpunkt levererar också en CSV-fil, och exporter av transaktionella händelser kommer som CSV, packade i ett arkiv med flera CSV-filer när volymen är stor.
Följer min engagemangshistorik med när jag lämnar Brevo?
Bara delvis. Statistik på kampanjnivå exporteras som rapporter, och du kan exportera de som öppnat, klickat, studsat eller avregistrerat sig i en viss kampanj. Råa transaktionella händelseloggar är begränsade till ett fönster på 90 dagar via slutpunkten för händelserapporter och 7 dagar via massexportjobbet, så långsiktig historik per kontakt måste arkiveras innan du lämnar.
Måste jag migrera min avregistreringslista?
Ja. Kontakter som tackade nej till din e-post gjorde det hos dig, inte hos Brevo, så skyldigheten att spärra dem följer med ditt varumärke till den nya plattformen. Att mejla dem igen är både en juridisk risk enligt GDPR och CAN-SPAM och det snabbaste sättet att utlösa spamanmälningar på en ny avsändardomän.
Kan jag behålla mitt avsändarrykte när jag byter plattform?
Nej. Ryktet sitter på de avsändande IP-adresserna och den autentiserade domänen, inte på ditt konto. Om den nya plattformen använder andra IP-adresser börjar du om med uppvärmning. Att behålla samma domän och DKIM-selektor bevarar domänens rykte, vilket hjälper, men delade IP-pooler nollställer IP-sidan helt.
Hur lång tid tar en migrering från Brevo?
Själva exporten och importen tar oftast under ett dygn för konton under några hundra tusen kontakter. Den realistiska tidsplanen är två till sex veckor, eftersom det är så lång tid en uppvärmning av sändningen och en parallellkörning av dina viktigaste flöden tar innan du tryggt kan byta över.
Finns det ett API för att exportera kontakter från Brevo?
Ja. POST /v3/contacts/export startar ett asynkront jobb, returnerar ett processId och levererar en CSV. Du kan också bläddra igenom GET /v3/contacts med upp till 1000 poster per anrop, vilket är enklare att skripta mot men långsammare för mycket stora databaser.
Kan jag importera min spärrlista till Brevo?
Ja. Brevo stöder import av en lista med spärrade kontakter, och import-API:et tar emot flaggorna emailBlacklist och smsBlacklist så att en importerad fil landar som spärrad i stället för mejlbar. Gör det innan du importerar dina mejlbara kontakter.

Ansök om tidig åtkomst

Fyll i ditt förnamn och en e-postadress eller ett telefonnummer. Vi hör av oss med information om hur du får åtkomst till Tajo.

automatisk identifiering
Skaffa Brevo