API IPBX

Cette API est basée sur une architecture REST, toutes les requêtes POST doivent-être soumises en form-data, toutes les réponses sont en JSON.

ApiKey

L'authentification se fait à l'aide de l'apiKey client fournie par IPBX. Cette apiKey est à transmettre dans les headers sous le paramètre X-API-KEY à chaque ressource appelée.

Paramètres

nom type obligatoire exemple description
X-API-KEY string oui YOURAPIKEY Cle d'authentification

Requete

curl -X GET \
  'https://ws.ipbx.io/...'
  -H 'X-API-KEY: yourApiKey' \

Reponses

Basique

La reponse contiendra systematiquement les parametres code (basé sur les status HTTP) et message qui decrira si besoin la reponse.
Le parametre code sera egalement retourne en tant que reponse HTTP. Le parametre errors sera uniaue,ent retourné en cas d'erreur.

nom type exemple description
code integer 200 Code HTTP
message string OK Description de la réponse
errors array [] Détail des erreurs

Exemple de reponse

{
    "code": 400,
    "message": "Some parameters are missing",
    "errors": {
        "to": "The parameter is empty or missing",
        "service_id": "The parameter is empty or missing"
    }
}

Liste

Les réponses à des requetes de liste contiendront les paramètres de la réponse basique ainsi que les paramètres total (correspond aux nombre d'éléments retournés) et data (tableau contenant la liste des éléments)

nom type exemple description
code integer 200 Code HTTP
message string OK Description de la réponse
total integer 2 Nombre d'élément dans le tableau data
data array [] Tableau contenant les éléments

Exemple de reponse

{
    "code": 200,
    "message": "OK",
    "total": 2,
    "data": [
        {
            "id": 1,
            "name": "France",
            "iso2": "FR"
        },
        {
            "id": 2,
            "name": "Afghanistan",
            "iso2": "AF"
        }
    ]
}

CallStart

Permet de demarrer un appel

Paramètres de la requête:

nom type obligatoire exemple description
destination string oui 33666562785 Numéro a appeler (format international sans +)
caller_id string non 33173435456 Numéro de l'appelant (format international sans +)
application string non MON_APP_VOCAL Nom de l'application vocale
data array non maxduration=12 Données utilisées par l'application vocale

Les champs du paramètre data sont fournit par IPBX.


Paramètres de la réponse:

nom type exemple description
code integer 200 Code du statut de la réponse
message string OK Message du statut de la réponse
uuid string f69d9775-d6aa-4067-8f16-433cd7ff6c5e Identifiant unique de l'appel
route_id int 3 Identifiant de la route utilisée

POST
/calls/start

Exemple de requête

curl -X POST \
  'https://ws.ipbx.io/calls/start' \
  -F destination=33666562785 \
  -F caller_id=33178419986 \
  -F application=MON_APP_VOCAL \
  -F 'data[max_duration]=150' \
  -F 'data[id_session]=1276858'

Exemple de réponse

{
    "code": 200,
    "message": "OK",
    "uuid": "f69d9775-d6aa-4067-8f16-433cd7ff6c5e",
    "route_id": 3
}

CallStop

Permet d'interrompre un appel en cours

Paramètres de la requête:

nom type obligatoire exemple description
uuid string oui f69d9775-d6aa-4067-8f16-433cd7ff6c5e Identifiant unique de l'appel
route_id int oui 3 Identifiant de la route utilisée

Paramètres de la réponse:

nom type exemple description
code integer 200 Code du statut de la réponse
message string OK Message du statut de la réponse
POST
/calls/stop

Exemple de requête

curl -X POST \
  'https://ws.ipbx.io/calls/stop' \
  -F uuid=f69d9775-d6aa-4067-8f16-433cd7ff6c5e \
  -F route_id=3

Exemple de réponse

{
    "code": 200,
    "message": "OK"
}

Transfert d'appel

Permet de transférer un appel à:

  • un autre appel en cours
  • un téléopérateur
  • un numéro de téléphone (fixe, mobile, sip...)

Paramètres de la requête:

nom type obligatoire exemple description
route_id int oui 3 Identifiant de la route utilisée (retourné par CallStart)
call_id string non 5686f5fa-a641-425e-89e3-9509bb981914 Identifiant de l'appel vers lequel transférer l'appel
user_id int non 491 Identifiant du téléopérateur vers lequel transférer l'appel
destination int non 33173435450 Numéro vers lequel transférer l'appel (format international sans +)
data array non maxduration=12 Données utilisées par l'application vocale

Paramètres de la réponse:

nom type exemple description
code integer 200 Code du statut de la réponse
message string OK Message du statut de la réponse
uuid string 3164102f-ade3-4f65-8ea1-b8a10d6ce4a7 Identifiant unique du nouvel appel
route_id int 3 Identifiant de la route utilisée
POST
/calls/{uuid}/transfer

Exemple de requêtes

  curl -X POST \
  'https://ws.ipbx.io/calls/74d8543c-9bb0-4749-8b68-3ff9359d7708/transfer' \
  -F call_id=5686f5fa-a641-425e-89e3-9509bb981914 \
  -F route_id=3 \
  -F 'data[max_duration]=150' \
  -F 'data[id_session]=1276858'
  curl -X POST \
  'https://ws.ipbx.io/calls/74d8543c-9bb0-4749-8b68-3ff9359d7708/transfer' \
  -F user_id=491 \
  -F route_id=3 
  curl -X POST \
  'https://ws.ipbx.io/calls/74d8543c-9bb0-4749-8b68-3ff9359d7708/transfer' \
  -F destination=33173435450 \
  -F route_id=3

Exemple de réponse

{
    "code": 200,
    "message": "OK",
    "uuid": "3164102f-ade3-4f65-8ea1-b8a10d6ce4a7",
    "route_id": 3
}

Actions sur un appel

Permet d'effectuer différentes actions sur un appel. Le paramère action peut prendre une des valeurs suivantes:

  • disconnect

  • eject

  • postpone

  • redirect-to-summary

  • redirect-to-destination

  • redirect-to-destination-voicemail

Paramètres de la requête:

nom type obligatoire exemple description
route_id int oui 3 Identifiant de la route utilisée
destination int non 33173435450 Numéro vers lequel transférer l'appel (format international sans +) (Valable uniquement pour l'action redirect-to-destination)

Paramètres de la réponse:

nom type exemple description
code integer 200 Code du statut de la réponse
message string OK Message du statut de la réponse
POST
/calls/{uuid}/action/{action}

Exemple de requête

  curl -X POST \
  'https://ws.ipbx.io/calls/74d8543c-9bb0-4749-8b68-3ff9359d7708/action/disconnect' \
  -F route_id=3

Exemple de réponse

{
    "code": 200,
    "message": "OK"
}

Enregistrements

Permet de recuperer les fichiers sons des conversations

Paramètres de la requête:

nom type obligatoire exemple description
uuid string oui 74d8543c-9bb0-4749-8b68-3ff9359d7708 Identifiant de l'appel

Paramètres de la réponse:

ATTENTION: pour cette requête uniquement et en cas de succes, le content-type retourne sera audio/wav et non pas application/json

GET
/records/{uuid}

Exemple de requête

  curl -X GET \
  'https://ws.ipbx.io/records/74d8543c-9bb0-4749-8b68-3ff9359d7708'

Envoyer un sms

Permet d'envoyer un sms

Paramètres de la requete:

nom type obligatoire exemple description
to string oui 33666562785 Numéro de l'appelant (format international sans +)
service_id int oui 11 Id du service a utiliser (fournit par IPBX)
route_id int oui 3 Id de la route a utiliser (fournit par IPBX)
content string oui message%20de%20test Contenu du sms (url encode)

Paramètres de la reponse:

nom type exemple description
code integer 200 Code du statut de la reponse
message string Accepted for delivery Message du statut de la reponse
transaction string 1529761 Identifiant unique de la transaction


POST
/text/send

Exemple de requete

curl -X POST \
  'https://ws.ipbx.io/text/send' \
  -F to=33666562785 \
  -F service_id=11 \
  -F route_id=3 \
  -F 'content=message%20de%20test'

Exemple de reponse

{
    "code": 200,
    "message": "Accepted for delivery",
    "transaction": "1529761"
}

Push vocal ou SMS

L'api IPBX permet de creer/modifier des campagnes de push (sms ou vocales), des carnets de contacts ("adressbook") et des contacts.

  • Un contact peut-etre ajoute a un ou plusieurs adressbook.
  • Un adressbook peut etre ajoute a une ou plusieurs campagnes.
  • Une campagne peut contenir un ou plusieurs adressbook.

Des numeros de telephone peuvent etre directement ajoutes a la creation/edition d'une campagne (champ recipients), ce qui aura pour effet de creer autant de contacts que de numero de telephone. Ces contacts seront ajoutes a un adressbook genere a la volee et associe a la campagne (afin de respecter les relations decrites precedemment).

Endpoints

Endpoints GET POST
/countries Liste des pays N/A
/services/{ivr|sms} Liste des services N/A
/campaigns Liste des campagnes Cree une campagne
/campaigns/{id} Detail d'une campagne Modifie une campagne
/campaigns/contacts Liste des contacts de campagne Cree un contact de campagne
/campaigns/contacts/{id} Detail d'un contact de campagne Modifie un contact de campagne
/campaigns/adressbooks Liste des adressbook Cree un adressbook
/campaigns/adressbooks{id} Detail d'un adressbook Modifie un adressbook

Methodes

Liste des campagnes

Permet de lister les campagnes

Paramètres de la requete:

Pas de parametres

Paramètres de la reponse:

La reponse retournee sera composee de N objets Campaigns contenu(s) dans une reponse de type Liste

GET
/campaigns

Exemple de requete

  curl -X GET 'https://ws.ipbx.io/campaigns'

Exemple de reponse

{
    "code": 200,
    "message": "OK",
    "total": 31,
    "data": [
        {
            "id": 562,
            "description": "Test V",
            "status": "Erreur",
            "creation_date": "2018-09-06T17:20:43+02:00",
            "sending_date": "2018-09-06T17:25:02+02:00",
            "campaign_type": "SMS",
            "service_ivr": "Default",
            "message_voice_path": null,
            "voice_sender": null,
            "service_ivr": {
                "id": -1,
                "name": "Default"
            },
            "message_text": "Cc C Mario ton voyant  une personne autour de toi te  dévoile ses sentiments amoureux c'est du sérieux , je te dis tout ce soir de 21h-24h tel 0890616166 0.6e/m",
            "message_sender": "TEST.HADRIEN",
            "frequency_count": null,
            "frequency_interval": null,
            "frequency_acd": "CASCADE",
            "sending_period": {
                "startDate": "2018-09-06T17:25:00+02:00",
                "endDate": "2018-09-07T17:25:00+02:00"
            },
            "date_aborted": null,
            "total_contacts": 3,
            "enabled": true,
            "adressbooks": [
                {
                    "id": 182,
                    "name": "mon petit carnet de test V",
                    "total_contacts": 3
                }
            ]
        },
        ...
    ]
}

Detail d'une campagne

Permet de recuperer les details d'une campagne

Paramètres de la requete:

Pas de parametres

Paramètres de la reponse:

La reponse retournee sera composee d'un objet Campaigns contenu(s) dans une reponse de type Liste

GET
/campaigns/{id}

Exemple de requete

  curl -X GET 'https://ws.ipbx.io/campaigns/562'

Exemple de reponse

{
    "code": 200,
    "message": "OK",
    "data": [
        {
            "id": 562,
            "description": "Test V",
            "status": "Erreur",
            "creation_date": "2018-09-06T17:20:43+02:00",
            "sending_date": "2018-09-06T17:25:02+02:00",
            "campaign_type": "SMS",
            "service_ivr": "Default",
            "message_voice_path": null,
            "voice_sender": null,
            "service_ivr": {
                "id": -1,
                "name": "Default"
            },
            "message_text": "Cc C Mario ton voyant  une personne autour de toi te  dévoile ses sentiments amoureux c'est du sérieux , je te dis tout ce soir de 21h-24h tel 0890616166 0.6e/m",
            "message_sender": "TEST.HADRIEN",
            "frequency_count": null,
            "frequency_interval": null,
            "frequency_acd": "CASCADE",
            "sending_period": {
                "startDate": "2018-09-06T17:25:00+02:00",
                "endDate": "2018-09-07T17:25:00+02:00"
            },
            "date_aborted": null,
            "total_contacts": 3,
            "enabled": true,
            "adressbooks": [
                {
                    "id": 182,
                    "name": "mon petit carnet de test V",
                    "total_contacts": 3
                }
            ]
        },
        ...
    ]
}

Creer une campagne

Permet d'ajouter une campagne

Paramètres de la requete:

nom type obligatoire exemple description
service integer oui 33173435456 Id du service (SMS ou IVR) voir Liste des services
description string oui Relance client Description de la campagne
message string oui Bonjour, veuillez regler votre facture en appelant le 089901020304 Message a envoyer
campaign_type string oui sms|ivr Type de campagne
sender string non VOXPAY Nom de l'expediteur de la campagne
frequency_count integer non | ?
frequency_interval integer non 30|60 Delai entre chaque envoi (en minutes)
enabled boolean non 33173435456 Etat d'activation de la campagne
sending_period array non [] Periode d'envoi de la campagne (objet de type Period). Par defaut [start => now(), end => now(+ 1 day)]
adressbooks array non [] Tableau d'id des adressbooks existants devant etre associes a la campagne
contacts array non [] Tableau d'id des contacts existants devant etre associes a la campagne
recipients array non [] Tableau de numeros de telephone des destinataire la campagne (format international sans +).

Paramètres de la reponse:

La reponse retournee sera composee d'un objet Campaigns contenu dans une reponse de type Liste

POST
/campaigns

Exemple de requete

