Phone numbers for AI agents: a fresh one for every signup
Your agent picks a country and a service, gets a private number over the API, reads the verification code, and hands the number back. Pay per code that arrives, not per month.
Counts read from the API on . Live prices and availability sit in the buying widget.
What your agent does with a number
Three jobs, one API key. No human has to be at the keyboard for any of them.
Sign up where the service expects a local number
Most verification checks look at the country the number comes from. An agent registering an Indonesian marketplace account with a US number gets refused before the SMS is even sent. Pick the country in the request and that whole class of failure disappears.
Countries, operators and what is online right now come from
getCountryAndOperators and getServicesAndCostWithStatistics.
Your agent chooses on live data instead of a list pinned in its prompt.
Pick a country
Read the code, not an inbox
The API hands back the verification code itself, already parsed out of the SMS.
Your agent polls one endpoint and gets STATUS_OK:123456 back. There is
no message text to pick the digits out of, and no regex to fix when a service
rewrites its wording.
The number belongs to your agent alone for those 20 minutes. Nobody else sees the code, because nobody else holds the number.
Your login code: 123456. Do not give this code to anyone, even if they say they are from Telegram.
Carry the second factor too
An account is only finished when the second factor is handled. When the service shows an authenticator secret, your agent stores it next to the API key and computes the six digits locally, by RFC 6238, in thirty-second windows. No third party ever sees the secret.
The recipe with working code is in the agent skill, next to the calls that order a number and read the SMS.
Computed from the stored secret. Nothing leaves the machine.
Give your agent a number in minutes
Hand the skill to Claude Code or Codex, connect the MCP server, or call the API directly. The runner changes; the four calls underneath do not.
Claude Code
Codex
MCP server
Same tools in Codex, Cursor or anything that reads an MCP config.
Plain curl
Why one permanent number stops being enough
A single phone number is fine while an agent talks to one person. It stops working the moment the agent starts creating accounts.
One number, kept forever
The second signup on the same number is the one that gets refused: services remember which number already verified an account. Registering in another country is off the table entirely, and when several agents are handed the same phone number, the codes that arrive on it are not only yours.
A new number for each signup
Every activation starts clean, in the country the service expects, held by nobody but your agent. When the code has been read, the number goes back and you stop paying for it.
Need a phone number that stays for a while, for an account that keeps receiving codes? Rent one from a day.
How SV Number compares with the carrier products
Each page reads what the other side publishes and puts it next to ours, including the rows where they win.
- SV Number vs AgentLine: United States and Canada on their side, 211 on ours
- SV Number vs AgentPhone: United States and Canada on their side, 211 on ours
- SV Number vs AgentNumber: United States on their side, 211 on ours
- SV Number vs OP: United States on their side, 211 on ours
What it costs
No subscription and no seat fee. You top up a balance and spend it per code.
Pay per code
$0.43 / verification, from $0.01
- Private phone number, 211 countries, full API access
- No code in 20 minutes and the money returns to your balance automatically
- 150 requests per second; what you can run is bounded by your balance
Rent from a day
- The same number keeps receiving codes
- For accounts that have to stay reachable
- Ordered from the site; prices sit in the widget
What happens when it goes wrong
Verification fails sometimes. What matters is who pays for it.
If the code never arrives
If nothing arrives within the 20 minutes, the money goes back to your balance on
its own. Your agent does not have to wait that long: setStatus=8 ends
the activation right away and returns the money in full. Terms are in the
refund policy.
How often the code actually arrives
getServicesAndCostWithStatistics returns, for each app and country,
the share of codes that reached other users, alongside how many numbers are live
right now. Where the share is measured, your agent can move to a better country
before it spends anything instead of finding out by waiting.
Method names your code already knows
The methods are the ones used across this market: getNumber,
getStatus and setStatus. An existing client mostly needs
a new base URL, plus the lang parameter on every call: it picks the
currency of the answer, and the default is not dollars.
Questions agents ask first
How does my agent get an API key?
What happens if the SMS never arrives?
Can the number stay longer than 20 minutes?
Can my agent send SMS or make calls from the number?
Who else can see the code?
Which countries and services are available?
getCountryAndOperators and getServicesAndCost rather
than pinning them in your prompt.
How many activations can run at once?
Give your agent a number it can use anywhere
Top up once, hand over the key, and let it work.