ドキュメント

TicketsX をもっと早く使いこなす

セットアップ手順、コマンドの完全リファレンス、Premium 機能、REST API がひとつにまとまっています。

13.24

レート制限と安全対策

この API は、万が一トークンが漏れてもサーバーを荒らす手段にはならないように作られています。以下の保護はすべてのリクエストに適用されます。

どのエンドポイントでも、まず最初に Premium の有無を確認します。トークンを照合する前、レート制限を数える前の段階です。そのため契約のないサーバーには、処理が中途半端に実行されることなく、常に同じ 402 が返ります。

  • 一斉メンションはできません。 Webhook メッセージやタグを含め、API から送られるすべてのメッセージで @everyone@here、任意のロールへのメンションが無効化されています。チケットを開くときに通知できるのは、パネルで設定されたロールとチケットの作成者だけです。
  • なりすましはできません。 「discord」「clyde」といった予約語を含む Webhook の表示名は置き換えられ、アイコンの差し替えには有効な https:// の URL が必要です。
  • Premium が必要です。 この API は Premium の機能です。契約がない場合、すべてのリクエストが 402premium_required: true を返し、トークンの新規作成も差し替えもできません。
  • レート制限。 トークンごとに操作別の制限があります(例: チケット作成 10/分、メッセージ送信 30/分、名前変更 2/10 分、パネル変更 2/10 分、パネル編集 10/分、パネル再送信 4/10 分、読み取り 120/分)。制限を超えると 429retry_after(秒)が返ります。最新の一覧は GET /api/token で取得できます。
  • 重い読み取りは別枠で制限されます。 履歴の検索と HTML のダウンロードはそれぞれ 10/分、インデックス化された履歴全体の取得は 30/分で、余裕のある 120/分の読み取り枠を消費しません。さらに検索はサーバー全体で同時に 2 件までしか実行されず、実行時間の上限を超えると 504 で中断されます。これにより、検索の負荷がチケットの操作を妨げることはありません。
  • 未クローズチケットの上限。 サーバーが未クローズチケットの安全上限に達すると、API は新しいチケットを作成しません。ブラックリストに載っているユーザーのチケットも作成しません。
  • 必要最小限の権限。 取り扱いに注意が要る権限(チケットのメッセージを読む、履歴を閲覧する、履歴を検索する、履歴の HTML をダウンロードする、タグを使う、チケットの名前を変更する、パネルを管理する、チケットのパネルを変更する)は初期状態でオフになっており、トークンごとに明示的に有効にする必要があります。
  • 過去データの読み取りは記録されます。 HTML の履歴をまるごとダウンロードすると、実行したトークンとあわせてサーバーの操作ログに記録されます。API による変更操作も同様に記録されます。
  • パネルは設定から切り離せません。 パネルの管理権限で変更できるのは見た目だけです(名前、埋め込み、ボタン)。チャンネル、カテゴリ、メンションするロール、フォーム、サポートチームは API からは変更できません。
  • 有効期限と差し替え。 トークンには有効期限を設定でき、ダッシュボードから無効化や差し替えもできます。差し替えると、それまでのシークレットはただちに使えなくなります。
  • サーバー単位の限定。 トークンは作成したサーバーでしか使えず、リクエストのたびにそのサーバーかどうかが再確認されます。