Files
Auto_Bangumi/docs/ja/api/index.md
Estrella Pan dfe66d279c docs: add Japanese documentation (#970)
Add complete Japanese translation for all documentation pages including:
- Home and about pages
- Deployment guides (Docker CLI, Docker Compose, DSM, Local)
- Configuration pages (RSS, Downloader, Parser, Notifier, Manager, Proxy, Experimental)
- Feature documentation (RSS Management, Bangumi, Calendar, Rename, Search)
- FAQ and troubleshooting
- API reference
- Changelogs (2.6, 3.0, 3.1, 3.2)
- Developer guide

Also updates VitePress config to add Japanese locale with full sidebar navigation.

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-27 21:06:38 +01:00

620 lines
11 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# REST APIリファレンス
AutoBangumiは`/api/v1`でREST APIを公開しています。すべてのエンドポイントログインとセットアップを除くはJWT認証が必要です。
**ベースURL:** `http://your-host:7892/api/v1`
**認証:** JWTトークンをCookieまたは`Authorization: Bearer <token>`ヘッダーとして含めてください。
**インタラクティブドキュメント:** 開発モードで実行している場合、Swagger UIは`http://your-host:7892/docs`で利用可能です。
---
## 認証
### ログイン
```
POST /auth/login
```
ユーザー名とパスワードで認証します。
**リクエストボディ:**
```json
{
"username": "string",
"password": "string"
}
```
**レスポンス:** JWTトークン付きの認証Cookieを設定します。
### トークンのリフレッシュ
```
GET /auth/refresh_token
```
現在の認証トークンをリフレッシュします。
### ログアウト
```
GET /auth/logout
```
認証Cookieをクリアしてログアウトします。
### 認証情報の更新
```
POST /auth/update
```
ユーザー名および/またはパスワードを更新します。
**リクエストボディ:**
```json
{
"username": "string",
"password": "string"
}
```
---
## Passkey / WebAuthn <Badge type="tip" text="v3.2+" />
WebAuthn/FIDO2 Passkeysを使用したパスワードレス認証。
### Passkeyの登録
```
POST /passkey/register/options
```
WebAuthn登録オプションチャレンジ、リライングパーティ情報を取得します。
```
POST /passkey/register/verify
```
ブラウザからのPasskey登録レスポンスを検証して保存します。
### Passkeyで認証
```
POST /passkey/auth/options
```
WebAuthn認証チャレンジオプションを取得します。
```
POST /passkey/auth/verify
```
Passkey認証レスポンスを検証し、JWTトークンを発行します。
### Passkeyの管理
```
GET /passkey/list
```
現在のユーザーの登録済みPasskeyをすべてリストします。
```
POST /passkey/delete
```
クレデンシャルIDで登録済みPasskeyを削除します。
---
## 設定
### 設定の取得
```
GET /config/get
```
現在のアプリケーション設定を取得します。
**レスポンス:** `program``downloader``rss_parser``bangumi_manager``notification``proxy``experimental_openai`セクションを含む完全な設定オブジェクト。
### 設定の更新
```
PATCH /config/update
```
アプリケーション設定を部分的に更新します。変更したいフィールドのみを含めてください。
**リクエストボディ:** 部分的な設定オブジェクト。
---
## 番組(アニメルール)
### すべての番組をリスト
```
GET /bangumi/get/all
```
すべてのアニメダウンロードルールを取得します。
### IDで番組を取得
```
GET /bangumi/get/{bangumi_id}
```
IDで特定のアニメルールを取得します。
### 番組の更新
```
PATCH /bangumi/update/{bangumi_id}
```
アニメルールのメタデータ(タイトル、シーズン、エピソードオフセットなど)を更新します。
### 番組の削除
```
DELETE /bangumi/delete/{bangumi_id}
```
単一のアニメルールと関連するトレントを削除します。
```
DELETE /bangumi/delete/many/
```
複数のアニメルールを一括削除します。
**リクエストボディ:**
```json
{
"bangumi_ids": [1, 2, 3]
}
```
### 番組の無効化 / 有効化
```
DELETE /bangumi/disable/{bangumi_id}
```
アニメルールを無効化します(ファイルは保持、ダウンロード停止)。
```
DELETE /bangumi/disable/many/
```
複数のアニメルールを一括無効化します。
```
GET /bangumi/enable/{bangumi_id}
```
以前に無効化されたアニメルールを再有効化します。
### ポスターのリフレッシュ
```
GET /bangumi/refresh/poster/all
```
すべてのアニメのポスター画像をTMDBからリフレッシュします。
```
GET /bangumi/refresh/poster/{bangumi_id}
```
特定のアニメのポスター画像をリフレッシュします。
### カレンダー
```
GET /bangumi/refresh/calendar
```
Bangumi.tvからアニメ放送カレンダーデータをリフレッシュします。
### すべてリセット
```
GET /bangumi/reset/all
```
すべてのアニメルールを削除します。注意して使用してください。
---
## RSSフィード
### すべてのフィードをリスト
```
GET /rss
```
設定されたすべてのRSSフィードを取得します。
### フィードの追加
```
POST /rss/add
```
新しいRSSフィード購読を追加します。
**リクエストボディ:**
```json
{
"url": "string",
"aggregate": true,
"parser": "mikan"
}
```
### フィードの有効化 / 無効化
```
POST /rss/enable/many
```
複数のRSSフィードを有効化します。
```
PATCH /rss/disable/{rss_id}
```
単一のRSSフィードを無効化します。
```
POST /rss/disable/many
```
複数のRSSフィードを一括無効化します。
### フィードの削除
```
DELETE /rss/delete/{rss_id}
```
単一のRSSフィードを削除します。
```
POST /rss/delete/many
```
複数のRSSフィードを一括削除します。
### フィードの更新
```
PATCH /rss/update/{rss_id}
```
RSSフィードの設定を更新します。
### フィードのリフレッシュ
```
GET /rss/refresh/all
```
すべてのRSSフィードのリフレッシュを手動でトリガーします。
```
GET /rss/refresh/{rss_id}
```
特定のRSSフィードをリフレッシュします。
### フィードからトレントを取得
```
GET /rss/torrent/{rss_id}
```
特定のRSSフィードから解析されたトレントのリストを取得します。
### 分析と購読
```
POST /rss/analysis
```
RSS URLを分析し、購読せずにアニメのメタデータを抽出します。
**リクエストボディ:**
```json
{
"url": "string"
}
```
```
POST /rss/collect
```
RSSフィードからすべてのエピソードをダウンロードします完結したアニメ用
```
POST /rss/subscribe
```
自動継続ダウンロード用にRSSフィードを購読します。
---
## 検索
### 番組検索Server-Sent Events
```
GET /search/bangumi?keyword={keyword}&provider={provider}
```
アニメのトレントを検索します。リアルタイム更新のためにServer-Sent EventsSSEストリームとして結果を返します。
**クエリパラメータ:**
- `keyword` — 検索キーワード
- `provider` — 検索プロバイダー(例:`mikan``nyaa``dmhy`
**レスポンス:** 解析された検索結果を含むSSEストリーム。
### 検索プロバイダーのリスト
```
GET /search/provider
```
利用可能な検索プロバイダーのリストを取得します。
---
## プログラム制御
### ステータスの取得
```
GET /status
```
バージョン、実行状態、first_runフラグを含むプログラムステータスを取得します。
**レスポンス:**
```json
{
"status": "running",
"version": "3.2.0",
"first_run": false
}
```
### プログラムの開始
```
GET /start
```
メインプログラムRSSチェック、ダウンロード、リネームを開始します。
### プログラムの再起動
```
GET /restart
```
メインプログラムを再起動します。
### プログラムの停止
```
GET /stop
```
メインプログラムを停止しますWebUIはアクセス可能なまま
### シャットダウン
```
GET /shutdown
```
アプリケーション全体をシャットダウンしますDockerコンテナを再起動します
### ダウンローダーのチェック
```
GET /check/downloader
```
設定されたダウンローダーqBittorrentへの接続をテストします。
---
## ダウンローダー管理 <Badge type="tip" text="v3.2+" />
AutoBangumiから直接ダウンローダー内のトレントを管理します。
### トレントのリスト
```
GET /downloader/torrents
```
Bangumiカテゴリ内のすべてのトレントを取得します。
### トレントの一時停止
```
POST /downloader/torrents/pause
```
ハッシュでトレントを一時停止します。
**リクエストボディ:**
```json
{
"hashes": ["hash1", "hash2"]
}
```
### トレントの再開
```
POST /downloader/torrents/resume
```
ハッシュで一時停止したトレントを再開します。
**リクエストボディ:**
```json
{
"hashes": ["hash1", "hash2"]
}
```
### トレントの削除
```
POST /downloader/torrents/delete
```
オプションでファイル削除を伴うトレントを削除します。
**リクエストボディ:**
```json
{
"hashes": ["hash1", "hash2"],
"delete_files": false
}
```
---
## セットアップウィザード <Badge type="tip" text="v3.2+" />
これらのエンドポイントは、初回実行セットアップ中(セットアップ完了前)にのみ利用可能です。認証は**不要**です。セットアップ完了後、すべてのエンドポイントは`403 Forbidden`を返します。
### セットアップステータスの確認
```
GET /setup/status
```
セットアップウィザードが必要かどうか(初回実行)を確認します。
**レスポンス:**
```json
{
"need_setup": true
}
```
### ダウンローダー接続のテスト
```
POST /setup/test-downloader
```
提供された認証情報でダウンローダーへの接続をテストします。
**リクエストボディ:**
```json
{
"type": "qbittorrent",
"host": "172.17.0.1:8080",
"username": "admin",
"password": "adminadmin",
"ssl": false
}
```
### RSSフィードのテスト
```
POST /setup/test-rss
```
RSS URLがアクセス可能で解析可能か検証します。
**リクエストボディ:**
```json
{
"url": "https://mikanime.tv/RSS/MyBangumi?token=xxx"
}
```
### 通知のテスト
```
POST /setup/test-notification
```
提供された設定でテスト通知を送信します。
**リクエストボディ:**
```json
{
"type": "telegram",
"token": "bot_token",
"chat_id": "chat_id"
}
```
### セットアップの完了
```
POST /setup/complete
```
すべての設定を保存し、セットアップを完了としてマークします。センチネルファイル`config/.setup_complete`を作成します。
**リクエストボディ:** 完全な設定オブジェクト。
---
## ログ
### ログの取得
```
GET /log
```
完全なアプリケーションログファイルを取得します。
### ログのクリア
```
GET /log/clear
```
ログファイルをクリアします。
---
## レスポンス形式
すべてのAPIレスポンスは一貫した形式に従います
```json
{
"msg_en": "Success message in English",
"msg_zh": "Success message in Chinese",
"status": true
}
```
エラーレスポンスには、両方の言語でのエラーメッセージとともに適切なHTTPステータスコード400、401、403、404、500が含まれます。