Intry

Virtual numbers

Admin API for virtual number pool management.

Overview

Virtual numbers are E.164 phone numbers assigned per unit (ADR-001). Each tenant has a cap of unitCount + 5 numbers.

Deep runbook: docs/VIRTUAL_NUMBER_MANAGEMENT.md.

Endpoints

Base path: /api/admin/virtual-numbers

MethodPathDescription
GET/List numbers (filter by status, tenant)
GET/summaryPool summary counts
GET/healthSync health with carrier
GET/settingsAuto-provision settings
PUT/settingsUpdate settings
POST/search-availableSearch carrier inventory
POST/purchaseBuy and add to pool
POST/syncSync with Twilio/Telnyx account
POST/reconcileReconcile DB vs carrier
POST/Create number record
GET/:idFetch one
PUT/:idUpdate
POST/:id/assignAssign to unit
POST/:id/releaseRelease from unit (may quarantine)

Key fields

FieldNotes
e164E.164 format (unique)
telephonyProvidertwilio or telnyx
unitIdAssigned unit (null when in pool)
quarantineUntilCooling period after release
statusPool lifecycle state

Provider behavior

  • VirtualNumber.telephonyProvider is canonical for inbound voice routing.
  • VNMS purchase accepts provider param; defaults depend on property override.
  • When TELEPHONY_PROVIDER=telnyx, sync uses Telnyx inventory API.

Last verified: 2026-06-21 (commit 293c4a7)

On this page