Virtual phone numbers for business: search, order and manage by API

Find a number by country, type and capability, see the documents required before you order, then attach it to a project. Custom quote pricing.

Custom quote

A virtual phone number is not tied to a physical line. It receives calls, SMS or both, and forwards them to your application, a SIP endpoint or a call flow.

In TELQIO, search results show each number's country, type and voice and SMS capabilities, plus any documents the country requires. You see these conditions before you order, not after.

Every ordered number is attached to a project. Call logs, messages and usage stay readable by project, by number or by country.

How it flows

Search
Select
Terms and quote
Documents validated
Attached to project

Practical uses

One number per site or branch

Give each location a local number and follow its activity separately.

One number per campaign

Reserve dedicated numbers to see which source drives calls, with call tracking.

Inbound numbers for your product

Give each environment or customer of your SaaS an inbound number wired to your webhooks.

Moving existing numbers

Prepare a porting request with the list of documents expected for the country.

Features

  • Search by country, number type, prefix and voice or SMS capability
  • Stock status, required documents and confirmed lead time shown up front
  • Ordering with document validation before activation
  • Each number attached to a project
  • number.activated event sent to your signed webhook
  • Usage readable by number, project and country

Limits to know

  • Which number types exist depends on the country, the selected provider and your contract.
  • A number is offered only when the country and capability are approved, stock is present and the country's obligations are met.
  • Some countries require proof of identity or address. Activation time then depends on how quickly documents are validated.
  • A number that can place calls cannot always receive SMS. Check each capability separately.
  • A reservation can expire and stock can change between search and order. The order tells you explicitly.
Fictional example: search a French local number, then order it. The order is a simulation until a provider is configured.
# Search
curl "https://api.example.test/v1/numbers/search?country=FR&type=local" \
  -H "Authorization: Bearer tq_test_EXEMPLE"
# => { "data": [{ "e164": "+33199001234", "country": "FR", "type": "local",
#      "capabilities": ["voice","sms"], "documents_required": [] }] }

# Order
curl -X POST "https://api.example.test/v1/number-orders" \
  -H "Authorization: Bearer tq_test_EXEMPLE" \
  -H "Idempotency-Key: 7b1d2c4e-0000-4000-8000-000000000001" \
  -H "Content-Type: application/json" \
  -d '{ "e164": "+33199001234", "project_id": "project_a" }'
# => { "id": "ord_example", "status": "pending_validation", "simulated": true }

Technical details

Number formatE.164, no spaces
ReadGET /numbers and GET /numbers/search, cursor pagination
OrderPOST /number-orders, with an Idempotency-Key header
Initial statuspending_validation, until documents are validated
Notificationnumber.activated event, signed webhook

Frequently asked questions

Can I order a number in any country?

No. The country list is a reference, not active coverage. A number is offered only when the country and the capability have been validated with the selected provider.

What if stock changes while I order?

A reservation can expire or the stock can disappear. The console and the API say so clearly, and you can search again without losing the rest of your request.

How do I find out what a number costs?

Terms are set by custom quote, based on country, number type and expected volume. They are shown to you before you order.

Related use cases

Documentation

Related services

Tell us which numbers you need

Share the countries, number types and capabilities you want. We will prepare a quote with the conditions and documents expected.