SIP Integration
Configure and manage SIP for inbound call routing via Bland.
Overview
Bland supports inbound SIP termination, allowing customers to direct calls from their SIP provider to Bland for handling.
This guide provides:
- SIP connection details
- Requirements and security settings
- Instructions for attaching, updating, and detaching SIP routes via Bland’s API
- Schema definitions and usage patterns
Entitlement Requirement
All /sip
endpoints are protected by an entitlement check.
Your organization must have the SIP
entitlement enabled to use SIP features. If not, all requests to the /sip
routes will return:
Contact support to have SIP enabled for your Enterprise organization.
SIP Termination Details
SIP Signaling Endpoint:
Static IP Addresses of the SIP Signalling Server(s):
Supported Codecs:
- Currently Supported: PCMU, PCMA
- Coming Soon: Opus, G722
Security Requirements:
- SIP Signaling: TLS 1.2 or higher
- RTP Media: SRTP using AES_CM_128_HMAC_SHA1_80
Other Configurations:
-
RTCP: Uses port RTP + 1
-
DTMF: RFC 2833 (Out-of-band via RTP payload)
-
Number Format: +E.164 or E.164 (both supported for origination and termination)
-
SIP Registration: Not required (Bland determines routing based on predefined configurations)
API Reference
Attach SIP Endpoint
POST /sip/attach
Attach a SIP configuration to a phone number.
The phone number to associate with the SIP configuration. Must be in E.164 format.
An array of directions for the SIP routing. Valid values: inbound
, outbound
. If outbound, you must also provide a sip_endpoint
.
Must be set to sip
.
Update SIP Direction
POST /sip/update
Update a phone number’s SIP routing direction.
The phone number for which to update the direction.
The updated direction object. Use type: outbound
and provide sip_endpoint
, or type: inbound
.
Detach SIP Endpoint
POST /sip/detach
Remove SIP configuration from a number.
The phone number to detach SIP routing from.
Direction(s) to remove. Either inbound
or outbound
.
Must be set to sip
.
Get SIP Config
GET /sip?inbound_id={inbound_id}
Returns current SIP configuration (if any) for a given inbound_id
.
(Optional) The ID of the inbound number to fetch SIP configuration for.
Example Response
Notes
- SIP media handling currently supports inbound-only termination.
- Phone numbers can be attached independently for inbound and outbound routing via the API.
- All requests must conform to the expected schema; invalid payloads will be rejected with a 400 response.
- Each API response includes a success status and, if applicable, an error message to aid debugging.