Créer et configurer une clé API

Les clés d’API sont générées à partir de la page Admin / API. Accédez à Admin-Avancé-Clés d’API :

Après avoir cliqué sur le bouton « Nouvelle clé d’API », vous serez dirigé vers une page pour configurer la clé :

Chaque clé d’API a besoin d’une description, d’un niveau d’utilisateur et d’une portée.

Description

La description peut être tout ce que vous choisissez.

Niveau d’utilisateur

Le menu déroulant Niveau d’utilisateur vous permet de sélectionner « Tous les utilisateurs » ou « Utilisateur unique ». Si « Tous les utilisateurs » est sélectionné, la clé peut être utilisée pour le compte de n’importe quel utilisateur. Ceci est fait en définissant l’utilisateur pour lequel vous faites la requête comme Api-Username dans les en-têtes de la requête. (Voir l’exemple d’authentification dans la documentation de l’API (API docs) pour plus de détails sur la façon de définir les en-têtes de requête.)

Si « Utilisateur unique » est sélectionné, un champ utilisateur apparaîtra sur le formulaire. Entrez le nom d’utilisateur pour lequel vous générez la clé d’API dans ce champ :

Portée

Le menu déroulant Portée vous permet de sélectionner « Granulaire », « Lecture seule » ou « Globale » comme portée.

Si « Lecture seule » est sélectionné comme portée, la clé d’API ne pourra être utilisée que pour effectuer des requêtes GET. La clé pourra effectuer toutes les requêtes GET que l’utilisateur pour lequel la clé a été générée, ou le nom d’utilisateur entré comme Api-Username de la requête, a la permission d’effectuer.

Si « Globale » est sélectionné comme portée, la clé peut être utilisée pour toutes les requêtes que l’utilisateur pour lequel la clé a été générée, ou le nom d’utilisateur entré comme Api-Username de la requête, a la permission d’effectuer.

Si « Granulaire » est sélectionné comme portée, un formulaire vous permettant de choisir parmi les portées disponibles s’ouvrira. Survolez l’icône de point d’interrogation d’une portée pour voir une description de celle-ci. Cliquez sur l’icône de lien de la portée pour voir une liste des chemins et des méthodes de requête que la portée prend en charge. Notez que de nombreuses portées vous permettent d’entrer un paramètre supplémentaire pour limiter les chemins sur le site auxquels la portée autorisera l’accès :

Après avoir configuré la clé d’API et cliqué sur le bouton Enregistrer, la clé d’API complète vous sera montrée une fois. Assurez-vous de copier la clé car il n’y a aucun moyen de revoir la clé complète.

:information_source: Les portées d’API dans Discourse ne peuvent que restreindre les actions qu’une clé d’API peut effectuer par rapport aux permissions existantes de l’utilisateur. Elles ne peuvent pas accorder de permissions supplémentaires au-delà de ce que l’utilisateur associé possède déjà.

Lecture supplémentaire

Détails sur les limites de débit que Discourse applique aux clés d’API : Limites de débit globales et limitation dans Discourse.

Documentation de l’API Discourse : https://docs.discourse.org/.

Un guide utile pour comprendre comment structurer les requêtes d’API : Comment faire de l’ingénierie inverse de l’API Discourse.

5 « J'aime »

Ce sujet pourrait bénéficier d’une mise à jour. Je pourrai le faire bientôt si personne ne s’en occupe avant moi.

En testant cela avec le dernier navigateur Chrome sur Ubuntu, à la fois sur un site de développement local et sur un site Discourse hébergé, une infobulle ne s’affiche plus lorsque je survole l’icône :question:.

Par coïncidence, cela a été pris en charge plus tôt aujourd’hui. Je pense qu’une correction est en cours :crossed_fingers:

2 « J'aime »

Les deux premières images expliquant comment générer une clé API ne se chargent pas !

Avec les modifications apportées à la disposition des paramètres d’administration, je ne trouve pas où générer cela.

Cela a déjà été mentionné sur Missing images at Meta.discourse.org - #6 by Lilly

Je pense que vous pouvez les voir ici https://web.archive.org/web/20221205183753/https://meta.discourse.org/t/create-and-configure-an-api-key/230124

2 « J'aime »

L’emplacement trouvé pour le nouveau tableau de bord se trouve dans le menu déroulant des paramètres d’administration - avancé - clés API

corrigé. J’ai également ajouté une capture d’écran du nouvel emplacement du menu administrateur.

Merci @Moin

4 « J'aime »