curl -X POST \
  'https://ws.ipbx.io/campaigns' \
  -F description=test_julien_ivr \
  -F campaign_type=sms \
  -F service=4 \
  -F 'sending_period[start]=2018-11-07T10:35:32+01:00' \
  -F 'sending_period[end]=2018-11-08T10:35:32+01:00' \
  -F 'message=coucou le test' \
  -F 'recipients[]=33666562785'

Exemple de reponse

{
    "code": 200,
    "message": "The resource has been successfully created",
    "data": {
        "id": 726,
        "description": "test_julien_ivr",
        "status": "En attente",
        "creation_date": "2018-11-07T10:35:33+01:00",
        "sending_date": null,
        "campaign_type": "SMS",
        "service_ivr": null,
        "message_voice_path": null,
        "voice_sender": null,
        "service_sms": {
            "id": 4,
            "name": "envoi notification",
            "keyword": "PUSH-API2CALL",
            "shortcode": "33603814496"
        },
        "message_text": "coucou le test",
        "message_sender": null,
        "frequency_count": null,
        "frequency_interval": null,
        "frequency_acd": "CASCADE",
        "sending_period": {
            "startDate": "2018-11-07T10:35:32+01:00",
            "endDate": "2018-11-08T10:35:32+01:00"
        },
        "date_aborted": null,
        "total_contacts": 1,
        "enabled": true,
        "adressbooks": [
            {
                "id": 272,
                "name": "20181107103533_5be2b1e52aaff",
                "total_contacts": 1
            }
        ]
    }
}

Modifier une campagne

Permet de modifier une campagne.
Attention: Une campagne envoyee ou en cours d'envoi ne peut etre modifiee.

Paramètres de la requete:

nom type obligatoire exemple description
service integer oui 33173435456 Id du service (SMS ou IVR) voir Liste des services
description string non Relance client Description de la campagne
message string non Bonjour, veuillez regler votre facture en appelant le 089901020304 Message a envoyer
campaign_type string oui sms|ivr Type de campagne
sender string non VOXPAY Nom de l'expediteur de la campagne
frequency_count integer non | ?
frequency_interval integer non 30|60 Delai entre chaque envoi (en minutes)
enabled boolean non 33173435456 Etat d'activation de la campagne
sending_period array non [] Periode d'envoi de la campagne (objet de type Period). Par defaut [start => now(), end => now(+ 1 day)]
adressbooks array non [] Tableau d'ID des adressbooks existants devant etre associes a la campagne
contacts array non [] Tableau d'ID des contacts existants devant etre associes a la campagne
recipients array non [] Tableau de numeros de telephone des destinataire la campagne (format international sans +).

Paramètres de la reponse:

La reponse retournee sera composee d'un objet Campaigns contenu dans une reponse de type Liste

POST
/campaigns/{id}

Exemple de requete

curl -X POST \
  'https://ws.ipbx.io/campaigns' \
  -F campaign_type=sms \
  -F service=4 \
  -F 'recipients[]=33666562785'

Exemple de reponse

{
    "code": 200,
    "message": "The resource has been successfully created",
    "data": {
        "id": 726,
        "description": "test_julien_ivr",
        "status": "En attente",
        "creation_date": "2018-11-07T10:35:33+01:00",
        "sending_date": null,
        "campaign_type": "SMS",
        "service_ivr": null,
        "message_voice_path": null,
        "voice_sender": null,
        "service_sms": {
            "id": 4,
            "name": "envoi notification",
            "keyword": "PUSH-API2CALL",
            "shortcode": "33603814496"
        },
        "message_text": "coucou le test",
        "message_sender": null,
        "frequency_count": null,
        "frequency_interval": null,
        "frequency_acd": "CASCADE",
        "sending_period": {
            "startDate": "2018-11-07T10:35:32+01:00",
            "endDate": "2018-11-08T10:35:32+01:00"
        },
        "date_aborted": null,
        "total_contacts": 2,
        "enabled": true,
        "adressbooks": [
            {
                "id": 273,
                "name": "20181107152335_4cf1a2f52faage",
                "total_contacts": 2
            }
        ]
    }
}

Liste des contacts de campagne

Permet de lister les contacts de campagne

Paramètres de la requete:

Pas de parametres

Paramètres de la reponse:

La reponse retournee sera composee de N objets Contacts contenu(s) dans une reponse de type Liste

GET
/campaigns/contacts

Exemple de requete

  curl -X GET 'https://ws.ipbx.io/campaigns/contacts'

Exemple de reponse

{
    "code": 200,
    "message": "OK",
    "total": 3,
    "data": [
        {
            "id": 105866,
            "firstname": "julien",
            "lastname": null,
            "phone_number": "33612345678",
            "email": null,
            "gender": "H"
        },
        {
            "id": 105867,
            "firstname": "Hak",
            "lastname": null,
            "phone_number": "33634567812",
            "email": null,
            "gender": "H"
        },
        {
            "id": 121858,
            "firstname": "franck",
            "lastname": null,
            "phone_number": "33656781234",
            "email": null,
            "gender": null
        }
    ]
}

Detail d'un contact de campagne

Permet de recuperer les details d'un contact de campagne

Paramètres de la requete:

Pas de parametres

Paramètres de la reponse:

La reponse retournee sera composee d'un objet Contacts contenu dans une reponse de type Liste

GET
/campaigns/contacts/{id}

Exemple de requete

  curl -X GET 'https://ws.ipbx.io/campaigns/contacts/105866'

Exemple de reponse

{
    "code": 200,
    "message": "OK",
    "data": [
        {
            "id": 105866,
            "firstname": "julien",
            "lastname": null,
            "phone_number": "33612345678",
            "email": null,
            "gender": "H"
        }
    ]
}

Creer un contact de campagne

Permet de creer un contact de campagne

Paramètres de la requete:

nom type obligatoire exemple description
firstname string non john Prenom du contact
lastname string non doe Nom du contact
phone_number string oui 33612345678 Numero de telephone du contact (format international sans +)
email string non 33173435456 telephone du contact
gender string non H|F Genre du contact (H pour homme, F pour femme)
zip_code string non 75001 Code postal du contact
birthdate string non 01-01-1970 Date de naissance du contact (format d-m-Y)
astrological_sign string non Sagittaire Signe astrologique du contact
married boolean non false Le contact est-il marie?
children integer non 2 Nombre d'enfant
lovers_firstname string non Jane Prenom du premier amour
country integer non 1 Id d'un objet de type Country
adressbooks array non [] Tableau d'ID des adressbooks existants auxquels doit etre associe le contact

Paramètres de la reponse:

La reponse retournee sera composee d'un objet Contacts contenu dans une reponse de type Liste

POST
/campaigns/contacts/

Exemple de requete

  curl -X POST \
  'https://ws.ipbx.io/campaigns/contacts?apiKey=274966dbac84efa53e22b7ca5fd58b312d66e9ea' \
  -F phone_number=33612345678 \
  -F gender=M \
  -F firstname=Julien \
  -F lastname=Testeur \
  -F zip_code=75001 \
  -F birthdate=01-01-1970 \
  -F astrological_sign=taureau \
  -F married=false \
  -F children=1 \
  -F lovers_firstname=toto \
  -F country=1 \
  -F adressBook=132

Exemple de reponse

{
    "code": 200,
    "message": "The resource has been successfully created",
    "data": {
        "id": 128012,
        "firstname": "Julien",
        "lastname": "Testeur",
        "phone_number": "33612345678",
        "email": null,
        "gender": "M",
        "zip_code": null,
        "birthdate": null,
        "astrological_sign": "taureau",
        "married": "false",
        "children": 1,
        "lovers_firstname": "toto",
        "country": {
            "id": 1,
            "name": "France",
            "iso2": "FR"
        }
    }
}

Modifier un contact de campagne

Permet de modifier un contact de campagne

Paramètres de la requete:

nom type obligatoire exemple description
firstname string non john Prenom du contact
lastname string non doe Nom du contact
phone_number string non 33612345678 Numero de telephone du contact (format international sans +)
email string non 33173435456 telephone du contact
gender string non H|F Genre du contact (H pour homme, F pour femme)
zip_code string non 75001 Code postal du contact
birthdate string non 01-01-1970 Date de naissance du contact (format d-m-Y)
astrological_sign string non Sagittaire Signe astrologique du contact
married boolean non false Le contact est-il marie?
children integer non 2 Nombre d'enfant
lovers_firstname string non Jane Prenom du premier amour
country integer non 1 Id d'un objet de type Country
adressbooks array non [] Tableau d'ID des adressbooks existants auxquels doit etre associe le contact

Paramètres de la reponse:

La reponse retournee sera composee d'un objet Contacts contenu dans une reponse de type Liste

POST
/campaigns/contacts/{id}

Exemple de requete

  curl -X POST \
  'https://ws.ipbx.io/campaigns/contacts/128012?apiKey=274966dbac84efa53e22b7ca5fd58b312d66e9ea' \
  -F firstname=Raymond \

Exemple de reponse

{
    "code": 200,
    "message": "The resource has been successfully updated",
    "data": {
        "id": 128012,
        "firstname": "Raymond",
        "lastname": "Testeur",
        "phone_number": "33612345678",
        "email": null,
        "gender": "M",
        "zip_code": null,
        "birthdate": null,
        "astrological_sign": "taureau",
        "married": "false",
        "children": 1,
        "lovers_firstname": "toto",
        "country": {
            "id": 1,
            "name": "France",
            "iso2": "FR"
        }
    }
}

Liste des adressbooks

Permet de lister les adressbooks

Paramètres de la requete:

Pas de parametres

Paramètres de la reponse:

La reponse retournee sera composee de N objets Adressbooks contenu(s) dans une reponse de type Liste

GET
/campaigns/adressbooks

Exemple de requete

  curl -X GET 'https://ws.ipbx.io/campaigns/adressbooks'

Exemple de reponse

{
    "code": 200,
    "message": "OK",
    "total": 2,
    "data": [
        {
            "id": 176,
            "name": "Mon petit carnet",
            "total_contacts": 84,
            "creation_date": "2018-07-19T11:03:13+02:00",
            "enabled": true,
            "campaigns": [
                {
                    "id": 576,
                    "description": "coucou",
                    "status": "Envoyé"
                }
            ]
        },
        {
            "id": 182,
            "name": "Mon petit carnet 2",
            "total_contacts": 3,
            "creation_date": "2018-08-21T15:26:29+02:00",
            "enabled": true,
            "campaigns": [
                {
                    "id": 562,
                    "description": "Test V1",
                    "status": "Erreur"
                },
                {
                    "id": 564,
                    "description": "TEST V2",
                    "status": "Envoyé"
                }
            ]
        }
    ]
}

Detail d'un adressbook

Permet de recuperer les details d'un adressbook

Paramètres de la requete:

Pas de parametres

Paramètres de la reponse:

La reponse retournee sera composee d'un objet Adressbooks contenu dans une reponse de type Liste

GET
/campaigns/adressbook/{id}

Exemple de requete

  curl -X GET 'https://ws.ipbx.io/campaigns/adressbook/176'

Exemple de reponse

{
    "code": 200,
    "message": "OK",
    "total": 1,
    "data": {
        "id": 176,
        "name": "Mon petit carnet",
        "total_contacts": 84,
        "creation_date": "2018-07-19T11:03:13+02:00",
        "enabled": true,
        "campaigns": [
            {
                "id": 576,
                "description": "coucou",
                "status": "Envoyé"
            }
        ]
    }
}

Creer un adressbook

Permet de creer un adressbook

Paramètres de la requete:

nom type obligatoire exemple description
name string oui Default Nom de l'adressbook
contacts array non [] Tableau d'id de contacts existants devant etre associes a l'adressbook

Paramètres de la reponse:

La reponse retournee sera composee d'un objet Adressbooks contenu dans une reponse de type Liste

POST
/campaigns/adressbooks/

Exemple de requete

  curl -X POST \
  'https://ws.ipbx.io/campaigns/adressbooks?apiKey=274966dbac84efa53e22b7ca5fd58b312d66e9ea' \
  -F name=Carnet1 \
  -F contacts[]=128011
  -F contacts[]=128012

Exemple de reponse

{
    "code": 200,
    "message": "The resource has been successfully created",
    "total": 1,
    "data": {
        "id": 273,
        "name": "Carnet1",
        "total_contacts": 2,
        "creation_date": "2018-11-07T18:18:35+01:00",
        "enabled": true,
        "campaigns": []
    }
}

Modifier un adressbook

Permet de modifier un adressbook

Paramètres de la requete:

nom type obligatoire exemple description
name string non Default Nom de l'adressbook
contacts array non [] Tableau d'id de contacts existants devant etre associes a l'adressbook

Paramètres de la reponse:

La reponse retournee sera composee d'un objet Adressbooks contenu dans une reponse de type Liste

POST
/campaigns/adressbooks/{id}

Exemple de requete

  curl -X POST \
  'https://ws.ipbx.io/campaigns/adressbooks?apiKey=274966dbac84efa53e22b7ca5fd58b312d66e9ea' \
  -F name=Carnet1_1

Exemple de reponse

{
    "code": 200,
    "message": "The resource has been successfully updated",
    "total": 1,
    "data": {
        "id": 273,
        "name": "Carnet1_1",
        "total_contacts": 2,
        "creation_date": "2018-11-07T18:18:35+01:00",
        "enabled": true,
        "campaigns": []
    }
}

Supprimer un contact d'un adressbook

Permet de supprimer un contact d'un adressbook

Paramètres de la requete:

nom type obligatoire exemple description
contacts array non [] Tableau d'id de contacts existants devant etre retires de l'adressbook

Paramètres de la reponse:

La reponse retournee sera composee d'un objet Adressbooks contenu dans une reponse de type Liste

POST
/campaigns/adressbooks/{id}/contacts/remove

Exemple de requete

  curl -X POST \
  'https://ws.ipbx.io/campaigns/adressbooks/273/contacts/remove?apiKey=274966dbac84efa53e22b7ca5fd58b312d66e9ea' \
  -F contacts[]=128012

Exemple de reponse

