Démarrage rapide

L'API Gator est conçue pour rendre son intégration rapide et facile. En mode Webview, quelques étapes simples suffisent pour permettre aux utilisateurs d'agréger leurs comptes bancaires et vous donner accès aux données.

Étape 1 : S'authentifier

Comme condition préalable à l'utilisation de l'API Gator, vous devez obtenir un jeton d'accès via le service d' authentification. Pour cela, vous aurez besoin des éléments que vous avez reçus après votre inscription : identifiant client, secret client, ID d'application et clé API.

Request

curl \
  -X POST https://api.connect.widmee.com/clients/token \
  -H 'Content-Type: application/json' \
 --data '{"client_id": "<client_id>", "client_secret": "<client_secret>", "application_id": "<application_id>", "api_key": "<api_key>", "grant_type": "client_credentials"}'

Response

{
    "access_token": {
        "token": "eyJ0eXAiOiJK...LY5U",
        "token_type": "Bearer"
    },
    "refresh_token": {
        "token": "7319c2d66371...2bb2",
        "token_type": "Basic"
    }
}

Étape 2 : Créer un utilisateur

L'agrégation donne accès aux données appartenant à un utilisateur réel. S'il n'existe pas déjà, un utilisateur Gator doit être créé pour chaque personne utilisant le service. Vous avez la possibilité de préciser un ID correspondant à un utilisateur existant dans votre base de données (en ajoutant le champ user_id dans le payload).

Request

curl \
  -X POST https://api.gator.widmee.com/v1/users \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer <access_token>'

Response

{
    "user_id": "12345678-2345-2345-2345-123456789012"
}

Étape 3 : Générer l'URL de la Webview

En mode Webview, l'interaction de l'utilisateur est gérée par une webview dédiée, qui se charge de présenter la liste des banques, de gérer la redirection vers/depuis la page d'authentification bancaire, de gérer les consentements des utilisateurs et de synchroniser les comptes sélectionnés. Pour générer l'URL de la Webview, vous devez effectuer l'appel suivant :

Request

curl  \
 -X POST https://api.gator.widmee.com/v1/users/<user_id>/webviews \
 -H 'Content-Type: application/json' \
 -H 'Authorization: Bearer <access_token>' \
 --data '{"redirect_uri": "https://your-redirect-uri.com"}'

Response

{
    "webview_url": "https://gator.widmee.com/webview?accessToken=1234567890"
}

Étape 4 : Redirigez l'utilisateur vers l'URL de la Webview

Une fois l'utilisateur redirigé vers l'URL de la Webview :

https://gator.widmee.com/webview?accessToken=1234567890

La Webview gérera tous les appels d'API jusqu'à ce que l'agrégation soit terminée.

Étape 5 : Récupérer les données agrégées

Une fois l'agrégation terminée, l'utilisateur est redirigé vers votre application, en utilisant l'URL de redirection donné à l'étape 3. Vous pouvez ensuite accéder aux données correspondantes via l'API Gator :

Request

curl \
 -X GET https://api.gator.widmee.com/v1/users/<user_id>/accounts 
 -H 'Authorization: Bearer <access_token>' 

Response

[
    {
        "id": "12345678-3456-3456-3456-123456789012",
        "user_id": "12345678-2345-2345-2345-123456789012",
        "client_id": "12345678-1234-1234-1234-123456789012",
        "type": "compte_cheque",
        "name": "M JEAN DURAND",
        "bank_code": "11306",
        "balance": {
            "value": 458052,
            "currency": "EUR",
            "precision": 2
        },
        "last_update": "2023-01-05T12:18:29.799Z",
        "holders": [
            "M JEAN DURAND"
        ]
    }
]

Remarque : Ces étapes illustrent le mode Webview. Cependant, pour une expérience utilisateur optimale, nous recommandons d'utiliser le mode API, afin d'éviter de faire quitter temporairement l'utilisateur du site client. L'intégration nécessitera de demander à l'API d'obtenir la liste des banques disponibles, de demander à l'utilisateur de sélectionner une banque, d'obtenir l'URL de la page d'authentification de la banque via l'API et de gérer le retour de l'utilisateur. Toutes les requêtes des deux workflows d'intégration sont détaillées dans la documentation de l'API Gator.