# API de GitHub Docs

Utilisez l’API officielle GitHub Docs pour répertorier des pages, rechercher et récupérer GitHub du contenu de la documentation par programmation.

<!-- markdownlint-disable search-replace -->

GitHub Docs fournit plusieurs façons d’accéder au contenu de la documentation par programmation. Vous pouvez récupérer des articles individuels au format Markdown, répertorier toutes les pages disponibles, effectuer des recherches dans la documentation ou diriger des agents d’IA vers le fichier `llms.txt` pour la découverte de contenu.

## Point de terminaison d’article

Le point de terminaison Article retourne le contenu et les métadonnées Markdown de n’importe quelle GitHub Docs page. Il prend en charge tous les types de pages, notamment les articles standard, les pages de référence de l’API REST, les pages de référence GraphQL et les pages d’accueil.

Le point de terminaison de l’API Article accepte le paramètre de requête suivant :

* `pathname` (obligatoire) : chemin d’accès de l’article, y compris un préfixe de langue tel que `/en/` ou `/ja/`.
  * Par exemple : `/en/get-started/start-your-journey/what-is-github`.

En outre, `GET /api/article` et `GET /api/article/body` acceptez le paramètre de requête facultatif suivant :

* `apiVersion`: Pour les pages de référence de l’API REST, spécifie la version de l’API à utiliser. Par défaut, la dernière version est utilisée.

### Récupération du contenu de l’article

`GET https://docs.github.com/api/article/body` retourne le contenu complet de l’article en tant que Markdown.

```shell
curl "https://docs.github.com/api/article/body?pathname=/en/get-started/start-your-journey/what-is-github"
```

Pour accéder à un article avec version (par exemple, pour GitHub Enterprise Cloud), incluez la version dans le chemin d’accès :

```shell
curl "https://docs.github.com/api/article/body?pathname=/en/enterprise-cloud@latest/admin/overview/about-github-enterprise-cloud"
```

### Obtention des métadonnées d’article

`GET https://docs.github.com/api/article/meta` retourne les métadonnées relatives à un article au format JSON, y compris le titre, l’introduction, la zone de produit, le type de document et les barres de navigation.

```shell
curl "https://docs.github.com/api/article/meta?pathname=/en/get-started/start-your-journey/what-is-github"
```

### Obtention de contenu et de métadonnées ensemble

`GET https://docs.github.com/api/article` retourne les métadonnées et le corps de l’article dans une seule réponse JSON, combinant les résultats du corps et des points de terminaison meta.

```shell
curl "https://docs.github.com/api/article?pathname=/en/get-started/start-your-journey/what-is-github"
```

## Point de terminaison de la liste de pages

Le point de terminaison Pagelist retourne une liste de chaque chemin d’accès de page disponible pour une langue et une version de documentation donnée. Vous pouvez l’utiliser pour découvrir tous les articles, puis extraire des articles individuels avec le point de terminaison Article.

### Liste de toutes les pages

`GET https://docs.github.com/api/pagelist/:lang/:version` retourne une liste séparée par une nouvelle ligne de tous les chemins d’accès de page pour la langue et la version spécifiées.

```shell
curl "https://docs.github.com/api/pagelist/en/free-pro-team@latest"
```

#### Liste des langues

`GET https://docs.github.com/api/pagelist/languages` retourne tous les codes de langue disponibles en tant que JSON. Utilisez cette option pour rechercher des valeurs valides pour le `:lang` paramètre ci-dessus.

#### Liste des versions

`GET https://docs.github.com/api/pagelist/versions` retourne toutes les versions de documentation disponibles en tant que JSON, y compris GitHub Enterprise Server les numéros de version. Utilisez cette option pour rechercher des valeurs valides pour le `:version` paramètre ci-dessus.

## Point de terminaison de recherche

Le point de terminaison Search vous permet d’effectuer une recherche dans l’ensemble du contenu GitHub Docs. Elle retourne les résultats triés par pertinence, avec des mises en surbrillance et des métadonnées pour chaque page correspondante.

### Recherche dans le contenu de la documentation

`GET https://docs.github.com/api/search/v1` accepte les paramètres de requête suivants :

* `query` (obligatoire) : terme de recherche.
* `client_name` (requis pour les clients externes tels que `curl`: nom qui identifie votre client ou votre intégration.
* `version` (facultatif) : version de la documentation à rechercher. La valeur par défaut est `free-pro-team`. Les valeurs valides incluent `free-pro-team`, `enterprise-cloud`et GitHub Enterprise Server les numéros de version tels que `3.19`.
* `language` (facultatif) : langue à rechercher. La valeur par défaut est `en`.
* `page` (facultatif) : numéro de page pour les résultats paginés. La valeur par défaut est `1`.
* `size` (facultatif) : nombre de résultats par page, jusqu’à un maximum de `50`. La valeur par défaut est `10`.

```shell
curl "https://docs.github.com/api/search/v1?query=actions&client_name=docs-api-example&version=free-pro-team&language=en"
```

La réponse inclut un `meta` objet avec des informations sur le nombre total de correspondances et un `hits` tableau contenant les pages correspondantes avec des titres, des URL, des barres de navigation et des mises en surbrillance de contenu.

## `llms.txt` pour les agents IA

GitHub Docs publie un fichier `llms.txt` à l’adresse `https://docs.github.com/llms.txt`, conformément à la norme [`llms.txt`](https://llmstxt.org/). Ce fichier fournit une vue d’ensemble structurée du site de documentation, conçue pour être exploitée par les LLM et les outils alimentés par l’IA.

Si vous créez un agent ou un outil qui doit accéder GitHub Docs, `llms.txt` est le point de départ recommandé pour découvrir le contenu disponible et les points de terminaison d’API.

## Lectures complémentaires

* [Configuration du serveur MCP GitHub](/fr/copilot/how-tos/provide-context/use-mcp-in-your-ide/set-up-the-github-mcp-server)