Available Operations
 
 

Programmable SIP API

The Programmable SIP API lets you create and configure Programmable SIP Domains in Vonage's platform.

Available Operations:

Create a PSIP domain

Create a new PSIP domain

POST https://api.nexmo.com/v1/psip
Host https://api.nexmo.com
POST /v1/psip

Authentication

Key Description Example Default
Authorization Base64 encoded API key and secret joined by a colon.
Read more
Basic <base64> None

Request body application/json

Create a new PSIP domain

name
string | Required | Min: 5 | Max: 32

The customised SIP domain that will used in Programmable SIP: mydomain.sip-eu.nexmo.com

application_id
string | Required

Vonage Application ID to associate with the domain

acl
array of strings | Required

Access Control List of IPs that can make calls to domain. Can use CIDR notation to facilitate inclusion of IP ranges.

tls
string

Require TLS use in SIP connection. Default is optional, which allows customer to use TLS or not. Always will require it to alway be used. Never will require it to never be used.

Must be one of: always, never or optional
srtp
string

Require SRTP use in SIP connection. Default is optional, which allows customer to use SRTP or not.

Must be one of: always, never or optional

Responses

201 Created
name
string

The customised SIP domain that will used in Programmable SIP: mydomain.sip-eu.nexmo.com

application_id
string

Vonage Application ID to associate with the domain

tls
string

Require TLS use in SIP connection. Default is optional, which allows customer to use TLS or not. Always will require it to alway be used. Never will require it to never be used.

One of: always, never or optional
srtp
string

Require SRTP use in SIP connection. Default is optional, which allows customer to use SRTP or not.

One of: always, never or optional
acl
array of strings

Access Control List of IPs that can make calls to domain. Can use CIDR notation to facilitate inclusion of IP ranges.

Example Request » Domain

{
  "name": "mydomain",
  "application_id": "c49f3586-9b3b-458b-89fc-3c8beb58865c",
  "acl": [
    "50.127.127.0/29",
    "192.168.0.1"
  ]
}

Example Responses

201 400 401 422 500
{
  "name": "mydomain",
  "application_id": "c49f3586-9b3b-458b-89fc-3c8beb58865c",
  "tls": "abc123",
  "srtp": "abc123",
  "acl": [
    "50.127.127.0/29",
    "192.168.0.1"
  ]
}
{
  "type": "https://www.nexmo.com/messages/Errors#InvalidParams",
  "title": "The request body did not contain valid JSON",
  "detail": "Unexpected character ('\"' (code 34)): was expecting comma to separate Object entries"
}
{
  "type": "https://www.nexmo.com/messages/Errors#Unauthorized",
  "title": "Invalid credentials supplied",
  "detail": "You did not provide credentials."
}
{
  "title": "Unprocessable Entity-Invalid request parameters",
  "detail": "Request lacks domain's name, acl or application id"
}
{
  "type": "https://www.nexmo.com/messages/Errors#InternalError",
  "title": "Service internal #InternalError",
  "detail": "An unknown error encountered"
}

Get details of your PSIP domain

Get details of your PSIP domain

GET https://api.nexmo.com/v1/psip/:domain
Host https://api.nexmo.com
GET /v1/psip/:domain

Authentication

Key Description Example Default
Authorization Base64 encoded API key and secret joined by a colon.
Read more
Basic <base64> None

Path Parameters

domain
string | Required

Filter by domain name

Responses

200 OK
name
string

The customised SIP domain that will used in Programmable SIP: mydomain.sip-eu.nexmo.com

application_id
string

Vonage Application ID to associate with the domain

tls
string

Require TLS use in SIP connection. Default is optional, which allows customer to use TLS or not. Always will require it to alway be used. Never will require it to never be used.

One of: always, never or optional
srtp
string

Require SRTP use in SIP connection. Default is optional, which allows customer to use SRTP or not.

One of: always, never or optional
acl
array of strings

Access Control List of IPs that can make calls to domain. Can use CIDR notation to facilitate inclusion of IP ranges.

Example Responses

