Vous devez vous authentifier en tant que App afin d’effectuer des requêtes d’API REST en tant qu’application. Par exemple, si vous souhaitez utiliser l’API pour générer un jeton d’accès d’installation pour accéder aux ressources de l’organisation, répertorier les installations de votre application ou suspendre l’installation d’une application, vous devez vous authentifier en tant qu’application.
Si un point de terminaison d’API REST nécessite l’authentification en tant qu’application, la documentation de ce point de terminaison indique que vous devez utiliser un JWT pour accéder au point de terminaison. L’API GraphQL ne prend pas en charge les requêtes ou mutations qui nécessitent l’authentification en tant qu’application.
Générez un jeton web JSON (JWT) pour votre application. Pour plus d’informations, consultez « Génération d’un jeton web JSON (JWT) pour une application ».
Incluez le JWT dans l’en-tête
Authorization
de votre demande. Dans l’exemple suivant, remplacezYOUR_JWT
par votre JWT.curl --request GET \ --url "http(s)://HOSTNAME/api/v3/app/installations" \ --header "Accept: application/vnd.+json" \ --header "Authorization: Bearer YOUR_JWT" \ --header "X--Api-Version: 2022-11-28"
Vous pouvez utiliser le SDK Octokit.js de pour vous authentifier en tant que App. L’un des avantages de l’utilisation du SDK pour vous authentifier est que vous n’avez pas besoin de générer vous-même un jeton web JSON (JWT). En outre, le SDK s’occupe de la régénération du JWT lorsqu’il expire.
Remarque
Vous devez installer et importer octokit
pour utiliser la bibliothèque Octokit.js. L’exemple suivant utilise des instructions import conformément à ES6. Pour plus d’informations sur les différentes méthodes d’installation et d’importation, consultez Usage dans le dépôt octokit/octokit.
Obtenez l’ID de votre application. Vous pouvez rechercher l’ID de l’application sur la page des paramètres de votre App. Pour plus d’informations sur la navigation vers la page des paramètres pour votre App, consultez « Modification d’une inscription d’application ».
Générez une clé privée. Pour plus d’informations, consultez « Gestion des clés privées pour les applications ».
Importez
App
depuisoctokit
.JavaScript import { App } from "octokit";
import { App } from "octokit";
Créez une nouvelle instance de
App
. Dans l’exemple suivant, remplacezAPP_ID
par une référence à l’ID de votre application. RemplacezPRIVATE_KEY
par une référence à la valeur de la clé privée de votre application.JavaScript const app = new App({ appId: APP_ID, privateKey: PRIVATE_KEY, });
const app = new App({ appId: APP_ID, privateKey: PRIVATE_KEY, });
Utilisez une méthode
octokit
pour effectuer une demande à un point de terminaison d’API REST qui nécessite un JWT. Par exemple :JavaScript await app.octokit.request("/app")
await app.octokit.request("/app")