成功時:
{
"data": { ... }
}エラー時:
{
"error": {
"code": "ERROR_CODE",
"message": "エラーメッセージ"
}
}一覧取得 API は以下のクエリパラメータをサポート:
| パラメータ | 型 | デフォルト | 説明 |
|---|---|---|---|
| limit | int | 20 | 取得件数(最大 100) |
| offset | int | 0 | オフセット |
レスポンス:
{
"data": [ ... ],
"pagination": {
"total": 100,
"limit": 20,
"offset": 0
}
}| 権限レベル | 説明 |
|---|---|
| Guest | ログインなしでアクセス可能(Auth 系エンドポイント等) |
| Optional | ログイン任意(ログイン有無で挙動が変わる) |
| Public | ログイン済みユーザーであれば誰でもアクセス可能 |
| Owner | 自身のリソースのみ操作可能 |
| Admin | 運営のみ操作可能 |
エンドポイント別権限:
| リソース | 参照 | 作成 | 更新 | 削除 |
|---|---|---|---|---|
| Auth(登録・ログイン) | - | Guest | - | - |
| Auth(トークンリフレッシュ) | - | Guest | - | - |
| Auth(ログアウト) | - | - | - | Owner |
| Auth(パスワード更新) | - | - | Owner | - |
| Users | Owner | - | Owner | Owner |
| Channels | Optional | Owner | Owner | Owner |
| Characters | Owner | Owner | Owner | Owner |
| BGMs | Owner | Owner | Owner | Owner |
| System BGMs | Public | Admin | Admin | Admin |
| Episodes | Optional | Owner | Owner | Owner |
| Script / ScriptLines | Owner | Owner | Owner | Owner |
| Likes | Owner | Owner | - | Owner |
| Playlists | Owner | Owner | Owner | Owner |
| Playback History | Owner | Owner | Owner | Owner |
| Follows | Owner | Owner | - | Owner |
| Audio(生成) | - | Owner | - | - |
| Audios(アップロード) | Owner | Owner | - | Owner |
| Images(アップロード) | Owner | Owner | - | Owner |
| Search | Public | - | - | - |
| Recommendations | Optional | - | - | - |
| Voices | Owner | Admin | Admin | Admin |
| Favorite Voices | - | Owner | - | Owner |
| Categories | Public | Admin | Admin | Admin |
| Admin(孤児メディア削除) | - | Admin | - | - |
チャンネルとエピソードには公開状態(publishedAt)があり、参照時のアクセス制御に影響する。
| エンドポイント | オーナー | 他ユーザー | 未認証 |
|---|---|---|---|
GET /channels |
- | 公開中のみ | 公開中のみ |
GET /channels/:channelId |
全て | 公開中のみ | 公開中のみ |
GET /channels/:channelId/episodes |
全て | 公開中のみ | 公開中のみ |
GET /channels/:channelId/episodes/:episodeId |
全て | 公開中のみ | 公開中のみ |
GET /search/channels |
- | 公開中のみ | 公開中のみ |
GET /search/episodes |
- | 公開中のみ | 公開中のみ |
GET /me/channels |
全て | - | - |
GET /me/channels/:channelId/episodes |
全て | - | - |
- 公開中:
publishedAt IS NOT NULL AND publishedAt <= NOW() - 非公開(下書き):
publishedAt IS NULL - 予約公開:
publishedAt > NOW()(将来的に対応可能)