ドキュメント

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

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

13.18

履歴を取得

GET/<guild_id>/api/transcripts/<ticket_id>

チケット ID を指定して、クローズ済みチケットの履歴をまるごと取得します。メタデータ一式(作成者、パネル、評価、クローズ理由、担当者、日時)、時系列に並んだ全メッセージ、参加者ごとのメッセージ統計が含まれます。まず **履歴の検索** でチケットを探すか、**履歴の HTML を取得** で表示用のアーカイブを取得してください。`view_transcripts` の権限が必要です(初期状態ではオフ)。

クエリパラメーター

名前必須説明
limitnumber
任意
1 ページあたりのメッセージ数、1-1000(既定値 500)。
offsetnumber
任意
ページ送りで読み飛ばすメッセージ数(既定値 0)。

messagesparticipants の内容は履歴インデックスから取得されます。このインデックスはサーバーに Premium がある間に作られ、初めてアップグレードしたときに既存のアーカイブがまとめて取り込まれます。アップグレード前にクローズされたチケット(または取り込みの途中のもの)は indexed: false と空の messages 配列で返ります。その場合は 履歴の HTML を取得 または transcript.TranscriptUrl を使ってください。長いチケットは pagination オブジェクトでページ送りします。

リクエストの例
curl -X GET \
  -H "Authorization: Bearer <API_TOKEN>" \
  "https://api.ticketsx.xyz/<guild_id>/api/transcripts/<ticket_id>?limit=500"
応答の例
{
  "transcript": {
    "TicketId": 42,
    "PanelId": 1,
    "PanelName": "Support",
    "AuthorId": "123456789",
    "AuthorUsername": "jane",
    "Rating": 5,
    "RatingCount": 1,
    "CloseReason": "Resolved",
    "CreatedAt": 1732200000,
    "ClosedAt": 1732210000,
    "ClosedBy": "987654321",
    "ClaimedIds": ["987654321"],
    "TranscriptUrl": "https://tickets.example.com/<guild_id>/transcripts/42"
  },
  "indexed": true,
  "messages": [
    { "MessageId": "111", "AuthorId": "123456789", "AuthorUsername": "jane", "IsBot": false, "Content": "My login is broken", "CreatedAt": 1732200050 },
    { "MessageId": "112", "AuthorId": "987654321", "AuthorUsername": "staff", "IsBot": false, "Content": "Looking into it now!", "CreatedAt": 1732200110 }
  ],
  "participants": [
    { "UserId": "123456789", "Username": "jane", "IsBot": false, "MessageCount": 12, "FirstMessageAt": 1732200050, "LastMessageAt": 1732209900 }
  ],
  "pagination": { "total": 2, "limit": 500, "offset": 0, "returned": 2 }
}