{
    "code": 200,
    "message": "OK",
    "total": 1,
    "data": {
        "id": 273,
        "name": "Carnet1_1",
        "total_contacts": 1,
        "creation_date": "2018-11-07T18:18:35+01:00",
        "enabled": true,
        "campaigns": []
    }
}

Liste des pays

Permet de lister les pays

Paramètres de la reponse:

La reponse retournee sera composee de N objets Countries contenu(s) dans une reponse de type Liste

GET
/countries

Exemple de requete

  curl -X GET 'https://ws.ipbx.io/countries'

Exemple de reponse

{
    "code": 200,
    "message": "OK",
    "total": 250,
    "data": [
        {
            "id": 1,
            "name": "France",
            "iso2": "FR"
        },
        {
            "id": 2,
            "name": "Afghanistan",
            "iso2": "AF"
        },
        ...
    ]
}

Liste des services

Permet de lister les services sms ou vocaux (ivr) (voir objet Service IVR ou Service SMS)

Paramètres de la requete:

nom type obligatoire exemple description
type string oui sms|ivr type du service

Paramètres de la reponse:

GET
/services/{type}

Exemple de requete

  curl -X GET 'https://ws.ipbx.io/services/sms'

Exemple de reponse

{
    "code": 200,
    "message": "OK",
    "total": 2,
    "data": [
        {
            "id": 1,
            "name": "default",
            "nameCustom": "DEFAULT",
            "keyword": "DEFAULT",
            "shortcode": "33612345678",
            "enabled": true,
            "validityPeriod": {
                "start": "2016-04-15T00:00:00+02",
                "end": null
            }
        }, 
        {
            "id": 2,
            "name": "envoi notification",
            "nameCustom": "ipbx notif",
            "keyword": "PUSH",
            "shortcode": "33634567812",
            "enabled": true,
            "validityPeriod": {
                "start": "2016-04-15T00:00:00+02",
                "end": null
            }
        }
    ]
}

Teller

L'api IPBX permet de creer/modifier des agents/tellers.

  • Un agent peut être ajouté à une plateforme
  • On peut attribuer des droits spécifiques à un agent.

Des numeros de telephone peuvent etre directement ajoutes a la creation/edition d'une campagne (champ recipients), ce qui aura pour effet de creer autant de contacts que de numero de telephone. Ces contacts seront ajoutes a un adressbook genere a la volee et associe a la campagne (afin de respecter les relations decrites precedemment).

Endpoints Tellers

Endpoints GET POST
/tellers Liste des tellers Créer un tellers
/tellers/{id} Détail d'un teller Modifier un teller
/tellers/{id}/acl/add N/A Ajouter un ACL
/tellers/{id}/acl/remove N/A Supprimer un ACL
/tellers/{id}/platform/add N/A Associer une plateforme à un teller
/tellers/{id}/platform/remove N/A Dissocier une plateforme à un teller
/tellers/{id}/destination/add N/A Associer une destination à un teller
/tellers/{id}/destination/remove/{idDestination} Dissocier une destination à un teller N/A
/tellers/{id}/destination/update/{idDestination} N/A Mettre à jour une destination

Methodes Tellers

Liste des tellers

Permet de lister les tellers

Paramètres de la requete:

Pas de parametres

Paramètres de la reponse:

La reponse retournee sera composee de N objets Tellers contenu(s) dans une réponse de type Liste

GET
/tellers

Exemple de requete

  curl -X GET 'https://ws.ipbx.io/tellers'

Exemple de reponse

{
    "code": 200,
    "message": "OK",
    "total": 2,
    "data": [
        {
            "id": 2,
            "callcenter": {
                "id": 1,
                "name": "IPBX_Mercedes-Benz AMG5e3b499cf0d23",
                "description": null,
                "ivr_code": 97795,
                "is_active": true,
                "is_hidden": false,
                "platforms": {}
            },
            "login": "mlouzet",
            "password": "(L?!@LzB`Q*r7*vd",
            "firstname": "Mickael",
            "lastname": "Louzet",
            "email": "mlouzet@ipbx.io",
            "acl": [],
            "birthday": "2020-02-06T00:02:53+01:00",
            "description_short": null,
            "description_gift": null,
            "description_background": null,
            "description_degree": null,
            "description_publishing": null,
            "description_tag": null,
            "platform": [
                {
                    "id": 1,
                    "name": "Paris",
                    "description": null,
                    "nb_touch": 5,
                    "code": "138288",
                    "ivr_code": "538270",
                    "country": {
                        "id": 1,
                        "name": "France",
                        "iso2": "FR"
                    },
                    "options": {
                        "force_destination": null,
                        "routage_template": "HEBDOMADAIRE",
                        "display_caller_id": null,
                        "simultanous_calls": null,
                        "max_retry": 3,
                        "max_ring_duration": 40,
                        "sound_file_waiting": null,
                        "sound_file_whisperer": null,
                        "holdon_with_digit": null,
                        "max_in_queue": null,
                        "overflow_template": "DEFAULT",
                        "vm_enabled": null,
                        "vm_cause": null,
                        "planning": [],
                        "email_alert": null,
                        "sms_alert": null,
                        "display_marketplace": false,
                        "display_prs_limit": 5,
                        "view_step_timing": "01:00:00",
                        "repeat_customer_nbcall": "[0,)",
                        "is_name_public": false,
                        "display_marketplace_first": 0,
                        "display_priority": 0,
                        "url_cti_notification": ""
                    }
                }
            ],
            "destination": [
                {
                    "id": 3,
                    "teller_id": 2,
                    "priority": 1,
                    "number": "33666562785",
                    "label": "MAIN_DESTINATION",
                    "type_destination": "mobile",
                    "date_creation": {
                        "date": "2020-02-05 23:02:53.000000",
                        "timezone_type": 1,
                        "timezone": "+00:00"
                    },
                    "is_active": true,
                    "alias": null,
                    "caller_number": "Anonymous",
                    "is_sip_account": false
                },
                {
                    "id": 4,
                    "login": "mlouzet",
                    "password": "(L?!@LzB`Q*r7*vd",
                    "domain": "LK000EXT.pbx1.ipbx.io:5123",
                    "number": "sip:9998",
                    "alias": "9998",
                    "caller_number": "33173439998",
                    "date_creation": {
                        "date": "2020-02-05 23:02:53.000000",
                        "timezone_type": 1,
                        "timezone": "+00:00"
                    },
                    "is_active": true
                }
            ]
        },
        {
            "id": 1,
            "callcenter": {
                "id": 1,
                "name": "IPBX_Mercedes-Benz AMG5e3b499cf0d23",
                "description": null,
                "ivr_code": 97795,
                "is_active": true,
                "is_hidden": false,
                "platforms": {}
            },
            "login": "vringuede",
            "password": "(L?!@LzB`Q*r7*vd",
            "firstname": "Vincent",
            "lastname": "Ringuede",
            "email": "vringuede@ipbx.io",
            "acl": [],
            "birthday": "2020-02-06T00:02:53+01:00",
            "description_short": null,
            "description_gift": null,
            "description_background": null,
            "description_degree": null,
            "description_publishing": null,
            "description_tag": null,
            "platform": [
                {
                    "id": 1,
                    "name": "Paris",
                    "description": null,
                    "nb_touch": 5,
                    "code": "138288",
                    "ivr_code": "538270",
                    "country": {
                        "id": 1,
                        "name": "France",
                        "iso2": "FR"
                    },
                    "options": {
                        "force_destination": null,
                        "routage_template": "HEBDOMADAIRE",
                        "display_caller_id": null,
                        "simultanous_calls": null,
                        "max_retry": 3,
                        "max_ring_duration": 40,
                        "sound_file_waiting": null,
                        "sound_file_whisperer": null,
                        "holdon_with_digit": null,
                        "max_in_queue": null,
                        "overflow_template": "DEFAULT",
                        "vm_enabled": null,
                        "vm_cause": null,
                        "planning": [],
                        "email_alert": null,
                        "sms_alert": null,
                        "display_marketplace": false,
                        "display_prs_limit": 5,
                        "view_step_timing": "01:00:00",
                        "repeat_customer_nbcall": "[0,)",
                        "is_name_public": false,
                        "display_marketplace_first": 0,
                        "display_priority": 0,
                        "url_cti_notification": ""
                    }
                }
            ],
            "destination": [
                {
                    "id": 1,
                    "teller_id": 1,
                    "priority": 1,
                    "number": "33666562785",
                    "label": "MAIN_DESTINATION",
                    "type_destination": "mobile",
                    "date_creation": {
                        "date": "2020-02-05 23:02:53.000000",
                        "timezone_type": 1,
                        "timezone": "+00:00"
                    },
                    "is_active": true,
                    "alias": null,
                    "caller_number": "Anonymous",
                    "is_sip_account": false
                },
                {
                    "id": 2,
                    "login": "vringuede",
                    "password": "(L?!@LzB`Q*r7*vd",
                    "domain": "LK000EXT.pbx1.ipbx.io:5123",
                    "number": "sip:9996",
                    "alias": "9996",
                    "caller_number": "33173439996",
                    "date_creation": {
                        "date": "2020-02-05 23:02:53.000000",
                        "timezone_type": 1,
                        "timezone": "+00:00"
                    },
                    "is_active": true
                }
            ]
        }
    ]
}

Creer un teller

Permet d'ajouter un teller

Paramètres de la requete:

nom type obligatoire exemple description
callcenter integer oui 3 Id du callcenter où il faut rattacher le teller
login string oui smartin Login du teller
firstname string oui Stéphane Prénom du teller
lastname string oui Martin Nom du teller
email email oui `smartin@example.com | Email du teller
birthday date non 1980-05-01 Date de naissance au format YYYY-MM-DD
description_short string non | description_short
description_gift string non | description_gift
description_background string non | description_background
description_degree string non | description_degree
description_publishing string non | description_publishing
description_tag string non | description_tag

Paramètres de la reponse:

La reponse retournee sera composee d'un objet Campaigns contenu dans une reponse de type Liste

POST
/tellers

Exemple de requete

curl -X POST \
  'https://ws.ipbx.io/tellers' \
    -F firstname=stephane \
    -F lastname=Martin \
    -F email=smartin@example.com \
    -F callcenter=1 \
    -F login=smartin \
    -F 'description_short=Ma description'

Exemple de reponse

{
    "code": 200,
    "message": "The resource has been successfully created",
    "total": 1,
    "data": {
        "id": 6,
        "callcenter": {
            "id": 1,
            "name": "IPBX_Mercedes-Benz AMG5e3b499cf0d23",
            "description": null,
            "ivr_code": 97795,
            "is_active": true,
            "is_hidden": false,
            "platforms": {}
        },
        "login": "smartin",
        "password": "LfMtd0wT#s",
        "firstname": "stephane",
        "lastname": "Martin",
        "email": "smartin@example.com",
        "acl": [
            {
                "name": "ihm_financiere",
                "value": 1
            },
            {
                "name": "vocal_eject_enduser",
                "value": 1
            },
            {
                "name": "vocal_overtime",
                "value": 1
            },
            {
                "name": "ihm_statistique",
                "value": 1
            },
            {
                "name": "ihm_hide_crypted_number",
                "value": 1
            }
        ],
        "birthday": {
            "date": "2020-02-10 11:12:12.796141",
            "timezone_type": 3,
            "timezone": "Europe/Paris"
        },
        "description_short": null,
        "description_gift": null,
        "description_background": null,
        "description_degree": null,
        "description_publishing": null,
        "description_tag": null,
        "platform": [],
        "destination": []
    }
}

Détail d'un tellers

Détail d'un teller

Paramètres de la requete:

{id} Identifiant du teller

Paramètres de la reponse:

La reponse retournee sera composée d'un objets Tellers contenu(s) dans une réponse de type Liste

GET
/tellers/{id}

Exemple de requete

  curl -X GET 'https://ws.ipbx.io/tellers/1'

Exemple de reponse

{
    "code": 200,
    "message": "OK",
    "total": 1,
    "data": {
        "id": 6,
        "callcenter": {
            "id": 1,
            "name": "IPBX_Mercedes-Benz AMG5e3b499cf0d23",
            "description": null,
            "ivr_code": 97795,
            "is_active": true,
            "is_hidden": false,
            "platforms": {}
        },
        "login": "smartin",
        "password": "LfMtd0wT#s",
        "firstname": "stephane",
        "lastname": "Martin",
        "email": "smartin@example.com",
        "acl": [
            {
                "name": "ihm_financiere",
                "value": "1"
            },
            {
                "name": "vocal_eject_enduser",
                "value": "1"
            },
            {
                "name": "vocal_overtime",
                "value": "1"
            },
            {
                "name": "ihm_statistique",
                "value": "1"
            },
            {
                "name": "ihm_hide_crypted_number",
                "value": "1"
            }
        ],
        "birthday": "2020-02-10T11:12:12+01:00",
        "description_short": null,
        "description_gift": null,
        "description_background": null,
        "description_degree": null,
        "description_publishing": null,
        "description_tag": null,
        "platform": [],
        "destination": []
    }
}

Modifier un teller

Modifier un teller

Paramètres de la requete:

nom type obligatoire exemple description
login string oui smartin Login du teller
firstname string oui Stéphane Prénom du teller
lastname string oui Martin Nom du teller
email email oui `smartin@example.com | Email du teller
birthday date non 1980-05-01 Date de naissance au format YYYY-MM-DD
description_short string non | description_short
description_gift string non | description_gift
description_background string non | description_background
description_degree string non | description_degree
description_publishing string non | description_publishing
description_tag string non | description_tag

Paramètres de la reponse:

La réponse retournée sera composée d'un objet Tellers contenu(s)

POST
/tellers/{id}

Exemple de requete

curl -X POST \
  'https://ws.ipbx.io/tellers/1' \
    -F firstname=stephane \
    -F lastname=Martin \
    -F email=smartin@example.com \
    -F login=smartin \
    -F 'description_short=Ma description'

Exemple de reponse

