v77

latestOpenAPI 3.1.0MITraw.githubusercontent.com2026-08-012528701.8 MB
SIP Endpoints (Legacy)

Create SIP endpoint

Creates a new SIP endpoint.

<Warning>This endpoint is deprecated. Use SIP Credentials instead.</Warning>

Permissions

The API token used to authenticate must have the following scope(s) enabled to make a successful request: Voice.

Learn more about API scopes.

post/api/relay/rest/endpoints/sip

Request body

usernamestring required

String representing the username portion of the endpoint. Must be unique across your project and must not contain white space characters or @.

passwordstring required

A password to authenticate registrations to this endpoint.

caller_idstring

Friendly Caller ID used as the CNAM when dialing a phone number or the From when dialing another SIP Endpoint.

send_asstring

When dialing a PSTN phone number, you must send it From a number you have purchased or verified. send_as indicates which number this endpoint has set as its origination. random indicates it will randomly choose a purchased or verified number from within the project.

ciphersstring[]

A list of encryption ciphers this endpoint will support.

codecsstring[]

A list of codecs this endpoint will support.

encryption'default' | 'required' | 'optional'

Specifies the encryption requirements for connections to this endpoint.

call_handler'relay_context' | 'relay_topic' | 'relay_application' | 'relay_connector' | 'relay_script' | 'laml_webhooks' | 'laml_application' | 'dialogflow' | 'video_room' | 'call_flow' | 'ai_agent'

What type of handler you want to run on inbound calls.

call_request_urlstring

The LaML URL to access when a call is received. Required when call_handler is laml_webhooks.

call_request_method'GET' | 'POST'

The HTTP method to use with call_request_url.

call_fallback_urlstring

The LaML URL to access when the call to call_request_url fails. Required when call_handler is laml_webhooks.

call_fallback_method'GET' | 'POST'

The HTTP method to use with call_fallback_url.

call_status_callback_urlstring

A URL to send status change messages to. Required when call_handler is laml_webhooks.

call_status_callback_method'GET' | 'POST'

The HTTP method to use with call_status_callback_url.

call_laml_application_idstring

The ID of the LaML application to forward incoming calls to. Required when call_handler is laml_application.

call_dialogflow_agent_idstring

The ID of the Dialogflow agent to forward incoming calls to. Required when call_handler is dialogflow.

call_relay_topicstring

The Relay topic to forward incoming calls to. Required when call_handler is relay_topic.

call_relay_topic_status_callback_urlstring

A URL to send status change messages to. Required when call_handler is relay_topic.

call_relay_contextstring

The Relay context to forward incoming calls to. Required when call_handler is relay_context.

call_relay_context_status_callback_urlstring

A URL to send status change messages to. Required when call_handler is relay_context.

call_relay_applicationstring

The Relay application to forward incoming calls to. Required when call_handler is relay_application.

call_video_room_idstring uuid

Universal Unique Identifier.

call_flow_idstring uuid

Universal Unique Identifier.

call_flow_versionstring

The version of the Call Flow to use. Valid values are 'working_copy' or 'current_deployed'.

call_ai_agent_idstring uuid

Universal Unique Identifier.

call_relay_script_urlstring

A URL of a SWML script to respond to incoming calls. Required when call_handler is relay_script.

Example request

{
  "username": "c3p0",
  "password": "yavinOrBust",
  "caller_id": "C-3P0",
  "send_as": "random",
  "encryption": "required",
  "call_handler": "ai_agent",
  "call_request_method": "POST",
  "call_fallback_method": "POST",
  "call_status_callback_method": "POST",
  "call_relay_topic": "office",
  "call_relay_topic_status_callback_url": "https://myapplication/handle_relay_callbacks",
  "call_relay_context": "office",
  "call_relay_context_status_callback_url": "https://myapplication/handle_relay_callbacks",
  "call_relay_application": "my-relay-app",
  "call_relay_script_url": "https://dev.signalwire.com/relay-bins/f9d13f68-f71e-4042-95bb-b07b9e2f2f92"
}

