Authentification

Pour s'authentifier sur l'API Dastra vous devez utiliser

Obtention de la clé secrète d'API

L'API Rest Dastra utilise les clés d'API pour authentifier chaque requête. Vous pouvez gérer vos clés dans l'interface de configuration de votre organisation.

Vous pouvez utiliser une clé d'API pour un espace de travail spécifique ou l'organisation complète.

Votre clé d'API permet de faire beaucoup de chose, c'est pourquoi, vous devez la conserver précieusement. Ne partagez pas votre clé secrète dans les parties publiques d'applications comme GitHub, le code client...etc...

Si vous souhaitez utiliser l'authentification OAuth2 en mode "authorization_code", il sera nécessaire de bien configurer le ou les urls de redirection ainsi que les origines CORs autorisées.

Clé d'api (X-API-Key)

Pour vous authentifier, la manière la plus simple est d'utiliser une entête HTTP X-API-Key contenant la clé privée de votre clé d'API, comme dans l'exemple ci-dessous :

curl -X 'GET' \
  'https://api.dastra.eu/me' \
  -H 'accept: */*' \
  -H 'X-API-Key: <your private key here>'

OAuth2 "Authorization code" flow

Authorization

la phase d'autorisation s'effectue en appelant l'url suivante :

https://account.dastra.eu/connect/authorize?
    response_type=code&
    client_id={YOUR_CLIENT_ID}&
    redirect_uri=https://YOUR_APP/callback&
    scope=api1+offline_access&
    state={STATE}

Paramètres

OAuth2 "Client credential" flow

Méthode d'authentification

L'authentification de l'API s'effectue grâce à l'aide du protocole OAuth2 utilisant le flow "Client credential". Ce mode d'authentification doit être utilisé uniquement pour des requêtes de serveur à serveur et ne doit en aucun cas être utilisé côté navigateur (SPA en javascript par exemple).

Récupération du token

POST https://account.dastra.eu/connect/token

Perform a token request using BASIC Headers

Headers

Request Body

{
  "access_token":"tNQoqsSePv0DnSSNVJv1aDxzSFh9H2z3YBKtuBKqWAU",
  "expires_in":3600,
  "token_type":"Bearer",
  "scope":"api1"
}

Une fois que vous avez récupéré un access_token, vous pouvez ensuite appeler n'importe quel endpoint de l'API Rest à l'aide de ce jeton d'accès en le passant en "Bearer token".

Par exemple, pour récupérer la liste de vos espaces de travail :

GET https://api.dastra.eu/v1/workspaces

Récupérer la liste des espaces de travail de Dastra

Headers

{
  "items": [
    {
      "id": 1,
      "tenantId": 1,
      "label": "My data company",
      "logoUrl": null,
      "state": "Active",
      "permissions": null,
      "dataSubjectArchivedRetentionDays": null,
      "nbEntities": 1
    },
    {
      "id": 2,
      "tenantId": 1,
      "label": "My test workspace",
      "logoUrl": null,
      "state": "Active",
      "permissions": null,
      "dataSubjectArchivedRetentionDays": null,
      "nbEntities": 1
    },
    {
      "id": 3,
      "tenantId": 1,
      "label": "My experimentation workspace",
      "logoUrl": null,
      "state": "Active",
      "permissions": null,
      "dataSubjectArchivedRetentionDays": null,
      "nbEntities": 0
    }
  ],
  "total": 3
}

Toutes les requêtes doivent s'effectuer en HTTPS et toujours côté serveur. Les requêtes sans authentification échoueront avec le code d'erreur 401

Consultez les références de l'API ici : https://api.dastra.eu/swagger/index.html

Dernière mise à jour