Skip to main content
POST
/
v2
/
admin
/
extensions
/
voice
/
Create Voice Extension
curl --request POST \
  --url https://api.voxo.co/v2/admin/extensions/voice/ \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "tenantId": 123,
  "name": "<string>",
  "number": "<string>",
  "emergencyLocationId": 123,
  "recordingEmail": "jsmith@example.com",
  "branchId": 123
}
'
{
  "id": 123,
  "name": "<string>",
  "number": "<string>",
  "email": "<string>",
  "peerName": "<string>",
  "dnd": "<string>",
  "callerIdNumber": "<string>",
  "enableMeet": 123,
  "enableTranscription": 123,
  "trunk": "<string>",
  "trunkHost": "<string>",
  "trunkCallerIdSource": "<string>",
  "trunkEmergencyCallerIdOverride": "<string>",
  "callLimit": 123,
  "mailbox": "<string>",
  "recording": "<string>",
  "dialTimeout": 123,
  "outboundDialPrefix": "<string>",
  "enableDirectFax": 123,
  "recordingEmail": "<string>",
  "includeInDialByName": "<string>",
  "includeInPhonebook": "<string>",
  "enableForwarding": "<string>",
  "emergencyLocationComment": "<string>",
  "tenant": {
    "id": 123,
    "name": "<string>"
  },
  "branch": {
    "id": 123,
    "name": "<string>"
  },
  "routingProfile": {
    "id": 123,
    "name": "<string>",
    "type": "<string>"
  },
  "musicOnHold": {
    "id": 123,
    "name": "<string>"
  },
  "user": {
    "id": 123,
    "email": "<string>"
  },
  "efaxUser": {
    "id": 123,
    "name": "<string>",
    "email": "<string>",
    "callerIdNumber": "<string>"
  },
  "emergencyLocation": {
    "id": 123,
    "address": "<unknown>"
  },
  "devices": [],
  "noAnswerDestinations": [],
  "busyDestinations": [],
  "offlineDestinations": [],
  "forwardingDestinations": []
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
tenantId
number
required
name
string
required
Minimum string length: 3
number
string
required
Required string length: 2 - 10
Pattern: ^\d+$
emergencyLocationId
number
required
recording
enum<string>
required
Available options:
yeschange,
no,
nochange
recordingEmail
required
Pattern: ^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$
branchId
number
required
email
Pattern: ^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$
sendInvite
number
default:0
Required range: 0 <= x <= 1
emergencyLocation
string | null
callerIdNumber
string
Pattern: ^[1-9]\d{9}$
enableMeet
number
default:1
Required range: 0 <= x <= 1
enableTranscription
number
default:1
Required range: 0 <= x <= 1
enableDirectFax
number
default:0
Required range: 0 <= x <= 1
faxCallerIdNumber
string
Pattern: ^[1-9]\d{9}$
device
object

Response

Created voice extension

id
number
required

Extension ID

name
string | null
required

Extension name

number
string | null
required

Extension number

email
string | null
required

Extension email

peerName
string | null
required

SIP peer name

dnd
string | null
required

Do not disturb state

callerIdNumber
string | null
required

Outbound caller ID number

enableMeet
number
required

Meet enabled (1 = yes, 0 = no)

enableTranscription
number
required

Transcription enabled (1 = yes, 0 = no)

trunk
string | null
required

Trunk state

trunkHost
string | null
required

Trunk host

trunkCallerIdSource
string | null
required

Trunk caller ID source

trunkEmergencyCallerIdOverride
string | null
required

Trunk emergency caller ID override

callLimit
number | null
required

Concurrent call limit

mailbox
string | null
required

Mailbox address

recording
string | null
required

Call recording mode

dialTimeout
number | null
required

Inbound ring timeout (seconds)

outboundDialPrefix
string | null
required

Outbound dial prefix

enableDirectFax
number
required

Direct fax enabled (1 = yes, 0 = no)

recordingEmail
string | null
required

Recording delivery email

includeInDialByName
string | null
required

Dial-by-name inclusion

includeInPhonebook
string | null
required

Phonebook inclusion

enableForwarding
string | null
required

Forwarding state

emergencyLocationComment
string | null
required

Free-text emergency location comment

tenant
object
required

Owning tenant

branch
object
required

Branch

routingProfile
object
required

Routing profile

musicOnHold
object
required

Music on hold

user
object
required

Linked user

efaxUser
object
required

eFax user mapping

emergencyLocation
object
required

Emergency location

devices
object[]
required

Assigned devices

noAnswerDestinations
object[]
required

No-answer routing

busyDestinations
object[]
required

Busy routing

offlineDestinations
object[]
required

Offline routing

forwardingDestinations
object[]
required

Unconditional forwarding