Comprendre et Maîtriser les Variables dans Apidog

Oliver Kingsley

Oliver Kingsley

19 September 2025

Comprendre et Maîtriser les Variables dans Apidog

Les variables vous permettent de donner un nom à une valeur et de la réutiliser partout où vous en avez besoin.

Par exemple, au lieu de coller un jeton API fréquemment modifié dans chaque requête, définissez une variable comme ACCESS_TOKEN et utilisez {{ACCESS_TOKEN}} dans vos requêtes. Lorsque le jeton expire, mettez à jour la variable une seule fois et toutes les requêtes l'utilisant récupéreront automatiquement la nouvelle valeur.

récupérer des variables dans Apidog

Types de variables en un coup d'œil

Apidog prend en charge plusieurs types de variables, chacun conçu pour des scénarios spécifiques. Vous pouvez utiliser : les variables globales au niveau de l'équipe, les variables globales au niveau du projet, les variables de module, les variables d'environnement, les variables de données de test et les variables locales.

Variables globales

Les variables globales vous permettent de partager des données largement. Il en existe deux types :

Variables globales au niveau du projet : Limitées au projet actuel. Parfaites pour transmettre des données entre les requêtes d'un même projet. Par exemple, stockez un jeton de l'endpoint de connexion en tant que variable globale au niveau du projet, puis réutilisez-le dans d'autres requêtes au sein de ce projet.

variables globales au niveau du projet

Variables globales au niveau de l'équipe : Partagées entre tous les projets d'une équipe. Idéales pour la collaboration inter-projets. Par exemple, si un service d'authentification émet un jeton utilisé par plusieurs projets, stockez-le comme variable globale d'équipe.

variables globales au niveau de l'équipe

Remarque sur les permissions : Les membres réguliers peuvent uniquement consulter et modifier les valeurs actuelles des variables globales existantes au niveau de l'équipe. Ils ne peuvent pas ajouter/supprimer des variables ni les renommer. Seuls les administrateurs d'équipe peuvent gérer entièrement les variables au niveau de l'équipe via Ressources d'équipe → Variables.

Variables de module

Les variables de module sont limitées à un module spécifique. Si vous importez une collection Postman, ses variables de collection sont importées en tant que variables de module Apidog.

Elles sont idéales pour la configuration spécifique à un module. Par exemple, un projet peut avoir des modules distincts pour les utilisateurs, les commandes et les produits – chacun peut conserver sa propre configuration dans des variables de module.

Variables de module

Assurez-vous qu'Apidog est à jour pour utiliser les variables de module.

Variables d'environnement

Les variables d'environnement sont probablement le type le plus utilisé. Elles vous permettent de basculer entre les environnements sans modifier la configuration de chaque requête.

variables d'environnement

En pratique, vous avez généralement plusieurs environnements (local, test, staging, production). Chacun a des adresses de serveur, des connexions de base de données ou des configurations tierces différentes. Avec les variables d'environnement, vous pouvez basculer entre eux instantanément.

Remarque : Un seul environnement peut être actif à la fois. Lorsque vous sélectionnez un environnement, toutes les variables qui y sont définies prennent effet.

basculer entre les variables d'environnement

Variables de données de test

Les variables de données de test alimentent les tests basés sur les données. Lorsque vous devez tester le même endpoint avec de nombreux ensembles de données, c'est votre ami.

Préparez un fichier CSV ou JSON avec plusieurs lignes (ou objets). Dans un scénario de test automatisé, importez le fichier, et Apidog itérera chaque ligne comme un ensemble de variables et exécutera le test pour chacune.

importer un fichier CSV ou JSON dans Apidog

Variables locales

Les variables locales ont la durée de vie la plus courte — valables uniquement pendant une seule requête ou exécution de test. Elles disparaissent après l'exécution.

Parce que les variables locales ont la priorité la plus élevée, elles sont parfaites pour remplacer momentanément d'autres types de variables. Par exemple, votre environnement définit user_id, mais pour un test spécial, vous avez besoin d'une valeur différente — définissez une variable locale avec le même nom au lieu de modifier l'environnement.

Priorité des variables

Lorsque plusieurs variables partagent le même nom, Apidog les résout par priorité (du plus élevé au plus bas) : Variables locales > Variables de données de test > Variables d'environnement > Variables de module > Variables globales au niveau du projet > Variables globales au niveau de l'équipe

Exemple : Si vous définissez trois variables nommées userId :

