Handset
Not connected

Passcode accepted
Twilio refused the connection

A dropped connection now retries itself, with a fresh token, five times before it lands here — so reaching this screen means the network is still down, or the Twilio account behind this phone no longer works. If it was working earlier today it's the former: Retry once you're back online. Otherwise open Settings and connect the account again — that rebuilds the key this phone signs in with.

Handset
  1. 1 · Account
  2. 2 · Number

Connect your Twilio account

Handset runs on your own Twilio account, so Twilio bills you directly and nobody else's phone shares it. Two values and you're done.

Where to find these

  1. Open the Twilio console — it lands on your account's home page.
  2. Under Account Info, copy the Account SID.
  3. Below it, click Show next to Auth Token, then copy that.

Handset uses them once, to create its own key inside your account. You can revoke that key from Settings here, or in Twilio, at any time.

Which number should ring here?

Pick one and Handset points it at this phone, so calls and texts to it arrive in this browser. You can change it later.

There are no phone numbers on this account yet. Buy one in the Twilio console — it takes a minute, and it's billed to you — then come back and refresh.

Activity
Not connected

What Twilio has charged, month by month. These are charges, not receipts — Twilio's API publishes usage and the remaining prepaid balance, but not invoices or top-ups, so a payment you made shows up here only as balance that went back up. Call rates per country →

What a minute costs to dial out, per country. Twilio prices a country by dialling prefix rather than as one number, so calling a mobile can cost several times what calling a landline in the same country does. Both are here, and the dearest prefix as well — that's the one that surprises you.

Twilio account
Checking…
Also ring my phone
My phone
Where inbound calls are forwarded, and the phone the handset CLI rings when it places a call for you. Leave empty to turn forwarding off entirely.
Email me missed calls
Record every call
Tell callers, on incoming
Plays “This call is being recorded” before your phone rings. It answers the call to do that, so the caller stops hearing ringing and the minutes start a few seconds earlier.
Tell them, on outgoing
Whispered to the person you called as they pick up, before you're connected. You hear nothing and it costs nothing.
Worth knowing: recording someone without telling them is a criminal offence in all-party-consent states — Illinois, where this number is, along with California, Florida, Washington and around a dozen others. Israel needs only one party to consent. The announcements are on unless you turn them off.
Command line
One file, no dependencies beyond bash and python3. Place calls, search contacts and read messages from a terminal or a script.

            
Then export HANDSET_PASSCODE=… and run handset. Download directly.
Port a number in

Moving a number in. The steps are in this order for one reason: cancelling the old service before the port completes loses the number permanently.

Where is it now?

    New contact

    Dialer

    Arrows move · Enter presses · Esc back · type to search

    Incoming call
    00:00