Portées API et autorisations des forfaits
Comparez les portées API de TrekMail selon les forfaits, modules, OAuth, adhésions, contraintes de domaine et contrôles MCP, y compris White Label.
Détails de l’article
Type, difficulté, forfaits et date de dernière mise à jour.
▼
Détails de l’article
Type, difficulté, forfaits et date de dernière mise à jour.
- Type
- Référence
- Difficulté
- Intermédiaire
- Forfaits
- Nano · Starter · Pro · Agency
- Dernière mise à jour
- 23 août 2026
Les portées déterminent exactement ce qu'un jeton API peut faire. Chaque jeton contient un ensemble de portées, que l'API vérifie à chaque requête.
Fonctionnement des portées
Lorsque vous créez un jeton, vous sélectionnez les portées à inclure. L'API applique trois plafonds à chaque requête :
- Droits du compte : le forfait actuel et les modules actifs déterminent les fonctionnalités disponibles.
- Adhésion : une personne déléguée ne peut pas accorder ni utiliser plus que ce que permettent son rôle et son accès aux domaines actuels.
- Autorisation des identifiants : le jeton ou le consentement OAuth doit inclure la portée requise par l'endpoint.
L'erreur indique le plafond qui a échoué. insufficient_scope signifie que la portée n'a jamais été accordée aux identifiants, scope_blocked_by_membership que le rôle de la personne est plus restreint et scope_blocked_by_entitlement que le droit White Label requis n'est pas actif.
Deux couches de portées : OAuth et portées API
OAuth prend en charge six ensembles pratiques historiques, chaque portée API détaillée et les sélecteurs tools:* qui contrôlent uniquement l'exposition. Les ensembles historiques sont :
| Portée OAuth | Contenu |
|---|---|
mail:read |
Lecture du compte, des domaines, boîtes mail, transferts, règles, réponses automatiques, SMTP, Cloudflare et tickets, plus lecture de Drive. |
mail:write |
Tout mail:read, plus création, mise à jour et suppression de domaines, boîtes mail, alias, transferts, règles, réponses automatiques, DNS Cloudflare, tickets, chargements et partages Drive. |
mail:admin |
Tout mail:write, plus facturation, intentions de suppression, purges destructives Drive, écritures de migration, suppression de jetons Cloudflare et création de jetons de message. |
messages:read |
Lecture du contenu de la boîte mail (messages, dossiers, pièces jointes, contacts, calendrier, identités, modèles). |
messages:write |
Modification des brouillons, dossiers, indicateurs, contacts, calendriers, modèles et réglages sans envoyer d'e-mail. |
messages:send |
Lecture et envoi d'e-mails, y compris création de brouillons et programmation des messages. |
Chaque ensemble OAuth historique se développe en portées API détaillées, telles que domains:read et drive:account:write. Les nouvelles intégrations peuvent demander directement ces portées granulaires. Les portées White Label sont volontairement absentes des anciens ensembles mail:*, afin qu'un connecteur existant n'obtienne jamais l'administration revendeur après une mise à niveau. Il doit demander explicitement les portées White Label nécessaires. Un sélecteur tools:white_label limite l'exposition MCP, mais n'accorde à lui seul aucune autorisation API.
Trois modes de connexion et leurs capacités
Un agent ou une intégration peut accéder à TrekMail de trois façons, et le mécanisme de contrôle diffère pour chacune. C'est important, car les « indicateurs de capacité » MCP (TREKMAIL_ALLOW_DESTRUCTIVE, TREKMAIL_ALLOW_SENDING, TREKMAIL_ALLOW_MIGRATION) n'existent que dans l'une d'elles.
| Mode | Authentification | Mécanisme de contrôle | Indicateurs de capacité | Portée des outils et endpoints |
|---|---|---|---|---|
MCP HTTP hébergé (https://trekmail.net/mcp, OAuth) |
OAuth 2.1 avec ensembles historiques ou portées granulaires | Droits actuels, adhésion, portées consenties, ensembles d'outils sélectionnés et prise en charge du transport. | Politique de sécurité hébergée | Sous-ensemble permis par chaque plafond actif |
MCP stdio auto-hébergé (@trekmail/mcp-server, local) |
Un jeton tm_live_ et, si nécessaire, un jeton tm_msg_ |
Portées des jetons, ensembles d'outils sélectionnés, mode lecture seule et réglages de sécurité de l'opérateur. Les outils non autorisés ne sont pas enregistrés. | Configuration de l'opérateur | Sous-ensemble permis par le jeton et la configuration locale |
| API REST directe | Un jeton bearer tm_live_ ou tm_msg_ |
Portées granulaires du jeton, telles que smtp:read, smtp:write et domains:delete |
Sans objet | Endpoints permis par les portées du jeton |
En bref : MCP HTTP hébergé filtre les outils annoncés selon l'identifiant OAuth; MCP stdio croise les portées du jeton avec les ensembles d'outils, le mode lecture seule et les contrôles de sécurité locaux; l'API REST est contrôlée directement par les portées granulaires du jeton. L'autorisation API à l'exécution reste déterminante dans chaque mode.
Référence des portées
Compte et facturation
| Portée | Fonction | Forfaits |
|---|---|---|
account:read |
Voir les informations du compte, le forfait, les limites et l'utilisation | Starter · Pro · Agency |
billing:read |
Voir l'état de facturation et l'historique des factures | Starter · Pro · Agency |
billing:autopay |
Payer des achats en votre nom sans vous demander à chaque fois | Tous les forfaits, y compris Nano |
billing:autopay est la seule portée qui déplace de l'argent, il vaut donc la peine de la lire deux fois.
Elle est volontairement séparée de billing:read : une connexion autorisée à voir votre facture ne doit pas
pouvoir l'augmenter, et accorder la lecture de la facturation ne vaut pas consentement à dépenser. Elle n'est jamais incluse
automatiquement; un jeton ou une connexion ne la possède que si vous l'avez explicitement accordée, et elle est absente
de chacun des anciens ensembles généraux de portées. Une connexion autorisée avant son existence
ne peut donc rien dépenser.
Ce qu'elle permet : acheter des crédits de vérification d'e-mails et démarrer un abonnement. Ce qu'elle ne permet absolument pas : annuler, rétrograder ou modifier un abonnement existant. Ces actions n'ont aucun endpoint. Les dépenses sont aussi plafonnées par achat, par jour et par mois pour l'ensemble du compte, quel que soit le nombre de connexions qui possèdent la portée.
Elle est disponible avec tous les forfaits, car les crédits de vérification sont vendus avec chacun d'eux, y compris Nano.
Domaines
| Portée | Fonction | Forfaits |
|---|---|---|
domains:read |
Lister les domaines et lire les détails, métriques de spam, adresses de transfert et état des alias de domaine | Starter · Pro · Agency |
domains:create |
Ajouter de nouveaux domaines au compte | Pro · Agency |
domains:write |
Mettre à jour les alias de domaine, catch-all, DKIM, notes, adresses de transfert et le choix d'héberger le courrier entrant ou seulement d'envoyer | Pro · Agency |
domains:delete |
Supprimer des domaines (dangereux) | Pro · Agency |
domains:dns:read |
Voir les exigences DNS et les résultats de vérification | Starter · Pro · Agency |
domains:dns:recheck |
Déclencher une nouvelle vérification DNS | Pro · Agency |
La distribution par alias de domaine commence avec Starter. Les jetons Starter peuvent lire l'état enregistré et réel; connecter, modifier ou supprimer cet alias via API/MCP nécessite la capacité domains:write de Pro/Agency. Les modifications restent disponibles dans le tableau de bord avec Starter. Consultez Alias de domaine via API et MCP.
White Label
Ces portées de jetons opérationnels apparaissent uniquement pendant qu'un essai ou module payant White Label est actif. Pendant le délai de grâce d'annulation, le propriétaire conserve les portées de lecture; les membres délégués et toutes les portées d'écriture sont supprimés.
| Portée | Fonction | Disponibilité |
|---|---|---|
branding:read |
Lire les marques, ressources, hôtes, état de zone de messagerie et enregistrements DNS requis | Droit actif; propriétaire pendant le délai de grâce |
branding:write |
Configurer la marque, charger ou supprimer des ressources, créer des aperçus et vérifier le DNS | Droit actif |
members:read |
Lire le catalogue d'accès et les clients ou membres d'équipe White Label | Droit actif; propriétaire pendant le délai de grâce |
members:write |
Inviter, mettre à jour, suspendre, reprendre, supprimer ou restaurer des membres | Droit actif |
activity:read |
Lire l'activité White Label du compte et de chaque membre | Droit actif; propriétaire pendant le délai de grâce |
L'adhésion actuelle applique un autre plafond. Un client ou coéquipier ne peut jamais élargir son propre rôle, accès aux domaines ou autorisations personnalisées en créant un jeton plus large. Consultez Gérer les équipes White Label avec API et MCP.
Boîtes mail
| Portée | Fonction | Forfaits |
|---|---|---|
mailboxes:read |
Lister et voir les boîtes mail, et obtenir des détails de configuration du client de messagerie sans mot de passe | Starter · Pro · Agency |
mailboxes:create |
Créer de nouvelles boîtes mail | Pro · Agency |
mailboxes:delete |
Supprimer des boîtes mail (via des intentions de suppression) | Pro · Agency |
mailboxes:invites:create |
Envoyer des invitations de configuration de boîte mail | Pro · Agency |
mailboxes:forwarding:read |
Voir la configuration du transfert | Starter · Pro · Agency |
mailboxes:write |
Changer le mot de passe, mettre à jour les notes, suspendre/reprendre, bloquer/restaurer la connexion, définir l'accès Drive | Pro · Agency |
mailboxes:forwarding:write |
Créer et modifier les règles de transfert | Pro · Agency |
mailboxes:rules:read |
Voir les filtres de messagerie | Starter · Pro · Agency |
mailboxes:rules:write |
Créer, mettre à jour et supprimer les filtres de messagerie | Pro · Agency |
mailboxes:auto-reply:read |
Voir les réglages de réponse automatique | Starter · Pro · Agency |
mailboxes:auto-reply:write |
Mettre à jour les réglages de réponse automatique | Pro · Agency |
mailboxes:message-tokens:manage |
Créer, lister et révoquer les jetons de message | Pro · Agency |
Messages (jeton de message)
| Portée | Fonction | Forfaits |
|---|---|---|
messages:read |
Accès en lecture à toute l'interface webmail, liste/lecture des messages, liste des dossiers, téléchargement des pièces jointes, source brute, messages programmés, contacts, exportation des contacts, événements de calendrier, données de réponse/transfert, identités et routes Envoyer comme des boîtes connectées, modèles et expéditeurs bloqués | Pro · Agency |
messages:write |
Accès en écriture, indicateurs, suppression/déplacement des messages, signalement spam/ham, actions groupées, création/renommage/suppression de dossiers, vidage Corbeille/Indésirables, enregistrement/mise à jour des brouillons, annulation des messages programmés, création/mise à jour/suppression de contacts et événements, importation de contacts, gestion des groupes, identités, politique d'expéditeur de réponse, modèles et expéditeurs bloqués | Pro · Agency |
messages:send |
Envoyer depuis la boîte mail ou une identité Envoyer comme autorisée et liée à la source; couvre aussi la programmation de nouveaux messages et l'annulation d'envois programmés | Pro · Agency |
Les portées de messages sont portées par des jetons de message (préfixe tm_msg_), et non par des jetons opérationnels (préfixe tm_live_). Les jetons de message sont créés via l'API avec un jeton opérationnel possédant la portée mailboxes:message-tokens:manage. Ils ont des protections propres à l'API en plus des limites ordinaires d'envoi : par défaut, la lecture autorise 30 requêtes par minute et 5,000 lectures réussies par jour et par jeton; l'envoi autorise 60 requêtes par minute et par jeton, et 100 envois API quotidiens pour la boîte. Un second compteur de sécurité est fixé par défaut à 500 envois par jour, donc le plafond inférieur de la boîte s'applique normalement.
Tous les nouveaux endpoints de l'API webmail (contacts, calendrier, identités, modèles, expéditeurs bloqués, brouillons, envoi programmé, dossiers, pièces jointes) correspondent aux trois portées de messages existantes; aucune nouvelle portée n'a été ajoutée. Les jetons existants continuent de fonctionner sans modification.
messages:read n'accorde pas d'accès en écriture. Dans OAuth hébergé, approuver la capacité plus large messages:send fournit ensemble les accès en lecture, écriture et envoi; un jeton tm_msg_ créé manuellement conserve exactement les portées choisies lors de sa création.
Tickets d'assistance
| Portée | Fonction | Forfaits |
|---|---|---|
tickets:read |
Lister et consulter les tickets et messages d'assistance | Starter · Pro · Agency |
tickets:write |
Créer des tickets, y répondre et les fermer | Pro · Agency |
Starter : lecture seule via API. Ouvrez les tickets et répondez-y depuis le tableau de bord.
Configuration SMTP
| Portée | Fonction | Forfaits |
|---|---|---|
smtp:read |
Voir la route SMTP d'un domaine, lister les profils enregistrés et leur utilisation exacte des domaines/Envoyer comme, lire la valeur par défaut du compte, consulter les tests | Starter · Pro · Agency |
smtp:write |
Définir la route d'un domaine, créer/mettre à jour/supprimer les profils, définir la valeur par défaut du compte, exécuter des tests de connexion | Pro · Agency |
SMTP est configuré par domaine (/api/v1/domains/{id}/smtp), avec une seule valeur par défaut pour le compte (/api/v1/smtp/default) qui détermine le réglage initial des nouveaux domaines. Consultez Présentation de l'API pour la liste complète des endpoints. Les anciens endpoints de compte /api/v1/smtp répondent encore pour la rétrocompatibilité, mais ne contrôlent plus le routage.
Migrations
| Portée | Fonction | Forfaits |
|---|---|---|
migrations:read |
Lister et consulter les détails des migrations | Starter · Pro · Agency |
migrations:write |
Démarrer, annuler, réessayer et supprimer des migrations | Pro · Agency |
Les portées de migration sont portées par des jetons opérationnels (préfixe tm_live_). Starter peut consulter les migrations via l'API et les exécuter depuis le tableau de bord. Pro et Agency peuvent aussi les démarrer, annuler, réessayer et supprimer via l'API et MCP.
Cloudflare
| Portée | Fonction | Forfaits |
|---|---|---|
cloudflare:read |
Valider des jetons, lister les zones et prévisualiser les modifications DNS | Starter · Pro · Agency |
cloudflare:write |
Connecter des domaines et appliquer les modifications DNS via Cloudflare | Pro · Agency |
cloudflare:delete |
Supprimer des jetons Cloudflare (dangereux) | Pro · Agency |
Drive
| Portée | Fonction | Forfaits |
|---|---|---|
drive:account:read |
Parcourir Account Drive, voir dossiers/fichiers/corbeille/métadonnées de liens partagés, demander des URL de téléchargement | Forfaits payants ou module Drive actif |
drive:account:write |
Charger, créer des dossiers, renommer, déplacer, mettre à la corbeille et restaurer des éléments Account Drive | Forfaits payants ou module Drive actif |
drive:account:share |
Créer, lister et révoquer les liens publics de fichiers Account Drive | Forfaits payants ou module Drive actif |
drive:account:purge |
Purger définitivement les fichiers/dossiers Account Drive supprimés et vider la corbeille | Forfaits payants ou module Drive actif; risque élevé |
drive:mailbox:read |
Parcourir les espaces Drive de boîtes mail autorisés | Forfaits payants ou module Drive actif |
drive:mailbox:write |
Charger et modifier des fichiers/dossiers dans les espaces Drive de boîtes autorisés | Forfaits payants ou module Drive actif |
drive:mailbox:share |
Créer, lister et révoquer les liens publics de fichiers Drive de boîtes autorisés | Forfaits payants ou module Drive actif |
drive:mailbox:purge |
Purger définitivement les éléments Drive de boîtes mis à la corbeille | Forfaits payants ou module Drive actif; risque élevé |
drive:addon:read |
Lire l'état, le prix et l'aperçu d'annulation du module Drive Storage | Nano · Starter · Pro · Agency si le contexte module/Drive existe |
drive:devices:read |
Lister les mots de passe des appareils de synchronisation sans exposer leur texte brut | Forfaits payants ou module Drive actif |
drive:devices:write |
Créer, renouveler et révoquer les mots de passe des appareils de synchronisation | Forfaits payants ou module Drive actif |
Les portées Drive sont des portées de jetons opérationnels. Un jeton peut être limité à certaines boîtes mail, et Drive lui masquera les autres espaces. L'achat, le redimensionnement et l'annulation du module Drive ne sont pas des opérations d'écriture API/MCP; les changements de facturation restent dans le tableau de bord.
Nano + module Drive : avec un module Drive Storage actif, Nano obtient toutes les portées Drive. Rien d'autre n'est débloqué, seulement Drive et les portées Email Verifier que Nano possède déjà. Si vous annulez le module, les portées de lecture restent actives pendant le délai de grâce de 7 jours pour terminer vos téléchargements ou votre transition; l'écriture, le partage et la purge sont coupés immédiatement.
Email Verifier
| Portée | Fonction | Forfaits |
|---|---|---|
verify:read |
Vérifier les crédits, lister les tâches, voir leur état et leurs résultats | Nano · Starter · Pro · Agency |
verify:write |
Soumettre des vérifications, annuler et supprimer des tâches (accorde aussi la lecture) | Nano · Starter · Pro · Agency |
Les portées Email Verifier sont disponibles avec tous les forfaits, y compris Nano. La seule limite est votre solde de crédits. Consultez API Email Verifier pour la référence complète des endpoints.
Niveaux d'accès des forfaits
| Forfait | Accès API | Portées disponibles |
|---|---|---|
| Nano | Email Verifier. Ajoutez un module Drive Storage pour l'intégralité de l'API Drive + MCP. | verify:read, verify:write. Avec le module Drive : toutes les portées drive:*. |
| Starter | Drive complet, Email Verifier complet et lecture seule ailleurs. Effectuez les écritures du tableau de bord depuis celui-ci. | account:read, billing:read, domains:read, domains:dns:read, mailboxes:read, mailboxes:forwarding:read, mailboxes:rules:read, mailboxes:auto-reply:read, migrations:read, tickets:read, smtp:read, cloudflare:read, verify:read, verify:write, toutes les portées drive:*. |
| Pro | Accès complet | Toutes les portées opérationnelles + Drive + messages + migrations + tickets + SMTP + Cloudflare + compte + facturation + vérificateur |
| Agency | Accès complet | Toutes les portées opérationnelles + Drive + messages + migrations + tickets + SMTP + Cloudflare + compte + facturation + vérificateur |
Les portées White Label s'ajoutent au forfait de base Pro ou Agency au lieu d'en faire partie. Elles apparaissent pour ces comptes uniquement lorsque leur droit White Label est actif.
Conséquences d'une rétrogradation
Si vous passez de Pro à Starter, les jetons existants dotés de portées d'écriture ne sont pas supprimés. L'API bloque plutôt à l'exécution les requêtes utilisant des portées interdites.
Par exemple, un jeton avec mailboxes:create sur Starter reçoit 403 avec le code token_scope_blocked_by_plan lorsqu'il tente de créer une boîte mail. Les portées de lecture du même jeton continuent de fonctionner.
Pour corriger cela, révoquez l'ancien jeton et créez-en un nouveau avec seulement les portées permises par votre forfait actuel.
Portées dangereuses
Les portées mailboxes:delete, domains:delete, migrations:write et cloudflare:delete sont signalées comme dangereuses dans le tableau de bord. Leurs jetons peuvent lancer la suppression de boîtes ou de domaines, retirer des jetons Cloudflare ou effectuer d'autres actions irréversibles. Vérifiez si votre cas d'usage les exige réellement.
Pour un serveur MCP hébergé localement, l'administrateur peut exiger TREKMAIL_ALLOW_DESTRUCTIVE=true avant de rendre disponibles les outils de suppression. MCP hébergé utilise les portées approuvées pendant OAuth.
La portée messages:send permet d'envoyer de vrais e-mails depuis la boîte. Sur un serveur MCP hébergé localement, l'envoi peut aussi exiger TREKMAIL_ALLOW_SENDING=true et confirm_send=true à chaque appel. Consultez Garde-fous et intentions de suppression pour plus de détails.
La portée migrations:write permet de lancer des migrations d'e-mails qui se connectent à des serveurs IMAP externes avec des identifiants enregistrés. Sur un serveur MCP hébergé localement, les écritures de migration peuvent aussi exiger TREKMAIL_ALLOW_MIGRATION=true et des paramètres de confirmation par appel (confirm_start, confirm_cancel, confirm_retry).
Contraintes de domaine
Les portées contrôlent ce qu'un jeton peut faire. Les contraintes de domaine contrôlent où il peut le faire.
Un jeton limité à des domaines précis voit et modifie uniquement les ressources de ces domaines. Cela permet de donner à un prestataire ou agent l'accès à un seul domaine client sans exposer les autres.
Les contrôles de portée ont lieu avant ceux des contraintes de domaine. Si un jeton ne possède pas la portée requise, la requête échoue avec 403, quelles que soient les contraintes.
Solutions rapides
- 403 "insufficient_scope" : votre jeton n'a pas la portée requise par cet endpoint. Créez un nouveau jeton avec les bonnes portées.
- 403 "token_scope_blocked_by_plan" : votre forfait ne permet plus une ou plusieurs portées du jeton. Changez de forfait ou révoquez le jeton et créez-en un avec les portées permises.
- 403 "scope_blocked_by_entitlement" : White Label est inactif ou une écriture a été tentée pendant le délai de grâce d'annulation. Réactivez-le avant de réautoriser la connexion.
- 403 "scope_blocked_by_membership" : le rôle actuel du membre ou l'autorisation personnalisée ne permet pas l'action. Demandez au propriétaire de modifier cette adhésion.
- Certaines portées sont masquées dans le formulaire de création : votre forfait ne les prend pas en charge. Seules les portées permises sont affichées.
Articles associés
Articles similaires
Accédez aux guides voisins qui prolongent votre démarche.