Aller au contenu

Sandbox et clients de test

Afficher en Markdown

Chaque association peut avoir une sandbox : une association jumelle avec la même identité visuelle, les mêmes types d’adhésion et le même statuto, peuplée de membres synthétiques. Vous y développez et testez sans toucher aux données réelles, et sans avoir besoin d’aucune approbation.

Chaque développeur invité par la plateforme en a aussi une à lui, qui n’appartient à aucune association : il la crée, l’ouvre, la régénère et la supprime depuis Paramètres du compte › Développeur, et y enregistre ses clients de test.

Depuis la console Développeurs : le bouton Créer la sandbox, ou enregistrez un client dans l’environnement Test — la sandbox est créée à la demande. La personne qui la crée en devient dirigeante : depuis le sélecteur d’association, elle peut y entrer et utiliser le back-office sur les données synthétiques (approuver une demande, suspendre une carte, …).

Six comptes, un par état, avec l’e-mail <state>@<slug>-sandbox.sandbox.invalid et un mot de passe commun, affiché une fois à la création et à chaque réinitialisation :

E-mail État Ce qu’il représente
attivo@… actif carte valable, statuto accepté — verdict: valid
in-attesa@… en attente demande pas encore approuvée
sospeso@… suspendu
revocato@… révoqué
scaduto@… actif mais expiré verdict: expired
statuto-da-accettare@… actif, statuto non accepté verdict: statuto_required

Ils se connectent depuis la page de connexion habituelle de Vimine, vous pouvez donc essayer Se connecter avec Vimine de bout en bout : clic sur votre site → connexion en tant que attivo@… → consentement → callback → API.

Quiconque adhère depuis la page d’adhésion de la sandbox, et quiconque un client de test nomme avec /v1/signup ou /v1/enroll, devient une personne synthétique de la sandbox : l’adresse saisie est remplacée par une adresse de son domaine (api-…@<slug>-sandbox.sandbox.invalid, toujours la même pour la même adresse), que la page affiche à la fin de l’adhésion. Aucun vrai compte n’est créé ni touché, et aucun e-mail ne part.

Ces comptes ne valent que dans la sandbox : ils s’y connectent avec le mot de passe choisi, mais ne peuvent ni adhérer à une vraie association, ni entrer dans une autre, ni autoriser un client autre qu’un client de test de leur sandbox (sandbox_account).

Un client de l’environnement Test (vms_test_… pour les confidentiels) est lié à la sandbox, apparaît dans la console de l’association réelle, est actif immédiatement et émet des jetons avec mode: "test". Il ne peut pas toucher à l’association réelle. Les e-mails de la sandbox ne sont pas envoyés.

Pour passer en production, enregistrez un second client dans l’environnement Production (avec les mêmes redirect URI https) et, une fois qu’il est activé, changez clientId dans votre configuration : le code reste le même.

Régénérer les données et les identifiants depuis la console, ou avec un client de test :

Node
import { VimineServer } from '@vimine/sdk/server';
const vimineServer = new VimineServer({ clientId: 'vmc_…', clientSecret: 'vms_test_…' });
await vimineServer.sandbox.members(); // GET /v1/sandbox
const { password } = await vimineServer.sandbox.reset(); // POST /v1/sandbox/reset — les membres repartent de zéro, nouveau mot de passe

La réinitialisation recrée les six membres synthétiques (consentements et sessions compris) et change leur mot de passe ; les personnes créées par vos tests sont supprimées ; les clients et la sandbox restent. Ces endpoints veulent le jeton d’un client de test confidentiel (client_credentials), pas HTTP Basic ; un client de production reçoit 403.

Supprimer la sandbox dans la console Développeurs (le conseil, ou l’opérateur de la plateforme) la supprime immédiatement, avec ses membres synthétiques, les personnes créées par vos tests, les données et les clients de test, qui cessent de fonctionner. Vous pouvez en créer une nouvelle quand vous voulez.