Introduction
Welcome to Voice Notification API You can use our API to make Voice Notification Calls.
You Can Use Any Programming language To Request Api For Example PHP, JS and Python ..etc
Authentication
Call Bridging Uses Token to Allow Access To The Api. please be sure add authentication to request header and from type bearer
Bearer ds76sd76XXXXXXXXXXXXXXXXXXXXXXXX
To authorize:
curl --location --request GET "https://api.bridge.innocalls.com/api/v1/" \
--header "Content-Type: application/x-www-form-urlencoded" \
--header "Authorization: Bearer ${TOKEN}" \
Call
Bridging
curl --location --request POST 'https://api.bridge.innocalls.com/api/v1/call/bridge' \
--header "Authorization: Bearer ${TOKEN}" \
--form 'call_flow_id=XXXXXXXXXXXXXXXXX' \
--form 'first_callee_number=20112XXXXX' \
--form 'first_callee_name=first name' \
--form 'second_callee_number=20112XXXXX' \
--form 'second_callee_name= second name' \
--form 'call_time=2020-04-23 00:57:00' \
--form 'duration=2'
The above command returns JSON structured like this:
{
"status": 200,
"success": true,
"data": {
"call_id": "f2281763-e58a-4817-bc34-4b120c230cfbas"
}
}
You Can Schedule Call Bridging by add Another Time After Now in call_time parameter
HTTP Request
POST https://api.bridge.innocalls.com/api/v1/call/bridge
Query Parameters
| Parameter | Value | Required |
|---|---|---|
| call_flow_id | The Call Flow Used To Send This Call | True |
| first_callee_number | First Phone Number With Country Code Like ['EGP'=2,'USA'=1,'SA'=966 ] | True |
| first_callee_name | First Recipient Name | True |
| second_callee_number | Second Phone Number With Country Code Like ['EGP'=2,'USA'=1,'SA'=966 ] | True |
| second_callee_name | Second Recipient Name | True |
| call_time | Call Bridging Time if Need to Schedule it | False |
| duration | Call Time After Bridging per Minute | True |
Call Status
curl --location --request POST 'https://api.bridge.innocalls.com/api/v1/call/bridge' \
--header "Authorization: Bearer ${TOKEN}" \
--form 'call_id=f2281763-e58a-4817-bc34-4b120c230cfbas' \
--form 'call_flow_id=XXXXXXXXXXXXXXXXX' \
The above command returns JSON structured like this:
{
"status": 200,
"success": true,
"data": {
"callStatus": {
"scheduledDateTime": "2020-04-23 10:31:47",
"actualDateTime": "2020-04-23 10:31:47",
"callDuration": "5 Minutes",
"callerId": "XXXXXXX",
"firstRecipientName": "ahmed",
"firstRecipientNumber": "2010XXXXX",
"firstRecipientStatus": "answered",
"secondRecipientName": "kand",
"secondRecipientNumber": "13456",
"secondRecipientStatus": "not_answered",
"callStatus": "failed",
"callId": "f2281763-e58a-4817-bc34-4b120c230cfbas"
}
}
}
you can Check your Call Status by Call Id
HTTP Request
GET https://api.bridge.innocalls.com/api/v1/call/status
URL Parameters
| Parameter | Value | Required |
|---|---|---|
| call_id | call id returned after add call bridging | True |
| call_flow_id | The Call Flow Used To Send This Call | True |
Call Edit
curl --location --request PUT 'https://api.bridge.innocalls.com/api/v1/call/bridge/{call_uuid}' \
--header "Authorization: Bearer ${TOKEN}" \
--form 'call_flow_id=XXXXXX' \
--form 'call_time=XXXXXX' \
--form 'duration=XXXXXX' \
--form 'first_callee_name=XXXXXX' \
--form 'first_callee_number=XXXXXX' \
--form 'second_callee_name=XXXXXX' \
--form 'second_callee_number=XXXXXX' \
The above command returns JSON structured like this:
{
"status": 200,
"success": true,
"data": {
"message": "Call updated successfully"
}
}
you can Check your Call Edit by Call Id
HTTP Request
PUT https://api.bridge.innocalls.com/api/v1/call/bridge/{call_uuid}
URL Parameters
| Parameter | Value | Required |
|---|---|---|
| call_flow_id | call_flow_id user input value | True |
| call_time | call_time user input value | True |
| duration | duration user input value | True |
| first_callee_name | first_callee_name user input value | True |
| first_callee_number | first_callee_number user input value | True |
| second_callee_name | second_callee_name user input value | True |
| second_callee_number | second_callee_number user input value | True |
Call Delete
curl --location --request DELETE 'https://api.bridge.innocalls.com/api/v1/call/bridge/{call_uuid}' \
--header "Authorization: Bearer ${TOKEN}"
The above command returns JSON structured like this:
{
"status": 200,
"success": true,
"data": {
"message": "Call deleted successfully"
}
}
HTTP Request
DELETE https://api.bridge.innocalls.com/api/v1/call/bridge/{call_uuid}
Errors
The API uses the following error codes:
| Error Code | Meaning |
|---|---|
| 400 | Bad Request -- Your request sucks |
| 401 | Unauthorized -- Your API key is wrong |
| 403 | Forbidden -- The kitten requested is hidden for administrators only |
| 404 | Not Found -- The specified kitten could not be found |
| 405 | Method Not Allowed -- You tried to access a kitten with an invalid method |
| 406 | Not Acceptable -- You requested a format that isn't json |
| 410 | Gone -- The kitten requested has been removed from our servers |
| 418 | I'm a teapot |
| 429 | Too Many Requests -- You're requesting too many kittens! Slow down! |
| 500 | Internal Server Error -- We had a problem with our server. Try again later. |
| 503 | Service Unavailable -- We're temporarially offline for maintanance. Please try again later. |