ウィキAPI
GitLab 10.0で導入されました。
APIv4でのみ利用可能です。
wikiページ一覧
指定されたプロジェクトのすべてのwikiページを取得します。
GET /projects/:id/wikis
属性 | タイプ | 必須 | 説明 |
---|---|---|---|
id
| 整数/文字列 | はい | プロジェクトのIDまたはURLエンコードされたパス |
with_content
| ブーリアン | いいえ | ページの内容を含む |
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/wikis?with_content=1"
回答例
[
{
"content" : "Here is an instruction how to deploy this project.",
"format" : "markdown",
"slug" : "deploy",
"title" : "deploy"
},
{
"content" : "Our development process is described here.",
"format" : "markdown",
"slug" : "development",
"title" : "development"
},{
"content" : "* [Deploy](deploy)\n* [Development](development)",
"format" : "markdown",
"slug" : "home",
"title" : "home"
}
]
ウィキページの取得
指定されたプロジェクトのwikiページを取得します。
GET /projects/:id/wikis/:slug
属性 | タイプ | 必須 | 説明 |
---|---|---|---|
id
| 整数/文字列 | はい | プロジェクトのIDまたはURLエンコードされたパス |
slug
| 列 | はい | ウィキページのスラッグ (ユニークな文字列) |
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/wikis/home"
回答例
{
"content" : "home page",
"format" : "markdown",
"slug" : "home",
"title" : "home"
}
新しいウィキページの作成
与えられたリポジトリに対して、与えられたタイトル、スラッグ、内容で新しいwikiページを作成します。
POST /projects/:id/wikis
属性 | タイプ | 必須 | 説明 |
---|---|---|---|
id
| 整数/文字列 | はい | プロジェクトのIDまたはURLエンコードされたパス |
content
| 列 | はい | ウィキページの内容 |
title
| 列 | はい | ウィキページのタイトル |
format
| 列 | いいえ | ウィキページのフォーマット。利用可能なフォーマットは、markdown (デフォルト)、rdoc 、asciidoc 、およびorg
|
curl --data "format=rdoc&title=Hello&content=Hello world" --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/wikis"
回答例
{
"content" : "Hello world",
"format" : "markdown",
"slug" : "Hello",
"title" : "Hello"
}
既存のウィキページの編集
既存のwikiページを更新します。 wikiページを更新するには、少なくとも1つのパラメータが必要です。
PUT /projects/:id/wikis/:slug
属性 | タイプ | 必須 | 説明 |
---|---|---|---|
id
| 整数/文字列 | はい | プロジェクトのIDまたはURLエンコードされたパス |
content
| 列 | はいtitle が提供されない場合
| ウィキページの内容 |
title
| 列 | はいcontent が提供されない場合
| ウィキページのタイトル |
format
| 列 | いいえ | ウィキページのフォーマット。利用可能なフォーマットは、markdown (デフォルト)、rdoc 、asciidoc 、およびorg
|
slug
| 列 | はい | ウィキページのスラッグ (ユニークな文字列) |
curl --request PUT --data "format=rdoc&content=documentation&title=Docs" --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/wikis/foo"
回答例
{
"content" : "documentation",
"format" : "markdown",
"slug" : "Docs",
"title" : "Docs"
}
ウィキページの削除
指定されたスラッグを持つwikiページを削除します。
DELETE /projects/:id/wikis/:slug
属性 | タイプ | 必須 | 説明 |
---|---|---|---|
id
| 整数/文字列 | はい | プロジェクトのIDまたはURLエンコードされたパス |
slug
| 列 | はい | ウィキページのスラッグ (ユニークな文字列) |
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/wikis/foo"
成功した場合、HTTPステータスコードは204
、JSONレスポンスは期待されません。
wikiリポジトリへの添付ファイルのアップロード
wikiのリポジトリ内のattachmentフォルダにファイルをアップロードします。attachmentフォルダはuploads
。
POST /projects/:id/wikis/attachments
属性 | タイプ | 必須 | 説明 |
---|---|---|---|
id
| 整数/文字列 | はい | プロジェクトのIDまたはURLエンコードされたパス |
file
| 列 | はい | アップロードする添付ファイル |
branch
| 列 | いいえ | ブランチの名前。 デフォルトはwikiリポジトリのデフォルトブランチです。 |
ファイルシステムからファイルをアップロードするには、--form
引数を使用します。これにより、cURL はヘッダContent-Type: multipart/form-data
を使用してデータをポストします。file=
パラメータは、ファイルシステム上のファイルを指し、その前に@
を付ける必要があります。例えば、以下のようになります:
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" --form "file=@dk.png" "https://gitlab.example.com/api/v4/projects/1/wikis/attachments"
回答例
{
"file_name" : "dk.png",
"file_path" : "uploads/6a061c4cf9f1c28cb22c384b4b8d4e3c/dk.png",
"branch" : "master",
"link" : {
"url" : "uploads/6a061c4cf9f1c28cb22c384b4b8d4e3c/dk.png",
"markdown" : ""
}
}