L'API iNode
L'API iNode vous permet d'accéder de manière programmatique à vos données de trafic, vos appareils et vos liens. Cette page couvre tout ce dont vous avez besoin pour commencer — de l'authentification de vos requêtes à l'exécution d'exemples API complets dans plusieurs langages. Que vous intégriez iNode dans un système existant ou que vous construisiez un flux de travail personnalisé, les sections ci-dessous vous guideront étape par étape.
Authentification
iNode prend en charge deux méthodes d'authentification : OAuth2 et Clé API. Choisissez la méthode qui convient le mieux à votre configuration. OAuth2 est recommandé pour les applications nécessitant des capacités de renouvellement de jeton, tandis que la méthode Clé API est plus simple et idéale pour les intégrations rapides.
OAuth2
Pour utiliser OAuth2, contactez l'équipe de support SMATS afin de recevoir votre client_id et votre client_secret, qui seront associés à votre compte.
Une fois que vous disposez de ces identifiants, vous pouvez utiliser le nom d'utilisateur et le mot de passe du compte propriétaire de votre entreprise, combinés au client_id et au client_secret, pour obtenir un jeton d'accès.
Examples
cURL
Python
Construisez le corps d'authentification comme indiqué ci-dessous. Notez que le content-type doit être défini sur application/x-www-form-urlencoded.
auth_body = {
'grant_type': 'password',
'username': USERNAME,
'password': PASSWORD,
'client_id': CLIENT_ID,
'client_secret': CLIENT_SECRET,
'scope': 'sync'
}auth_response = requests.post("https://inode.smatstraffic.com/api/oauth/token/", data=auth_body)
auth_response_json = auth_response.json()
access_token = auth_response_json['access_token']
refresh_token = auth_response_json['refresh_token']Clé API
La méthode par Clé API est la façon la plus simple d'accéder à l'API iNode. Pour récupérer votre clé, accédez à Paramètres > Mon Profil > Accès API dans le tableau de bord iNode et copiez la clé affichée.
Remarque : Seuls les utilisateurs iNode avec le rôle de Propriétaire peuvent accéder à la Clé API depuis le tableau de bord.
Une fois que vous avez votre Clé API, incluez-la dans l'en-tête Authorization de chaque requête que vous envoyez à l'API iNode, comme illustré dans les exemples ci-dessous.
Examples
The examples below are making a get request to the iNode v1 endpoint for retrieving the links.
cURL
curl 'https://inode.smatstraffic.com/api/v1/links/' -H 'Authorization: Token xxxxxxxxxxxxxxxxxxxxxxxx'
Python
import requests
headers = {
'Authorization': 'Token xxxxxxxxxxxxxxxxxxxxxxxxxxx'
}
response = requests.get('https://inode.smatstraffic.com/api/v1/links/', headers=headers)PHP
GO
req, err := http.NewRequest("GET", "https://inode.smatstraffic.com/api/v1/links/", nil)
if err != nil {
// handle err
}
req.Header.Set("Authorization", "Token xxxxxxxxxxxxxxxxxxxxxxxx")
resp, err := http.DefaultClient.Do(req)
if err != nil {
// handle err
}
defer resp.Body.Close()Exemple d'API
Les exemples Python suivants montrent comment effectuer des appels API authentifiés pour récupérer vos liens et appareils. Deux versions sont fournies — une pour chaque méthode d'authentification. Les deux exemples récupèrent la liste complète des liens et des appareils toutes les minutes dans une boucle.
Authentification OAuth2
Utilisez cet exemple si vous vous êtes authentifié avec la méthode OAuth2. Il inclut une logique de renouvellement automatique de votre jeton d'accès lorsqu'il expire (après 5 jours).
Commencez par définir vos identifiants et les URLs des points de terminaison :
Python
Remarque : Lecontent-typedoit êtreapplication/x-www-form-urlencoded.
Ensuite, authentifiez-vous et stockez vos jetons. La fonction get_new_token gère le renouvellement lorsque le jeton d'accès expire :
Une fois l'authentification configurée, la boucle ci-dessous récupère vos liens et appareils toutes les 60 secondes. Si le jeton a expiré (réponse 401), il se renouvelle automatiquement avant de continuer :
Authentification par Clé API
Si vous avez récupéré votre Clé API depuis iNode > Paramètres > Profil > Accès API (Propriétaire uniquement), utilisez plutôt l'exemple suivant. Cette approche est plus simple — aucune gestion de jeton n'est requise.
Configurez les URLs des points de terminaison et incluez votre Clé API dans l'en-tête :
Python
import requestsBASE_URL = "https://inode.smatstraffic.com/api/"
AUTH_URL = BASE_URL + "oauth/token/"
V1_URL = BASE_URL + "v1/"
LINKS_URL = V1_URL + "links/"
DEVICES_URL = V1_URL + "devices/"
API_ACCESS_KEY = '<---api key retrieved from iNode profile page of the owner--->'
header = {
'Authorization': 'Token %s' % API_ACCESS_KEY
}Ensuite, lancez la boucle pour récupérer vos liens et appareils toutes les 60 secondes :
Documentation Swagger
La référence complète de l'API iNode est disponible via la documentation Swagger. Vous pouvez y accéder ici.
Remarque : Vous devez être connecté à iNode pour accéder à la documentation Swagger.