{
    "code": 200,
    "message": "OK",
    "total": 1,
    "data": {
        "id": 6,
        "callcenter": {
            "id": 1,
            "name": "IPBX_Mercedes-Benz AMG5e3b499cf0d23",
            "description": null,
            "ivr_code": 97795,
            "is_active": true,
            "is_hidden": false,
            "platforms": {}
        },
        "login": "smartin",
        "password": "LfMtd0wT#s",
        "firstname": "stephane",
        "lastname": "Martin",
        "email": "smartin@example.com",
        "acl": [
            {
                "name": "ihm_financiere",
                "value": "1"
            },
            {
                "name": "vocal_eject_enduser",
                "value": "1"
            },
            {
                "name": "vocal_overtime",
                "value": "1"
            },
            {
                "name": "ihm_statistique",
                "value": "1"
            },
            {
                "name": "ihm_hide_crypted_number",
                "value": "1"
            }
        ],
        "birthday": "2020-02-10T11:12:12+01:00",
        "description_short": null,
        "description_gift": null,
        "description_background": null,
        "description_degree": null,
        "description_publishing": null,
        "description_tag": null,
        "platform": [],
        "destination": []
    }
}

Ajouter un ACL à un teller

Ajouter un ACL à un teller

Paramètres de la requete:

nom type obligatoire exemple description
name string oui vocal_overtime Nom de l'acl
value integer oui 1 Valeur de l'acl

Paramètres de la reponse:

La reponse retournee sera composée d'un objets Tellers

POST
/tellers/{id}/acl/add

Exemple de requete

curl -X POST \
  'https://ws.ipbx.io/tellers/6/acl/add' \
    -F name=vocal_overtime \
    -F value=1 

Exemple de reponse

{
    "code": 200,
    "message": "OK",
    "total": 1,
    "data": {
        "id": 6,
        "callcenter": {
            "id": 1,
            "name": "IPBX_Mercedes-Benz AMG5e3b499cf0d23",
            "description": null,
            "ivr_code": 97795,
            "is_active": true,
            "is_hidden": false,
            "platforms": {}
        },
        "login": "smartin",
        "password": "LfMtd0wT#s",
        "firstname": "stephane",
        "lastname": "Martin",
        "email": "smartin@example.com",
        "acl": [
            {
                "name": "ihm_financiere",
                "value": "1"
            },
            {
                "name": "vocal_eject_enduser",
                "value": "1"
            },
            {
                "name": "vocal_overtime",
                "value": "1"
            },
            {
                "name": "ihm_statistique",
                "value": "1"
            },
            {
                "name": "ihm_hide_crypted_number",
                "value": "1"
            }
        ],
        "birthday": "2020-02-10T11:12:12+01:00",
        "description_short": null,
        "description_gift": null,
        "description_background": null,
        "description_degree": null,
        "description_publishing": null,
        "description_tag": null,
        "platform": [],
        "destination": []
    }
}

Supprimer un ACL à un teller

Supprimer un ACL à un teller

Paramètres de la requete:

nom type obligatoire exemple description
name string oui vocal_overtime Nom de l'acl

Paramètres de la reponse:

La reponse retournee sera composée d'un objet Tellers

POST
/tellers/{id}/acl/remove

Exemple de requete

curl -X POST \
  'https://ws.ipbx.io/tellers/6/acl/remove' \
    -F name=vocal_overtime \
    -F value=1 

Exemple de reponse

{
    "code": 200,
    "message": "OK",
    "total": 1,
    "data": {
        "id": 6,
        "callcenter": {
            "id": 1,
            "name": "IPBX_Mercedes-Benz AMG5e3b499cf0d23",
            "description": null,
            "ivr_code": 97795,
            "is_active": true,
            "is_hidden": false,
            "platforms": {}
        },
        "login": "smartin",
        "password": "LfMtd0wT#s",
        "firstname": "stephane",
        "lastname": "Martin",
        "email": "smartin@example.com",
        "acl": [
            {
                "name": "ihm_financiere",
                "value": "1"
            },
            {
                "name": "vocal_eject_enduser",
                "value": "1"
            },
            {
                "name": "ihm_statistique",
                "value": "1"
            },
            {
                "name": "ihm_hide_crypted_number",
                "value": "1"
            }
        ],
        "birthday": "2020-02-10T11:12:12+01:00",
        "description_short": null,
        "description_gift": null,
        "description_background": null,
        "description_degree": null,
        "description_publishing": null,
        "description_tag": null,
        "platform": [],
        "destination": []
    }
}

Ajouter une plateforme à un teller

Ajouter une plateforme à un teller

Paramètres de la requete:

nom type obligatoire exemple description
platform integer oui 1 Id de la plateforme

Paramètres de la reponse:

La reponse retournee sera composée d'un objet Tellers

POST
/tellers/{id}/platform/add

Exemple de requete

curl -X POST \
  'https://ws.ipbx.io/tellers/6/platform/add' \
    -F platform=1 

Exemple de reponse

{
    "code": 200,
    "message": "OK",
    "total": 1,
    "data": {
        "id": 6,
        "callcenter": {
            "id": 1,
            "name": "IPBX_Mercedes-Benz AMG5e3b499cf0d23",
            "description": null,
            "ivr_code": 97795,
            "is_active": true,
            "is_hidden": false,
            "platforms": {}
        },
        "login": "smartin",
        "password": "LfMtd0wT#s",
        "firstname": "stephane",
        "lastname": "Martin",
        "email": "smartin@example.com",
        "acl": [
            {
                "name": "ihm_financiere",
                "value": "1"
            },
            {
                "name": "vocal_eject_enduser",
                "value": "1"
            },
            {
                "name": "vocal_overtime",
                "value": "1"
            },
            {
                "name": "ihm_statistique",
                "value": "1"
            },
            {
                "name": "ihm_hide_crypted_number",
                "value": "1"
            }
        ],
        "birthday": "2020-02-10T11:12:12+01:00",
        "description_short": null,
        "description_gift": null,
        "description_background": null,
        "description_degree": null,
        "description_publishing": null,
        "description_tag": null,
        "platform": [
            {
                "id": 1,
                "name": "Paris",
                "description": null,
                "nb_touch": 5,
                "code": "138288",
                "ivr_code": "538270",
                "country": {
                    "id": 1,
                    "name": "France",
                    "iso2": "FR"
                },
                "options": {
                    "force_destination": null,
                    "routage_template": "HEBDOMADAIRE",
                    "display_caller_id": null,
                    "simultanous_calls": null,
                    "max_retry": 3,
                    "max_ring_duration": 40,
                    "sound_file_waiting": null,
                    "sound_file_whisperer": null,
                    "holdon_with_digit": null,
                    "max_in_queue": null,
                    "overflow_template": "DEFAULT",
                    "vm_enabled": null,
                    "vm_cause": null,
                    "planning": [],
                    "email_alert": null,
                    "sms_alert": null,
                    "display_marketplace": false,
                    "display_prs_limit": 5,
                    "view_step_timing": "01:00:00",
                    "repeat_customer_nbcall": "[0,)",
                    "is_name_public": false,
                    "display_marketplace_first": 0,
                    "display_priority": 0,
                    "url_cti_notification": ""
                }
            }
        ],
        "destination": []
    }
}

Supprimer une plateforme à un teller

Supprimer une plateforme à un teller

Paramètres de la requete:

nom type obligatoire exemple description
platform integer oui 1 Id de la plateforme

Paramètres de la réponse:

La reponse retournee sera composée d'un objet Tellers

POST
/tellers/{id}/platform/remove

Exemple de requete

curl -X POST \
  'https://ws.ipbx.io/tellers/6/platform/remove' \
    -F platform=1 

Exemple de reponse

{
    "code": 200,
    "message": "OK",
    "total": 1,
    "data": {
        "id": 6,
        "callcenter": {
            "id": 1,
            "name": "IPBX_Mercedes-Benz AMG5e3b499cf0d23",
            "description": null,
            "ivr_code": 97795,
            "is_active": true,
            "is_hidden": false,
            "platforms": {}
        },
        "login": "smartin",
        "password": "LfMtd0wT#s",
        "firstname": "stephane",
        "lastname": "Martin",
        "email": "smartin@example.com",
        "acl": [
            {
                "name": "ihm_financiere",
                "value": "1"
            },
            {
                "name": "vocal_eject_enduser",
                "value": "1"
            },
            {
                "name": "vocal_overtime",
                "value": "1"
            },
            {
                "name": "ihm_statistique",
                "value": "1"
            },
            {
                "name": "ihm_hide_crypted_number",
                "value": "1"
            }
        ],
        "birthday": "2020-02-10T11:12:12+01:00",
        "description_short": null,
        "description_gift": null,
        "description_background": null,
        "description_degree": null,
        "description_publishing": null,
        "description_tag": null,
        "platform": [],
        "destination": []
    }
}

Ajouter une destination à un teller

Ajouter une destination à un teller

Paramètres de la requete:

nom type obligatoire exemple description
priority integer oui 1 Priorité de la destination par rapport aux autres
number string oui 33654545454 Numéro de téléphone de destination
label string oui description Description de la destination
country string non FR code iso2 du pays, par defaut FR
activate string non t t ou f

Paramètres de la reponse:

La réponse retournée sera composée d'un objet Tellers

POST
/tellers/{id}/destination/add

Exemple de requete

curl -X POST \
  'https://ws.ipbx.io/tellers/6/destination/add' \
      -F number=33685121212 \
      -F 'label=mon num mobile' \
      -F priority=2 

Exemple de reponse

{
    "code": 200,
    "message": "OK",
    "total": 1,
    "data": {
        "id": 6,
        "callcenter": {
            "id": 1,
            "name": "IPBX_Mercedes-Benz AMG5e3b499cf0d23",
            "description": null,
            "ivr_code": 97795,
            "is_active": true,
            "is_hidden": false,
            "platforms": {}
        },
        "login": "smartin",
        "password": "LfMtd0wT#s",
        "firstname": "stephane",
        "lastname": "Martin",
        "email": "smartin@example.com",
        "acl": [
            {
                "name": "ihm_financiere",
                "value": "1"
            },
            {
                "name": "vocal_eject_enduser",
                "value": "1"
            },
            {
                "name": "vocal_overtime",
                "value": "1"
            },
            {
                "name": "ihm_statistique",
                "value": "1"
            },
            {
                "name": "ihm_hide_crypted_number",
                "value": "1"
            }
        ],
        "birthday": "2020-02-10T11:12:12+01:00",
        "description_short": null,
        "description_gift": null,
        "description_background": null,
        "description_degree": null,
        "description_publishing": null,
        "description_tag": null,
        "platform": [],
        "destination": [
            {
                "id": 11,
                "teller_id": 6,
                "priority": 2,
                "number": "33685121212",
                "label": "mon num mobile",
                "type_destination": "mobile",
                "date_creation": {
                    "date": "2020-02-10 11:40:07.978844",
                    "timezone_type": 3,
                    "timezone": "Europe/Paris"
                },
                "is_active": true,
                "alias": null,
                "caller_number": "Anonymous",
                "is_sip_account": false
            }
        ]
    }
}

Supprimer une destination à un teller

Supprimer une destination à un teller

Paramètres de la requete:

{id} id du teller {idDestination} id de la destination à supprimer

Paramètres de la reponse:

La réponse retournée sera composée d'un objet Tellers

GET
/tellers/{id}/destination/remove/{idDestination}

Exemple de requete

curl -X GET \
  'https://ws.ipbx.io/tellers/6/destination/remove/11' 

Exemple de reponse

{
    "code": 200,
    "message": "OK",
    "total": 1,
    "data": {
        "id": 6,
        "callcenter": {
            "id": 1,
            "name": "IPBX_Mercedes-Benz AMG5e3b499cf0d23",
            "description": null,
            "ivr_code": 97795,
            "is_active": true,
            "is_hidden": false,
            "platforms": {}
        },
        "login": "smartin",
        "password": "LfMtd0wT#s",
        "firstname": "stephane",
        "lastname": "Martin",
        "email": "smartin@example.com",
        "acl": [
            {
                "name": "ihm_financiere",
                "value": "1"
            },
            {
                "name": "vocal_eject_enduser",
                "value": "1"
            },
            {
                "name": "vocal_overtime",
                "value": "1"
            },
            {
                "name": "ihm_statistique",
                "value": "1"
            },
            {
                "name": "ihm_hide_crypted_number",
                "value": "1"
            }
        ],
        "birthday": "2020-02-10T11:12:12+01:00",
        "description_short": null,
        "description_gift": null,
        "description_background": null,
        "description_degree": null,
        "description_publishing": null,
        "description_tag": null,
        "platform": [],
        "destination": []
    }
}

Modifier une destination d'un teller

Modifier une destination d'un teller

Paramètres de la requete:

nom type obligatoire exemple description
platform integer oui 1 Id de la plateforme

Paramètres de la reponse:

La reponse retournee sera composée d'un objet Tellers

POST
/tellers/{id}/destination/update/{idDestination}

Exemple de requete

curl -X POST \
  'https://ws.ipbx.io/tellers/6/destination/update/12' \
      -F number=33685121215 \
      -F 'label=mon num mobile' \
      -F priority=3

Exemple de reponse

{
    "code": 200,
    "message": "OK",
    "total": 1,
    "data": {
        "id": 6,
        "callcenter": {
            "id": 1,
            "name": "IPBX_Mercedes-Benz AMG5e3b499cf0d23",
            "description": null,
            "ivr_code": 97795,
            "is_active": true,
            "is_hidden": false,
            "platforms": {}
        },
        "login": "smartin",
        "password": "LfMtd0wT#s",
        "firstname": "stephane",
        "lastname": "Martin",
        "email": "smartin@example.com",
        "acl": [
            {
                "name": "ihm_financiere",
                "value": "1"
            },
            {
                "name": "vocal_eject_enduser",
                "value": "1"
            },
            {
                "name": "vocal_overtime",
                "value": "1"
            },
            {
                "name": "ihm_statistique",
                "value": "1"
            },
            {
                "name": "ihm_hide_crypted_number",
                "value": "1"
            }
        ],
        "birthday": "2020-02-10T11:12:12+01:00",
        "description_short": null,
        "description_gift": null,
        "description_background": null,
        "description_degree": null,
        "description_publishing": null,
        "description_tag": null,
        "platform": [],
        "destination": [
            {
                "id": 12,
                "teller_id": 6,
                "priority": 3,
                "number": "33685121215",
                "label": "mon num mobile",
                "type_destination": "mobile",
                "date_creation": {
                    "date": "2020-02-10 10:48:03.000000",
                    "timezone_type": 1,
                    "timezone": "+00:00"
                },
                "is_active": true,
                "alias": null,
                "caller_number": "Anonymous",
                "is_sip_account": false
            }
        ]
    }
}

