אקסטרה
  1. Calls
אקסטרה
  • Calls
    • /calls/
      POST
    • /calls/get-recording-urls/
      POST
    • /click2call/
      GET
    • /calls/recording/
      GET
  • SMS
    • /sms/send/
      POST
  • Authorization
    • /auth/key/
      GET
  1. Calls

/calls/

POST
https://www.exm.co.il/api/v1/
Get calls history for a user, as used in the Calls section in the user panel in Extra.
Use params to filter and paginate list.
List is always sorted by time of call.
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://www.exm.co.il/api/v1/' \
--header 'Content-Type: application/json' \
--data-raw '{
    "id": "oYTOFyLB",
    "starred": true,
    "line_types": [
        null
    ],
    "direction": "IN",
    "call_types": [
        "incoming"
    ],
    "duration": {
        "gte": 0,
        "lte": 0
    },
    "time": {
        "from": "2020-12-31 21:00:00",
        "to": "2024-01-01 10:34:12"
    },
    "pagination": {
        "next": "OPF3aA09CvIdtCcpTxWTov3teco2OAcD11umIJ/DcXqxovT7R/o0VLBtRv5kMVVibfdo",
        "items": 20
    }
}'
Response Response Example
{
    "metadata": {
        "items_per_page": 20,
        "response_count": 20,
        "next_page_token": "OPF3aA09CvIdtCcpTxWTov3teco2OAcD11umIJ\/DcXqxovT7RPI\/VrNkQP5kNl1mafFq"
    },
    "calls": [
        {},
        {}
    ]
}

Request

Authorization
Provide your bearer token in the
Authorization
header when making requests to protected resources.
Example:
Authorization: Bearer ********************
Body Params application/json
id
string 
optional
call id to get just that record. If found, result is array of 1 record as id is unique
Example:
oYTOFyLB
starred
boolean 
optional
true to get starred calls
line_types
array[integer]
optional
Allowed values:
1257
direction
enum<string> 
optional
alias for call_types filter, overrides it if used
Allowed values:
INOUT
Examples:
INOUT
call_types
array[string]
optional
Allowed values:
incomingincoming_missedoutgoingoutgoing_missed
duration
object 
optional
gte
integer 
optional
greater than or equal to (seconds)
Examples:
0900
lte
integer 
optional
lower than or equal to (seconds)
time
object 
optional
Filter by the time of the call (start time)
from
string <date-time>
optional
Datetime of BEGINNING of the time range Y-m-d H:i:s
Example:
2020-12-31 21:00:00
to
string <date-time>
optional
Datetime of END of the time range Y-m-d H:i:s
Example:
2024-01-01 10:34:12
pagination
object 
optional
next
string  | null 
optional
pass token to load the next page
Example:
OPF3aA09CvIdtCcpTxWTov3teco2OAcD11umIJ/DcXqxovT7R/o0VLBtRv5kMVVibfdo
items
integer 
optional
items per response (20-100; default: 20)
>= 20<= 100
Examples

Responses

🟢200Success
application/json
Body
metadata
object 
required
items_per_page
integer 
required
Number of calls per page
Example:
20
response_count
integer 
required
The number of calls in this response
Example:
20
next_page_token
string 
required
Pass this in a new request (in: pagination.next) to get the next page
Example:
OPF3aA09CvIdtCcpTxWTov3teco2OAcD11umIJ\/DcXqxovT7RPI\/VrNkQP5kNl1mafFq
calls
array[object (Call Data JSON) {13}] 
required
id
string 
required
Call id
event
string 
required
Event that triggered this callback
type
string 
required
Type of call
own_type
string 
required
The type of the service in Extra that this webhook is called for
ivr_dialed
integer 
required
In case of IVR option dialed by caller
duration
integer 
required
duration of call in seconds
note
string  | null 
required
Note manually typed by the user for this call
starred
boolean 
required
Is this call starred (favorite)?
time
object 
required
numbers
object 
required
contact
object  | null 
required
the Contact that this number assigned to
recording
object 
required
falase if no recording, otherwise recording object
AI
object 
required
Modified at 2025-07-22 16:07:45
Next
/calls/get-recording-urls/
Built with