clickSomo

Kontakti i saglasnost

Lista koju možete braniti, a ne samo lista koju imate

Svako može imati deset hiljada e-mail adresa. Pitanje koje je važno — ono koje regulator, provajder i Vaša savjest postavljaju u donekle različitim riječima — je odakle svaka od njih potiče i na osnovu čega smijete pisati na nju. ClickSomo od toga čini pohranjenu činjenicu, a ne nešto što biste morali rekonstruisati.

Identitet je adresa e-pošte

Jedan kontakt po adresi po projektu, nametnut bazom podataka, a ne nadom. Adrese se normalizuju pri upisivanju, nikada pri čitanju — normalizacija pri čitanju čini ograničenje pukom dekoracijom koja pušta i Anna@ i anna@ unutra.

Brojevi telefona čuvaju se u E.164 formatu gdje postoje, ali broj telefona je atribut, a ne identitet. Ne postoji grafikon razrješavanja identiteta, protokol spajanja ni evidencija revizije spajanja, jer svaki kontakt ovdje dolazi kroz kanal koji već ima adresu: uvoz, obrazac, prijavu ili Vaš vlastiti kod.

Ime se čuva u cjelini

display_name čuva se tačno onako kako je dato i nikada se ne dijeli na dijelove. Dijeljenje imena je fabrika grešaka — „van der Berg", „Kim Min-jun", mononimi, titule i svaki redoslijed koji nije anglosaksonski — a pogrešna podjela pojavljuje se u merge oznaci kao „Poštovani van,", što je gore od nikakve personalizacije.

Strukturirani dijelovi postoje samo za izvore koji ih već dostavljaju odvojene. Ništa ih ne izvodi. I ime koje je neko sam ukucao nikada se ne prepisuje kasnijim CSV-om koji je slučajno zabilježio nešto drugačije, jer princip posljednjeg upisa pobjeđuje omogućava da najnesavršeniji uvoz pobijedi.

Jedan kontaktŠta se čuva
  • 1IdentitetE-pošta, normalizovana. Jedinstvena unutar projekta.
  • 2ImeČuva se u cjelini. first_name se izvodi u trenutku prikazivanja, nikada se ne čuva.
  • 3AtributiŠta god poželite, kao JSON. Vaši, i interpolabilni kao attrs.*.
  • 4Oznake i listeOznake su prvorazredne i žive u jednom skladištu; liste su eksplicitno članstvo.
  • 5SaglasnostJedan red po kanalu, s pravnim osnovom i njegovim dokazom.
  • 6DogađajiLog samo za dodavanje svega što je ova osoba učinila. Tabela na kojoj proizvod počiva.
  • ×NikadaBez lozinke, bez heša, bez sesije, bez API ključa. Kolona koja autentifikuje nekoga bila bi incident, a ne funkcija.

Ograničeno na stanara i projekt, oboje

Evidencija saglasnosti

Odsustvo nije dozvola

Jedan red po kontaktu po kanalu — e-pošta, SMS, pismo, push — svaki sa stanjem, pravnim osnovom, izvorom, dokazom, vremenskim oznakama i jurisdikcijom. Kontaktu bez reda osnova za kanal ne može se ništa poslati na tom kanalu. Ne „označen je". Ne može.

consent

Neko je aktivno tražio. Podneseni obrazac sa pohranjenim dokazom, dvostruka prijava, potvrdni kvadratić koji je sam označio. Ovo je najjači osnov i jedini koji obrazac može proizvesti.

legitimate_interest

Najbolje što CSV uvoz može postići. Tabela ne može pamtiti da je neko nešto prihvatio, pa joj nikada nije dozvoljeno da to tvrdi — i ponovno otpremanje istog fajla to ne unapređuje.

contract

Pišete im zbog nečega u čemu oboje učestvujete. Podsjetnik o usluzi, obavještenje o obnovi, ono što bi im nedostajalo da nisu primili.

Prije slanja kampanje, vidite sastav osnova njene publike: koliko je ovih ljudi samo tražilo, koliko dostižete na osnovu legitimnog interesa i koliko ih je tu zbog ugovora. To je jedan broj koji je spriječio više loših slanja nego bilo koji upozoravajući baner ikada napisan.