Planning

Pouvoir récupérer :

  • un planning par plateforme
  • un planning par plateforme et teller

Endpoints Planning

Endpoints GET POST
/planning/{idPlatform}/{date} Planning de la plateforme {idPlatform} à la date {date} N/A
/planning/{idPlatform}/teller/{idTeller}/{date} Planning du teller {idTeller} pour la plateforme {idPlatform} à la date {date} N/A

Methodes Planning

Récupérer le planning de la plateforme

Récupérer le planning de la plateforme

Paramètres de la requete:

{idPlatform} : identifiant de la plateforme {date} : date au format YYYY-MM-DD

Paramètres de la reponse:

La reponse retournee sera composee du planning

GET
/planning/{idPlatform}/{date}

Exemple de requete

  curl -X GET 'https://ws.ipbx.io/planning/1/2020-01-04'

Exemple de reponse

{
    "code": 200,
    "message": "OK",
    "total": 19,
    "data": {
        "00:00": [
            {
                "tellerId": 2597,
                "tellerName": "Mady",
                "descriptionBackground": "Medium pure, Êtes-vous prêt à tout entendre ? Consultation datée et précise, sans support. j'ai besoin de votre prénom et votre âge A tout de suite. Je peux vous aider à faire le bon choix, à prendre la bonne direction, à comprendre ce qui se passe. J'ai perçu de l'impatience et un bouleversement. Rien n'est impossible pour vous, et ça je le vois bien. En fait, il vous suffit d'avoir les bonnes cartes en main.",
                "profilePicture": "5c7a54973995b.jpg",
                "platformId": 386
            },
            {
                "tellerId": 1551,
                "tellerName": "LUCIE",
                "descriptionBackground": "Médium - voyante  depuis 30 ans\r\n J'utilise mon tarot personnel  \" Les Fleurs divinatoires \"\r\net le pendule pour confirmer et dater les évènements.\r\nQuelque soit le domaine de vos préoccupations, je vous apporterais mon aide avec sincérité et honnêteté.Je prendrais le temps de vous écouter et  répondrais avec le plus details possible a toutes vos questions",
                "profilePicture": "5ab8eeaea8cef.png",
                "platformId": 264
            }
        ],
        "01:00": [
            {
                "tellerId": 2597,
                "tellerName": "Mady",
                "descriptionBackground": "Medium pure, Êtes-vous prêt à tout entendre ? Consultation datée et précise, sans support. j'ai besoin de votre prénom et votre âge A tout de suite. Je peux vous aider à faire le bon choix, à prendre la bonne direction, à comprendre ce qui se passe. J'ai perçu de l'impatience et un bouleversement. Rien n'est impossible pour vous, et ça je le vois bien. En fait, il vous suffit d'avoir les bonnes cartes en main.",
                "profilePicture": "5c7a54973995b.jpg",
                "platformId": 386
            },
            {
                "tellerId": 1551,
                "tellerName": "LUCIE",
                "descriptionBackground": "Médium - voyante  depuis 30 ans\r\n J'utilise mon tarot personnel  \" Les Fleurs divinatoires \"\r\net le pendule pour confirmer et dater les évènements.\r\nQuelque soit le domaine de vos préoccupations, je vous apporterais mon aide avec sincérité et honnêteté.Je prendrais le temps de vous écouter et  répondrais avec le plus details possible a toutes vos questions",
                "profilePicture": "5ab8eeaea8cef.png",
                "platformId": 264
            }
        ],
        "07:00": [
            {
                "tellerId": 725,
                "tellerName": "ANDREAS",
                "descriptionShort": "Médium pur Médium auditi...",
                "descriptionBackground": "Bonjour, je suis Andreas, je suis médium pur et auditif, le son de votre voix me déclenche des ressentis, des flashs, des images, ... que j'affine et confirme avec mes oracles. La voyance est pour moi un voyage à travers les sphères du temps et surtout un plaisir, le plaisir d'aider mon prochain. Chaque obstacle, chaque difficulté a sa raison d'être, et je vous aiderai à faire les bons choix pour atteindre vos objectifs.\r\nAlors n'hésitez plus, Retrouvez ANDREAS dès maintenant sur votre réseau audiotel (et ses horaires en touche 3) ou en consultation privée au tarif de 10min/15€ + 3,50€/min suppl.",
                "profilePicture": "5dea63f411240.jpg",
                "platformId": 171
            },
            {
                "tellerId": 3110,
                "tellerName": "ZELIE",
                "descriptionShort": "médium, tarot, pendule",
                "descriptionBackground": "Bonjour je suis Zélie. J’aurai l’immense plaisir de vous recevoir dans mon salon pour une séance. J’utilise l’oracle Gé, le tarot des gitans, des Anges et le pendule de mon grand-père. Ces supports me permettent de me concentrer en médiumnité et de répondre à vos questions. À bientôt, votre devouée Zélie. (I can also do this in english. Welcome to my saloon. Your sincerely Zelie.)\r\nAlors n'hésitez plus, Retrouvez ZELIE dès maintenant sur votre réseau audiotel ou en consultation privée au tarif de 10min/15€ + 3,50€/min suppl.",
                "profilePicture": "5e1dc1c3f3c85.jpg",
                "platformId": 172
            },
            {
                "tellerId": 732,
                "tellerName": "BERENICE",
                "descriptionShort": "Médium pure",
                "descriptionBackground": "Bérénice est une médium dans l'empathie qui vous guidera à l'aide d'une forte capacité d'intuition et de ses ressentis.\r\nEntrer en consultation avec Bérénice est synonyme de bien être et de vérité, la vision d'une véritable médium sans support qui allie sincérité et sympathie. Pas de complaisance, que les réponses soient plaisantes ou non. Etre humain avant tout, voilà qui offre une consultation riche et réussie. \r\nAlors n'hésitez plus, Retrouvez BÉRÉNICE dès maintenant sur votre réseau audiotel ou en consultation privée au tarif de 10min/15€ + 3,50€/min suppl.",
                "profilePicture": "5ddeaddc0eb75.jpg",
                "platformId": 171
            }
        ],
        "08:00": [
            {
                "tellerId": 2587,
                "tellerName": "Cristal",
                "descriptionBackground": "Je ressens les évènements par flashs, aux vibrations de votre voix et votre prénom. Je ne suis que l'intermédiaire entre vous et mes guides. Mon but est de vous guider sans complaisance afin de vous aider dans votre épanouissement personnel et votre réussite. Je vous attends. A bientôt. Merci",
                "profilePicture": "5c7a94e47488e.jpg",
                "platformId": 386
            },
            {
                "tellerId": 2581,
                "tellerName": "Babeth",
                "descriptionBackground": "Ce don de mediumite que je partage avec vous pour vous soutenir dans vos epreuves et vous aider a trouver le bon chemin , m'a ete transmis grâce a ma grande foi . Je suis convaincue que je dois me servir de toute cette mediumite pour etre dans l'altruisme et le devouement . Je vous remercie de m'accorder votre confiance chaque jour dans nos echanges . L'oracle de la triade m'ouvre des portes aux messages que je peux recevoir pour vous et cela bien sur sans aucune complaisance . Cordialement Babeth",
                "profilePicture": "5c7a92d61f4b6.jpg",
                "platformId": 386
            },
            {
                "tellerId": 3039,
                "tellerName": "ANNE-LOUISE",
                "descriptionShort": "médium, pendule et tarot",
                "descriptionBackground": "Bonjour, je suis Anne -Louise, médium depuis plus de 10 ans. Au son de votre voix et avec l'appuie du pendule et de l'oracle Gé, je vous guiderai afin de vous éclairer sur le chemin de vos propres décisions. Au plaisir de vous entendre.\r\nAlors n'hésitez plus, Retrouvez ANNE-LOUISE dès maintenant sur votre réseau audiotel ou en consultation privée au tarif de 10min/15€ + 3,50€/min suppl.",
                "profilePicture": "5de8d03217a02.jpg",
                "platformId": 172
            },
            {
                "tellerId": 726,
                "tellerName": "GLORIA",
                "descriptionShort": "Médium pure numérologue",
                "descriptionBackground": "Bonjour, je suis Gloria, médium pure et auditive depuis de très longues années. Je fonctionne uniquement par flashs, à l'aide des vibrations de votre voix. \r\nJe donnerai des réponses claires à vos questions et vous guiderai sur le chemin qui vous est destiné. Ma franchise, mon honnêteté et ma bienveillance vous feront avancer et dénouerons les nœuds qui sont sur votre chemin. Je vous attends avec toute ma lumière dans mon salon.\r\nAlors n'hésitez plus, Retrouvez GLORIA dès maintenant sur votre réseau audiotel ou en consultation privée au tarif de 10min/15€ + 3,50€/min suppl.",
                "profilePicture": "5e15e4e54a712.jpeg",
                "platformId": 171
            },
            {
                "tellerId": 3110,
                "tellerName": "ZELIE",
                "descriptionShort": "médium, tarot, pendule",
                "descriptionBackground": "Bonjour je suis Zélie. J’aurai l’immense plaisir de vous recevoir dans mon salon pour une séance. J’utilise l’oracle Gé, le tarot des gitans, des Anges et le pendule de mon grand-père. Ces supports me permettent de me concentrer en médiumnité et de répondre à vos questions. À bientôt, votre devouée Zélie. (I can also do this in english. Welcome to my saloon. Your sincerely Zelie.)\r\nAlors n'hésitez plus, Retrouvez ZELIE dès maintenant sur votre réseau audiotel ou en consultation privée au tarif de 10min/15€ + 3,50€/min suppl.",
                "profilePicture": "5e1dc1c3f3c85.jpg",
                "platformId": 172
            },
            {
                "tellerId": 732,
                "tellerName": "BERENICE",
                "descriptionShort": "Médium pure",
                "descriptionBackground": "Bérénice est une médium dans l'empathie qui vous guidera à l'aide d'une forte capacité d'intuition et de ses ressentis.\r\nEntrer en consultation avec Bérénice est synonyme de bien être et de vérité, la vision d'une véritable médium sans support qui allie sincérité et sympathie. Pas de complaisance, que les réponses soient plaisantes ou non. Etre humain avant tout, voilà qui offre une consultation riche et réussie. \r\nAlors n'hésitez plus, Retrouvez BÉRÉNICE dès maintenant sur votre réseau audiotel ou en consultation privée au tarif de 10min/15€ + 3,50€/min suppl.",
                "profilePicture": "5ddeaddc0eb75.jpg",
                "platformId": 171
            }
        ],
        "09:00": [
            {
                "tellerId": 2598,
                "tellerName": "Maria",
                "descriptionBackground": "Médium de naissance je travaille sans support votre voix à elle seule me suffit à  déclencher en moi des images et ressentis de votre situation passée, présente et future. Vous ne savez plus ou vous en êtes, vous vous posez des questions sur l'être aimé, vous traversez une période de solitude. Laissez moi vous venir en aide nous traverserons ensemble ces tracas de la vie, tout à une solution. Je suis à votre écoute et mets mes capacités à votre disposition. La vie est faite de bonheurs et de souffrances mais pour toute vie un destin existe décriptons le ensemble. Je m'engage envers vous à vous apporter un appui sincère et efficace. Ne passez pas à côté de votre vie à cause de certains doutes. Je suis là pour vous et avec vous, nous avancerons main dans la main. Comme le dis A.Camus \"Un destin n'est pas une punition \" il faut savoir l'interpréter pour l'apprivoiser et le traverser avec sérénite. Alors rejoignez moi vite je vous attends pour cette aventure.",
                "profilePicture": "5c7a982a833a1.jpg",
                "platformId": 386
            },
            {
                "tellerId": 2587,
                "tellerName": "Cristal",
                "descriptionBackground": "Je ressens les évènements par flashs, aux vibrations de votre voix et votre prénom. Je ne suis que l'intermédiaire entre vous et mes guides. Mon but est de vous guider sans complaisance afin de vous aider dans votre épanouissement personnel et votre réussite. Je vous attends. A bientôt. Merci",
                "profilePicture": "5c7a94e47488e.jpg",
                "platformId": 386
            },
            {
                "tellerId": 2584,
                "tellerName": "Chiara",
                "descriptionBackground": "Je suis Chiara, médium pure et guérisseuse/magnétiseuse. Je pratique mon don professionnellement depuis l'âge de 33 ans. Je suis spécialisée dans la guérison et la lecture des âmes. En connexion directe avec mon guide ou à l'aide de l'Oracle Indigo, je vous guide et vous éclaire sur vos différents chemins de vie. Je pratique ma voyance sans complaisance, je ne vous dis pas ce que vous voulez entendre mais ce que l'univers veut vous faire comprendre, et c'est avec tout mon coeur , mon écoute et avec sincérité que je vous aide à aborder les grands changements et les grandes étapes de votre destinée en toute sérénité.",
                "profilePicture": "5c7a9389851a0.png",
                "platformId": 386
            },
            {
                "tellerId": 2581,
                "tellerName": "Babeth",
                "descriptionBackground": "Ce don de mediumite que je partage avec vous pour vous soutenir dans vos epreuves et vous aider a trouver le bon chemin , m'a ete transmis grâce a ma grande foi . Je suis convaincue que je dois me servir de toute cette mediumite pour etre dans l'altruisme et le devouement . Je vous remercie de m'accorder votre confiance chaque jour dans nos echanges . L'oracle de la triade m'ouvre des portes aux messages que je peux recevoir pour vous et cela bien sur sans aucune complaisance . Cordialement Babeth",
                "profilePicture": "5c7a92d61f4b6.jpg",
                "platformId": 386
            },
            {
                "tellerId": 2601,
                "tellerName": "Myhra",
                "descriptionBackground": "Je suis Myrha medium et magnétiseuse depuis une trentaine d'année. Pour moi ce n'est pas un métier mais ce que je suis... quelqu'un de simple. Je peux consulter autant par téléphone que recevoir mes clients sur ma table de cuisine comme le faisait ma grand-mère. Elle m'a appris que la vie était importante que derrière chaque voix ou visage il y avait une histoire et à ne jamais porter de jugement quelle que soit la situation ou la personne. Pour moi chaque personne est importante quelle que soit sa situation et son questionnement et c'est en toute simplicité que je vous accueillerai en consultation avec tout le respect et l'écoute dont vous avez besoin.",
                "profilePicture": "5c7a9916d8e29.jpg",
                "platformId": 386
            },
            {
                "tellerId": 2125,
                "tellerName": "yvette",
                "descriptionShort": "Tres bonne réputation.",
                "descriptionTag": "voyante sans support",
                "descriptionBackground": "\"....Bonjour à tous, je m’appelle Yvette, voyante sans support, depuis des années je perçois des flahs, un ressenti intense et profond.\r\n\r\nJ’utilise aussi quelques fois les cartes de Lenorman.\r\n\r\nJe ne pretends pas changer votre vie car chacun est maître de son destin mais je peux si vous le souhaitez vous aider et vous éclairer dans les moments délicats.\r\n\r\nQuelques soient vos questions, je vous répondrai toujours avec sincérité et sans aucune complaisance de ma part.\r\n\r\nMerci pour vos appels, Yvette  » voyante sans support « \r\n\r\nnotes : Yvette connait tres bien son métier, ses clients sont en general tres satisfait et la cerise sur le gateau,, Yvette ne rate jamais un seul coup de fil, fidele au poste, toujours gaie et de bonne humeur signe de tres haute stabilité , tres pro.",
                "profilePicture": "5b86cd1c84002.jpg",
                "platformId": 332
            },
            {
                "tellerId": 2167,
                "tellerName": "DOMY",
                "descriptionShort": "Médium pure, clairvoyant...",
                "descriptionBackground": "Bonjour, je suis Domy, médium pure depuis plus de 30 ans. J'exerce mon métier avec passion, humanité et humilité. Je suis là pour répondre avec précision à vos questions et vos doutes tout en vous guidant sur votre chemin de vie. Pour cela, j'utilise, comme seul support, votre voix. Avec son aide, je vous délivre les messages qui vous sont destinés. \r\nAlors n'hésitez plus, Retrouvez DOMY dès maintenant sur votre réseau audiotel ou en consultation privée au tarif de 10min/15€ + 3,50€/min suppl.",
                "profilePicture": "5de639ca48e50.jpg",
                "platformId": 171
            }
        ],
        "10:00": [
            {
                "tellerId": 2589,
                "tellerName": "Emy",
                "descriptionTag": "oracle de beline, cristal, tarot, oracle gé",
                "descriptionBackground": "La Voyance est pour moi une passion mais aussi une mission, mon don me permettant d'aider les personnes dans le doute, dans le besoin. Je m'appuie de différents supports tel que l’Oracle de Belline, le grand tarot divinatoire du Cristal, l’Oracle G et le pendule, qui me servent à canaliser les énergies prémonitoires, afin d’être guidée et décrypter les messages, de mes flashs et ressentis sur la personne concernée. Au cour de mes consultations, je vous apporterai l'aide et le réconfort, qui vous guidera dans vos choix et vos décisions, dans le domaine sentimentale. Retour affectif, perception et ressentie de l’être qui vous est cher. Conseil comportementale à adopter de part la situation présente. Je vous aiderais à y voir plus clair dans votre avenir proche ou plus lointain. Je consulte également dans d'autres domaines, telle que Votre situation professionnelle, conseil d'investissement, études pour vos enfants, réussites d'examens, ainsi que le domaine financier. Ainsi, je vous fournirai des prédictions précises sur votre destin dans un avenir très proche ou plus lointain .",
                "profilePicture": "5c7a95cea5b82.jpg",
                "platformId": 386
            },
            {
                "tellerId": 2584,
                "tellerName": "Chiara",
                "descriptionBackground": "Je suis Chiara, médium pure et guérisseuse/magnétiseuse. Je pratique mon don professionnellement depuis l'âge de 33 ans. Je suis spécialisée dans la guérison et la lecture des âmes. En connexion directe avec mon guide ou à l'aide de l'Oracle Indigo, je vous guide et vous éclaire sur vos différents chemins de vie. Je pratique ma voyance sans complaisance, je ne vous dis pas ce que vous voulez entendre mais ce que l'univers veut vous faire comprendre, et c'est avec tout mon coeur , mon écoute et avec sincérité que je vous aide à aborder les grands changements et les grandes étapes de votre destinée en toute sérénité.",
                "profilePicture": "5c7a9389851a0.png",
                "platformId": 386
            },
            {
                "tellerId": 2599,
                "tellerName": "Marieange",
                "descriptionBackground": "Je suis médium pure et tarologue, mes voyances sont bienveillantes mais sans complaisance. Pour une voyance de qualité n'hésitez pas le sérieux sera au rendez vous. Vous pouvez également me consulter en privé sur www.kanditel.com A très vite Marie Ange. Rien en nous n'est irréversible. Bien à vous cordialement",
                "profilePicture": "5c7a986a58ca5.jpg",
                "platformId": 386
            },
            {
                "tellerId": 1703,
                "tellerName": "Doriane",
                "descriptionBackground": "Bonjour je suis Doriane  cartomancienne et voyante c'est avec mes cartes  que les messages me parviennent. Je vous propose d'être la passerelle entre vos questions et les réponses de mes guides afin de vous accompagner sur le meilleur chemin afin que vous puissiez faire les bons choix Le hasard vous donne parfois des rendez vous, il suffit de ne pas les rater , je serais là pour vous guider comme une confidente une amie de confiance",
                "profilePicture": "5ba343b6b2bc2.jpg",
                "platformId": 264
            },
            {
                "tellerId": 732,
                "tellerName": "BERENICE",
                "descriptionShort": "Médium pure",
                "descriptionBackground": "Bérénice est une médium dans l'empathie qui vous guidera à l'aide d'une forte capacité d'intuition et de ses ressentis.\r\nEntrer en consultation avec Bérénice est synonyme de bien être et de vérité, la vision d'une véritable médium sans support qui allie sincérité et sympathie. Pas de complaisance, que les réponses soient plaisantes ou non. Etre humain avant tout, voilà qui offre une consultation riche et réussie. \r\nAlors n'hésitez plus, Retrouvez BÉRÉNICE dès maintenant sur votre réseau audiotel ou en consultation privée au tarif de 10min/15€ + 3,50€/min suppl.",
                "profilePicture": "5ddeaddc0eb75.jpg",
                "platformId": 171
            },
            {
                "tellerId": 2125,
                "tellerName": "yvette",
                "descriptionShort": "Tres bonne réputation.",
                "descriptionTag": "voyante sans support",
                "descriptionBackground": "\"....Bonjour à tous, je m’appelle Yvette, voyante sans support, depuis des années je perçois des flahs, un ressenti intense et profond.\r\n\r\nJ’utilise aussi quelques fois les cartes de Lenorman.\r\n\r\nJe ne pretends pas changer votre vie car chacun est maître de son destin mais je peux si vous le souhaitez vous aider et vous éclairer dans les moments délicats.\r\n\r\nQuelques soient vos questions, je vous répondrai toujours avec sincérité et sans aucune complaisance de ma part.\r\n\r\nMerci pour vos appels, Yvette  » voyante sans support « \r\n\r\nnotes : Yvette connait tres bien son métier, ses clients sont en general tres satisfait et la cerise sur le gateau,, Yvette ne rate jamais un seul coup de fil, fidele au poste, toujours gaie et de bonne humeur signe de tres haute stabilité , tres pro.",
                "profilePicture": "5b86cd1c84002.jpg",
                "platformId": 332
            },
            {
                "tellerId": 2167,
                "tellerName": "DOMY",
                "descriptionShort": "Médium pure, clairvoyant...",
                "descriptionBackground": "Bonjour, je suis Domy, médium pure depuis plus de 30 ans. J'exerce mon métier avec passion, humanité et humilité. Je suis là pour répondre avec précision à vos questions et vos doutes tout en vous guidant sur votre chemin de vie. Pour cela, j'utilise, comme seul support, votre voix. Avec son aide, je vous délivre les messages qui vous sont destinés. \r\nAlors n'hésitez plus, Retrouvez DOMY dès maintenant sur votre réseau audiotel ou en consultation privée au tarif de 10min/15€ + 3,50€/min suppl.",
                "profilePicture": "5de639ca48e50.jpg",
                "platformId": 171
            }
        ],
        "11:00": [
            {
                "tellerId": 2586,
                "tellerName": "Chrys",
                "descriptionTag": "énergie, oracle, clairaudiente, passeuse, guide",
                "descriptionBackground": "Je suis Médium pur, clairaudiente, clairvoyante et passeuse d'âmes. Ma connexion est forte car je la cultive chaque jour. J'ai des flash précis, des messages directs de la part de vos guides. Je ressens vos énergies, des couleurs. J'appuie mes ressentis sur des supports selon le cas ou le choix de mes guides. Je pratique les oracles, le tarot, le pendule et les réponses angéliques. Je vous délivre les messages des défunts, des guides de Lumière. Je vous apporterai soutien et réconfort dans les épreuves, conseils et soins énergétiques si nécessaires et si cela m'est autorisé. Une consultation vous apporte un éclairage qui n'est jamais anodin.",
                "profilePicture": "5c7a94718d8df.jpg",
                "platformId": 386
            },
            {
                "tellerId": 2584,
                "tellerName": "Chiara",
                "descriptionBackground": "Je suis Chiara, médium pure et guérisseuse/magnétiseuse. Je pratique mon don professionnellement depuis l'âge de 33 ans. Je suis spécialisée dans la guérison et la lecture des âmes. En connexion directe avec mon guide ou à l'aide de l'Oracle Indigo, je vous guide et vous éclaire sur vos différents chemins de vie. Je pratique ma voyance sans complaisance, je ne vous dis pas ce que vous voulez entendre mais ce que l'univers veut vous faire comprendre, et c'est avec tout mon coeur , mon écoute et avec sincérité que je vous aide à aborder les grands changements et les grandes étapes de votre destinée en toute sérénité.",
                "profilePicture": "5c7a9389851a0.png",
                "platformId": 386
            },
            {
                "tellerId": 1703,
                "tellerName": "Doriane",
                "descriptionBackground": "Bonjour je suis Doriane  cartomancienne et voyante c'est avec mes cartes  que les messages me parviennent. Je vous propose d'être la passerelle entre vos questions et les réponses de mes guides afin de vous accompagner sur le meilleur chemin afin que vous puissiez faire les bons choix Le hasard vous donne parfois des rendez vous, il suffit de ne pas les rater , je serais là pour vous guider comme une confidente une amie de confiance",
                "profilePicture": "5ba343b6b2bc2.jpg",
                "platformId": 264
            },
            {
                "tellerId": 745,
                "tellerName": "ROSY",
                "descriptionShort": "médium pure de naissance",
                "descriptionBackground": "Bonjour, je suis Rosy. Voyante pure de naissance, issue d'une famille de médium, je pratique la voyance depuis de nombreuses années. Attention je ne fais pas de complaisance. Je mets mon don à votre disposition  afin de vous aider à avancer sur votre chemin de vie, de retrouver le calme, la détente et surtout d'avoir une vision plus juste de vous-même, et de ce qui vous entoure. Je vous aiderai à faire face aux événements de votre vie afin de retrouver confiance en vous. Ma particularité, je crois au destin, c'est donc avec plaisir que je vous accueille dans mon salon.\r\nAlors n'hésitez plus, Retrouvez ROSY dès maintenant sur votre réseau audiotel ou en consultation privée au tarif de 10min/15€ + 3,50€/min suppl.",
                "profilePicture": "5de676def3c55.jpg",
                "platformId": 171
            },
            {
                "tellerId": 847,
                "tellerName": "MANAE",
                "descriptionShort": "médium pure avec support...",
                "descriptionBackground": "Bonjour je suis Manaé, médium pure et tarologue. Par le son de votre voix et mon oracle du Belline j'arriverais à lire votre avenir, à répondre à vos questions et vous donner les messages que l'on me délivre pour vous. Je n'hésiterais pas à vous donner les clés de votre avenir pour que vous puissiez avancé plus sereinement sur votre chemin de vie. Alors n'hésitez plus, Retrouvez MANAE dès maintenant sur votre réseau audiotel ou en consultation privée au tarif de 10min/15€ + 3,50€/min suppl.",
                "profilePicture": "5ddfdbbead3bf.png",
                "platformId": 172
            },
            {
                "tellerId": 732,
                "tellerName": "BERENICE",
                "descriptionShort": "Médium pure",
                "descriptionBackground": "Bérénice est une médium dans l'empathie qui vous guidera à l'aide d'une forte capacité d'intuition et de ses ressentis.\r\nEntrer en consultation avec Bérénice est synonyme de bien être et de vérité, la vision d'une véritable médium sans support qui allie sincérité et sympathie. Pas de complaisance, que les réponses soient plaisantes ou non. Etre humain avant tout, voilà qui offre une consultation riche et réussie. \r\nAlors n'hésitez plus, Retrouvez BÉRÉNICE dès maintenant sur votre réseau audiotel ou en consultation privée au tarif de 10min/15€ + 3,50€/min suppl.",
                "profilePicture": "5ddeaddc0eb75.jpg",
                "platformId": 171
            },
            {
                "tellerId": 1475,
                "tellerName": "MARQUISE",
                "descriptionShort": "Voyante Numérologue Taro...",
                "descriptionBackground": "Bonjour, je suis Marquise, voyante et numérologue. Je pratique l’usage des Tarots et de l’Oracle de Belline accompagnés de mon Pendule. \r\nJ’établis une connexion directe avec votre esprit et mes supports afin de vous répondre le plus précisément possible sur votre situation professionnelle et sentimentale. Je serai là pour vous guider dans vos choix avec empathie et respect. Un petit plus!!! J'ai une passion pour les animaux, je ressens leurs pensées, amours, peurs, et caractères. Avec mon tarot des animaux et mon pendule, je pourrais vous guider! \r\nAlors n'hésitez plus, Retrouvez MARQUISE dès maintenant sur votre réseau audiotel ou en consultation privée au tarif de 10min/15€ + 3,50€/min suppl.",
                "profilePicture": "5a9d4e7ce11bf.jpeg",
                "platformId": 171
            }
        ],
        "12:00": [
            {
                "tellerId": 2597,
                "tellerName": "Mady",
                "descriptionBackground": "Medium pure, Êtes-vous prêt à tout entendre ? Consultation datée et précise, sans support. j'ai besoin de votre prénom et votre âge A tout de suite. Je peux vous aider à faire le bon choix, à prendre la bonne direction, à comprendre ce qui se passe. J'ai perçu de l'impatience et un bouleversement. Rien n'est impossible pour vous, et ça je le vois bien. En fait, il vous suffit d'avoir les bonnes cartes en main.",
                "profilePicture": "5c7a54973995b.jpg",
                "platformId": 386
            },
            {
                "tellerId": 2772,
                "tellerName": "ARIEL",
                "descriptionShort": "Médium astrologue",
                "descriptionBackground": "Bonjour, je suis Ariel, Médium pure et astrologue… Grâce à mon don de voyance et ma compétence en astrologie depuis plus de 30 ans, je verrai comment se dessine votre Avenir et aussi le « quand », car grâce à l’astrologie, les périodes, toujours difficiles à visualiser en voyance, sont limpides en astrologie… L’astrologie sera un levier pour toutes vos questions sur la finalité d’un contrat, d’un engagement professionnel ou même pour un voyage d’affaire… Ce que j’aime, c’est vous dévoiler votre avenir dans toutes les interrogations que vous avez ou pouvez avoir. Connu et reconnu, ayant collaboré pour la télévision et/ou les magazines des années durant, je mets aujourd’hui ma voyance et mon astrologie à votre service pour vous éclairer sur votre chemin de vie…\r\nAlors n'hésitez plus, Retrouvez ARIEL dès maintenant sur votre réseau audiotel ou en consultation privée au tarif de 10min/15€ + 3,50€/min suppl.",
                "profilePicture": "5ddc05b167230.jpg",
                "platformId": 171
            },
            {
                "tellerId": 847,
                "tellerName": "MANAE",
                "descriptionShort": "médium pure avec support...",
                "descriptionBackground": "Bonjour je suis Manaé, médium pure et tarologue. Par le son de votre voix et mon oracle du Belline j'arriverais à lire votre avenir, à répondre à vos questions et vous donner les messages que l'on me délivre pour vous. Je n'hésiterais pas à vous donner les clés de votre avenir pour que vous puissiez avancé plus sereinement sur votre chemin de vie. Alors n'hésitez plus, Retrouvez MANAE dès maintenant sur votre réseau audiotel ou en consultation privée au tarif de 10min/15€ + 3,50€/min suppl.",
                "profilePicture": "5ddfdbbead3bf.png",
                "platformId": 172
            },
            {
                "tellerId": 745,
                "tellerName": "ROSY",
                "descriptionShort": "médium pure de naissance",
                "descriptionBackground": "Bonjour, je suis Rosy. Voyante pure de naissance, issue d'une famille de médium, je pratique la voyance depuis de nombreuses années. Attention je ne fais pas de complaisance. Je mets mon don à votre disposition  afin de vous aider à avancer sur votre chemin de vie, de retrouver le calme, la détente et surtout d'avoir une vision plus juste de vous-même, et de ce qui vous entoure. Je vous aiderai à faire face aux événements de votre vie afin de retrouver confiance en vous. Ma particularité, je crois au destin, c'est donc avec plaisir que je vous accueille dans mon salon.\r\nAlors n'hésitez plus, Retrouvez ROSY dès maintenant sur votre réseau audiotel ou en consultation privée au tarif de 10min/15€ + 3,50€/min suppl.",
                "profilePicture": "5de676def3c55.jpg",
                "platformId": 171
            },
            {
                "tellerId": 2124,
                "tellerName": "VIOLAINE",
                "descriptionShort": "Utilise le pendule.",
                "descriptionTag": "pendule, radiesthesie.",
                "descriptionBackground": "Violaine : radiesthesiste et voyante !\r\n\r\n\"...Bonjour et Bienvenue, je m’appelle Violaine et, je suis médium.\r\nJe travaille avec les energies que vous véhiculez jusqu’à notre consultation,\r\nm’ aidant de mon pendule. C’est un don transmis du côté maternel.\r\nAprès des études universitaires en droit et un métier de gérante de commerces, l’appel des Arts Divinatoires a été le plus fort aussi,\r\nJ’ai décidé de mettre mon don à votre service dans une relation chaleureuse et humaine.\r\nHier est passé, demain est futur et si tout se décidait pour vous maintenant..?\r\nJe vous le propose; consultez moi et ensemble nous degagerons les solutions.\r\nViolaine.",
                "profilePicture": "5b86cca388efd.jpg",
                "platformId": 332
            }
        ]
  
    }
}

