Skip to main content

GitHub Docs API

公式の GitHub Docs API を使用して、プログラムによってページの一覧表示、検索、ドキュメント コンテンツ GitHub 取得します。

GitHub Docs には、プログラムを使用してドキュメント コンテンツにアクセスするいくつかの方法が用意されています。 個々の記事を Markdown として取得したり、使用可能なすべてのページを一覧表示したり、ドキュメント全体を検索したり、AI エージェントを llms.txt ファイルにポイントしてコンテンツを検出したりできます。

記事エンドポイント

Article エンドポイントは、 GitHub Docs ページの Markdown コンテンツとメタデータを返します。 標準記事、REST API リファレンス ページ、GraphQL 参照ページ、ランディング ページなど、すべてのページの種類がサポートされています。

Article エンドポイントは、次のクエリ パラメーターを受け入れます。

  • pathname (必須): /en//ja/などの言語プレフィックスを含む記事のパス。
    • たとえば、「 /en/get-started/start-your-journey/about-github-and-git 」のように入力します。

さらに、 GET /api/articleGET /api/article/body は、次の省略可能なクエリ パラメーターを受け入れます。

  • apiVersion: REST API リファレンス ページの場合は、使用する API バージョンを指定します。 デフォルトは最新バージョンです。

記事のコンテンツを取得する

GET https://docs.github.com/api/article/body は、記事の内容全体を Markdown として返します。

curl "https://docs.github.com/api/article/body?pathname=/en/get-started/start-your-journey/about-github-and-git"

バージョン管理された記事 ( GitHub Enterprise Cloud など) にアクセスするには、パスにバージョンを含めます。

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

記事のメタデータの取得

GET https://docs.github.com/api/article/meta は、タイトル、概要、製品領域、ドキュメントの種類、階層リンクなど、記事に関するメタデータを JSON として返します。

curl "https://docs.github.com/api/article/meta?pathname=/en/get-started/start-your-journey/about-github-and-git"

コンテンツとメタデータを一緒に取得する

GET https://docs.github.com/api/article は、メタデータとアーティクル本文の両方を単一の JSON 応答で返し、本文とメタ エンドポイントの結果を組み合わせたものになります。

curl "https://docs.github.com/api/article?pathname=/en/get-started/start-your-journey/about-github-and-git"

ページリスト エンドポイント

Pagelist エンドポイントは、特定の言語およびドキュメント バージョンで使用可能なすべてのページ パスの一覧を返します。 これを使ってすべての記事を見つけた後、Article エンドポイントを使用して個々の記事を取得できます。

すべてのページを一覧表示する

GET https://docs.github.com/api/pagelist/:lang/:version は、指定した言語とバージョンのすべてのページ パスの改行区切りのリストを返します。

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

言語の一覧

GET https://docs.github.com/api/pagelist/languages は、使用可能なすべての言語コードを JSON として返します。 これを使用して、上記の :lang パラメーターの有効な値を検索します。

バージョンの一覧

GET https://docs.github.com/api/pagelist/versions は、使用可能なすべてのドキュメント バージョンを JSON として返します ( GitHub Enterprise Server バージョン番号を含む)。 これを使用して、上記の :version パラメーターの有効な値を検索します。

検索エンドポイント

検索エンドポイントを使用すると、すべての GitHub Docs コンテンツを検索できます。 一致する各ページの強調表示とメタデータを使用して、関連性で並べ替えられた結果が返されます。

ドキュメント コンテンツの検索

GET https://docs.github.com/api/search/v1 は、次のクエリ パラメーターを受け取ります。

  • query (必須): 検索用語。
  • client_name ( curlなどの外部クライアントに必要): クライアントまたは統合を識別する名前。
  • version (省略可能): 検索するドキュメントのバージョン。 既定値は free-pro-team です。 有効な値には、free-pro-teamenterprise-cloud、GitHub Enterprise Serverなどの3.19バージョン番号が含まれます。
  • language (省略可能): 検索する言語。 既定値は en です。
  • page (省略可能): ページ分割された結果のページ番号。 既定値は 1 です。
  • size (省略可能): ページあたりの結果の数 (最大 50)。 既定値は 10 です。
curl "https://docs.github.com/api/search/v1?query=actions&client_name=docs-api-example&version=free-pro-team&language=en"

応答には、一致の合計数に関する情報を含む meta オブジェクトと、タイトル、URL、階層リンク、およびコンテンツが強調表示された一致するページを含む hits 配列が含まれます。

llms.txt AI エージェント向け

GitHub Docsは、llms.txt標準に従って、https://docs.github.com/llms.txtllms.txt ファイルを発行します。 このファイルは、LLM と AI を利用したツールで使用するために設計されたドキュメント サイトの構造化された概要を提供します。

GitHub Docsにアクセスする必要があるエージェントまたはツールを構築する場合は、llms.txtが、使用可能なコンテンツと API エンドポイントを検出するための推奨される開始点です。

詳細については、次を参照してください。