Buy a dedicated US/CA phone number for 30 days via micropayment — $20.00 per number, USDC on Base.
What it does
POST /api/number is a paid endpoint on StablePhone that provisions a dedicated US or Canadian phone number for 30 days. You specify an optional 3-digit area code and country code (US or CA); if omitted, a random area code is assigned and US is the default. The endpoint costs $20.00, settled via x402 or MPP (USDC on Base / Tempo). On success it returns the provisioned E.164 phone number and its expiration timestamp.
The purchased number can be used as the outbound caller ID (the `from` field) when making AI phone calls through the companion POST /api/call endpoint ($0.54 per call). Numbers expire after 30 days but can be extended in 30-day increments at $15.00 each via POST /api/number/topup — top-ups stack, so you can prepay months ahead. To list all numbers owned by your wallet, use GET /api/numbers (free, SIWX auth).
StablePhone requires no API keys or accounts. Authentication for paid endpoints is handled by the x402/MPP payment challenge (HTTP 402), while free read endpoints use SIWX (Sign-In With X) wallet authentication. The underlying telephony is powered by Bland.ai. Note that the endpoint only accepts POST requests — HEAD and GET return 405, which is expected behavior.
Capabilities
Use cases
- —Provisioning a dedicated outbound caller ID for AI phone call campaigns
- —Acquiring a local-area-code number for region-specific outreach
- —Giving an AI agent its own phone number for recurring call tasks
- —Setting up a temporary number for a 30-day project or event
Fit
Best for
- —AI agents that need a persistent outbound caller ID
- —Developers building automated calling workflows without traditional telecom accounts
- —Crypto-native applications that pay per resource with USDC
Not for
- —Receiving inbound calls or SMS (no inbound routing documented)
- —Long-term number ownership without recurring top-ups
- —Non-US/CA phone numbers
Quick start
# 1. POST to buy a number (will return 402 — pay with x402/MPP client)
curl -X POST https://stablephone.dev/api/number \
-H 'Content-Type: application/json' \
-d '{"area_code": "415", "country_code": "US"}'Example
Request
{
"area_code": "415",
"country_code": "US"
}Response
{
"success": true,
"expires_at": "2025-07-14T00:00:00.000Z",
"phone_number": "+14155551234"
}Endpoint
Quality
Full OpenAPI schema with request/response definitions, clear pricing ($20.00), detailed guidance docs, and well-documented companion endpoints. The probe returned 405 because the endpoint is POST-only and was probed with HEAD/GET, which is expected. Deducted slightly because /docs returns 404 and there are no standalone docs pages beyond the landing page and llms.txt.
Warnings
- —Probe returned 405 on HEAD/GET — endpoint is POST-only, which is normal but means the MPP challenge was not directly captured for this method
- —No inbound call/SMS capability documented — numbers appear to be outbound caller-ID only
- —Numbers expire after 30 days; must top up at $15.00/30 days to retain
- —/docs page returns 404 — no dedicated documentation site beyond the landing page and OpenAPI spec
Citations
- —POST /api/number costs $20.00 and provisions a phone number for 30 dayshttps://stablephone.dev
- —Supports US and CA country codes with optional 3-digit area codehttps://stablephone.dev
- —Top-ups cost $15.00 and extend by 30 days; top-ups stackhttps://stablephone.dev
- —Payment via x402 or MPP (USDC on Base / Tempo); no API keys or accounts requiredhttps://stablephone.dev
- —Underlying telephony powered by Bland.aihttps://stablephone.dev