Bring your own telephony account. Connect it with your carrier credentials, import or attach the numbers you own, and point each number at the URL the API hands back.
Every example below runs as written once these are exported:
bash
export DVAARIK_API_KEY="dvk_..."# project API key, server side only
export DVAARIK_TOKEN="<account access token>"# console session, from POST /console/auth/login
export CONNECTION_ID="<uuid>"
export NUMBER_ID="<uuid>"
export PROJECT_ID="<uuid>"
A <value> inside a JSON body is a value you supply. Responses are JSON; every error body is { "detail": … }. Each schema is expanded once per page, where it first appears.
The request body or query is not valid. detail is an array of {loc, msg, type} and loc names the offending field.
Plus the machine-door errors above. Full list on the errors page.
bash
curl -sS -X POST "https://api.developers.dvaarik.com/v2/carriers" \
-H "X-Api-Key: $DVAARIK_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"credentials": {
"<credential field from the catalogue>": "<secret>"
},
"name": "Primary line",
"provider": "<carrier id from the catalogue>"
}'
Every field optional; only what was SENT is applied. inbound_agent_id=null explicitly unbinds and switches inbound off, which is why the presence of the key matters and not just its value.
Field
Type
Required
Notes
inbound_agent_id
uuid or null
no
inbound_enabled
boolean or null
no
label
string or null
no
outbound_enabled
boolean or null
no
Error
When
422
The request body or query is not valid. detail is an array of {loc, msg, type} and loc names the offending field.
Plus the machine-door errors above. Full list on the errors page.
No account session was presented, or it is invalid or expired.
403
The account is suspended or its email is not verified.
404
The project or the addressed resource does not exist for this owner. A resource owned by another developer is deliberately indistinguishable from one that never existed.
422
The request body or query is not valid. detail is an array of {loc, msg, type} and loc names the offending field.
Plus the account-door errors above. Full list on the errors page.
bash
curl -sS -X GET "https://api.developers.dvaarik.com/console/v2/projects/$PROJECT_ID/carriers?limit=20" \
-H "Authorization: Bearer $DVAARIK_TOKEN"
No account session was presented, or it is invalid or expired.
403
The account is suspended or its email is not verified.
404
The project or the addressed resource does not exist for this owner. A resource owned by another developer is deliberately indistinguishable from one that never existed.
409
The project or resource is in a state that refuses this change.
422
The request body or query is not valid. detail is an array of {loc, msg, type} and loc names the offending field.
Plus the account-door errors above. Full list on the errors page.
bash
curl -sS -X POST "https://api.developers.dvaarik.com/console/v2/projects/$PROJECT_ID/carriers" \
-H "Authorization: Bearer $DVAARIK_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"credentials": {
"<credential field from the catalogue>": "<secret>"
},
"name": "Primary line",
"provider": "<carrier id from the catalogue>"
}'
No account session was presented, or it is invalid or expired.
403
The account is suspended or its email is not verified.
404
The project or the addressed resource does not exist for this owner. A resource owned by another developer is deliberately indistinguishable from one that never existed.
409
The project or resource is in a state that refuses this change.
422
The request body or query is not valid. detail is an array of {loc, msg, type} and loc names the offending field.
Plus the account-door errors above. Full list on the errors page.
No account session was presented, or it is invalid or expired.
403
The account is suspended or its email is not verified.
404
The project or the addressed resource does not exist for this owner. A resource owned by another developer is deliberately indistinguishable from one that never existed.
422
The request body or query is not valid. detail is an array of {loc, msg, type} and loc names the offending field.
Plus the account-door errors above. Full list on the errors page.
bash
curl -sS -X GET "https://api.developers.dvaarik.com/console/v2/projects/$PROJECT_ID/carriers/$CONNECTION_ID" \
-H "Authorization: Bearer $DVAARIK_TOKEN"
POST /console/v2/projects/{project_id}/carriers/{connection_id}/numbers#
Attach one E.164 number by hand, for a carrier that cannot list its numbers.
No account session was presented, or it is invalid or expired.
403
The account is suspended or its email is not verified.
404
The project or the addressed resource does not exist for this owner. A resource owned by another developer is deliberately indistinguishable from one that never existed.
409
The project or resource is in a state that refuses this change.
422
The request body or query is not valid. detail is an array of {loc, msg, type} and loc names the offending field.
Plus the account-door errors above. Full list on the errors page.
No account session was presented, or it is invalid or expired.
403
The account is suspended or its email is not verified.
404
The project or the addressed resource does not exist for this owner. A resource owned by another developer is deliberately indistinguishable from one that never existed.
409
The project or resource is in a state that refuses this change.
422
The request body or query is not valid. detail is an array of {loc, msg, type} and loc names the offending field.
Plus the account-door errors above. Full list on the errors page.
bash
curl -sS -X POST "https://api.developers.dvaarik.com/console/v2/projects/$PROJECT_ID/carriers/$CONNECTION_ID/numbers/import" \
-H "Authorization: Bearer $DVAARIK_TOKEN"
POST /console/v2/projects/{project_id}/carriers/{connection_id}/verify#
Re-check the stored credentials, or replace them when a body is sent — and only if the carrier accepts the replacement.
No account session was presented, or it is invalid or expired.
403
The account is suspended or its email is not verified.
404
The project or the addressed resource does not exist for this owner. A resource owned by another developer is deliberately indistinguishable from one that never existed.
409
The project or resource is in a state that refuses this change.
422
The request body or query is not valid. detail is an array of {loc, msg, type} and loc names the offending field.
Plus the account-door errors above. Full list on the errors page.
bash
curl -sS -X POST "https://api.developers.dvaarik.com/console/v2/projects/$PROJECT_ID/carriers/$CONNECTION_ID/verify" \
-H "Authorization: Bearer $DVAARIK_TOKEN"
GET /console/v2/projects/{project_id}/carriers/catalog#
The connectable carriers with the exact credential fields to render and, per carrier, whether it fetches an answer URL or takes a stream URL.
No account session was presented, or it is invalid or expired.
403
The account is suspended or its email is not verified.
404
The project or the addressed resource does not exist for this owner. A resource owned by another developer is deliberately indistinguishable from one that never existed.
422
The request body or query is not valid. detail is an array of {loc, msg, type} and loc names the offending field.
Plus the account-door errors above. Full list on the errors page.
bash
curl -sS -X GET "https://api.developers.dvaarik.com/console/v2/projects/$PROJECT_ID/carriers/catalog" \
-H "Authorization: Bearer $DVAARIK_TOKEN"
GET /console/v2/projects/{project_id}/carriers/numbers#
List the project's numbers with the exact answer or stream URL to paste into the carrier.
No account session was presented, or it is invalid or expired.
403
The account is suspended or its email is not verified.
404
The project or the addressed resource does not exist for this owner. A resource owned by another developer is deliberately indistinguishable from one that never existed.
422
The request body or query is not valid. detail is an array of {loc, msg, type} and loc names the offending field.
Plus the account-door errors above. Full list on the errors page.
bash
curl -sS -X GET "https://api.developers.dvaarik.com/console/v2/projects/$PROJECT_ID/carriers/numbers?limit=20" \
-H "Authorization: Bearer $DVAARIK_TOKEN"
No account session was presented, or it is invalid or expired.
403
The account is suspended or its email is not verified.
404
The project or the addressed resource does not exist for this owner. A resource owned by another developer is deliberately indistinguishable from one that never existed.
409
The project or resource is in a state that refuses this change.
422
The request body or query is not valid. detail is an array of {loc, msg, type} and loc names the offending field.
Plus the account-door errors above. Full list on the errors page.
No account session was presented, or it is invalid or expired.
403
The account is suspended or its email is not verified.
404
The project or the addressed resource does not exist for this owner. A resource owned by another developer is deliberately indistinguishable from one that never existed.
409
The project or resource is in a state that refuses this change.
422
The request body or query is not valid. detail is an array of {loc, msg, type} and loc names the offending field.
Plus the account-door errors above. Full list on the errors page.
The playground opens a real voice session with your account session, so a project key never reaches a browser. Machine calls belong on your own server.