エラーコード

機械可読な版は errors.json にあります。

WebSocket のコード

unauthorized

protocol_version_unsupported

invalid_message

unknown_track

unknown_speaker

channel_in_use

track_limit_exceeded

unsupported_format

rate_limited

session_ended

superseded

quota_exceeded

internal

HTTP だけのコード

forbidden

insufficient_scope

api_access_disabled

invalid_json

invalid_request

session_not_found

session_active

idempotency_in_progress

idempotency_mismatch

not_found

method_not_allowed

payload_too_large

upgrade_required

too_many_connections

shutting_down

使わなくなったコード

文字おこしくんは、この節のコードを、今は返しません。クライアントは、このコードを扱う処理を残しておいても、消しても構いません。

credits_exhausted

一覧

code WebSocket の接続 HTTP
unauthorized 文字おこしくんが切り、クライアントは再接続しない 401
protocol_version_unsupported 文字おこしくんが切り、クライアントは再接続しない —
invalid_message fatal なら文字おこしくんが切り、クライアントは再接続しない —
unknown_track 文字おこしくんは切らない —
unknown_speaker 文字おこしくんは切らない —
channel_in_use 文字おこしくんは切らない —
track_limit_exceeded 文字おこしくんは切らない —
unsupported_format 文字おこしくんは切らない —
rate_limited fatal なら文字おこしくんが切り、クライアントは 30 秒待って再接続する 429
session_ended 文字おこしくんが切り、クライアントは再接続しない 409
superseded 文字おこしくんが切り、クライアントは再接続しない —
quota_exceeded 文字おこしくんが切り、クライアントは再接続しない 429
internal fatal なら文字おこしくんが切り、クライアントはバックオフで再接続する 500
forbidden — 403
insufficient_scope — 403
api_access_disabled — 403
invalid_json — 400
invalid_request — 400
session_not_found — 404
session_active — 409
idempotency_in_progress — 409
idempotency_mismatch — 422
not_found — 404
method_not_allowed — 405
payload_too_large — 413
upgrade_required — 426
credits_exhausted(使わなくなった) — 402
too_many_connections — 503 / 429
shutting_down — 503

クライアントは、未知のコードも受け入れ、error.fatal に従う。fatal な未知のコードでは、クライアントは internal と同じくバックオフで再接続する。HTTP では、クライアントは未知のコードをステータスで扱う(5xx と 429 は待ってやり直し、それ以外の 4xx はやり直さない)。

クライアントがいつ再接続し、いつ再接続せずに終えるかは再接続とエラーの扱いに、HTTP のエラーの形は HTTP API リファレンスにあります。

公式のアプリだけが受け取るコード

文字おこしくんは、公式のアプリ(管理画面と Discord アクティビティ)と文字おこしくんの運営者だけが使う操作に、この節のコードを返します。

key_not_found

webhook_not_found

webhook_delivery_not_found

key_limit_exceeded

webhook_limit_exceeded

activity_not_configured

invalid_grant

not_in_channel

no_active_session

discord_unavailable