Call Management
Start calls from your software (click-to-call), end, transfer or mute ongoing calls. All endpoints use an API key (scope call; Authorization: Bearer bt_… in the header, see API Security) and GET is called with the method.
Rate limit: 10 requests per minute. Call ID (call_uuid)begin_callis returned in the response and in the live call data.
GETStart a call (click-to-call)
The specified extension rings first; when it answers, the target number is dialed and the two sides are connected.
GET https://api.buluthat.com/api/begin_call.php?extension=1001&destination=905321234567
| Parameter | Required | Description |
|---|---|---|
Authorization (subject) | yes | Bearer bt_…, scope call |
extension | yes | Extension the call will be connected to (e.g. 1001) |
destination | yes | Number to call. For Turkey 905321234567, for abroad 00 + country code |
caller_id | no | The number shown on outbound calls; if not given, the extension's default. A number not belonging to your account 400 returns |
manual_answer | no | true if, the extension is expected to answer manually; if not given, it is auto-answered on supporting devices |
timeout | no | Ring time, 10-60 sec (default 30) |
announcement_to_caller | no | ID of the announcement to play to the extension on connection |
announcement_to_callee | no | ID of the announcement to play to the called party on connection |
Successful response: 200 OK, the call id in the body.
358c20bc-fd86-11e5-87a2-157d41a07454
Error response examples:
400 Bad Request extension 1005 not found
400 Bad Request caller_id 02120000000 not allowed
401 Unauthorized Geçersiz anahtar: K…
GETEnd the call
GET https://api.buluthat.com/api/hangup.php?id=<call_uuid>
id instead of, the path form is also accepted: /api/hangup/<call_uuid>. Response 200 OK.
GETTransfer the call
Transfers an ongoing call to an extension or an external number.
GET https://api.buluthat.com/api/transfer.php?id=<call_uuid>&user_number=1002
| Parameter | Description |
|---|---|
id | Call ID |
user_number | Destination extension (e.g. 1002) or an external number (905321234567) |
GETMute / unmute
GET https://api.buluthat.com/api/mute.php?id=<call_uuid>&state=on
state: on (mute) or off (turn on sound).
Live call data
The list of ongoing calls (caller, called, extension, status, duration) is read from the CRM bridge endpoint; use this data or webhooks to open a customer card on an incoming call. For details request the "CRM bridge" document from the Support Center; the bridge is ready for Byfix CRM.
Typical flow: click-to-call from the CRM
1. Kullanıcı CRM'de numaraya tıklar
2. Sunucunuz begin_call'u çağırır (extension = kullanıcının dahilisi)
3. Dahili çalar, açınca müşteri aranır; call_uuid'yi kaydedin
4. Görüşme bitince CDR raporda; kayıt panelden dinlenir
