Tekey APIについて

Tekey APIをご利用ですか?

Tekeyでは、TRPGに関連したサービスとの連携の為、WebAPIの開発を行っています。
ご検討の際は、運営中のサービス概要と、その利用目的を添えて、お問い合わせ下さい。需要に合わせたAPIの開発も可能です。
「個人で・小規模なサービスで利用したい」「試してみたい」という方も、お気軽にご連絡下さいませ。
確認後、APIキーを発行し、折り返しご連絡致します。

現在、「チャット送信」「キャラクター作成」「ステータステーブルのカラム変更」に対応しています。

詳細

【2026/10/31追加】レート制限について

サーバーの過負荷防止および安定稼働のため、APIキーごとに、呼び出し頻度の制限(レート制限)を設けました。

  • 1分あたり 60 回
  • 1日あたり 5,000 回
  • 制限に達した場合、ステータスコード 429 Too Many Requests が返却されます。
    レスポンスヘッダーの Retry-After(再試行可能になるまでの秒数)をご確認の上、リクエスト間隔を調整してください。

上限緩和(個別対応)のご相談

API使用ツールの要件等により、上記の上限値を超える利用が必要な場合は、個別に対応させていただきますので、以下の内容を記載の上、ご連絡ください。

  • ご利用中のAPIキー
  • ツールの詳細(サービス内容、想定リクエスト数など)

利用規模やサーバー負荷の状況によっては、有償対応となる可能性もございますので、あらかじめご了承ください。
基本的には無料で対応いたしますので、お気軽にお問い合わせ下さいませ。

基本仕様

  • エンドポイント: https://tekey.jp/api

  • 対応メソッド: GET / POST

    • GET: クエリパラメータとして送信
    • POST: application/json または application/x-www-form-urlencoded
  • 共通パラメータ:

    パラメータ名 必須 説明
    apikey 必須 API キー
    command 必須 コマンド名(sendChat / addCharacter / setColumns)
    room 必須 ルームID
    password 必須 ルーム入室用パスワード
  • レスポンス形式:

    ヘッダー名 型 説明
    Content-Type string application/json(JSON レスポンス時)
    X-RateLimit-Limit number 1分あたりに許可されているリクエスト枠数
    X-RateLimit-Remaining number 1分あたりの制限内で残っているリクエスト可能数
    Retry-After number (429 発生時のみ)再試行可能になるまでの待機秒数
    Location string (302 発生時のみ)リダイレクト先 URL
    • 成功時 (HTTP 200):
      {
      "result": "OK"
      }
    • パラメータ不備 / パスワード不一致 (HTTP 400 Bad Request):
      {
      "result": "<エラーメッセージ>",
      "error": "Bad Request",
      "message": "<エラーメッセージ>"
      }
      エラーメッセージ 発生コマンド 原因・対処
      "Invalid API key or missing host." 認証 APIキーが間違っている・無効、またはHostヘッダーが欠落している
      "room and password are required." 全共通 room または password が未指定
      "Room does not exist." 全共通 ルームのIDに誤りがある
      "The room does not exist or the password is incorrect." 全共通 ルームのパスワードが一致しない
      "command does not exist." 全共通 指定された command が無効
      "Message required." sendChat message パラメータが空文字または未指定
      "Columns required." setColumns columns パラメータが空文字または未指定
      "Error: <詳細>" 各コマンド その他の例外
    • 流量制限超過時 (HTTP 429 Too Many Requests):
      {
        "error": "Too Many Requests",
        "message": "Rate limit exceeded. Please try again later.",
        "retryAfter": 60
      }

コマンド一覧

チャット送信(sendChat)

パラメータ

