Resource Reference
These are the configuration resources: the objects you create and edit to configure SIP.IO, defined by the data model. This page is the field-level reference.
Conventions: booleans are 0/1; time is epoch seconds; secrets are the key-value store references (*_secret_ref); every tenant row carries account_id.
account
Section titled “account”The tenant. Hierarchical for reseller/white-label.
| Field | Type / values |
|---|---|
parent_id | Reseller parent (null = platform-direct). |
status | active · suspended · closed. |
is_reseller | 0 / 1. |
timezone | IANA (default UTC). |
brand_name, brand_domain | White-label branding. |
max_in, max_out, max_dialer | CAC ceilings. |
default_cid_number | Default outbound caller-ID. |
language | Default prompt language (default en-US). |
voice_gender | male / female. |
did_default_dest_kind, did_default_dest_id | Where unrouted DIDs land. |
TODO: /v1/accounts CRUD.
sip_domain
Section titled “sip_domain”A realm the account answers on. Fields: domain (unique), is_primary.
TODO: /v1/domains CRUD.
sip_user
Section titled “sip_user”The logical identity / agent.
| Field | Type / values |
|---|---|
username | Extension / SIP user part (unique per account). |
display_name | |
is_agent | 0 / 1. |
out_cid_number, out_cid_name | Outbound presentation. |
max_simultaneous | Per-user concurrency ceiling. |
ring_timeout_sec | Default 25. |
voicemail_id | Default mailbox. |
status | active / disabled. |
TODO: /v1/users CRUD.
sip_device
Section titled “sip_device”A registering endpoint + credential. See Authentication.
| Field | Type / values |
|---|---|
user_id | Owning user. |
auth_username, realm | Digest identity. |
ha1, ha1b | Digest hashes (never plaintext). |
transport | udp · tcp · tls · wss. |
is_webrtc | 0 / 1. |
status | active / disabled. |
TODO: /v1/devices CRUD.
Inbound number. See Numbers & Extensions.
| Field | Type / values |
|---|---|
e164 | Normalized, no + (unique). |
status | active · disabled · virtual. |
dest_kind | flow·user·extension·ring_group·queue·voicemail·conference·forward·hangup. |
dest_id, dest_xform | Route target id + JSON transform. |
max_channels | Per-DID concurrency cap. |
fax_mode | voice · t38 · passthrough. |
allow_anonymous | 0 / 1. |
schedule_id, closed_dest_*, holiday_dest_* | Business hours. |
TODO: /v1/numbers CRUD.
extension
Section titled “extension”Internal short code. Fields mirror did’s route target + schedule. dest_kind adds feature; digits unique per account.
TODO: /v1/extensions CRUD.
call_flow
Section titled “call_flow”The versioned node-graph. See Call Flows.
| Field | Type / values |
|---|---|
name | |
version | Bumped on publish. |
is_published | 0 / 1 (router loads published only). |
graph | JSON { nodes, edges }. |
TODO: /v1/flows CRUD + publish.
ring_group / ring_group_member
Section titled “ring_group / ring_group_member”See Ring Groups.
- ring_group:
strategy(ring_all·sequential·round_robin),ring_timeout_sec,moh_media_id,exit_dest_*,schedule_id+ overrides. - ring_group_member:
user_idordevice_id,position,delay_sec,timeout_sec.
TODO: /v1/ring-groups CRUD.
queue / agent_queue_assignment
Section titled “queue / agent_queue_assignment”See Queues & ACD.
| Field | Type / values |
|---|---|
strategy | ring_all·longest_idle·round_robin·top_down·fewest_calls·random·sequential. |
agent_ring_timeout_sec | Default 20. |
max_wait_sec | Caller max hold. |
wrap_up_sec | Default 0. |
max_no_answer | Auto-pause threshold (0 = off). |
announce_position, announce_first_sec, announce_interval_sec | Announcements. |
moh_mode | stream / file. |
language | Announcement language override. |
timeout_dest_*, abandon_dest_*, no_agents_dest_* | In-queue exits. |
max_queued, queue_full_dest_* | Queue-full deflect at capacity. |
ewt_threshold_sec, ewt_aht_sec, ewt_dest_* | Estimated-wait deflect at join. |
schedule_id, closed_dest_*, holiday_dest_* | Business hours. |
agent_queue_assignment (formerly queue_agent): user_id, tier_level, position, delay_sec, mode (static·dynamic·mandatory·supervisor_managed).
in_queue_option (DTMF on hold; see In-Queue Options): queue_id, digit (0–9·*·#), action (route·webhook·deflect·hangup), dest_kind/dest_id, webhook_url, webhook_secret_ref, stay_in_queue, prompt_media_id, label.
TODO: /v1/queues CRUD + /v1/queues/{id}/agents.
voicemail / conference / forward
Section titled “voicemail / conference / forward”- voicemail:
greeting_media_id,skip_instructions,quota_mb,notify_email,pin_secret_ref. - conference:
pin_secret_ref,admin_pin_secret_ref,max_members,moh_media_id,record. - forward:
number,trigger(always·busy·no_answer·unreachable),timeout_sec,cid_mode(passthrough·did·custom),cid_number,confirm(press-1 screening),overflow_dest_kind/overflow_dest_id. See Call Forwarding.
TODO: /v1/voicemail-boxes, /v1/conferences, /v1/forwards CRUD.
time_schedule / time_schedule_rule
Section titled “time_schedule / time_schedule_rule”See Business Hours.
- time_schedule:
name,timezone(null = inherit account). - time_schedule_rule:
kind(weekly·date·date_range),dow(0–6),start_time/end_time(HH:MM),start_date/end_date(YYYY-MM-DD),is_closed.
TODO: /v1/schedules CRUD.
Trunks & outbound: sip_trunk / sip_trunk_acl / outbound_route / number_transform
Section titled “Trunks & outbound: sip_trunk / sip_trunk_acl / outbound_route / number_transform”- sip_trunk (formerly
customer_trunk):name,provider(generic·carrier),role(carrier·pbx),direction(inbound·outbound·both),proxy,transport(udp·tcp·tls),do_register,auth_username,auth_secret_ref,realm,from_domain,from_user,expire_sec,inbound_auth(ip·register·digest),inbound_username,inbound_secret_ref,reg_node,max_channels,cid_number,ping_sec,status. - sip_trunk_acl:
trunk_id,cidr(allow-listed source IPs forinbound_auth='ip'). - outbound_route:
match_prefix,match_country,via(carrier·trunk),trunk_id,priority. - number_transform:
scope_kind(account·trunk·did·route),direction(inbound_dst·inbound_cid·outbound_dst·outbound_cid),match_regex,replacement,ordering,stop_on_match.
TODO: /v1/trunks, /v1/outbound-routes, /v1/number-transforms CRUD.
Policies
Section titled “Policies”Shared (scope_kind, scope_id) shape. See Concurrency & Outbound.
- call_limit:
scope_kind(account·user·did·number),direction(in·out·dialer·any),period_sec,max_count,hard. - caller_id_rule:
scope_kind,match_country,cid_number,cid_name,priority. - acl_rule:
rule_type(ip_allow·ip_deny·geo_allow·geo_deny),value(CIDR or ISO-2). - recording_rule:
direction,mode(off·on·on_demand),stereo. - phone_list / phone_list_entry:
kind(dnc_out·dnc_in·dnr·allow) + E.164 entries. - geo_policy / geo_policy_country:
mode(allowlist·denylist) + countries.
TODO: /v1/policies/* CRUD.
media_file / media_playlist
Section titled “media_file / media_playlist”See Media & TTS.
- media_file:
kind(prompt·moh·greeting·announcement),object_key,format,duration_ms. - media_playlist / media_playlist_item: ordered media sets.
TODO: /v1/media upload + CRUD.