{"openapi": "3.0.3", "info": {"title": "Kotone TTS", "version": "1", "description": "Discord \u3067\u30ed\u30b0\u30a4\u30f3\u3057\u3001\u767a\u884c\u3055\u308c\u305f\u4e00\u6642 Token \u3092 `Authorization: Bearer <token>` \u30d8\u30c3\u30c0\u306b\u4ed8\u3051\u3066\u547c\u3076\u3002Token \u306f BOT \u3092\u518d\u8d77\u52d5\u3059\u308b\u3068\u5931\u52b9\u3059\u308b\u3002"}, "components": {"securitySchemes": {"bearer": {"type": "http", "scheme": "bearer"}}, "schemas": {"TokenResponse": {"type": "object", "properties": {"token": {"type": "string", "description": "\u4ee5\u5f8c `Authorization: Bearer <token>` \u3067\u9001\u308b\u4e00\u6642 Token"}, "token_type": {"type": "string", "example": "Bearer"}, "expires_in": {"type": "integer", "description": "\u6709\u52b9\u671f\u9650\u307e\u3067\u306e\u79d2\u6570"}, "user": {"$ref": "#/components/schemas/User"}}}, "User": {"type": "object", "properties": {"id": {"type": "string", "description": "Discord \u30e6\u30fc\u30b6 ID (\u6587\u5b57\u5217)"}, "username": {"type": "string"}, "global_name": {"type": "string", "nullable": true, "description": "\u8868\u793a\u540d"}, "avatar": {"type": "string", "format": "uri", "description": "\u30a2\u30d0\u30bf\u30fc\u753b\u50cf URL"}}}, "Guild": {"type": "object", "properties": {"id": {"type": "string", "description": "\u30b5\u30fc\u30d0\u30fc ID (\u6587\u5b57\u5217)"}, "name": {"type": "string"}, "icon": {"type": "string", "format": "uri", "nullable": true, "description": "\u30a2\u30a4\u30b3\u30f3 URL\u3002\u672a\u8a2d\u5b9a\u306a\u3089 null"}, "can_manage": {"type": "boolean", "description": "\u5229\u7528\u8005\u304c\u300c\u30b5\u30fc\u30d0\u306e\u7ba1\u7406\u300d\u6a29\u9650\u3092\u6301\u3064\u304b (= \u8a2d\u5b9a\u3092\u5909\u66f4\u3067\u304d\u308b\u304b)"}}}, "Settings": {"type": "object", "description": "\u30b5\u30fc\u30d0\u30fc\u8a2d\u5b9a\u3002/settings \u30d1\u30cd\u30eb\u3068\u540c\u3058\u9805\u76ee", "properties": {"default_speaker": {"type": "string", "description": "\u65e2\u5b9a\u306e\u8a71\u8005 ID (options.speakers \u304b\u3089)"}, "max_chars": {"type": "integer", "description": "1\u30e1\u30c3\u30bb\u30fc\u30b8\u3067\u8aad\u3080\u4e0a\u9650 (1\u301c500)"}, "read_name": {"type": "boolean", "description": "\u540d\u524d\u3092\u8aad\u3080"}, "read_join_leave": {"type": "boolean", "description": "\u5165\u9000\u5ba4\u3092\u8aad\u3080"}, "use_global_dict": {"type": "boolean", "description": "\u30b0\u30ed\u30fc\u30d0\u30eb\u8f9e\u66f8\u3092\u4f7f\u3046"}, "auto_join": {"type": "boolean", "description": "\u81ea\u52d5\u5165\u5ba4\u3002true \u306b\u3059\u308b\u306b\u306f auto_join_map \u306b VC \u304c1\u3064\u306f\u8981\u308b"}, "auto_join_map": {"type": "object", "additionalProperties": {"type": "string"}, "description": "{BOT \u306e\u30e6\u30fc\u30b6 ID: \u81ea\u52d5\u5165\u5ba4\u3059\u308b VC \u306e ID}\u3002PATCH \u3067\u306f\u5168\u4f53\u3092\u7f6e\u304d\u63db\u3048\u308b\u3002\u540c\u3058 VC \u30922\u3064\u306e BOT \u306b\u5272\u308a\u5f53\u3066\u3089\u308c\u306a\u3044", "example": {"1534536028453470370": "123456789012345678"}}, "auto_read_map": {"type": "object", "additionalProperties": {"type": "string"}, "description": "{BOT \u306e\u30e6\u30fc\u30b6 ID: \u81ea\u52d5\u5165\u5ba4\u6642\u306b\u8aad\u307f\u4e0a\u3052\u308b\u30c1\u30e3\u30f3\u30cd\u30eb\u306e ID}\u3002\u7121\u3044 BOT \u306f\u53c2\u52a0\u3057\u305f VC \u306e\u30c1\u30e3\u30c3\u30c8\u3092\u8aad\u3080\u3002PATCH \u3067\u306f\u5168\u4f53\u3092\u7f6e\u304d\u63db\u3048\u308b (\u5024 null \u306f\u305d\u306e BOT \u3092 VC \u306e\u30c1\u30e3\u30c3\u30c8\u306b\u623b\u3059)\u3002auto_join_map \u3067 VC \u3092\u5272\u308a\u5f53\u3066\u305f BOT \u306b\u3060\u3051\u4ed8\u3051\u3089\u308c\u308b", "example": {"1534536028453470370": "234567890123456789"}}, "unassigned_auto_join_channel_ids": {"type": "array", "items": {"type": "string"}, "description": "\u8aad\u307f\u53d6\u308a\u5c02\u7528\u3002\u65e7\u5f62\u5f0f\u3067\u6b8b\u308b \u00ab\u62c5\u5f53\u306a\u3057\u00bb \u306e VC (\u7a7a\u3044\u3066\u3044\u308b BOT \u304c\u5165\u308b)"}, "dict_edit_mode": {"type": "string", "enum": ["admin", "role", "everyone"], "description": "\u30b5\u30fc\u30d0\u30fc\u8f9e\u66f8\u3092\u8ab0\u304c\u7de8\u96c6\u3067\u304d\u308b\u304b"}, "dict_edit_role_id": {"type": "string", "nullable": true, "description": "dict_edit_mode=role \u306e\u3068\u304d\u306e\u30ed\u30fc\u30eb\u3002\u6307\u5b9a\u3059\u308b\u3068 mode \u3082 role \u306b\u306a\u308b"}}}, "SettingsView": {"type": "object", "properties": {"settings": {"$ref": "#/components/schemas/Settings"}, "bans": {"type": "array", "description": "\u8aad\u307f\u4e0a\u3052BAN \u4e2d\u306e\u5229\u7528\u8005", "items": {"type": "object", "properties": {"id": {"type": "string"}, "name": {"type": "string", "nullable": true}}}}, "options": {"type": "object", "description": "\u753b\u9762\u3092\u7d44\u3080\u305f\u3081\u306e\u9078\u629e\u80a2", "properties": {"speakers": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "string"}, "name": {"type": "string"}}}}, "bots": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "string"}, "name": {"type": "string"}, "is_main": {"type": "boolean"}}}}, "channels": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "string"}, "name": {"type": "string"}, "type": {"type": "string", "enum": ["voice", "stage", "text"]}, "category": {"type": "string", "nullable": true}}}}, "roles": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "string"}, "name": {"type": "string"}, "color": {"type": "integer"}}}}, "dict_edit_modes": {"type": "object", "additionalProperties": {"type": "string"}, "description": "\u30e2\u30fc\u30c9 ID \u2192 \u8868\u793a\u540d"}}}}}, "DictEntry": {"type": "object", "properties": {"pattern": {"type": "string", "description": "\u8aad\u307f\u65b9\u3092\u76f4\u3057\u305f\u3044\u8a9e (200\u6587\u5b57\u307e\u3067)\u3002\u540c\u3058 pattern \u3092\u9001\u308b\u3068\u4e0a\u66f8\u304d"}, "replacement": {"type": "string", "description": "\u8aad\u307f\u65b9 (200\u6587\u5b57\u307e\u3067)"}, "is_regex": {"type": "boolean", "description": "\u6b63\u898f\u8868\u73fe\u3068\u3057\u3066\u6271\u3046 (\u65e2\u5b9a false)\u3002\u5371\u967a\u306a\u30d1\u30bf\u30fc\u30f3\u306f 400"}, "created_by": {"type": "string", "nullable": true, "description": "\u767b\u9332\u3057\u305f\u4eba\u306e\u30e6\u30fc\u30b6 ID (\u5fdc\u7b54\u306e\u307f)"}, "created_at": {"type": "string", "nullable": true, "description": "\u767b\u9332\u65e5\u6642 ISO 8601 (\u5fdc\u7b54\u306e\u307f)"}}}, "Error": {"type": "object", "properties": {"error": {"type": "string"}}}}}, "paths": {"/auth/login": {"get": {"summary": "Discord \u306e\u30ed\u30b0\u30a4\u30f3\u753b\u9762\u3078\u8ee2\u9001\u3059\u308b", "description": "\u30d6\u30e9\u30a6\u30b6\u3067\u3053\u306e URL \u3092\u958b\u304f\u3002\u8a8d\u53ef\u5f8c `/auth/callback` \u306b\u623b\u308b\u3002`redirect_uri` \u3092\u4ed8\u3051\u308b\u3068\u3001callback \u306f JSON \u3067\u306f\u306a\u304f\u305d\u306e URL \u3078 `#token=\u2026&token_type=Bearer&expires_in=\u2026` \u3092\u4ed8\u3051\u3066 302 \u3067\u623b\u3059 (\u8a31\u53ef\u30ea\u30b9\u30c8\u306b\u3042\u308b URL \u3060\u3051\u30fb\u5b8c\u5168\u4e00\u81f4)\u3002", "parameters": [{"name": "redirect_uri", "in": "query", "required": false, "schema": {"type": "string", "format": "uri"}, "description": "\u30ed\u30b0\u30a4\u30f3\u5f8c\u306e\u623b\u308a\u5148\u3002\u8a31\u53ef\u30ea\u30b9\u30c8\u306b\u3042\u308b URL \u306e\u307f"}], "responses": {"302": {"description": "Discord \u306e\u8a8d\u53ef\u753b\u9762\u3078"}, "400": {"description": "redirect_uri \u304c\u8a31\u53ef\u30ea\u30b9\u30c8\u306b\u7121\u3044", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}}}, "/auth/callback": {"get": {"summary": "Discord \u304b\u3089\u306e\u623b\u308a\u5148\u3002\u4e00\u6642 Token \u3092\u767a\u884c\u3057\u3066\u8fd4\u3059", "description": "`/auth/login` \u306b `redirect_uri` \u3092\u4ed8\u3051\u3066\u3044\u305f\u5834\u5408\u306f JSON \u3067\u306f\u306a\u304f\u3001\u305d\u306e URL \u3078 `#token=\u2026` \u3092\u4ed8\u3051\u3066 302 \u3067\u623b\u3059\u3002\u8a8d\u53ef\u753b\u9762\u3067\u30ad\u30e3\u30f3\u30bb\u30eb\u3055\u308c\u305f\u7b49 (`error=`) \u306e\u3068\u304d\u306f code \u306e\u4ea4\u63db\u3092\u305b\u305a\u3001\u623b\u308a\u5148\u3078 `?error=<code>` \u3092\u4ed8\u3051\u3066 302 \u3067\u623b\u3059 (code \u306f `access_denied` \u306a\u3069 OAuth2 \u306e\u65e2\u77e5\u306e\u5024\u3060\u3051\u3002\u305d\u308c\u4ee5\u5916\u306f `error` \u306b\u6f70\u3059\u3002\u623b\u308a\u5148\u304c\u7121\u3051\u308c\u3070 400 \u306e JSON)\u3002", "parameters": [{"name": "code", "in": "query", "required": false, "schema": {"type": "string"}}, {"name": "state", "in": "query", "required": true, "schema": {"type": "string"}}, {"name": "error", "in": "query", "required": false, "schema": {"type": "string"}, "description": "Discord \u304c\u8a8d\u53ef\u3092\u62d2\u5426\u3057\u305f\u3068\u304d\u306b\u4ed8\u304f"}], "responses": {"200": {"description": "\u767a\u884c\u3055\u308c\u305f Token (redirect_uri \u7121\u3057\u306e\u3068\u304d)", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/TokenResponse"}}}}, "302": {"description": "redirect_uri \u3078\u623b\u3059\u3002\u6210\u529f\u306a\u3089 `#token=\u2026&token_type=Bearer&expires_in=\u2026`\u3001\u62d2\u5426\u306a\u3089 `?error=access_denied` \u7b49"}, "400": {"description": "state \u304c\u4e0d\u6b63\u3001\u307e\u305f\u306f Discord \u304c code \u3092\u62d2\u5426", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}}}, "/auth/logout": {"post": {"summary": "Token \u3092\u5931\u52b9\u3055\u305b\u308b", "security": [{"bearer": []}], "responses": {"204": {"description": "\u5931\u52b9\u3057\u305f (\u5143\u304b\u3089\u7121\u52b9\u3067\u3082 204)"}}}}, "/info": {"get": {"summary": "\u30ed\u30b0\u30a4\u30f3\u4e2d\u306e\u5229\u7528\u8005\u3068\u3001BOT \u3082\u5165\u3063\u3066\u3044\u308b\u30b5\u30fc\u30d0\u30fc\u4e00\u89a7", "description": "\u5229\u7528\u8005\u304c\u53c2\u52a0\u3057\u3066\u3044\u308b\u30b5\u30fc\u30d0\u30fc\u306e\u3046\u3061\u3001\u3053\u306e BOT \u304c\u5165\u3063\u3066\u3044\u308b\u3082\u306e\u3060\u3051\u3092\u8fd4\u3059\u3002", "security": [{"bearer": []}], "responses": {"200": {"description": "\u5229\u7528\u8005\u3068\u30b5\u30fc\u30d0\u30fc", "content": {"application/json": {"schema": {"type": "object", "properties": {"user": {"$ref": "#/components/schemas/User"}, "guilds": {"type": "array", "items": {"$ref": "#/components/schemas/Guild"}}}}}}}, "401": {"description": "Token \u304c\u7121\u3044\u30fb\u671f\u9650\u5207\u308c\u30fbDiscord \u5074\u3067\u5931\u52b9", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "502": {"description": "Discord API \u306b\u5230\u9054\u3067\u304d\u306a\u3044", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}}}, "/guilds/{guild_id}/settings": {"get": {"summary": "\u30b5\u30fc\u30d0\u30fc\u8a2d\u5b9a\u3092\u53d6\u5f97\u3059\u308b", "description": "\u300c\u30b5\u30fc\u30d0\u306e\u7ba1\u7406\u300d\u6a29\u9650\u3092\u6301\u3064\u30b5\u30fc\u30d0\u30fc\u3060\u3051\u3002BOT \u304c\u5165\u3063\u3066\u3044\u306a\u3044\u30fb\u5229\u7528\u8005\u304c\u5c45\u306a\u3044\u30b5\u30fc\u30d0\u30fc\u306f 404\u3002", "security": [{"bearer": []}], "parameters": [{"name": "guild_id", "in": "path", "required": true, "schema": {"type": "string"}}], "responses": {"200": {"description": "\u8a2d\u5b9a\u3068\u9078\u629e\u80a2", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SettingsView"}}}}, "401": {"description": "\u672a\u30ed\u30b0\u30a4\u30f3", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "403": {"description": "\u300c\u30b5\u30fc\u30d0\u306e\u7ba1\u7406\u300d\u6a29\u9650\u304c\u7121\u3044", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "\u30b5\u30fc\u30d0\u30fc\u304c\u898b\u3064\u304b\u3089\u306a\u3044", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}}, "patch": {"summary": "\u30b5\u30fc\u30d0\u30fc\u8a2d\u5b9a\u3092\u5909\u66f4\u3059\u308b (\u90e8\u5206\u66f4\u65b0)", "description": "\u5909\u3048\u305f\u3044\u9805\u76ee\u3060\u3051\u3092 JSON \u3067\u9001\u308b\u3002ID \u306f\u6587\u5b57\u5217\u3067\u3082\u6574\u6570\u3067\u3082\u53ef\u3002\u77e5\u3089\u306a\u3044\u30ad\u30fc\u306f 400\u3002auto_join_map / auto_read_map \u306f\u5168\u4f53\u306e\u7f6e\u304d\u63db\u3048\u3002\u691c\u8a3c\u306b\u901a\u3089\u306a\u3051\u308c\u3070\u4f55\u3082\u4fdd\u5b58\u305b\u305a 400 \u3067\u7406\u7531\u3092\u8fd4\u3059\u3002", "security": [{"bearer": []}], "parameters": [{"name": "guild_id", "in": "path", "required": true, "schema": {"type": "string"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Settings"}}}}, "responses": {"200": {"description": "\u66f4\u65b0\u5f8c\u306e\u8a2d\u5b9a (GET \u3068\u540c\u3058\u5f62)", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SettingsView"}}}}, "400": {"description": "\u5165\u529b\u304c\u4e0d\u6b63 (\u7406\u7531\u306f error \u306b)", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "401": {"description": "\u672a\u30ed\u30b0\u30a4\u30f3"}, "403": {"description": "\u300c\u30b5\u30fc\u30d0\u306e\u7ba1\u7406\u300d\u6a29\u9650\u304c\u7121\u3044"}, "404": {"description": "\u30b5\u30fc\u30d0\u30fc\u304c\u898b\u3064\u304b\u3089\u306a\u3044"}}}}, "/guilds/{guild_id}/bans/{user_id}": {"put": {"summary": "\u8aad\u307f\u4e0a\u3052BAN \u306b\u8ffd\u52a0\u3059\u308b", "description": "\u305d\u306e\u4eba\u306e\u767a\u8a00\u3092\u3053\u306e\u30b5\u30fc\u30d0\u30fc\u3067\u8aad\u307f\u4e0a\u3052\u306a\u304f\u3059\u308b\u3002BOT \u306f\u767b\u9332\u3067\u304d\u306a\u3044 (\u3082\u3068\u3082\u3068\u8aad\u307e\u306a\u3044)\u3002", "security": [{"bearer": []}], "parameters": [{"name": "guild_id", "in": "path", "required": true, "schema": {"type": "string"}}, {"name": "user_id", "in": "path", "required": true, "schema": {"type": "string"}}], "responses": {"204": {"description": "\u767b\u9332\u3057\u305f"}, "400": {"description": "BOT \u3092\u6307\u5b9a\u3057\u305f\u7b49"}, "401": {"description": "\u672a\u30ed\u30b0\u30a4\u30f3"}, "403": {"description": "\u6a29\u9650\u304c\u7121\u3044"}, "404": {"description": "\u30b5\u30fc\u30d0\u30fc\u304c\u898b\u3064\u304b\u3089\u306a\u3044"}}}, "delete": {"summary": "\u8aad\u307f\u4e0a\u3052BAN \u3092\u89e3\u9664\u3059\u308b", "security": [{"bearer": []}], "parameters": [{"name": "guild_id", "in": "path", "required": true, "schema": {"type": "string"}}, {"name": "user_id", "in": "path", "required": true, "schema": {"type": "string"}}], "responses": {"204": {"description": "\u89e3\u9664\u3057\u305f (\u5143\u304b\u3089\u7121\u304f\u3066\u3082 204)"}, "401": {"description": "\u672a\u30ed\u30b0\u30a4\u30f3"}, "403": {"description": "\u6a29\u9650\u304c\u7121\u3044"}, "404": {"description": "\u30b5\u30fc\u30d0\u30fc\u304c\u898b\u3064\u304b\u3089\u306a\u3044"}}}}, "/guilds/{guild_id}/members": {"get": {"summary": "\u30e1\u30f3\u30d0\u30fc\u3092\u540d\u524d\u3067\u691c\u7d22\u3059\u308b (\u8aad\u307f\u4e0a\u3052BAN \u306b\u8ffd\u52a0\u3059\u308b\u4eba\u3092\u63a2\u3059\u7528)", "description": "\u30e6\u30fc\u30b6\u540d\u307e\u305f\u306f\u30cb\u30c3\u30af\u30cd\u30fc\u30e0\u306e **\u524d\u65b9\u4e00\u81f4** (Discord \u306e\u5236\u7d04\u3067\u90e8\u5206\u4e00\u81f4\u306f\u4e0d\u53ef)\u3002ID \u3092\u6e21\u3059\u3068 ID \u3067\u5f15\u304f\u3002", "security": [{"bearer": []}], "parameters": [{"name": "guild_id", "in": "path", "required": true, "schema": {"type": "string"}}, {"name": "q", "in": "query", "required": true, "schema": {"type": "string"}, "description": "\u540d\u524d\u306e\u5148\u982d\u3001\u307e\u305f\u306f \u30e6\u30fc\u30b6 ID"}, {"name": "limit", "in": "query", "required": false, "schema": {"type": "integer", "default": 25}, "description": "5\u301c100"}], "responses": {"200": {"description": "\u4e00\u81f4\u3057\u305f\u30e1\u30f3\u30d0\u30fc", "content": {"application/json": {"schema": {"type": "object", "properties": {"members": {"type": "array", "items": {"type": "object", "properties": {"id": {"type": "string"}, "name": {"type": "string", "description": "\u8868\u793a\u540d (\u30cb\u30c3\u30af\u30cd\u30fc\u30e0\u512a\u5148)"}, "username": {"type": "string"}, "avatar": {"type": "string", "format": "uri", "nullable": true}, "bot": {"type": "boolean", "description": "BOT \u306f BAN \u306b\u767b\u9332\u3067\u304d\u306a\u3044"}}}}}}}}}, "400": {"description": "q \u304c\u7a7a"}, "401": {"description": "\u672a\u30ed\u30b0\u30a4\u30f3"}, "403": {"description": "\u6a29\u9650\u304c\u7121\u3044"}, "404": {"description": "\u30b5\u30fc\u30d0\u30fc\u304c\u898b\u3064\u304b\u3089\u306a\u3044"}, "502": {"description": "Discord \u304b\u3089\u53d6\u5f97\u3067\u304d\u306a\u3044"}}}}, "/guilds/{guild_id}/dictionary": {"get": {"summary": "\u30b5\u30fc\u30d0\u30fc\u8f9e\u66f8\u306e\u4e00\u89a7", "description": "\u305d\u306e\u30b5\u30fc\u30d0\u30fc\u306b\u5c45\u308b\u4eba\u306a\u3089\u8ab0\u3067\u3082\u898b\u3089\u308c\u308b\u3002`can_edit` \u3067\u81ea\u5206\u304c\u7de8\u96c6\u3067\u304d\u308b\u304b\u304c\u5206\u304b\u308b (/settings \u306e\u8f9e\u66f8\u7de8\u96c6\u6a29\u9650\u306b\u5f93\u3046)\u3002", "security": [{"bearer": []}], "parameters": [{"name": "guild_id", "in": "path", "required": true, "schema": {"type": "string"}}], "responses": {"200": {"description": "\u8f9e\u66f8", "content": {"application/json": {"schema": {"type": "object", "properties": {"entries": {"type": "array", "items": {"$ref": "#/components/schemas/DictEntry"}}, "limit": {"type": "integer", "description": "\u767b\u9332\u3067\u304d\u308b\u4e0a\u9650\u4ef6\u6570"}, "can_edit": {"type": "boolean"}}}}}}, "401": {"description": "\u672a\u30ed\u30b0\u30a4\u30f3"}, "404": {"description": "\u30b5\u30fc\u30d0\u30fc\u304c\u898b\u3064\u304b\u3089\u306a\u3044"}}}, "post": {"summary": "\u30b5\u30fc\u30d0\u30fc\u8f9e\u66f8\u306b\u8ffd\u52a0\u3059\u308b (\u540c\u3058 pattern \u304c\u3042\u308c\u3070\u4e0a\u66f8\u304d)", "description": "\u7de8\u96c6\u3067\u304d\u308b\u306e\u306f /settings \u306e \u00ab\u8f9e\u66f8\u7de8\u96c6\u6a29\u9650\u00bb \u3092\u6e80\u305f\u3059\u4eba (\u7ba1\u7406\u8005\u306f\u5e38\u306b\u53ef)\u3002", "security": [{"bearer": []}], "parameters": [{"name": "guild_id", "in": "path", "required": true, "schema": {"type": "string"}}], "requestBody": {"required": true, "content": {"application/json": {"schema": {"$ref": "#/components/schemas/DictEntry"}}}}, "responses": {"200": {"description": "\u767b\u9332\u3055\u308c\u305f\u9805\u76ee", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/DictEntry"}}}}, "400": {"description": "\u5165\u529b\u304c\u4e0d\u6b63\u30fb\u4e0a\u9650\u8d85\u904e\u30fb\u5371\u967a\u306a\u6b63\u898f\u8868\u73fe", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "401": {"description": "\u672a\u30ed\u30b0\u30a4\u30f3"}, "403": {"description": "\u7de8\u96c6\u6a29\u9650\u304c\u7121\u3044"}, "404": {"description": "\u30b5\u30fc\u30d0\u30fc\u304c\u898b\u3064\u304b\u3089\u306a\u3044"}}}, "delete": {"summary": "\u30b5\u30fc\u30d0\u30fc\u8f9e\u66f8\u304b\u3089\u524a\u9664\u3059\u308b", "security": [{"bearer": []}], "parameters": [{"name": "guild_id", "in": "path", "required": true, "schema": {"type": "string"}}, {"name": "pattern", "in": "query", "required": true, "schema": {"type": "string"}, "description": "\u524a\u9664\u3059\u308b pattern (URL \u30a8\u30f3\u30b3\u30fc\u30c9)"}], "responses": {"204": {"description": "\u524a\u9664\u3057\u305f"}, "401": {"description": "\u672a\u30ed\u30b0\u30a4\u30f3"}, "403": {"description": "\u7de8\u96c6\u6a29\u9650\u304c\u7121\u3044"}, "404": {"description": "\u30b5\u30fc\u30d0\u30fc\u3001\u307e\u305f\u306f pattern \u304c\u898b\u3064\u304b\u3089\u306a\u3044"}}}}, "/docs": {"get": {"summary": "\u3053\u306e\u6587\u66f8 (HTML)", "responses": {"200": {"description": "HTML"}}}}, "/openapi.json": {"get": {"summary": "\u3053\u306e\u6587\u66f8 (OpenAPI JSON)", "responses": {"200": {"description": "JSON"}}}}}, "servers": [{"url": "https://kotoneapi.libertasmc.xyz"}]}