Zašto je ovo strože nego što Vama treba: zapravo nije o Vama. Reputacija masovnog slanja je zajednički resurs, i jedna nemarna lista otrova bunar za sve koji šalju s iste infrastrukture. Stope žalbi i odbijanja po stanaru se prate, i račun čije stope prekorače prag se ovdje usporava — prije nego što to učini provajder svima odjednom.

Iza svakog reda na listi, neko je rekao da.

Četiri puta ulaska

Svaki put u Vašu listu ste Vi, postupajući sa svojim podacima

Ne postoji kanal za unos servisnim tokenom ni srodni proizvod koji tiho upisuje u Vaše kontakte. Ako želite nekoga na listi, jedan od ova četiri puta ga je tamo stavio.

CSV uvoz

Mapiran kolona po kolona, normalizovan pri upisu, MX-provjeravan tako da mrtvi i pogrešno ukucani domeni budu uhvaćeni prije tvrdog odbijanja, i smješten s osnovom koji eksplicitno postavite. Uvoz dobija id, i svaki kontakt koji je stvorio ukazuje nazad na njega.

ClickSomo obrazac

Prikazan iz istog dokumenta kao sve ostalo, s validacijom, honeypot-om i ograničenjem učestalosti. Podnošenje obrasca je jedini put koji legitimno može proizvesti consent, jer je jedini gdje je osoba prisutna.

Stranica koju ste izgradili u dash-b

Dizajner kontrolne table objavljuje stranice; obrazac na jednoj od njih šalje podatke ovdje s Vašim vlastitim vjerodajnicama. Ista validacija, isto rukovanje saglasnošću, bez druge integracije za održavanje.

Javni API

POST /v1/contacts s Vašim vlastitim tokenom, upsert semantika, poštuje se idempotencijski ključ. Vaša aplikacija već zna tko se prijavio; ovo je najkraći put od te činjenice do lijevka.

Segmenti su predikat, kompajlirani

Segment je pohranjeno predikatsko stablo nad poljima kontakata, atributima, oznakama, pripadnošću listama i ponašanjem, kompajlirano u SQL i keširano s brojem. Operatori su obični — jednako, nije jednako, u, nije u, počinje s, završava s, sadrži, postavljeno, nije postavljeno — kombinirani s and, or i not do bilo koje dubine koja Vam treba.

Pregledajte ga prije upotrebe. Endpoint vraća stvarne kontakte, pa je pitanje „tko se zapravo nalazi u ovome

Segmenti zatim imaju dvostruku ulogu: kao publika za kampanju, kao uvjet na grani lijevka i kao okidač sami za sebe — segment_enter pokreće izvođenje u trenutku kad netko postane podoban.

Tihi redovni posjetiteljiPregled segmenta · 412
  • 1Oznakatags contains "regular"
  • 2Atributattrs.total_orders >= 3 — Vaše polje, Vaš naziv za njega.
  • 3PonašanjeNema order.paid događaja u posljednjih 90 dana.
  • 4SaglasnostUpotrebljiva osnova za e-poštu. Kontakti bez nje nisu u broju, jer im ionako ne bi mogla biti poslana poruka.
  • iPregled412 kontakata, izlistano. Ponovno se broji pri slanju, jer je segment pitanje, a ne snimak.

Kompajlirano u SQLBroj keširan, odgovor u stvarnom vremenu

Isključenja i kada se provjeravaju

Isključenja su projektne i globalne razine: tvrdi odbijanja, pritužbe, odjave, ručni unosi i adrese uloga. Provjeravaju se u trenutku slanja, a zatim ponovno unutar same usluge slanja.

Ta druga provjera obavlja posao. Lijevak s trodnevnim čekanjem ima trodnevni prozor u kojem netko može odustati od pretplate, a sustav koji je provjerio isključenja kad je poruka stavljena u red poslat će joj poruku svejedno. Provjera pri slanju je razlika između poštovanja odjave i njezine evidencije.

Brisanje funkcionira na isti način: zahtjev za brisanjem uklanja kontakt i njegovu povijest poruka ovdje, i doseže svaku sestrinsku uslugu koja je držala kopiju kroz isti interni kanal koji ostatak obitelji koristi. Postoji jedno mjesto za traženje i jedna stvar koja se dogodi.