Récupérer le planning de la plateforme

Récupérer le planning de la plateforme

Paramètres de la requete:

{idPlatform} : identifiant de la plateforme {date} : date au format YYYY-MM-DD

Paramètres de la reponse:

La reponse retournee sera composee du planning

GET
/planning/{idPlatform}/teller/{idTeller}/{date}

Exemple de requete

  curl -X GET 'https://ws.ipbx.io/planning/1/teller/1/2020-01-04'

Exemple de reponse

{
    "code": 200,
    "message": "OK",
    "total": 6,
    "data": {
        "tellerId": 2597,
        "tellerNickname": "Mady",
        "tellerDescriptionBg": "Medium pure, Êtes-vous prêt à tout entendre ? Consultation datée et précise, sans support. j'ai besoin de votre prénom et votre âge A tout de suite. Je peux vous aider à faire le bon choix, à prendre la bonne direction, à comprendre ce qui se passe. J'ai perçu de l'impatience et un bouleversement. Rien n'est impossible pour vous, et ça je le vois bien. En fait, il vous suffit d'avoir les bonnes cartes en main.",
        "tellerDescriptionPublishing": "Medium pure, Êtes-vous prêt à tout entendre ? Consultation datée et précise, sans support. j'ai besoin de votre prénom et votre âge A tout de suite. Je peux vous aider à faire le bon choix, à prendre la bonne direction, à comprendre ce qui se passe. J'ai perçu de l'impatience et un bouleversement. Rien n'est impossible pour vous, et ça je le vois bien. En fait, il vous suffit d'avoir les bonnes cartes en main.",
        "tellerPicture": "http://dashboard.lekiosqueur.com/media/cache/externalPlanningThumb/uploads/profile_pictures/2597/5c7a54973995b.jpg",
        "tellerPlanning": [
            {
                "datestart": "00:00",
                "period": "2020-02-01 00:00:00+01",
                "teller_id": 2597,
                "platform_id": 386,
                "teller_name": "Mady",
                "session_start": "2020-02-01 00:00:00+01",
                "description_background": "Medium pure, Êtes-vous prêt à tout entendre ? Consultation datée et précise, sans support. j'ai besoin de votre prénom et votre âge A tout de suite. Je peux vous aider à faire le bon choix, à prendre la bonne direction, à comprendre ce qui se passe. J'ai perçu de l'impatience et un bouleversement. Rien n'est impossible pour vous, et ça je le vois bien. En fait, il vous suffit d'avoir les bonnes cartes en main.",
                "description_publishing": "Medium pure, Êtes-vous prêt à tout entendre ? Consultation datée et précise, sans support. j'ai besoin de votre prénom et votre âge A tout de suite. Je peux vous aider à faire le bon choix, à prendre la bonne direction, à comprendre ce qui se passe. J'ai perçu de l'impatience et un bouleversement. Rien n'est impossible pour vous, et ça je le vois bien. En fait, il vous suffit d'avoir les bonnes cartes en main.",
                "profile_picture": "5c7a54973995b.jpg",
                "numrow": 6,
                "priority": 1,
                "touch": 1,
                "count": 1,
                "tellerid": 2597,
                "code": "8656",
                "colorclass": "p8",
                "platformid": 386,
                "name": "Mady",
                "period_atom": "2020-02-01T00:00:00+01:00",
                "session_start_atom": "2020-02-01T00:00:00+01:00"
            },
            {
                "datestart": "01:00",
                "period": "2020-02-01 01:00:00+01",
                "teller_id": 2597,
                "platform_id": 386,
                "teller_name": "Mady",
                "session_start": "2020-02-01 01:00:00+01",
                "description_background": "Medium pure, Êtes-vous prêt à tout entendre ? Consultation datée et précise, sans support. j'ai besoin de votre prénom et votre âge A tout de suite. Je peux vous aider à faire le bon choix, à prendre la bonne direction, à comprendre ce qui se passe. J'ai perçu de l'impatience et un bouleversement. Rien n'est impossible pour vous, et ça je le vois bien. En fait, il vous suffit d'avoir les bonnes cartes en main.",
                "description_publishing": "Medium pure, Êtes-vous prêt à tout entendre ? Consultation datée et précise, sans support. j'ai besoin de votre prénom et votre âge A tout de suite. Je peux vous aider à faire le bon choix, à prendre la bonne direction, à comprendre ce qui se passe. J'ai perçu de l'impatience et un bouleversement. Rien n'est impossible pour vous, et ça je le vois bien. En fait, il vous suffit d'avoir les bonnes cartes en main.",
                "profile_picture": "5c7a54973995b.jpg",
                "numrow": 5,
                "priority": 1,
                "touch": 1,
                "count": 1,
                "tellerid": 2597,
                "code": "8656",
                "colorclass": "p8",
                "platformid": 386,
                "name": "Mady",
                "period_atom": "2020-02-01T01:00:00+01:00",
                "session_start_atom": "2020-02-01T01:00:00+01:00"
            },
            {
                "datestart": "12:00",
                "period": "2020-02-01 12:00:00+01",
                "teller_id": 2597,
                "platform_id": 386,
                "teller_name": "Mady",
                "session_start": "2020-02-01 12:00:00+01",
                "description_background": "Medium pure, Êtes-vous prêt à tout entendre ? Consultation datée et précise, sans support. j'ai besoin de votre prénom et votre âge A tout de suite. Je peux vous aider à faire le bon choix, à prendre la bonne direction, à comprendre ce qui se passe. J'ai perçu de l'impatience et un bouleversement. Rien n'est impossible pour vous, et ça je le vois bien. En fait, il vous suffit d'avoir les bonnes cartes en main.",
                "description_publishing": "Medium pure, Êtes-vous prêt à tout entendre ? Consultation datée et précise, sans support. j'ai besoin de votre prénom et votre âge A tout de suite. Je peux vous aider à faire le bon choix, à prendre la bonne direction, à comprendre ce qui se passe. J'ai perçu de l'impatience et un bouleversement. Rien n'est impossible pour vous, et ça je le vois bien. En fait, il vous suffit d'avoir les bonnes cartes en main.",
                "profile_picture": "5c7a54973995b.jpg",
                "numrow": 1,
                "priority": 1,
                "touch": 1,
                "count": 1,
                "tellerid": 2597,
                "code": "8656",
                "colorclass": "p8",
                "platformid": 386,
                "name": "Mady",
                "period_atom": "2020-02-01T12:00:00+01:00",
                "session_start_atom": "2020-02-01T12:00:00+01:00"
            }
        ]
    }
}

