Documentation
Phone number formats
Post what your user typed. E.164 is taken verbatim; anything else normalises against a country you can control.
Post what your user typed. E.164 (+61412345678) is unambiguous and always taken verbatim. Anything else is normalised against a country, resolved in this order:
countryon your request. Send it if your form knows where the user is. Explicit beats everything.- Your workspace's own number. A workspace sending from
+61…is assumed to be verifying Australian numbers. This corrects itself — buy a US number and your US customers start normalising correctly with no config change. AU.
"0412 345 678" country=AU -> +61412345678
"415 555 0123" country=US -> +14155550123
"07700 900123" country=GB -> +447700900123
"021 123 4567" country=NZ -> +64211234567
"+14155550123" (any) -> +14155550123 unchanged
Spaces, dashes and brackets are ignored.
Supported countries: AU, US, CA, GB, NZ. A national-format number from anywhere else must be sent as E.164 — we would rather reject it than guess a country code and call a stranger.
Check the number we echo back
Every response contains the normalised phone. If it is not the number you meant, your country is wrong — and you will see it on your first request rather than discovering it from a phone bill.
POST /v1/otp/check normalises phone identically, so the same input works on both calls.