Connecting a phone system lets TED log calls and texts for your team. TED supports two providers: smrtPhone and Dialpad. An admin connects the account once. Only an admin can connect, turn texting on or off, change automated-text hours, get a new webhook URL, re-sync, update the key, or disconnect — everyone else on the team sees the connection status here, but no buttons to change it. Once calls and texts are flowing, they show up on the Texts & Calls tab of each contact and deal — see Texts and calls on a deal or contact.
Connecting smrtPhone (no API key)
smrtPhone connects with a webhook URL only — you don't need an API key, and TED listens alongside your CRM, so nothing in your CRM's smrtPhone setup changes.
- Go to Settings > Phone system (under Integrations).
- Choose smrtPhone ("No API key needed — TED listens alongside your CRM.") and select Connect smrtPhone.
- The page shows a Set up smrtPhone guide. Follow its four steps:
- Select Copy URL to copy your TED webhook URL.
- In smrtPhone go to Admin ▸ Webhooks ▸ New Webhook.
- Paste the URL and tick every event the guide lists (calls, texts, smrtDialer calls, AI tools, do-not-call/do-not-text changes, number changes, and user changes).
- Make a call or send a text — the page switches to Receiving events.
The guide shows "Waiting for the first event…" until smrtPhone sends something, then flips to "Receiving events" on its own — no need to refresh the page. If it's taking a while, select Check again, or double-check the URL was pasted in correctly and the events are ticked.
Getting a new webhook URL
The webhook URL is what lets smrtPhone send your team's calls and texts to TED, so treat it like a password. If it's been shared somewhere it shouldn't be, select Get a new URL on the setup guide. TED asks you to confirm — "Your current URL stops working immediately. Paste the new one into smrtPhone right away." — then shows the new URL and goes back to "Waiting for the first event…" until smrtPhone uses it. Replace the old URL in smrtPhone's webhook settings straight away, or TED stops receiving events.
Turning on texting from TED (smrtPhone)
Connecting smrtPhone with the webhook URL logs your calls and texts, but TED can't send texts yet. smrtPhone only allows sending with your account's API key — the same key your CRM uses. TED only uses it to send texts and never changes anything in your smrtPhone account, so your CRM keeps working exactly as before. Turning on texting is optional; calls and texts keep logging either way.
- On Settings > Phone system, find the Texting from TED card (it shows Off).
- In smrtPhone, go to smrtPhone ▸ Admin ▸ API Tokens ▸ Show token and copy the key.
- Paste it into API key and select Turn on texting.
TED checks the key with smrtPhone before saving it. If smrtPhone rejects it, you'll see "smrtPhone rejected that key." — copy it again and paste the whole thing. A smrtPhone account can only text from one TED team, so if the same key is already turned on for another TED team, TED says so; turn texting off there first.
Once it's on, the card reads "Texting is on." with two options:
- Replace key — paste a new key (for example, after rotating it in smrtPhone). TED never shows the key that's saved now.
- Turn off texting — TED asks you to confirm: "Reps and automators won't be able to send texts until it's turned back on." Turning it off forgets the key; calls and texts still log in TED.
If smrtPhone later rejects the saved key (usually because it was changed in smrtPhone), the card shows Paused with "smrtPhone rejected the saved key — texting is paused. Paste the current key." Select Replace key and paste the current one. Call and text logging isn't affected.
Team members who aren't admins see whether texting is on or off ("Texting is on — an admin manages this.") but can't change it.
Automated-text hours
When texting is on, the card also sets when automated texts (the ones automators send) may go out: "Automated texts send between 8 AM and 9 PM" in your team's timezone, by default. Pick a different start and end time and select Save. The end time has to be after the start time. Texts your reps send themselves aren't limited. Members see the hours but can't change them.
On Dialpad there's no Texting from TED card, so the same setting has its own Automated-text hours card on Settings > Phone system, above the Numbers table. Dialpad admins can set the hours now — pick a start and end time, select Save — and it's there whether or not the Dialpad key is healthy. TED can't send texts through Dialpad yet, so the hours take effect once it can. Members see the hours as a sentence but can't change them.
Connecting Dialpad (API key)
- Go to Settings > Phone system (under Integrations).
- Choose Dialpad and paste a company API key from Dialpad ▸ Admin Settings ▸ API.
- Optionally set when the key expires — TED will warn you here before it does.
- Select Connect Dialpad. TED validates the key, then syncs your numbers and people. This takes a few seconds. Dialpad sends events to TED automatically — there's no URL to paste.
If the key is rejected
If Dialpad rejects the key, TED tells you in plain language (for example, that the key was rejected, or that the account is already connected to another TED team) — never a raw error code. Double-check the key and try again, or see Common issues below.
Numbers and people
Once connected, the page shows two tables. On Dialpad they fill in as soon as you connect. On smrtPhone they start empty and fill in as calls and texts come through — "Numbers show up here after your first call or text comes through." and "Teammates show up here after they make or take a call or text."
- Numbers — every phone number from your provider, with its capabilities (SMS, MMS, Voice) and who it's assigned to. Admins can assign an unassigned number to a team member with the dropdown in that row. To move a number from one person to another, set it to "— Unassigned —" first, then open the dropdown again and pick the new person — until you do, the new person shows as unavailable with an "unassign first" note. A number that's no longer in your provider account shows a "No longer in smrtPhone/Dialpad" tag instead of disappearing — its history is kept.
- People — everyone in your provider account, matched to a TED user. On Dialpad, anyone whose email matches a TED account is matched automatically ("Auto-matched by email"). smrtPhone only sends each agent's name, so TED shows that name here and matches it to the one teammate whose full name in TED is exactly the same ("Matched by name"). If two teammates share that name, or nobody has it, the agent stays Unmapped until an admin picks the right person. An admin can always change or add a match ("Set by admin"), or clear one (it shows Unmapped) — and TED never re-matches someone an admin cleared.
Choosing a number
A phone number can only belong to one person on your team at a time. Everyone still appears in the dropdown, but anyone who can't take the number right now is grayed out with the reason next to their name — for a number someone else already holds, that reason is "unassign first — currently held by" whoever has it. Set the number to "— Unassigned —" and it frees up immediately for the new person. For Dialpad, a number can only be assigned to the person it's actually assigned to in Dialpad; map that person in the People table first if they aren't matched yet.
Choosing your own number
An admin can assign you a number from the Numbers table above, but you don't have to wait on one — once your team's phone system is connected, go to your Profile (select your name or avatar, then Profile) and find the My phone number card:
- No number chosen yet — pick one from the dropdown and select Save. TED sends your texts from this number.
- No numbers to choose from yet (smrtPhone) — "Your numbers appear here after your first call or text through smrtPhone."
- You already have a number — it's shown next to Change (pick a different one) and Clear (remove your number entirely).
- On Dialpad, and you're not mapped yet — the card tells you to ask a team admin to link you to your Dialpad user first (see People above); there's nothing to pick until then.
- Numbers you can't take are grayed out with the reason next to them — "Used by [name]" when a teammate holds it, or "Not assigned to this user in Dialpad" when Dialpad says the number belongs to someone else. (Admins see slightly different wording in the settings Numbers table, where a held number reads "unassign first — currently held by [name]".)
If you pick a number and someone else grabs it first, TED shows "That number was just taken by [name]" and refreshes the list so you can pick another — nothing is saved in that case.
Keeping things in sync
- Re-sync (Dialpad) — pulls the latest numbers and people from Dialpad without needing to reconnect. Use this after you add or remove numbers or people there. smrtPhone has nothing to re-sync — even with texting turned on — so the button doesn't appear; its numbers and people update from calls and texts.
- Update API key (Dialpad) — rotate the saved key (for example, after a scheduled key expiry). TED never shows the key that's currently saved; you only need to enter a new one if you're changing it.
- Disconnect — removes the connection, every number, and everyone's chosen number. Past texts and call history are kept. For Dialpad you'll need the API key again to reconnect; for smrtPhone the webhook URL stops working and reconnecting gives you a new one to paste into smrtPhone.
Common issues
- "This team already has a phone system connected" — disconnect the current one first if you want to switch providers or accounts.
- "That account is already connected to another TED team" — the provider account is already in use elsewhere; ask whoever manages it there to disconnect it first.
- A rejected API key banner at the top of the page — the saved Dialpad key was rejected (often after it was rotated or revoked on Dialpad's side). Texts and call logging are paused until an admin updates the key.
- The Texting from TED card says Paused — smrtPhone rejected the saved key. Only texting is paused; select Replace key and paste the current key from smrtPhone ▸ Admin ▸ API Tokens.
- smrtPhone stays on "Waiting for the first event…" — check the URL in smrtPhone's webhook settings matches the one on this page exactly (if you selected Get a new URL, the old one no longer works), and that the events listed in the guide are ticked. Then make a test call or text.
- A smrtPhone agent shows Unmapped — their name in smrtPhone doesn't exactly match one teammate's full name in TED (or matches two). Pick the right teammate in the People table.
- Texts sent from your CRM don't show up in TED — smrtPhone only tells TED about texts sent from the smrtPhone app itself. Texts your reps send from your CRM, and smrtPhone auto-replies, aren't logged in TED. Calls and incoming texts are logged either way.
- A number can't be assigned to someone — the grayed-out reason next to their name in the dropdown says why: it's either already taken by someone else (set the number to "— Unassigned —" first, then assign them), or (Dialpad only) it isn't assigned to that person in Dialpad yet.