Response

The request has succeeded.

typestring required

A string representation of the type of object this record is.

idstring uuid required

Universal Unique Identifier.

usernamestring required

The username for the SIP endpoint.

caller_idstring nullable required

Friendly Caller ID used as the CNAM when dialing a phone number or the From when dialing another SIP Endpoint.

send_asstring required

When dialing a PSTN phone number, you must send it From a number you have purchased or verified. send_as indicates which number this endpoint has set as its origination. random indicates it will randomly choose a purchased or verified number from within the project.

ciphersstring[] required

A list of encryption ciphers this endpoint will support.

codecsstring[] required

A list of codecs this endpoint will support.

encryption'default' | 'required' | 'optional' required

Whether connections to this endpoint require encryption or if encryption is optional.

call_handler'relay_context' | 'relay_topic' | 'relay_application' | 'relay_connector' | 'relay_script' | 'laml_webhooks' | 'laml_application' | 'dialogflow' | 'video_room' | 'call_flow' | 'ai_agent' required

Call handler type for SIP endpoints.

calling_handler_resource_idstring uuid required

Universal Unique Identifier.

call_request_urlstring nullable required

A string representing the LaML URL to access when a call is received. This is only used (and required) when call_handler is set to laml_webhooks.

call_request_method'GET' | 'POST' nullable required

A string representing the HTTP method to use with call_request_url. Valid values are GET and POST.

call_fallback_urlstring nullable required

A string representing the LaML URL to access when the call to call_request_url fails. This is only used (and required) when call_handler is set to laml_webhooks.

call_fallback_method'GET' | 'POST' nullable required

A string representing the HTTP method to use with call_fallback_url. Valid values are GET and POST.

call_status_callback_urlstring nullable required

A string representing a URL to send status change messages to. This is only used (and required) when call_handler is set to laml_webhooks.

call_status_callback_method'GET' | 'POST' nullable required

A string representing the HTTP method to use with call_status_callback_url. Valid values are GET and POST.

call_laml_application_idstring nullable required

A string representing the ID of the LaML application to forward incoming calls to. This is only used (and required) when call_handler is set to laml_application.

call_dialogflow_agent_idstring nullable required

A string representing the ID of the Dialogflow agent to forward incoming calls to. This is only used (and required) when call_handler is set to dialogflow.

call_relay_topicstring nullable required

A string representing the Relay topic to forward incoming calls to. This is only used (and required) when call_handler is set to relay_topic.

call_relay_topic_status_callback_urlstring nullable required

A string representing a URL to send status change messages to. This is only used (and required) when call_handler is set to relay_topic.

call_relay_contextstring nullable required

A string representing the Relay context to forward incoming calls to. This is only used (and required) when call_handler is set to relay_context.

call_relay_context_status_callback_urlstring nullable required

A string representing a URL to send status change messages to. This is only used (and required) when call_handler is set to relay_context.

call_relay_applicationstring nullable required

A string representing the Relay application to forward incoming calls to. This is only used (and required) when call_handler is set to relay_application.

call_video_room_idstring uuid required

Universal Unique Identifier.

call_relay_script_urlstring nullable required

A string representing a URL of a SWML script to respond to incoming calls. This is only used (and required) when call_handler is set to relay_script.

Example response

{
  "type": "sip_endpoint",
  "username": "c3p0",
  "caller_id": "C-3P0",
  "send_as": "random",
  "encryption": "required",
  "call_request_method": "POST",
  "call_fallback_method": "POST",
  "call_status_callback_method": "POST",
  "call_relay_topic": "office",
  "call_relay_topic_status_callback_url": "https://myapplication/handle_relay_callbacks",
  "call_relay_context_status_callback_url": "https://myapplication/handle_relay_callbacks",
  "call_relay_script_url": "https://dev.signalwire.com/relay-bins/f9d13f68-f71e-4042-95bb-b07b9e2f2f92"
}