Help Center

Explore our knowledge base
article

Using the iAdvize REST API

1/ Overall functioning, introduction

You can export all the statistics available on the platform's administration interface using the iAdvize REST API. The REST API is an entry point to the data stored on the iAdvize database.

Thus, you can query our database and find all the KPIs available via the iAdvize reports.

 

Screenshot_2019-06-04_at_17.47.38.png

2/ Ask for your API key

If you want to use our REST and PUSH APIs, first, you must contact the iAdvize customer support team and ask them for the creation of an API key.

To do this, please click on your avatar (at the upper right-hand corner of your interface) and deploy your profile options. Then, click on "Help" to access the iAdvize Help Center and its documentation.

help.png

It will automatically log you in allowing you to send us a request

 

3/ Resources available

The REST API's resources can all be found reading our documentation.

 

4/ Building a query

You build a query concatenating: the API address + Resource type + Separator + Website ID filter + & + API key filter + & + other filters.

 

API Address: https://ha.iadvize.com/api/2/ (or https://www.iadvize.com/api/2/ if you're using our SD platform, that is to say, you log in to the iAdvize platform via the following link: https://www.iadvize.com/admin/login/ )

Resource type: conversation (or transaction or operator or… here is a comprehensive list)

Separator: ?

Website ID filter: filters[website_id]=XXXX

API key filter: key=xxxxxxxxxxxxxxxx

Other filters: filters[from]=2018-11-27 or filters[channel]=chat (a comprehensive list is available here)

 

A complete example:

https://ha.iadvize.com/api/2/conversation?filters[website_id]=XXXX&filters[channel]=chat&filters[from]=2018-11-27&filters[to]=2018-11-27&key=xxxxxxxxxxxxxxxx&full=true

 

 There must be a separation between the query's core and the filters chosen using "? " before the first filter and "&" between each filter.

 

Once your query built, you can run it in a software specialized in displaying API responses such as Postman.

 

5/ Useful syntax elements

- Display as many details as possible in the responses

Add "&full=true" at the end of a query. This will allow you to deploy all children of a parent object and access as many details as possible. 

- Pagination

The results provided by our API are paginated for performance reasons. This pagination is detailed at the end of the answer provided by our API, for example:

   "pagination": {

       "page": 1,

       "pages": 4,

       "limit": 20,

       "count": 79

   }

"page":  the results page number. If several pages are displayed, you will need to query our database as many times as there are pages by adding &page=2, &page=3, etc. at the end of your query.

"pages": the total number of result pages for the query formulated.

"limit": the number of results per page, this limit can be modified (up to 100) by adding, for example, &limit=50 to your filters.

"count": the total number of occurrence of responses to the request sent.

 
In the example above, we have 79 results spread over 4 pages and each contains 20 results (For greater accuracy: 3 pages of 20 results and one page of 19 results).

- Filter transactions to only obtain those generated after a chat conversation

The iAdvize transaction tag tracks all transactions generated on your website. To only obtain information about transactions generated after a chat conversation, you must add a filter to make sure that the transactions displayed have an associated conversation_id.

To do this, you must add &filters[conversation_id]=!null (see it applied in the examples presented in the dedicated article "API query examples") at the end of your query. 

- Obtain hourly results

You can obtain hourly results adding the time filter to your query &filters[from]=2019-04-01 01:00:00:00&filters[to]=2019-04-01 01:59:59.

 

6/ Other uses of the Rest API

In addition to allowing you to see statistics, the iAdvize REST API also allows you to consult your agents' availability in real-time. Queries related to this particular use are present in our documentation

 

 

Comments