API REST Analytics - Informations générales

En utilisant l'API REST Analytics, vous pouvez compter sur un outil robuste pour le développement de l'interface utilisateur Analytics.

Cette rubrique contient les sujets suivants :

Présentation

Une API REST vous permet de faire des requêtes de ressources sur un serveur Web qui, à son tour renvoie les réponses contenant les informations demandées. Les appels vers des terminaux de l'API REST peuvent être effectués avec la plupart des langages de programmation.

À la différence de SOAP, les API REST utilisent le HTTP comme protocole de transport (bien que le serveur et le client puissent se baser sur n'importe quel langage). De plus, une API REST ne respecte pas de format de message standard : les spécifications de messages se trouvent uniquement dans la documentation correspondante.

Souhaitez-vous obtenir les données pour un certain rapport ? Vous pouvez facilement obtenir les mêmes données que celles qui s'affichent dans les widgets Analytics via cette API.

Authentification et gestion des clés

Clés d'API

Analytics utilise deux types de clés API :

Clé API système

L'authentification du système est effectuée avec une clé API pré-partagée générée pendant l'installation de Datastore et également configurée dans webui-plugin-analytics.

Cette clé se trouve dans le répertoire suivant : <Automic>\awi\config\webui-plugin-analytics\plugin.properties

Elle doit être affectée à l'en-tête d'autorisation dans toutes les requêtes envoyées à l'API.

Exemple :

GET /analytics/api/v1/shared_dashboards/search/findByClient?client=4000 HTTP/1.1

Hôte : my-analytics-backend-url:8090

Authorisation : f4b7e4af-3d77-4cfc-a898-2c09a9318faa

Commande de cahe : no-cache

Clés API étendues

Les exemples suivants illustrent les méthodes GET, POST et DELETE utilisées pour les clés API étendues.

GET /analytics/api/v1/apikeys

RETURN: Liste des clés API étendues définies (autrement dit, NE liste PAS du tout les clés API système).

En-tête:

Autorisation : <SYSTEM API KEY>

Exemple :

[

{

"scope": "EVENTS",

"key": "UUID",

"client": 100,

"description": "some text"

}

]

La réponse est décrite selon ce schéma JSON :

{

"type": array,

"items": {

"type": "object",

"properties": {

"scope": {

"type": "string",

"enum": ["EVENTS"]

},

"key": {

"type": "string"

},

"client": {

"type": "integer",

"description": "This is required for EVENTS keys, ignored for TELEMETRY keys"

},

"description": {

"type": "string"

}

},

"required": ["scope", "key"]

}

}

POST

Crée une nouvelle clé API.

POST /analytics/api/v1/apikeys

{

"scope": "EVENTS",

"client": 100,

"description": "some text"

}

Headers:

Authorization: <SYSTEM API KEY>

The POST body JSON schema:

{

"type": "object",

"properties": {

"scope": {

"type": "string",

"enum": ["EVENTS"]

},

"client": {

"type": "integer",

"description": "This is required for EVENTS keys, ignored for TELEMETRY keys"

},

"description": {

"type": "string"

}

},

"required": ["scope"]

}

Réponse schéma JSON :

{

"type": "object",

"properties": {

"scope": {

"type": "string",

"enum": ["EVENTS"]

},

"key": {

"type": "string"

},

"client": {

"type": "integer",

"description": "This is required for EVENTS keys, ignored for TELEMETRY keys"

},

"description": {

"type": "string"

}

},

"required": ["scope", "key"]

}

Exemple de réponse :

{

"key": "UUID",

"scope": "EVENTS",

"client": 100,

"description": "some text"

}

DELETE

Supprime une clé API.

DELETE: /analytics/api/v1/apikeys/<UUID>

En-tête:

Autorisation : <SYSTEM API KEY>

Ressources

Vous pouvez effectuer des appels sur les ressourves suivantes :

Toutes les ressources sont accessibles via le nom d'hôte + le port + l'url de base + la ressource (ex. : http://my-analytics-backend-url:8090/analytics/api/v1/shared_dashboards/).

Scénarios

Le cas d'application le plus répandu pour l'API REST Analytics est d'obtenir des données pour les systèmes externes, tels que les outils d'informatique décisionnelle existants.

Voir aussi :