Getting a List of Calls (Call Summary API):
REQUEST: GET http://pbx.primevox.net/api/call_list.php?auth=API_KEY&containerID=CCCCCC&tenantID=TTT&{extra filter parameters, see below}
- NOTE: All parameters are Case Sensitive.
-
auth (API_KEY) is your API key. This is managed and generated in the Users area of the PBX portal.
-
containerID (CCCCCC) is the 6-digit Container ID number that is present in the top-left corner of the Dashboard when logged into a particular container.
-
tenantID (TTT) - Optional - is the 3-digit (or 0/omitted) Tenant ID number that represents a customer on a container. When omitted (or set to 0) the system assumes you are referring to the Default Tenant.
-
fromDate - Optional - If omitted, defaults to "Today at 00:00:00". Format: YYYY-MM-DD HH:MM:SS
-
toDate - Optional - If omitted, defaults to "Today at 23:59:59". Format: YYYY-MM-DD HH:MM:SS
-
utcOffset - Optional - The minutes your customer/browser is away from UTC. Example: America/Chicago timezone is -300 (negative 300) minutes from UTC). Results will be returned in this time offset. Default is 0 (UTC)
-
page - Optional - Page number to view results. Defaults to Page 1, with 500 results per page
-
showInbound - Optional - Set to 1 (default) to show inbound calls. Set to 0 to hide inbound calls.
-
showOutbound - Optional - Set to 1 (default) to show outbound calls. Set to 0 to hide outbound calls.
-
showInternal - Optional - Set to 1 (default) to show internal calls. Set to 0 to hide internal calls.
-
filterInboundCallerNumber - Optional - When showInbound=1, inbound calls will be filtered by the caller's phone number.
-
filterInboundDid - Optional - When showInbound=1, inbound calls will be filtered by the DID the caller called into. Useful for marketing campaign analysis.
-
filterInboundExtenReceived - Optional - When showInbound=1, filter inbound calls by which extension took the call (either spoke to the caller, or went to this extension's voicemail)
-
filterOutboundNumberDialed - Optional - When showOutbound=1, outbound calls will be filtered by the phone number someone dialed out to.
-
filterOutboundExtenDialed - Optional - When showOutbound=1, outbound calls will be filtered by the specific extension that made the dial.
-
filterInternalExten - Optional - When showInternal=1, show only internal calls that involve this extension number.
-
filterInternalApp - Optional - When showInternal=1, show calls to a specific application number (see the following list):
- 1: Queue Login/Logout (*45)
- 2: Voicemail Check (*97 or *98)
- 3: Echo Test (*43)
- 4: Call Forwarding (*62)
- 5: Toggle Change (*49)
- 6: Targeted Intercom (*80)
-
filterWentToVoicemail - Optional - Set to 1 to only show calls that ended up in someone's voicemail box. (Does not necessarily mean they left a message!) Only applicable to inbound calls.
-
filterSpokeToPerson - Optional - Set to 1 to only show calls that actually spoke to a live person. Only applicable to inbound calls.
-
filterFlaggedFollowup - Optional - Set to 1 to only show calls that are flagged for follow-up.
-
filterCallSeverity - Optional - Only show calls with a severity rating of 0 (no severity) to 5 (maximum severity)
-
filterCallHasNotes - Optional - Set to 1 to only show calls that have notes attached
- filterIvrId - Optional - Show only calls that went through this specific IVR Menu (UUID or UniqueID of IVR)
- filterIvrEventType - Optional - Show only calls in this IVR with a specific Event Type (0=any, 52=Option Pushed, 53=Timeout, 54=Direct Dial)
- filterIvrPushed - Optional - If EventType is set to 52, show only calls that pushed this specific option (0-9, *, #)
RESULT: JSON Object containing the following information:
-
Metadata
-
currentResultSize - The qty of results on this page - Integer
-
currentPage - This page # - Integer
-
maxResultSize - The total qty of results for the entire query - Integer
-
maxPages - The total amount of pages available - Integer
-
utcOffset - The offset from UTC (in minutes) the results are returned in - Integer
-
Data
-
callUuid - Blob Key - Used for further API queries - String/UUID
-
callUuid - User for further API queries - String/UUID
-
callDate - Date/time of call in supplied UTC offset - String/Datetime
-
callDirection - 1 for Inbound, 2 for Outbound, 3 for Internal - Integer
-
cidName - Name/CallerID of the person making the call - String
-
cidNum - Number of the person making the call - String
-
numDialed - Number this person called - String
-
duration - Call duration in seconds - Integer
-
callRecorded - 1 if the call was recorded, 0 if the call was not recorded - Integer/Bool
-
recordingUrl - HTTPS URL to fetch the recording from, if the call was recorded - String
-
didDescription - The "Description" field of a Phone Number (only applies to inbound calls from the outside world) - String
-
cidPrefix - The "CID Prefix" field of a Phone Number (only applies to inbound calls from the outside world) - String
-
lastEvent - A text/English representation of how the call ended - String
-
callFlagged - Whether the call is flagged for follow-up - 1 or 0
-
callSeverity - Severity rating of the call - 0 = No Severity, 1-10 otherwise
-
callNotes - Notes from the call - String (max. 255 characters)
-
wentToVoicemail - Whether the caller was sent an extension's voicemail (only applies to inbound or internal calls) - 1 or 0
-
spokeToPerson - Whether the caller ever actually spoke to someone (only applies to inbound or internal calls) - 1 or 0
-
didGroup - The name of the Group this DID belongs to, if applicable. (only applies to inbound calls from the outside world) - String
-
transcription - The transcribed speech-to-text, if the feature is enabled. Otherwise this value is null/empty - String
Getting Specific Information From a Call (Call Details API):
REQUEST: GET http://pbx.primevox.net/api/call_details.php?auth=API_KEY&containerID=CCCCCC&tenantID=TTT&callUUID=ZZZZ
- NOTE: All parameters are Case Sensitive.
- auth (API_KEY) is your API key. This is managed and generated in the Users area of the PBX portal.
-
containerID (CCCCCC) is the 6-digit Container ID number that is present in the top-left corner of the Dashboard when logged into a particular container.
-
tenantID (TTT) - Optional - is the 3-digit (or 0/omitted) Tenant ID number that represents a customer on a container. When omitted (or set to 0) the system assumes you are referring to the Default Tenant.
-
callUUID is the UUID of a particular phone call to return the details for.
-
utcOffset - Optional - The minutes your customer/browser is away from UTC. Example: America/Chicago timezone is -300 (negative 300) minutes from UTC). Results will be returned in this time offset. Default is 0 (UTC)
RESULT: JSON Object containing the following information:
-
Metadata
-
currentResultSize - The qty of events on this page - Integer
-
currentPage - This page # - Integer
-
maxResultSize - The total qty of events for the entire phone call - Integer
-
maxPages - The total amount of pages available - Integer
-
utcOffset - The offset from UTC (in minutes) the results are returned in - Integer
-
callUuid - Used for further API queries - String/UUID
-
callDate - Date/time of call in supplied UTC offset - String/Datetime
-
callDirection - 1 for Inbound, 2 for Outbound, 3 for Internal - Integer
-
cidName - Name/CallerID of the person making the call - String
-
cidNum - Number of the person making the call - String
-
numDialed - Number this person called - String
-
duration - Call duration in seconds - Integer
-
callRecorded - 1 if the call was recorded, 0 if the call was not recorded - Integer/Bool
-
recordingUrl - HTTPS URL to fetch the recording from, if the call was recorded - String
-
didDescription - The "Description" field of a Phone Number (only applies to inbound calls from the outside world) - String
-
cidPrefix - The "CID Prefix" field of a Phone Number (only applies to inbound calls from the outside world) - String
-
lastEvent - A text/English representation of how the call ended - String
-
callFlagged - Whether the call is flagged for follow-up - 1 or 0
-
callSeverity - Severity rating of the call - 0 = No Severity, 1-10 otherwise
-
callNotes - Notes from the call - String (max. 255 characters)
-
wentToVoicemail - Whether the caller was sent an extension's voicemail (only applies to inbound or internal calls) - 1 or 0
-
spokeToPerson - Whether the caller ever actually spoke to someone (only applies to inbound or internal calls) - 1 or 0
-
didGroup - The name of the Group this DID belongs to, if applicable. (only applies to inbound calls from the outside world) - String
-
Data
-
eventUuid - Blob Key - Used for further API queries - String/UUID
-
eventUuid - Used for further API queries - String/UUID
-
eventDate - Date/time of this event in supplied UTC offset - String/Datetime
-
eventType - Event enumerator, see table below - Integer
-
eventData1 - Event Data 1, see table below- String
-
eventData2 - Event Data 2, see table below - String
-
eventData3 - Event Data 3, see table below - String
-
eventData4 - Event Data 4, see table below - Integer
Getting a Call Recording:
REQUEST: GET http://pbx.primevox.net/api/call_details.php?auth=API_KEY&containerID=CCCCCC&tenantID=TTT&fileName=ZZZZ
- NOTE: All parameters are Case Sensitive.
- auth (API_KEY) is your API key. This is managed and generated in the Users area of the PBX portal.
- containerID (CCCCCC) is the 6-digit Container ID number that is present in the top-left corner of the Dashboard when logged into a particular container.
- tenantID (TTT) - Optional - is the 3-digit (or 0/omitted) Tenant ID number that represents a customer on a container. When omitted (or set to 0) the system assumes you are referring to the Default Tenant.
- fileName is the name of the wav file to fetch, supplied by our Call Summary/Call Details API responses.
Attaching Notes/Follow-up/Severity to a Call:
REQUEST: POST http://pbx.primevox.net/api/call_review.php
- NOTE: All parameters are Case Sensitive and must be in the BODY of the POST, URLENCODED (we do not support JSON yet, sorry).
-
auth is the string of text in the phone system's Advanced menu. It looks like a lot of nonsense.
-
containerID is the 6-digit Container ID number that is present in the top-left corner of the Dashboard when logged into a particular container.
-
tenantID (TTT) - Optional - is the 3-digit (or 0/omitted) Tenant ID number that represents a customer on a container. When omitted (or set to 0) the system assumes you are referring to the Default Tenant.
-
callUuid is the UniqueID of a phone call to attach the information to.
-
callFlagged is either 1 or 0. 1 = The call should be flagged for follow-up.
-
callSeverity is 0 through 5. 0 = no severity rating, and 1-5 are various severities, the meanings of which are up to your use case.
-
callNotes is a short string of text (we recommend you send us this text urlencoded). Maximum 255 characters.
RESULT: JSON Syntax, either a "success" message or "error" message
-
"success":
- "Your call notes have been submitted."
-
"error":
- "Your Container ID is invalid."
- "Your API Auth Key is invalid."
- "Your CallUUID is missing."
- "Error connecting to the database. Try again later."
Call EventType Definitions Table (As of Jan 19, 2022)
As our phone system grows and performs more functionality, additional EventType enumerations will be added to the below table. Existing/old enumerations will never be changed or deprecated.
ID |
Purpose |
Data1 |
Data2 |
Data3 |
Data4 |
1 |
Call in to DID |
DID Number |
|
|
|
2 |
Call blocked (Globally) |
|
|
|
|
3 |
Extension Called |
EndpointID |
Ext Num |
Ext Name |
|
4 |
Extension Answer |
EndpointID |
Ext Num |
Ext Name |
|
5 |
Hangup (Normal) |
Total Jitter |
Total pLoss |
|
|
6 |
Outbound API Call |
URL |
|
|
|
7 |
Fax Detected |
|
|
|
|
8 |
Default-no-Dialplan |
|
|
|
|
9 |
Extension Busy |
EndpointID |
Ext Num |
Ext Name |
|
10 |
Extension No Answer |
EndpointID |
Ext Num |
Ext Name |
|
11 |
Extension Offline |
EndpointID |
Ext Num |
Ext Name |
|
12 |
Check Voicemail (Self) |
|
|
|
|
13 |
Check Voicemail (Remote) |
EndpointID |
Ext Num |
Ext Name |
|
14 |
Echo Test |
|
|
|
|
15 |
Alan Rickman (Easter Egg) |
|
|
|
|
16 |
Meaning of Life (Easter Egg) |
|
|
|
|
17 |
Forwarding Menu Accessed |
|
|
|
|
18 |
Forwarding Menu: Enabled |
Fwd Number |
|
|
|
19 |
Forwarding Menu: Disabled |
|
|
|
|
20 |
Wake-Up Call Create |
Room Num |
Date/Time |
|
|
21 |
Wake-Up Call Delete |
Room Num |
|
|
|
22 |
Wake-Up Call Creation Cancelled |
|
|
|
|
23 |
Voicemail Disabled |
|
|
|
|
24 |
Wake-Up Call Placed to Room |
Snoozed or Cancelled |
|
|
|
25 |
Sent to Voicemail |
EndpointID |
Ext Num |
Ext Name |
|
26 |
Exit Voicemail 0 |
|
|
|
|
27 |
Exit Voicemail Star |
|
|
|
|
28 |
Attempt Ring Group |
RG ID |
RG Exten |
RG Desc |
|
29 |
Ring Group Answered |
Extension Answered |
Peer Answered |
RG ID |
RG Desc |
30 |
Ring Group Timeout |
RG ID |
RG Exten |
RG Desc |
|
31 |
Hangup (Loop Protection) |
Total Jitter |
Total pLoss |
|
|
32 |
Voicemail System Menu (*98) |
|
|
|
|
33 |
Forwarding Toggle: Enabled |
Ext Num |
|
|
|
34 |
Forwarding Toggle: Disabled |
Ext Num |
|
|
|
35 |
Forwarding Menu: Listen to FwdNum |
Fwd Number |
|
|
|
36 |
Voicemail Left |
VMSTATUS |
|
|
|
37 |
Dial-Out Domestic |
Number |
CID Name |
CID Number |
|
38 |
Dial-Out Failed - Invalid CID |
Number |
CID Name |
CID Number |
|
39 |
Dial-Out Failed - International Disabled |
Number |
CID Name |
CID Number |
|
40 |
Dial-Out Failed - Invalid PIN |
Wrong PIN |
CID Name |
CID Number |
|
41 |
Dial-Out Failed - Concurrent Calls |
|
|
|
|
42 |
Dial-Out Failed - Other |
DIALSTATUS |
CID Name |
CID Number |
|
43 |
Dial-Out International |
Number |
CID Name |
CID Number |
|
44 |
Page Group |
PGID |
Ext Num |
Desc |
Ext Number |
45 |
Queue Login |
QueueID |
QueueExten |
QueueName |
Ext Number |
46 |
Queue Logout |
QueueID |
QueueExten |
QueueName |
Ext Number |
47 |
Caller Enter Queue |
QueueID |
QueueExten |
QueueName |
|
48 |
Caller Push Option While Waiting |
QueueID |
QueueExten |
QueueName |
Option Pushed |
49 |
Queue Abandoned by Caller |
QueueID |
QueueExten |
QueueName |
Reason Code |
50 |
Queue Failover |
QueueID |
QueueExten |
QueueName |
|
51 |
IVR Greeting Playback |
IvrID |
IvrExten |
IvrName |
|
52 |
IVR Option Pushed |
IvrID |
IvrExten |
IvrName |
Option # |
53 |
IVR Timed Out |
IvrID |
IvrExten |
IvrName |
|
54 |
IVR Invalid Option Pushed |
IvrID |
IvrExten |
IvrName |
Number |
55 |
IVR Direct Dialed |
IvrID |
IvrExten |
IvrName |
Digits Entered |
56 |
Call Parked (Random) |
LotID |
LotName |
Slot |
ExtenParked |
57 |
Call Parked (Specific) |
LotID |
LotName |
Slot |
ExtenParked |
58 |
Parked Call Pickup |
LotID |
LotName |
Slot |
ExtenPickedup |
59 |
Parked Call Timeout |
LotID |
LotName |
Slot |
|
60 |
Entering Time-Based Route |
RouteID |
Route Name |
|
|
61 |
Default/No Rules Matched |
RouteID |
Route Name |
|
|
62 |
Confbridge: User Entered |
BridgeID |
Bridge Exten |
BridgeName |
|
63 |
Bridge Full |
BridgeID |
Bridge Exten |
BridgeName |
|
64 |
Invalid PIN |
BridgeID |
Bridge Exten |
BridgeName |
Digits Entered |
65 |
PIN Entry Timeout |
BridgeID |
Bridge Exten |
BridgeName |
|
66 |
Confbridge: Admin Entered |
BridgeID |
Bridge Exten |
BridgeName |
|
67 |
Enter Directory |
DirectoryID |
Directory Exten |
Directory Name |
|
68 |
Directory Invalid Option |
DirectoryID |
Directory Exten |
Directory Name |
|
69 |
Directory Timed Out |
DirectoryID |
Directory Exten |
Directory Name |
|
70 |
Directory Improper Exit |
DirectoryID |
Directory Exten |
Directory Name |
STATUS |
71 |
Toggle Route On/Red |
ToggleID |
Toggle Exten |
Toggle Name |
|
72 |
Toggle Route Off/Green |
ToggleID |
Toggle Exten |
Toggle Name |
|
73 |
Toggle Change to On/Red |
ToggleID |
Toggle Exten |
Toggle Name |
|
74 |
Toggle Change to Off/Green |
ToggleID |
Toggle Exten |
Toggle Name |
|
75 |
Toggle Change PIN Invalid |
ToggleID |
Toggle Exten |
Toggle Name |
Digits Entered |
76 |
Toggle Change PIN Timeout |
ToggleID |
Toggle Exten |
Toggle Name |
|
77 |
Announcement Playback |
AnnounceID |
Announce Exten |
Announce Name |
|
78 |
Efax Receive Attempt |
UserID |
User Name |
|
|
79 |
Efax Receive Failed |
UserID |
User Name |
Page Count |
Status String |
80 |
Efax Receive Success |
UserID |
User Name |
Page Count |
|
81 |
Efax Send Attempt |
UserID |
User Name |
Phone Number |
|
82 |
Efax Send Failed During Dial |
UserID |
User Name |
DIALSTATUS |
|
83 |
Efax Send Failed |
UserID |
User Name |
Status String |
|
84 |
Efax Sent Successfully |
UserID |
User Name |
Page Count |
|
85 |
Call Forwarded (Spoof CID) |
FwdNumber |
CID Name |
CID Number |
|
86 |
Call Forwarded (Origin CID) |
FwdNumber |
CID Name |
CID Number |
|
87 |
Call Forward Blocked |
FwdNumber |
|
|
|
88 |
Device Dialing List |
List Part 1 |
List Part 2 |
List Part 3 |
List Part 4 |
89 |
Dial-Out Answered |
|
|
|
|
90 |
Transfer to AnswerCare |
AccountID |
|
|
|
91 |
Listen |
EndpointID |
Ext Number |
Ext Name |
|
92 |
Whisper |
EndpointID |
Ext Number |
Ext Name |
|
93 |
Barge |
EndpointID |
Ext Number |
Ext Name |
|
94 |
No Call Parked Here |
LotID |
LotName |
Slot |
ExtenAttempted |
95 |
1-to-1 Intercom |
EndpointID |
Ext Number |
Ext Name |
|
96 |
Queue Callback Requested |
QueueID |
QueueExten |
QueueName |
Callback Number |
97 |
Queue Callback Deleted |
QueueID |
QueueExten |
QueueName |
Callback Number |
98 |
Queue Agent Did Not Pick Up |
Ext Number |
Ext Name |
Ring Time |
|