Contacts

Contacts is your organization's shared address book. It is the single place that ties a phone number to a person — their name, email, notes, and tags — so your AI agents and your team always know who they are talking to.

Where to find it

Dashboard → Contacts.

The page shows a searchable, paginated table of every contact in your organization. Search matches on name, phone, or email.

Adding a contact

Click Add Contact and fill in:

  • Name — required.
  • Phone — required, stored in E.164 form (+1XXXXXXXXXX). Spaces and dashes are stripped automatically.
  • Email — optional.
  • Tags — optional, free text (e.g. vip, returning).
  • Notes — optional. Notes are also read by the AI on inbound calls — see Caller recognition below.

One active contact per phone number per organization. Adding a phone that already exists returns a clear error instead of creating a duplicate.

Importing a CSV

Click Import CSV, then paste or upload your file.

Required columns: name, phone. Optional columns: email, tags, notes.

Example:

name,phone,email,tags,notes
Alex Chen,+14155551200,alex@acme.io,vip,Prefers morning calls
Jamie Lee,+12025550133,jamie@acme.io,,Asked about pricing

Rows missing a name or a valid phone are skipped and reported back. Rows whose phone already exists are skipped quietly — import is safe to re-run. The importer stops when your plan's contact limit is reached and tells you how many rows were left out.

Contacts fill in automatically

You do not have to build the address book by hand. Contacts are created or updated on their own from everyday activity:

  • Every inbound and outbound call — the other party's number becomes a contact when the call completes.
  • Every inbound SMS — the sender's number becomes a contact.
  • The capture-contact tool — when an AI agent collects a caller's email or phone during a conversation, that detail is saved to their contact.

Auto-fill never overwrites good data with blanks: if a contact already has a real name, an interaction that only knows the number leaves the name alone. Each interaction does refresh the contact's last-contacted date.

Caller recognition

When someone calls one of your AI phone numbers, the platform looks their number up first. If it matches an existing contact — or a person you have called before in a campaign — the agent recognizes them:

  • It greets them by name instead of asking who they are.
  • It already has their email, notes, and history as context.

Use {{NAME}} in the agent's greeting (Dashboard → Voice Agents) and a recognized caller hears their own name in the opening line. Callers whose number is not on file are handled exactly as before — the agent introduces itself and asks normally. Recognition only triggers on an exact phone-number match, so there is no risk of greeting the wrong person.

Plan limits

Contacts count toward your plan's contact cap (shown on Dashboard → Billing). Manual adds and CSV imports stop at the cap. Automatic fill from calls and SMS is best-effort and is not blocked by the cap — recording who contacted you never fails because of a billing limit.

Common stumbles

  • "A contact with this phone number already exists." Search for the number and edit the existing contact instead of adding a new one.
  • CSV import skipped rows. Check the import summary — rows are skipped for a missing name, an invalid phone (fewer than 7 digits), or being a duplicate of a contact you already have.
  • The agent didn't greet a caller by name. Recognition needs an exact match on the caller's number in E.164 form. Confirm the contact's phone is stored as +1XXXXXXXXXX with no extra characters.