Skip to content

Resolve call routing

POST
/v1/ns/{nsid}/lcr/tables/{table}/resolve
curl --request POST \
--url https://example.com/v1/ns/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/lcr/tables/example/resolve \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "dialed_number": "example", "call_data": { "called_ocn": "example", "called_lata": "example", "called_state": "example", "called_ratecenter": "example", "calling_ocn": "example", "calling_lata": "example", "calling_state": "example", "calling_ratecenter": "example", "routing_e164": "example", "routing_ocn": "example", "routing_lata": "example", "routing_state": "example", "routing_ratecenter": "example", "string_summary": "example" }, "lcr_block_override": { "route_count": 1, "prefix_match_logic": "example", "prefix_match_source": "example", "selector": "example", "assumed_call_duration_seconds": 1 } }'

Runs the full least-cost resolution for a dialed number against the table’s active version and returns the ranked trunk order (ranked) plus the underlying rows (rows). Optional call_data and lcr_block_override let you preview jurisdiction-sensitive ranking and alternate block policy without a live call; when omitted the server falls back to the namespace’s running-config policy for the table.

nsid
required
string format: uuid

Namespace UUID

table
required
string
Media typeapplication/json
object
dialed_number
required
string
call_data
object
called_ocn
string
called_lata
string
called_state
string
called_ratecenter
string
calling_ocn
string
calling_lata
string
calling_state
string
calling_ratecenter
string
routing_e164
string
routing_ocn
string
routing_lata
string
routing_state
string
routing_ratecenter
string
string_summary
string
lcr_block_override
object
route_count
required
integer
prefix_match_logic
required
string
prefix_match_source
required
string
selector
required
string
assumed_call_duration_seconds
integer
Examplegenerated
{
"dialed_number": "example",
"call_data": {
"called_ocn": "example",
"called_lata": "example",
"called_state": "example",
"called_ratecenter": "example",
"calling_ocn": "example",
"calling_lata": "example",
"calling_state": "example",
"calling_ratecenter": "example",
"routing_e164": "example",
"routing_ocn": "example",
"routing_lata": "example",
"routing_state": "example",
"routing_ratecenter": "example",
"string_summary": "example"
},
"lcr_block_override": {
"route_count": 1,
"prefix_match_logic": "example",
"prefix_match_source": "example",
"selector": "example",
"assumed_call_duration_seconds": 1
}
}

OK

Media typeapplication/json
object
success
required
boolean
ranked
required
Array<string>
rows
required
Array<object>
object
prefix
required
string
selector
required
string
trunk
required
string
per_minute_cost
required
integer format: int64
setup_cost
integer format: int64
priority
integer
effective_on
string format: date-time
valid_until
string format: date-time
version
integer format: int64
Examplegenerated
{
"success": true,
"ranked": [
"example"
],
"rows": [
{
"prefix": "example",
"selector": "example",
"trunk": "example",
"per_minute_cost": 1,
"setup_cost": 1,
"priority": 1,
"effective_on": "2026-04-15T12:00:00Z",
"valid_until": "2026-04-15T12:00:00Z"
}
],
"version": 1
}

Error response

Media typeapplication/problem+json

RFC 7807 Problem Details

object
type

Problem type slug URI

string
title
string
status
integer
detail
string
key
additional properties
any
Examplegenerated
{
"type": "example",
"title": "example",
"status": 1,
"detail": "example"
}