RedmineのWiki REST APIでハマった話
RedmineのWiki APIでちょっとハマったのでメモ。
まず、Wiki APIの仕様についてはこちら。
http://www.redmine.org/projects/redmine/wiki/Rest_WikiPages
http://localhost:3000/projects/sandbox/wiki/Child.json
とかするとJSON形式のデータをとれます。こんなカンジ。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
{
"wiki_page": {
"title": "Child",
"parent": {
"title": "Parent"
},
"text": "# Child",
"version": 1,
"author": {
"id": 1,
"name": "Redmine Admin"
},
"comments": "",
"created_on": "2019-03-19T15:22:29Z",
"updated_on": "2019-03-19T15:22:29Z"
}
}
|
で、REST APIで親ページを Parent
から AnotherParent
に変えようと、以下のようなことをしてたんですが一向に変わりませんでした。
1
2
3
4
5
|
$ curl -s http://localhost:3000/projects/sandbox/wiki/Child.json \
-H "X-Redmine-API-Key: $REDMINE_KEY" \
-H "Content-Type: application/json" \
-X PUT \
-d '{"wiki_page":{"parent":{"title":"AnotherParent"},"text":"# Child"}}'
|
調べてたら Patch #14829: Patch for setting parent page via REST API - Redmine というIssueを発見。親ページは parent_title
というパラメータで取得してるっぽい。
そこで "parent":{"title":"AnotherParent"}
を "parent_title":"AnotherParent"
にしたところうまく更新できました。よかったよかった。
1
2
3
4
5
|
$ curl -s http://localhost:3000/projects/sandbox/wiki/Child.json \
-H "X-Redmine-API-Key: $REDMINE_KEY" \
-H "Content-Type: application/json" \
-X PUT \
-d '{"wiki_page":{"parent_title":"AnotherParent","text":"# Child"}}'
|
公式マニュアルがもう少し整備されているといいなーなんて思ったり。
あと、ツイートした内容ちょっと違ってました。すみません。