Statistiques

Endpoints Statistiques

Endpoints GET POST
/statistic/{idPlatform}/teller/{idTeller}/{startDate}/{endDate} Statistiques d'un teller {idTeller} sur plateforme {idPlatform} N/A
/statistic/{idPlatform}/teller_detail/{idTeller}/{startDate}/{endDate} Statistiques détaillé d'un teller {idTeller} sur plateforme {idPlatform} N/A
/statistic/{idPlatform}/platform/{startDate}/{endDate} Statistiques globales des tellers sur plateforme {idPlatform} N/A

Methodes Statistiques

Récupérer les statistiques d'un teller sur une plateforme

Récupérer les statistiques d'un teller sur une plateforme

Paramètres de la requete:

{idPlatform} : identifiant de la plateforme {idTeller} : identifiant du teller {startDate} : date début au format YYYY-MM-DD HH:II:SS {endDate} : date fin au format YYYY-MM-DD HH:II:SS

Paramètres de la reponse:

La reponse retourne les statistiques d'un teller comprise entre startDate et endDate.

GET
/statistic/{idPlatform}/teller/{idTeller}/{startDate}/{endDate}

Exemple de requete

  curl -X GET 'https://ws.ipbx.io/statistic/1/teller/1/2020-05-01 00:00:00/2020-05-02 00:00:00'
{
    "code": 200,
    "message": "OK",
    "total": 75,
    "data": [
        {
            "teller": "Teller 04-11",
            "start_call": "2017-09-27 18:40:18+02",
            "id_cx": "5-10248690",
            "service": "97237219085",
            "duration": "00:00:00",
            "amount_cdr": "0",
            "rating": -1,
            "caller_number": "00972535238667",
            "teller_hangup_cause": "ORIGINATOR_CANCEL"
        },
        {
            "teller": "Teller 04-11",
            "start_call": "2017-09-27 18:39:42+02",
            "id_cx": "5-10248690",
            "service": "97237219085",
            "duration": "00:00:00",
            "amount_cdr": "0",
            "rating": -1,
            "caller_number": "00972535238667",
            "teller_hangup_cause": "NO_ANSWER"
        },
        {
            "teller": "Teller 04-11",
            "start_call": "2017-09-27 18:38:06+02",
            "id_cx": "5-10248685",
            "service": "97237219085",
            "duration": "00:00:00",
            "amount_cdr": "0",
            "rating": -1,
            "caller_number": "00972535238667",
            "teller_hangup_cause": "NO_ANSWER"
        },
        {
            "teller": "Teller 04-11",
            "start_call": "2017-09-27 18:37:40+02",
            "id_cx": "5-10248685",
            "service": "97237219085",
            "duration": "00:00:00",
            "amount_cdr": "0",
            "rating": -1,
            "caller_number": "00972535238667",
            "teller_hangup_cause": "NO_ANSWER"
        },
        {
            "teller": "Teller 04-11",
            "start_call": "2017-09-27 18:37:00+02",
            "id_cx": "5-10248685",
            "service": "97237219085",
            "duration": "00:00:00",
            "amount_cdr": "0",
            "rating": -1,
            "caller_number": "00972535238667",
            "teller_hangup_cause": "NO_ANSWER"
        }
      ]
 }