Lorsque vous utilisez {{userId}} dans une requête, la valeur effective est 3000 (provenant de l'environnement). S'il n'y a pas de valeur d'environnement, elle revient à la valeur du module (2000), puis à la valeur globale du projet (1000).

Valeurs initiales vs Valeurs actuelles

Les variables globales, de module et d'environnement ont à la fois des valeurs initiales et actuelles — cela équilibre le partage en équipe avec la confidentialité personnelle.

valeurs initiales et actuelles dans Apidog

Lorsqu'une valeur actuelle existe, Apidog la préfère. Si la valeur actuelle est vide, Apidog utilise la valeur initiale. Vous voulez que la valeur actuelle suive la valeur initiale ? Cliquez sur l'icône de lien à côté de la valeur actuelle pour la relier.

Les valeurs actuelles sont stockées sur votre appareil et peuvent être perdues si vous videz le cache ou changez d'appareil. Dans la version web d'Apidog, elles sont stockées dans le navigateur. Pour passer à un nouvel appareil, exportez/importez les environnements pour migrer les valeurs actuelles.

Remarque : Lors de l'exécution de tests automatisés avec Apidog CLI, gardez à l'esprit une différence essentielle : Le client Apidog utilise les valeurs actuelles pendant l'exécution, tandis que la CLI utilise les valeurs initiales. Si les résultats diffèrent entre le client et la CLI, c'est une raison courante.

Façons de définir des variables

Choisissez la méthode qui correspond le mieux à l'origine de la valeur et à la façon dont vous l'utiliserez.

Définir des variables directement dans la page de gestion de l'environnement

La méthode la plus simple. Cliquez sur le bouton de gestion de l'environnement (en haut à droite), passez en mode global ou à un environnement spécifique, puis ajoutez des noms et des valeurs.

définir des variables directement dans la page de gestion de l'environnement

Cette méthode est excellente pour les configurations stables telles que les connexions de base de données. Vous pouvez définir à la fois des valeurs initiales (partagées) et actuelles (privées).

Utiliser la fonctionnalité "Stocker la variable"

Souvent, la valeur de la variable provient d'une réponse — comme un jeton d'un endpoint de connexion ou un ID utilisateur d'un endpoint de création d'utilisateur. Utilisez la fonction visuelle "Stocker la variable" dans les Post Processors pour configurer une nouvelle variable.

Dans les Post Processors d'une requête, ajoutez "Stocker la variable", choisissez la source (généralement la réponse JSON), et sélectionnez le champ en utilisant JSONPath.

stocker des variables dans Apidog

Par exemple, si la réponse JSON est :

{
    "user": {
        "id": "69",
        "email": "Ralph85@gmail.com",
        "first_name": "Katlynn",
        "last_name": "Reichert",
        "api_token": "dolore ut mollit Duis sit",
        "created_at": "2025-09-19T01:03:50.236Z",
        "updated_at": "2025-05-10",
        "deleted_at": "2025-09-18T18:30:51.217Z",
        "role": "developer",
        "metadata": {}
    }
}

Utilisez $.user.email pour extraire le jeton.

Vous pouvez également définir des variables directement depuis la section de réponse d'une requête.

définir des variables directement depuis la section de réponse d'une requête

Définir des variables via des scripts

Pour une logique plus complexe, utilisez un script personnalisé dans les Pre Processors ou Post Processors. Apidog fournit une API de script complète pour manipuler tous les types de variables.

// Définir une variable globale au niveau du projet

pm.globals.set('variable_key', 'variable_value');

// Définir une variable globale au niveau de l'équipe (doit être définie au préalable sur la page Ressources de l'équipe)

pm.globals.set('variable_key', 'variable_value', 'TEAM');

// Définir une variable d'environnement

pm.environment.set('variable_key', 'variable_value');

// Définir une variable de module

pm.moduleVariables.set('variable_key', 'variable_value');

// Définir une variable locale

pm.variables.set('variable_key', 'variable_value');

Lorsque vous stockez des objets ou des tableaux, convertissez-les d'abord en chaîne de caractères (stringify) et analysez-les (parse) lors de la lecture. Par exemple :

pm.environment.set('user', JSON.stringify(userObj));

const users = JSON.parse(pm.environment.get('user'));

Remarque : Les scripts ne peuvent définir que les valeurs actuelles des variables. Les valeurs initiales doivent être définies dans la page de gestion de l'environnement.

Utiliser les données de la base de données comme variables

Apidog peut récupérer des données directement depuis une base de données et les définir comme variables — idéal pour les tests qui reposent sur des enregistrements réels.

Ajoutez une opération de base de données dans les Post Processors, configurez la connexion et écrivez le SQL. Ensuite, extrayez les champs dans des variables en utilisant JSONPath.

utiliser les données de la base de données comme variables

Conseils pour l'utilisation des variables

Où les variables fonctionnent

Les variables ne sont résolues que lorsqu'une requête est réellement envoyée. Cela signifie que vous pouvez les utiliser dans les en-têtes, les paramètres, le corps, les scénarios de test et les scripts — partout où cela est impliqué dans l'envoi d'une requête.

Puisqu'Apidog est d'abord visuel, une règle simple : si vous voyez un bouton "Valeur dynamique", vous pouvez y utiliser des variables.

Syntaxe de base

Utilisez des doubles accolades pour référencer une variable : {{variableName}}. Cela fonctionne dans l'URL, les en-têtes, les paramètres et le corps.

Par exemple, dans les paramètres :

Et dans le corps :

Remarques pour les corps JSON : les variables de type chaîne de caractères nécessitent des guillemets, les variables numériques non. Les doubles accolades peuvent déclencher des avertissements de linter JSON, mais ils peuvent être ignorés en toute sécurité.

Si vous voyez "variable non résolue", ne paniquez pas. Les variables définies dans les Post Processors ou les scripts peuvent ne pas exister tant que la requête n'est pas exécutée, et les variables locales disparaissent après l'exécution. La meilleure façon de confirmer est d'envoyer réellement la requête.

Récupérer les champs enfants d'une variable

Parfois, vos variables stockent des objets ou des tableaux, pas seulement des chaînes de caractères ou des nombres. Par exemple, une API utilisateur renvoie souvent un objet avec id, nom, e-mail, etc.

Supposons que vous ayez stocké cet objet de réponse en tant que variable nommée user :

{
  "id": 1001,
  "name": "Joe",
  "email": "joe@example.com",
  "role": "admin"
}

Vous pouvez référencer des champs spécifiques avec la notation par points, comme {{user.id}} (1001) ou {{user.name}} ("Joe").

Pour les tableaux, c'est similaire. Si vous avez une variable users :

[
  {"id": 1001, "name": "Joe"},
  {"id": 1002, "name": "Rio"},
  {"id": 1003, "name": "Outher"}
]

Utilisez {{users[0].name}} pour obtenir le nom du premier utilisateur, ou {{users[1].id}} pour l'ID du deuxième utilisateur.

Cela suit une sémantique de type JSONPath — le nom de la variable agit comme la racine ($).

Utiliser des variables dans les scripts

Vous pouvez utiliser des variables dans les scripts personnalisés des Pre Processors ou Post Processors. Apidog fournit un ensemble complet d'API de script, vous permettant d'accéder de manière flexible à différents types de variables.

// Obtenir une variable globale au niveau du projet

pm.globals.get('variable_key');

// Obtenir une variable globale au niveau de l'équipe

pm.globals.get('variable_key', 'TEAM');



// Obtenir une variable d'environnement

pm.environment.get('variable_key');



// Obtenir une variable de module

pm.moduleVariables.get('variable_key');



// Obtenir une variable locale

pm.variables.get('variable_key');

Pour les objets/tableaux stockés sous forme de chaînes de caractères, analysez d'abord :

const userObj = JSON.parse(pm.environment.get('user'));

console.log(userObj.name);

Tests basés sur les données avec des variables de données de test

Téléchargez un fichier CSV ou JSON contenant plusieurs lignes de données. Pendant l'exécution, Apidog remplace {{variableName}} par les valeurs de chaque ligne et exécute le test une fois par ligne — parfait pour valider la robustesse avec de nombreuses entrées.

Expressions de valeurs dynamiques

Au-delà de vos propres variables, Apidog prend en charge les valeurs dynamiques, qui génèrent des données aléatoires suivant des règles spécifiques.

Dans les scripts, vous pouvez traiter des chaînes de caractères qui incluent des expressions dynamiques avec await pm.variables.replaceInAsync() :

const template = "Hello, {{$person.fullName}}";

const result = await pm.variables.replaceInAsync(template);

console.log(result); // Affiche un nom généré aléatoirement

Les valeurs dynamiques sont parfaites pour générer des données de test aléatoires sans préparer un ensemble de données à l'avance.

Résumé

Les variables sont l'une des fonctionnalités les plus puissantes d'Apidog. Elles réduisent la répétition, rendent les tests flexibles et simplifient le basculement entre les projets et les environnements. Que vous partagiez des paramètres globaux entre équipes, exécutiez des tests avec des données CSV ou remplaciez des valeurs localement, les variables contribuent à maintenir votre flux de travail efficace et organisé. En maîtrisant les types de variables, leurs priorités et les façons de les définir, vous pouvez garantir que vos requêtes API restent cohérentes, maintenables et prêtes pour des scénarios réels.

Pratiquez le Design-first d'API dans Apidog

Découvrez une manière plus simple de créer et utiliser des API