SIP Registrations

Last updated September 4, 2026

Inbound SIP AOR registrations and parked REGISTER attempts

# GET /sip/registrations

List active SIP AOR registrations

Returns every currently bound AOR contact, with the UDP/TCP/TLS socket on which the binding's REGISTER arrived. Use this list to know which AORs are dialable via the to field of POST /v1/legs.

Responses

200 List of bindings
FieldTypeDescription
bindingsarray[object]required
# DELETE /sip/registrations/{aor}

Force-unbind an AOR (or a single contact within it)

The AOR must be URL-encoded in the path (for example, sip:alice@vb.example is encoded as sip%3Aalice%40vb.example). Without query parameters, every Contact under the AOR is removed; with ?contact=<contact-uri> only that single Contact is removed.

Parameters

NameInTypeDescription
aorpathstringrequired

Responses

204 Binding(s) removed
400 Invalid AOR encoding
FieldTypeDescription
instance_idstringoptionalInstance identifier
errorstringrequiredError message
404 AOR (or specified contact) not found
FieldTypeDescription
instance_idstringoptionalInstance identifier
errorstringrequiredError message
# POST /sip/registrations/attempts/{id}/challenge

Challenge a parked inbound REGISTER with a 401 digest auth request

Targets an inbound REGISTER surfaced via the sip.registration_attempt event (by its attempt_id). Sends a SIP 401 with a WWW-Authenticate digest challenge; the UA's credentialed re-REGISTER is verified against the supplied credential and, on success, bound and answered with 200 OK. Provide either password or ha1. The attempt must still be parked (it auto-accepts after the consult timeout).

Parameters

NameInTypeDescription
idpathstringrequiredLeg ID

Request Body

FieldTypeDescription
realmstringrequired
usernamestringoptional
passwordstringoptional
ha1stringoptional
algorithmstringoptional
qoparray[string]optional
max_expiresintegeroptional

Responses

202 401 challenge queued
400 Missing realm/credential
FieldTypeDescription
instance_idstringoptionalInstance identifier
errorstringrequiredError message
404 Registration attempt not found or already decided
FieldTypeDescription
instance_idstringoptionalInstance identifier
errorstringrequiredError message
# POST /sip/registrations/attempts/{id}/accept

Accept a parked inbound REGISTER attempt

Binds the AOR and replies 200 OK for an inbound REGISTER surfaced via the sip.registration_attempt event (by its attempt_id). Equivalent to letting the consult timeout elapse, but immediate. An optional max_expires caps the granted binding TTL.

Parameters

NameInTypeDescription
idpathstringrequiredLeg ID

Request Body

FieldTypeDescription
max_expiresintegeroptional

Responses

202 Accept queued
400 Invalid max_expires
FieldTypeDescription
instance_idstringoptionalInstance identifier
errorstringrequiredError message
404 Registration attempt not found or already decided
FieldTypeDescription
instance_idstringoptionalInstance identifier
errorstringrequiredError message
# POST /sip/registrations/attempts/{id}/reject

Reject a parked inbound REGISTER attempt

Replies with a non-2xx (403 Forbidden by default; override via code/reason) for an inbound REGISTER surfaced via the sip.registration_attempt event (by its attempt_id).

Parameters

NameInTypeDescription
idpathstringrequiredLeg ID

Request Body

FieldTypeDescription
codeintegeroptional
reasonstringoptional

Responses

202 Reject queued
404 Registration attempt not found or already decided
FieldTypeDescription
instance_idstringoptionalInstance identifier
errorstringrequiredError message

Schemas

Objects used by the SIP Registrations endpoints above.

ChallengeRequest

FieldTypeDescription
realmstringrequired
usernamestringoptional
passwordstringoptional
ha1stringoptional
algorithmstringoptional
qoparray[string]optional
max_expiresintegeroptional

Error

FieldTypeDescription
instance_idstringoptionalInstance identifier
errorstringrequiredError message

RegistrationAcceptRequest

FieldTypeDescription
max_expiresintegeroptional

RegistrationRejectRequest

FieldTypeDescription
codeintegeroptional
reasonstringoptional

RegistrationView

FieldTypeDescription
aorstringrequired
contactstringrequired
socketstringrequired
transportstringrequired
user_agentstringoptional
call_idstringoptional
app_idstringoptional
created_atstringrequired
last_refreshstringrequired
expires_atstringrequired
granted_expires_secondsintegerrequired

RegistrationsResponse

FieldTypeDescription
bindingsarray[object]required