パラメータ名 必須 型 / 形式 説明
apikey 必須 string APIキー
command 必須 string sendChat を指定
room 必須 string ルームID
password 必須 string ルーム入室用パスワード
message 必須 string チャットのメッセージ内容
name 省略可 string チャットの名前
color 省略可 string 文字色(000000〜FFFFFF の16進数。先頭の # は不要)
未指定時は送信先のルームテーマに合わせて自動設定(通常: 000000、ダークテーマ: FFFFFF)
tab 省略可 string チャット送信先のタブ名
未指定または該当する名称のタブが存在しない場合は、最左端(並び順最初)のタブに送信
bot 省略可 string ダイスボットのID
対象ルームと異なるダイスボットを使用した判定を行いたい場合は、ゲームシステムIDを指定できます。詳しくは、BCDiceをご確認下さい。
isDirection 省略可 string / bool 末尾コマンドによる演出の発火。true を指定すると、メッセージ内コマンドに応じて音楽演出や画像演出を起動します。(デフォルト: false)

※ルームデータの追加読み込みが発生するため、処理に時間がかかる・サーバー負荷がかかる場合があります。不要な場合は、falseの設定を優先的にお使い下さい。

メッセージ末尾コマンド(isDirection=true 指定時に利用可能)

本文の末尾に @ 区切りでコマンドを付けることで利用できます。

  • @全停止: 再生中の画像・音楽演出を全て停止
  • @画像演出名 / @音楽演出名: ルームに登録された演出を再生
  • @タグ名停止: 指定のタグの演出を停止(例: @BGM停止)
  • @フォルダ名:立ち絵名: 指定した立ち絵を画面上に表示
  • @マップセット名: 指定したマップセットに変更
  • @[name]:表示名: 名前を上書き(nameパラメータより優先されます)
  • @[tab]:タブ名: 送信先タブを上書き(tabパラメータより優先されます)
  • @#ff0000: 文字色を16進数カラーコードで上書き(colorパラメータより優先されます)

キャラクター作成(addCharacter)

パラメータ

パラメータ名 必須 型 / 形式 説明
apikey 必須 string APIキー
command 必須 string addCharacter を指定
room 必須 string ルームID
password 必須 string ルーム入室用パスワード
name 省略可 string 追加するキャラクターの名前
url 省略可 string キャラクターシート等の参照URL
info 省略可 string キャラクターの詳細
image 省略可 string コマ画像のURL
未指定時は「NoImage」画像が自動適用
x 省略可 number マップ上の初期X座標(未指定時は 0)
y 省略可 number マップ上の初期Y座標(未指定時は 0)
size 省略可 number コマのグリッド基準サイズ
width、heigthが未指定の場合のみ、使用されます(未指定時は 1)
width 省略可 number コマの横幅(未指定時は 1)
height 省略可 number コマの縦幅(未指定時は 1)
initiative 省略可 number イニシアティブ値(未指定時は 0)
correction 省略可 number 修正値(未指定時は 0)
isHide 省略可 string / bool true の場合、キャラクター情報をステータステーブル上で非表示(未指定時は false)
isAnchor 省略可 string / bool true でコマを固定(未指定時は false)
waiting 省略可 string / bool true でマップ上ではなく「待機室」に追加(未指定時は false)
order 省略可 number コマの重なり順(未指定時は 0)
values 省略可 string キャラクターのステータスカラム初期値(下記フォーマット)

values のフォーマット

[カラム名]:[現在値] または [カラム名]:[現在値]:[最大値] をカンマ区切りで指定します。

  • ルーム側のステータスカラムと名称が一致する項目に自動反映されます。未指定のステータスは 0 で初期化されます。
  • チェック項目の場合、値が 0 で未チェック、1 以上でチェック状態となります。
  • 指定例:
    HP:12:16,MP:15:15,行動:0

    → HP 12/16、MP 15/15、行動チェックなし


ステータステーブルのカラム変更(setColumns)

パラメータ

パラメータ名 必須 型 / 形式 説明
apikey 必須 string APIキー
command 必須 string setColumns を指定
room 必須 string ルームID
password 必須 string ルーム入室用パスワード
columns 必須 string カラム設定文字列(下記フォーマット)

columns のフォーマット

[カラム名]:[チェックボックス有無]:[最大値超過の可否] をカンマ区切りで指定します。

  • チェックボックス有無: true でチェックボックス型、false で数値型。
  • 最大値超過の可否: true で最大値を超えた入力を許可、false で上限値までに制限(※チェックボックス型の場合は無視されます)。
  • 指定例:
    HP:false:false,MP:false:true,行動済み:true:false

    → HP(数値・上限超過不可)、MP(数値・上限超過可)、行動済み(チェックボックス)