Les métadonnées des rôles dans Zoho CRM peuvent être récupérées par programmation via l'API GraphQL en interrogeant le type Meta et en spécifiant l'objet Roles ainsi que les champs dont vous avez besoin.
Pourquoi c'est important
Lorsque vous créez des intégrations ou des outils d'administration sur Zoho CRM, vous avez souvent besoin d'une liste de tous les rôles configurés — par exemple, pour associer des utilisateurs à leur hiérarchie, valider les niveaux d'accès ou alimenter une liste déroulante dans une application externe. L'API GraphQL vous offre un moyen structuré et flexible d'extraire ces métadonnées en une seule requête, aux côtés d'autres données organisationnelles telles que les utilisateurs ou les profils. En tant que support expert indépendant pour Zoho (et non le support officiel de Zoho), Beam Help recommande cette approche à tout développeur ayant besoin de découvrir les rôles par programmation.
Étape par étape
Étape 1. Vérifiez que votre édition de Zoho CRM prend en charge GraphQL. L'API GraphQL n'est pas disponible sur les versions d'essai de toute édition de Zoho CRM ; vous devez donc disposer d'un abonnement payant avant de continuer.[1]
Étape 2. Comprenez la structure de la requête. L'API GraphQL de Zoho CRM expose deux types racines : Meta (pour les métadonnées organisationnelles telles que les modules, les utilisateurs, les profils et les rôles) et Records (pour les données des modules). Pour récupérer les rôles, vous travaillerez entièrement dans le type Meta.[1]
Étape 3. Construisez votre requête GraphQL. Placez Roles dans le bloc Meta, puis spécifiez data et les champs que vous souhaitez retourner — par exemple, apiname. Une requête minimale ressemble à ceci :
query {
Meta {
Roles {
_data {
api_name
}
}
}
}
Cela demande à Zoho CRM de retourner le champ api_name pour chaque rôle défini dans votre organisation.[1]
Étape 4. Combinez avec d'autres métadonnées si nécessaire. Étant donné que Meta prend en charge plusieurs types dans une seule requête, vous pouvez récupérer les rôles et les utilisateurs ensemble en un seul aller-retour. Par exemple, ajouter un bloc Users aux côtés de Roles vous permet de corréler les noms de rôles avec les noms de famille des utilisateurs sans effectuer d'appels séparés.[1]
query {
Meta {
Roles {
_data {
api_name
}
}
Users {
_data {
last_name
}
}
}
}
Étape 5. Envoyez la requête à l'endpoint GraphQL de Zoho CRM en utilisant le client HTTP de votre choix, en transmettant un jeton d'accès OAuth 2.0 valide dans l'en-tête Authorization. La réponse contiendra un objet JSON structuré avec vos données de rôles imbriquées sous Meta > Roles > _data.[1]
Erreurs courantes
- Les comptes d'essai sont bloqués. Si votre organisation utilise une version d'essai de Zoho CRM, l'API GraphQL ne sera pas accessible. Vous devez passer à un abonnement payant avant que ces requêtes fonctionnent.[1]
- Demande de champs inexistants. Le bloc
datan'accepte que les champs valides pour le typeRoles(commeapiname). La demande d'un champ non défini entraînera l'échec de la requête. Vérifiez l'introspection du schéma GraphQL pour confirmer les champs disponibles avant de construire votre requête.[1] - Confusion entre
MetaetRecords. Les informations sur les rôles sont des métadonnées, pas des enregistrements de module. PlacerRolesdans le blocRecordsau lieu deMetaproduira une erreur. Utilisez toujoursMetapour les constructions organisationnelles telles que les rôles, les profils et les utilisateurs.[1]
Ce qu'il faut vérifier
- Éligibilité de l'édition : Vérifiez que votre compte Zoho CRM est sur un abonnement payant et que l'accès à l'API GraphQL n'a pas été restreint par votre administrateur.
- Exactitude des champs : Confirmez que les champs que vous demandez dans
data(par ex.,apiname) sont valides pour le typeRolesen exécutant d'abord une requête d'introspection du schéma.[1] - Structure de la réponse : Après avoir exécuté la requête, assurez-vous que le JSON retourné contient des données sous le chemin
Meta > Roles > _dataet que le nombre de rôles correspond à ce que vous voyez dans les paramètres de hiérarchie des rôles de votre CRM.[1]