Gestion des clés d'API REST d'Analytics
Clés d'API
Analytics utilise deux types de clés API :
- Une clé API système
- Des clés API étendues
Clé API système
-
Créée pendant l'installation de Datastore et utilisée par :
- AWI pour Analytics et les rapports
- Service de Collecte des Données
- Administration des clés API étendues
Exemple de clé API créée et affichée à l'écran après l'installation :
Définissez la propriété suivante dans votre fichier plugin.properties de webui-plugin-analytics :
backend.api_key=c217e0db-6ada-4d0b-9ea3-1ef111ad208a
Le fichier se trouve dans le dossier awi : /<Automic>/config/webui-plugin-analytics/plugin.properties
Clés API étendues
- Créée manuellement (clé API système requise)
- Utilisé par le moteur d'événements pour injecter des événements (une clé API donnée est étendue à un client Automation Engine spécifique)
GET /analytics/api/v1/apikeys
Renvoie : La 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": ["TELEMETRY", "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": ["TELEMETRY", "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": ["TELEMETRY", "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>
Voir aussi :