API Reference
REST Endpoints
The public endpoints, and where to get the machine-readable spec.
All endpoints are under /api and authenticate with a bearer token as described in the authentication article.
Machine-readable spec
An OpenAPI 3.1 document is served live, so it always matches the deployed build:
curl https://www.siluxcall.co.uk/api/openapi.jsonPoint your generator or API client at that URL rather than copying signatures out of this page.
Core endpoints
| Method | Path | Purpose |
|---|---|---|
| POST | /api/softphone/originate | Place an outbound call |
| GET | /api/cdr | List call detail records — numbers dialled, duration, outcome |
| GET | /api/voicemail | List voicemail messages |
| POST | /api/sms | Send an SMS (UK destinations) |
Placing a call
curl -X POST https://www.siluxcall.co.uk/api/softphone/originate \
-H "Authorization: Bearer sk_live_..." \
-H "Content-Type: application/json" \
-d '{"to": "+447700900123"}'Reading call records
curl "https://www.siluxcall.co.uk/api/cdr?limit=100" \
-H "Authorization: Bearer sk_live_..."The dashboard is built on the same API. If you can do something in the interface, there is an endpoint behind it — the OpenAPI document lists the public surface.
Errors
Errors use standard HTTP status codes with a JSON body containing a message. A 400 explaining that trial accounts cannot choose their own number is a rule, not a bug — see the Adding Numbers article.