Clic & Surf - API de connexion WiFi V1 - Documentation
Présentation
L’API de connexion WiFi V1 permet de mettre à disposition des partenaires les fonctionnalités nécessaires à la gestion des connexions utilisateurs directement dans leurs propres applicatifs. Les échanges s’effectuent au format JSON. L’API offre un système complet, flexible et simple d’utilisation pour la gestion des connexions utilisateurs.
Activation de l’API
L’API ne nécessite aucune activation.
Limitation de l’API dans sa version
- Dans sa version v1.0, les limitations suivantes sont connues :
- L’API ne fonctionne que dans le cadre d’un hotspot en connexion :
- Mode 1 : CGU
- Mode 2 : CGU + MAIL
- Mode 3 : CGU + MAIL + MOT DE PASSE
- Mode 4 : LOGIN + MOT DE PASSE
- Les modes de connexion réseau sociaux ne sont pas supportés.
- Le contrôle de l’adresse mail n’a pas été implémenté dans cette version.
- Les appels ne peuvent être réalisés que par le client web ou mobile avec son IP local sur le hotspot.
- Les appels en provenance d’un autre réseau ne sont pas autorisés.
- L’API ne fonctionne que dans le cadre d’un hotspot en connexion :
Sécurité de l’API
L’API est disponible uniquement à travers un réseau WiFi Clic & Surf. L’utilisateur doit disposer d’une IP délivrée par le réseau WiFi Clic & Surf.
Format des requètes
Toutes les données sont transmises en UTF8
Composition des requètes
L’ensemble des requètes doivent comporter le paramètre header = User Agent correspndant au périphérique. A défaut le header User Agent = APICS
est obligatoire mais aucunes statistiques sur le périphérique ne seront disponibles.
- Exemple de requètes :
Réponses HTTP
Requète correctement exécuté
Code | Response | Description |
---|---|---|
200 | OK |
La requète à correctement été exécutée. |
201 | OK |
La requète à correctement été exécutée et la modification prise en compte. |
204 | OK |
La requète à correctement été exécutée mais ne retourne aucune donnée. |
Requète en erreur
Code | Response | Description |
---|---|---|
400 | Bad request |
La requète n’est pas correctement formée. |
401 | Unauthorized |
La requète n’est pas autorisé, votre clé n’est pas valide. |
403 | Forbidden |
L’accès à l’API n’est pas autorisé avec votre adresse IP. |
404 | Not found |
La méthode n’est pas disponible. |
405 | Method not allowed |
La méthode n’est pas autorisée, les paramètres ne sont pas correctes. |
Retour de l’application
Code | Response | Description |
---|---|---|
500 | Internal server error |
Erreur interne, la requète est valide, mais l’API n’est pas en mesure de la traiter. |
503 | Service unavailable |
Le service API est temporairement indisponible. |
Modifications récentes
-
11/2016 : Création de l’API
-
11/2016 : Ajout des méthodes Clic & Surf :
- status
- logout
- 07/2019 : Mise à jour des retours API suite modification de la version 4.5.3
Connexion Clic & Surf ¶
Utiliser ces méthodes pour dialoguer avec le portail WiFi :
status ¶
statusGET/status
Récupère le status client et ses informations de connexion
Example URI
200
Headers
Content-Type: application/json
X-Request-ID: f72fc614
X-Response-Time: 120ms
Body
{
"code": 200,
"message": "Client connecte",
"methode": "status",
"session_id": "9b5f69b1476f9abd4dc327808a83670590a15e18",
"hotspot": "XXX00-000",
"connection_ap_mac": "44-1E-XX-XX-XX-20",
"ip_client": "10.XX.XX.XX",
"session": 1,
"informations_client": {
"token_id": "e5d895ca21799422a4406222a77cd54c",
"timestamp_modif": "1562223550",
"duree_connection": "01:32:12.925552",
"last_updated": "2019-07-04 10:19:54.876464",
"timestamp_out": null,
"user_mac": "XX:XX:XX:4D:XX:FF",
"email": "xxxer.49@xxx.com",
"user_login": "768449xxxxxx60816",
"hotspot": "XXX00-000",
"type_auth": "ConnectorFB",
"optin": "1",
"incoming": "3582662",
"outgoing": "1498005",
"langue_portail": "fr",
"bdd_principale": "BDD1",
"browscap_device": {
"browser": "Chrome",
"platform": "Win10",
"device_type": "Desktop",
"ismobiledevice": "",
"istablet": ""
}
},
"current_localisation": {
"timestamp": "2019-07-04 10:28:21.000000",
"client_mac": "XX-XX-XX-4D-XX-FF",
"ap_mac": "44-1E-XX-XX-XX-20",
"ssid": "_WiFi_XXXX",
"sens": "start"
}
}
logout ¶
logoutDELETE/logout
Déclenche la déconnexion du client
Example URI
200
Headers
Content-Type: application/json
X-Request-ID: f72fc614
X-Response-Time: 120ms
Body
{
"code": 200,
"message": "Client deconnecte",
"methode": "logout",
"hotspot": "ANG49-001",
"ip_client": "10.1.2.54",
"session": 0
}