200 401 404 500
{
  "name": "mydomain",
  "application_id": "c49f3586-9b3b-458b-89fc-3c8beb58865c",
  "tls": "abc123",
  "srtp": "abc123",
  "acl": [
    "50.127.127.0/29",
    "192.168.0.1"
  ]
}
{
  "type": "https://www.nexmo.com/messages/Errors#Unauthorized",
  "title": "Invalid credentials supplied",
  "detail": "You did not provide credentials."
}
{
  "type": "https://www.nexmo.com/messages/Errors#NotFound",
  "title": "Invalid domain selected",
  "detail": "The domain you're trying to interact with is invalid"
}
{
  "type": "https://www.nexmo.com/messages/Errors#InternalError",
  "title": "Service internal #InternalError",
  "detail": "An unknown error encountered"
}

Update a PSIP domain

Update a PSIP domain

PUT https://api.nexmo.com/v1/psip/:domain
Host https://api.nexmo.com
PUT /v1/psip/:domain

Authentication

Key Description Example Default
Authorization Base64 encoded API key and secret joined by a colon.
Read more
Basic <base64> None

Path Parameters

domain
string | Required

Filter by domain name

Request body application/json

Create or update a PSIP domain

name
string | Required | Min: 5 | Max: 32

The customised SIP domain that will used in Programmable SIP: mydomain.sip-eu.nexmo.com

application_id
string | Required

Vonage Application ID to associate with the domain

acl
array of strings | Required

Access Control List of IPs that can make calls to domain. Can use CIDR notation to facilitate inclusion of IP ranges.

tls
string

Require TLS use in SIP connection. Default is optional, which allows customer to use TLS or not. Always will require it to alway be used. Never will require it to never be used.

Must be one of: always, never or optional
srtp
string

Require SRTP use in SIP connection. Default is optional, which allows customer to use SRTP or not.

Must be one of: always, never or optional

Responses

201 Created
name
string

The customised SIP domain that will used in Programmable SIP: mydomain.sip-eu.nexmo.com

application_id
string

Vonage Application ID to associate with the domain

tls
string

Require TLS use in SIP connection. Default is optional, which allows customer to use TLS or not. Always will require it to alway be used. Never will require it to never be used.

One of: always, never or optional
srtp
string

Require SRTP use in SIP connection. Default is optional, which allows customer to use SRTP or not.

One of: always, never or optional
acl
array of strings

Access Control List of IPs that can make calls to domain. Can use CIDR notation to facilitate inclusion of IP ranges.

Example Request » Domain

{
  "name": "mydomain",
  "application_id": "c49f3586-9b3b-458b-89fc-3c8beb58865c",
  "acl": [
    "50.127.127.0/29",
    "192.168.0.1"
  ]
}

Example Responses

201 400 401 422 500
{
  "name": "mydomain",
  "application_id": "c49f3586-9b3b-458b-89fc-3c8beb58865c",
  "tls": "abc123",
  "srtp": "abc123",
  "acl": [
    "50.127.127.0/29",
    "192.168.0.1"
  ]
}
{
  "type": "https://www.nexmo.com/messages/Errors#InvalidParams",
  "title": "The request body did not contain valid JSON",
  "detail": "Unexpected character ('\"' (code 34)): was expecting comma to separate Object entries"
}
{
  "type": "https://www.nexmo.com/messages/Errors#Unauthorized",
  "title": "Invalid credentials supplied",
  "detail": "You did not provide credentials."
}
{
  "title": "Unprocessable Entity-Invalid request parameters",
  "detail": "Request lacks domain's name, acl or application id"
}
{
  "type": "https://www.nexmo.com/messages/Errors#InternalError",
  "title": "Service internal #InternalError",
  "detail": "An unknown error encountered"
}

Delete PSIP domain

Delete a PSIP domain

DELETE https://api.nexmo.com/v1/psip/:domain
Host https://api.nexmo.com
DELETE /v1/psip/:domain

Authentication

Key Description Example Default
Authorization Base64 encoded API key and secret joined by a colon.
Read more
Basic <base64> None

Path Parameters

domain
string | Required

Filter by domain name

Example Responses

200 401 404 500

This endpoint does not support application/json

{
  "type": "https://www.nexmo.com/messages/Errors#Unauthorized",
  "title": "Invalid credentials supplied",
  "detail": "You did not provide credentials."
}
{
  "type": "https://www.nexmo.com/messages/Errors#NotFound",
  "title": "Invalid domain selected",
  "detail": "The domain you're trying to interact with is invalid"
}
{
  "type": "https://www.nexmo.com/messages/Errors#InternalError",
  "title": "Service internal #InternalError",
  "detail": "An unknown error encountered"
}