Command-line interface for the dSIPRouter API. Supports both dSIPRouter Cloud and self-managed installations.
git clone https://github.com/dOpensource/dsiprouter-cli.git
cd dsiprouter-cli
go build -o dsiprouter-cli ./cmd/dsiprouter/
sudo mv dsiprouter-cli /usr/local/bin/Download from the releases page.
Set environment variables or use command flags:
export DSIP_HOST="your-dsiprouter-server.com"
export DSIP_TOKEN="your-api-token"Or use flags:
dsiprouter-cli -H your-server.com -t your-token [command]Your token was provided after installing dSIPRouter. To reset it:
dsiprouter setcredentials -ac YOUR_NEW_TOKEN# Get Kamailio statistics
dsiprouter-cli kamailio stats# Reload Kamailio configuration
dsiprouter-cli reload kamailio
# Reload dSIPRouter
dsiprouter-cli reload dsiprouter-cli start
# Check reload status
dsiprouter-cli reload dsiprouter-cli status# Create a lease (short-lived SIP credentials)
dsiprouter-cli lease create --email user@example.com --ttl 15m
# Revoke a lease
dsiprouter-cli lease revoke 123# List all endpoint groups
dsiprouter-cli endpointgroup list
# Get specific endpoint group
dsiprouter-cli endpointgroup get 1
# Create endpoint group
dsiprouter-cli endpointgroup create --name "My PBX Group" --data '{"type": "pbx"}'
# Update endpoint group
dsiprouter-cli endpointgroup update 1 --data '{"name": "Updated Name"}'
# Delete endpoint group
dsiprouter-cli endpointgroup delete 1# List all inbound mappings
dsiprouter-cli inboundmapping list
# Create inbound mapping
dsiprouter-cli inboundmapping create --did "+15551234567" --servers "#1" --name "Main Line"
# Update inbound mapping
dsiprouter-cli inboundmapping update --data '{"did": "+15551234567", "servers": ["#2"]}'
# Delete inbound mapping
dsiprouter-cli inboundmapping delete --data '{"did": "+15551234567"}'# List rules
dsiprouter-cli numberenrichment list
# Get specific rule
dsiprouter-cli numberenrichment list --id 1
# Create rule
dsiprouter-cli numberenrichment create --data '{"pattern": "^1", "replacement": "+1"}'
# Update rule
dsiprouter-cli numberenrichment update 1 --data '{"replacement": "+01"}'
# Delete rule
dsiprouter-cli numberenrichment delete 1
# Fetch enrichment data
dsiprouter-cli numberenrichment fetch --data '{"number": "+15551234567"}'# Get CDRs for endpoint group
dsiprouter-cli cdr endpointgroup 1
# Get CDRs for specific endpoint
dsiprouter-cli cdr endpoint 1# List all certificates
dsiprouter-cli certificate list
# Get certificate for domain
dsiprouter-cli certificate list example.com
# Create/update certificate
dsiprouter-cli certificate create --data '{"domain": "example.com", "type": "letsencrypt"}'
# Upload certificate files
dsiprouter-cli certificate upload example.com --cert /path/to/cert.pem --key /path/to/key.pem
# Delete certificate
dsiprouter-cli certificate delete example.com# Create backup
dsiprouter-cli backup create
# Restore from backup
dsiprouter-cli backup restore --file backup.json# Generate secure password
dsiprouter-cli sys generatepassword# Test MS Teams connectivity
dsiprouter-cli msteams test example.com# Send gateway group notification
dsiprouter-cli notification gwgroup --data '{"gwgroupid": 1, "message": "Test"}'# Default table format
dsiprouter-cli endpointgroup list
# JSON output
dsiprouter-cli endpointgroup list -o jsonFull API documentation is available in the Postman Workspace.
| Command | API Endpoint | Methods |
|---|---|---|
kamailio stats |
/api/v1/kamailio/stats |
GET |
reload kamailio |
/api/v1/reload/kamailio |
POST |
reload dsiprouter |
/api/v1/reload/dsiprouter |
GET, POST |
lease create |
/api/v1/lease/endpoint |
GET |
lease revoke |
/api/v1/lease/endpoint/{id}/revoke |
DELETE |
endpoint update |
/api/v1/endpoint/{id} |
POST |
endpointgroup list/get/create/update/delete |
/api/v1/endpointgroups |
GET, POST, PUT, DELETE |
inboundmapping list/create/update/delete |
/api/v1/inboundmapping |
GET, POST, PUT, DELETE |
numberenrichment list/create/update/delete/fetch |
/api/v1/numberenrichment |
GET, POST, PUT, DELETE |
cdr endpointgroup |
/api/v1/cdrs/endpointgroups/{id} |
GET |
cdr endpoint |
/api/v1/cdrs/endpoint/{id} |
GET |
certificate list/create/delete/upload |
/api/v1/certificates |
GET, POST, DELETE |
backup create |
/api/v1/backupandrestore/backup |
GET |
backup restore |
/api/v1/backupandrestore/restore |
POST |
sys generatepassword |
/api/v1/sys/generatepassword |
GET |
msteams test |
/api/v1/domains/msteams/test/{domain} |
GET |
notification gwgroup |
/api/v1/notification/gwgroup |
POST |
- Documentation: https://dsiprouter.readthedocs.io
- Support: https://dopensource.com/dsiprouter
- Community: https://github.com/dOpensource/dsiprouter
Apache 2.0