Récupérer les statistiques détaillées d'un teller sur une plateforme

Récupérer les statistiques détaillées

Paramètres de la requete:

{idPlatform} : identifiant de la plateforme {idTeller} : identifiant du teller {startDate} : date début au format YYYY-MM-DD {endDate} : date fin au format YYYY-MM-DD

Paramètres de la reponse:

La reponse retourne les statistiques d'un teller comprise entre startDate et endDate.

GET
/statistic/{idPlatform}/teller_detail/{idTeller}/{startDate}/{endDate}

Exemple de requete

  curl -X GET 'https://ws.ipbx.io/statistic/1/teller_Detail/1/2020-06-01/2020-07-01'
{
    "code": 200,
    "message": "OK",
    "total": 1082,
    "data": [
        {
            "teller_cdr_id": 2954516,
            "service": 1,
            "teller_id_cx": null,
            "teller_server": null,
            "teller_number": "336xxxxxxxxx",
            "type_destination": 2,
            "caller_id_cx": 10062787,
            "caller_server": 2,
            "unmasked_caller": "339xxxxxxxxx",
            "date_startcall": "2020-06-01 09:00:30+02",
            "duration": "00:29:07",
            "date_startspeak": "2020-06-01 09:00:30+02",
            "duration_speaking": "00:29:07",
            "is_missing": false,
            "is_rejected": false,
            "amount_cdr": "2.66902777777778",
            "currency": "EUR",
            "rating": null,
            "billing_duration": null,
            "disconnect_cause": 3,
            "teller_hangup_cause": null,
            "called_platform_id": 460,
            "teller_rent_deal_id": null,
            "malus": "0",
            "amount_cdr_ex_malus": "2.66902777777778"
        },
        {
            "teller_cdr_id": 2954539,
            "service": 1,
            "teller_id_cx": null,
            "teller_server": null,
            "teller_number": "336xxxxxxxxx",
            "type_destination": 2,
            "caller_id_cx": 10062801,
            "caller_server": 2,
            "unmasked_caller": "339xxxxxxxxx",
            "date_startcall": "2020-06-01 09:05:44+02",
            "duration": "00:29:40",
            "date_startspeak": "2020-06-01 09:29:37+02",
            "duration_speaking": "00:05:47",
            "is_missing": false,
            "is_rejected": false,
            "amount_cdr": "2.71944444444444",
            "currency": "EUR",
            "rating": null,
            "billing_duration": null,
            "disconnect_cause": 3,
            "teller_hangup_cause": null,
            "called_platform_id": 460,
            "teller_rent_deal_id": null,
            "malus": "0",
            "amount_cdr_ex_malus": "2.71944444444444"
        },
        {
            "teller_cdr_id": 2954555,
            "service": 1,
            "teller_id_cx": null,
            "teller_server": null,
            "teller_number": "336xxxxxxxxx",
            "type_destination": 2,
            "caller_id_cx": 10062806,
            "caller_server": 2,
            "unmasked_caller": "339xxxxxxxxx",
            "date_startcall": "2020-06-01 09:11:08+02",
            "duration": "00:29:37",
            "date_startspeak": "2020-06-01 09:35:24+02",
            "duration_speaking": "00:05:21",
            "is_missing": false,
            "is_rejected": false,
            "amount_cdr": "2.71486111111111",
            "currency": "EUR",
            "rating": null,
            "billing_duration": null,
            "disconnect_cause": 3,
            "teller_hangup_cause": null,
            "called_platform_id": 460,
            "teller_rent_deal_id": null,
            "malus": "0",
            "amount_cdr_ex_malus": "2.71486111111111"
        },
        {
            "teller_cdr_id": 2954571,
            "service": 1,
            "teller_id_cx": null,
            "teller_server": null,
            "teller_number": "33664217867",
            "type_destination": 2,
            "caller_id_cx": 10062809,
            "caller_server": 2,
            "unmasked_caller": "33950630993",
            "date_startcall": "2020-06-01 09:15:13+02",
            "duration": "00:29:49",
            "date_startspeak": "2020-06-01 09:40:45+02",
            "duration_speaking": "00:04:17",
            "is_missing": false,
            "is_rejected": false,
            "amount_cdr": "2.73319444444444",
            "currency": "EUR",
            "rating": null,
            "billing_duration": null,
            "disconnect_cause": 3,
            "teller_hangup_cause": null,
            "called_platform_id": 460,
            "teller_rent_deal_id": null,
            "malus": "0",
            "amount_cdr_ex_malus": "2.73319444444444"
        },
        {
            "teller_cdr_id": 2954581,
            "service": 1,
            "teller_id_cx": null,
            "teller_server": null,
            "teller_number": "33664217867",
            "type_destination": 2,
            "caller_id_cx": 10062814,
            "caller_server": 2,
            "unmasked_caller": "",
            "date_startcall": "2020-06-01 09:18:39+02",
            "duration": "00:29:35",
            "date_startspeak": "2020-06-01 09:45:02+02",
            "duration_speaking": "00:03:12",
            "is_missing": false,
            "is_rejected": false,
            "amount_cdr": "2.71180555555556",
            "currency": "EUR",
            "rating": null,
            "billing_duration": null,
            "disconnect_cause": 3,
            "teller_hangup_cause": null,
            "called_platform_id": 460,
            "teller_rent_deal_id": null,
            "malus": "0",
            "amount_cdr_ex_malus": "2.71180555555556"
        }
      ]
 }

Récupérer les statistiques globales sur une plateforme pour l'ensemble des tellers

Statistiques détaillées

Paramètres de la requete:

{idPlatform} : identifiant de la plateforme {startDate} : date début au format YYYY-MM-DD {endDate} : date fin au format YYYY-MM-DD

Paramètres de la reponse:

La reponse retourne les statistiques de comprise entre startDate et endDate.

GET
/statistic/{idPlatform}/platform/{startDate}/{endDate}

Exemple de requete

  curl -X GET 'https://ws.ipbx.io/statistic/1/platform/2020-06-01/2020-07-01'
{
    "code": 200,
    "message": "OK",
    "total": 41,
    "data": [
        {
            "teller_id": 1,
            "platform_id": 460,
            "platform_category": "VOYANCE",
            "calls": 69,
            "calls_speaked": 69,
            "duration": "02:16:45",
            "avg_duration": "00:01:58.913043",
            "duration_speaking": "02:16:45",
            "avg_duration_speaking": "00:01:58.913043",
            "planned_duration": "00:00:00",
            "nb_missing": 0,
            "nb_rejected": 0,
            "amount_cdr": "0",
            "amount_planned_duration": "0",
            "total_amount": "0",
            "currency": "EUR",
            "duration_ratio": null,
            "nb_rating": 0,
            "avg_rating": null,
            "qos": "1.00000000000000000000",
            "speaking_transfo_rate": "1.00000000000000000000",
            "epc": "0.00000000000000000000",
            "total_tellers_planned_duration": "00:00:00",
            "planning_ratio": null,
            "billing_duration": "00:00:00",
            "avg_billing_duration": "00:00:00",
            "malus": "0",
            "amount_cdr_ex_malus": "0"
        },
        {
            "teller_id": 2,
            "platform_id": 460,
            "platform_category": "VOYANCE",
            "calls": 1082,
            "calls_speaked": 568,
            "duration": "360:26:36",
            "avg_duration": "00:19:59.256932",
            "duration_speaking": "51:05:02",
            "avg_duration_speaking": "00:05:23.771127",
            "planned_duration": "40:00:00",
            "nb_missing": 0,
            "nb_rejected": 6,
            "amount_cdr": "1982.4383333333333191",
            "amount_planned_duration": "0",
            "total_amount": "1982.4383333333333191",
            "currency": "EUR",
            "duration_ratio": "9.0110833333333333",
            "nb_rating": 0,
            "avg_rating": null,
            "qos": "0.99445471349353049908",
            "speaking_transfo_rate": "0.52495378927911275416",
            "epc": "1.8321980899568700",
            "total_tellers_planned_duration": "1982:52:00",
            "planning_ratio": "0.02017281377130753455",
            "billing_duration": "00:00:00",
            "avg_billing_duration": "00:00:00",
            "malus": "0",
            "amount_cdr_ex_malus": "1982.4383333333333191"
        },
        {
            "teller_id": 3,
            "platform_id": 460,
            "platform_category": "VOYANCE",
            "calls": 82,
            "calls_speaked": 43,
            "duration": "22:51:27",
            "avg_duration": "00:16:43.5",
            "duration_speaking": "09:07:28",
            "avg_duration_speaking": "00:12:43.906977",
            "planned_duration": "10:00:00",
            "nb_missing": 0,
            "nb_rejected": 2,
            "amount_cdr": "104.4587750000000399",
            "amount_planned_duration": "0",
            "total_amount": "104.4587750000000399",
            "currency": "EUR",
            "duration_ratio": "2.2857500000000000",
            "nb_rating": 0,
            "avg_rating": null,
            "qos": "0.97560975609756097561",
            "speaking_transfo_rate": "0.52439024390243902439",
            "epc": "1.2738875000000005",
            "total_tellers_planned_duration": "1982:52:00",
            "planning_ratio": "0.00504320344282688364",
            "billing_duration": "00:00:00",
            "avg_billing_duration": "00:00:00",
            "malus": "0",
            "amount_cdr_ex_malus": "104.4587750000000399"
        }
      ]
 }

Period

nom type exemple description
start string 2018-10-30T00:00:00+01:00 Date de debut de la periode (format W3C: Y-m-d\TH:i:sP)
end string 2018-10-31T00:00:00+01:00|null Date de fin de la periode (format W3C: Y-m-d\TH:i:sP), si null, la periode est infinie

Countries

nom type exemple description
id integer 1 Id du pays
name string France Nom
iso2 string FR Code Iso2

Service IVR

nom type exemple description
id integer 1 Id du service
name string PUSH DEFAULT Nom du service
nameCustom string PUSH DEFAULT Nom customise
description string|null Service d'envoi de push vocal par defaut Description du service
enabled string true|false Etat d'activation
validityPeriod object {} Objet de type Period

Exemple court:

{
    "id": 12,
    "name": "envoi de notification ALERTE",
    "keyword": "PUSH-NAGIOS",
    "shortcode": "33625623473"
}

Exemple long:

 {
    "id": 12,
    "name": "envoi de notification ALERTE",
    "keyword": "PUSH-NAGIOS",
    "shortcode": "33625623473",
    "name_custom": "Alert monitoring",
    "description": null,
    "enabled": true,
    "validity_period": {
        "startDate": "2016-09-01T00:00:00+02:00",
        "endDate": null
    }
}

Service SMS

nom type exemple description
id integer 1 Id du service
name string DEFAULT Nom du service
nameCustom string DEFAULT Nom customise
description string|null Service d'envoi de push sms par defaut Description du service
keyword string PUSH Mot cle du service
shortcode string 3360123456789 Shortcode du service
enabled string true|false Etat d'activation
validityPeriod object {} Objet de type Period

Contacts

nom type exemple description
id integer 1 Id du contact
firstname string John Prenom
lastname string Doe Nom
phone_number string 33612345678 Numero de telephone (format international sans +)
email string johndoe@yopmail.com Email
gender string H Genre
zip_code string 75001 Code postal
birthdate string 01-01-1970 Date de naissance (format d-m-Y)
astrological_sign string taureau Signe astrologique
married boolean false Marie?
children int 1 Nombre d'enfant
lovers_firstname string Jane Prenom du premier amour
country object {} Objet de type Country

Adressbooks

nom type exemple description
id integer 1 Id de l'adressbook
name string Default Nom de l'adressbook
total_contacts integer 12 Nombre de contact appartenant a cet adressbook
creation_date string 2018-10-26T10:22:41+02:00 Date de creation (format W3C)
enabled boolean true Etat d'activation
campaigns array [] Tableau d'objet de type Campaigns version courte

Campaigns

nom type exemple description
id integer 1 Id du pays
description string Default Nom du pays
status string Default Nom du pays
creation_date string Default Nom du pays
sending_date string Default Nom du pays
campaign_type string Default Nom du pays
service_ivr string Default Nom du pays
message_voice_path string Default Nom du pays
voice_sender string Default Nom du pays
service_sms_id string Default Nom du pays
message_text string Default Nom du pays
message_sender string Default Nom du pays
frequency_count string Default Nom du pays
frequency_interval string Default Nom du pays
frequency_acd string Default Nom du pays
sending_period string Default Nom du pays
date_aborted string Default Nom du pays
total_contacts string Default Nom du pays
enabled string Default Nom du pays
adressbooks string Default Nom du pays
Show examples in:
IPBX API Documentation