The contact page

What a contact's page shows: the History timeline, where their country comes from, their emails, and how to get the same from the API.

Open any contact from the Contacts page to see everything your workspace knows about them, in one place.

At the top

  • Country: where they are, with its flag. See Country below.
  • Inbox: the domain of their address (gmail.com, their company's domain…), with its logo.
  • Added: when they joined your workspace.
  • Emails, Opened and Clicked: how many of your campaigns they got, and the share they opened and clicked. Only real opens and clicks count: machine opens (Apple Mail Privacy Protection, security scanners) and bot clicks are left out.

History

History is one timeline of everything that happened to the contact, newest first:

  • Each campaign email they got: when it was sent and delivered (or bounced), when they first opened and clicked it, the links they clicked, and whether it made them unsubscribe or mark it as spam.
  • Every status change: from what to what, when, who made it (a team member, the API, an import, an unsubscribe link, a bounce from Amazon SES, list cleanup…) and the note left with it.
  • Opt-ins, with how they agreed: your consent note, the signup form, or the import.
  • List cleanup's "still want these emails?" message and their answer.
  • How they were added: by hand, an import, a signup form, the API or saved from Zeebra's data.

This history is kept for privacy and anti-spam questions (GDPR, CAN-SPAM, PDPL and similar laws): it answers "why did this person get this email?" and "when did they say stop?". The page shows the newest entries, with Show older activity below (up to 500); the API lists every email.

Country

Zeebra keeps a contact's country. It is taken from the country our network provider (Cloudflare) names for each visit in its country header, never from their IP address: we don't look the address up and we don't keep it. It's taken only from what the person's own browser does:

  1. the signup form that adds them,
  2. their confirmation click (only the owner of the address can do that, so it wins over the form),
  3. otherwise their first real click in a campaign.

Until one of those happens the country is "Not known yet". A country in an imported file is used when the contact has none, and never replaces one from their own signup, confirmation or click. Country is a property: filter the contacts table or a segment on it.

The same in the API

  • get_contact returns the contact with its country, consent record, lists and its history (the newest 100 status changes, opt-ins and list cleanup emails).
  • list_contact_emails lists the campaign emails they got, newest first, a page at a time: the campaign, when it was sent, delivered or bounced, the first real open and click, the links clicked, and whether they unsubscribed or complained from it.

See the API reference for the details, and How contacts work for statuses and lead types.