wikiwiki official

WIKIWIKI 公開 REST API

0 コメント
views
1 フォロー

WIKIWIKI 公開 REST API

Web ブラウザを使わずに Wiki ページの読み書きを行うことができます。
プログラムの知識が必要です。

https://api.wikiwiki.jp/<wiki-name>/...

<wiki-name> 部分に操作対象の wiki の名前を指定します。

現在、限定のWIKIでの使用を許可しています。
ご希望の方は「お問い合わせフォーム」から
WIKIの管理者より、お問い合わせ下さい。

一般公開しました。コントロールパネルの各種設定からAPI使用の許可をしてください。New!

認証

POST https://api.wikiwiki.jp/<wiki-name>/auth

他の操作を行うためのトークンを得ることができます。

使用例

curl -X POST "https://api.wikiwiki.jp/<wiki-name>/auth" \
-H "Content-Type: application/json" \
-d "{\"password\": \"passw0rd\"}"

password フィールドのある JSON オブジェクトをリクエストボディに指定します。
Content-Type は application/json でなければなりません。
パスワードには管理者パスワードを使用します。
※サブ・パスワードは使用できません。

結果

{
  "status": "ok",
  "token": "eyJ0eXA..."
}

ページ一覧

GET https://api.wikiwiki.jp/<wiki-name>/pages

ページリストを取得します。

使用例

curl "https://api.wikiwiki.jp/<wiki-name>/pages" \
-H "Authorization: Bearer eyJ0eXA..."

/auth で得られた token フィールドの内容を Authorization ヘッダに Bearer で指定します。

結果

{
  "pages": [
    {
      "name": ":config",
      "timestamp": "2022-01-01T00:00:00+09:00"
    },
    {
      "name": "FrontPage",
      "timestamp": "2022-01-01T00:00:00+09:00"
    },
    ...
  ]
}

ページ取得

GET https://api.wikiwiki.jp/<wiki-name>/page/<page-name>

ページ内容を取得します。

使用例

curl "https://api.wikiwiki.jp/<wiki-name>/page/FrontPage" \
-H "Authorization: Bearer eyJ0eXA..."

/auth で得られた token フィールドの内容を Authorization ヘッダに Bearer で指定します。

結果

{
  "page": "FrontPage",
  "source": "TITLE:FrontPage(お好きなタイトルに変更して下さい)\n...",
  "timestamp": "2022-01-01T00:00:00+09:00"
}

ページ書き込み

PUT https://wikiwiki.jp/<wiki-name>/page/<page-name>

ページ内容を書き込みます。

使用例

curl -X PUT "https://api.wikiwiki.jp/<wiki-name>/page/TestPage" \
-H "Authorization: Bearer eyJ0eXA..." \
-H "Content-Type: application/json" \
-d "{\"source\": \"テストページです\"}"

/auth で得られた token フィールドの内容を Authorization ヘッダに Bearer で指定します。
source フィールドのある JSON オブジェクトをリクエストボディに指定します。
Content-Type は application/json でなければなりません。

結果

{
  "status": "ok"
}

レートリミット

ひとつの Wiki あたり 1 時間に 2000 回のオペレーションが上限です。
また 1 分間に 120 回を超えるペースでのオペレーションはできません。

レートリミットは Wiki への操作の合計回数にかかります。トークンあたりの回数ではないのでご注意ください。

できそうなこと

  • 記事の差分バックアップ
  • 記事のリストア
  • Googleスプレッドシートのデータから自動更新
  • 外部データからランキングを作成し自動更新
  • コメントからデータを集計して表を作成し自動更新
WIKIWIKI運営
作成: 2021/12/16 (木) 17:04:10
最終更新: 2022/01/05 (水) 16:00:43
通報 ...