Call

With the call API you access the Freebox call logs.

Call Errors

When attempting to access the call API, you may encounter the following errors:

error_code Description
internal_error Internal error
invalid_id No call with this id

Call Object

Call entries have the following properties

CallEntry
id int Read-only

id

type enum Read-only

The valid call types are:

Type Description
missed Missed incoming call
accepted Incoming call
outgoing Outgoing call
datetime timestamp Read-only

Call creation timestamp.

number string Read-only

Callee number for outgoing calls. Caller number for incoming calls.

name string Read-only

Callee name for outgoing calls. Caller name for incoming calls.

For incoming call if the network does not provide a contact name, we try to use the contact database to find a suitable name

duration int Read-only

Call duration in seconds.

new bool

Call entry as not been acknowledged yet.

contact_id int Read-only

If the number matches an entry in the contact database, the id of the matching contact.

Call API

This is the call API

List every calls

GET /api/v4/call/log/

Returns the collection of all CallEntry call entries

Example request:

GET /api/v4/call/log/ HTTP/1.1
Host: mafreebox.freebox.fr

Example response:

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
   success: true,
   result: [
      {
         number: "0102030405",
         type: "missed",
         id: 69,
         duration: 1,
         datetime: 1359546363,
         contact_id: 56,
         line_id: 0,
         name: "r0ro (Freebox)",
         new: true
      },
      {
         number: "**1",
         type: "outgoing",
         id: 68,
         duration: 5,
         datetime: 1359545960,
         contact_id: 0,
         line_id: 0,
         name: "**1",
         new: false
      }
   ]
}

Delete every calls

POST /api/v4/call/log/delete_all/

Remove all CallEntry call entries

Example request:

GET /api/v4/call/log/delete_all HTTP/1.1
Host: mafreebox.freebox.fr

Example response:

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

Mark every calls as read

POST /api/v4/call/log/mark_all_as_read/

Mark all CallEntry call entries as read

Example request:

GET /api/v4/call/log/mark_all_as_read HTTP/1.1
Host: mafreebox.freebox.fr

Example response:

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

Access a given call entry

GET /api/v4/call/log/{id}

Returns the CallEntry task with the given id

Example request:

GET /api/v4/call/log/69 HTTP/1.1
Host: mafreebox.freebox.fr

Example response:

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
   success: true,
   result: {
      number: "0102030405",
      type: "missed",
      id: 69,
      duration: 1,
      datetime: 1359546363,
      contact_id: 56,
      line_id: 0,
      name: "Romain Bureau",
      new: true
   }
}

Delete a call

DELETE /api/v4/call/log/{id}

Deletes the CallEntry with the given id.

Example request:

DELETE /api/v4/call/log/69 HTTP/1.1
Host: mafreebox.freebox.fr

Example response:

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
    "success": true
}

Update a call entry

PUT /api/v4/call/log/{id}

Updates the CallEntry task with the given id

Example request:

PUT /api/v4/call/log/69 HTTP/1.1
Host: mafreebox.freebox.fr
{
   "new": "false"
}

Example response:

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
   success: true,
   result: {
      number: "0102030405",
      type: "missed",
      id: 69,
      duration: 1,
      datetime: 1359546363,
      contact_id: 56,
      line_id: 0,
      name: "Romain Bureau",
      new: false
   }
}