13.18
履歴を取得
GET
/<guild_id>/api/transcripts/<ticket_id>チケット ID を指定して、クローズ済みチケットの履歴をまるごと取得します。メタデータ一式(作成者、パネル、評価、クローズ理由、担当者、日時)、時系列に並んだ全メッセージ、参加者ごとのメッセージ統計が含まれます。まず **履歴の検索** でチケットを探すか、**履歴の HTML を取得** で表示用のアーカイブを取得してください。`view_transcripts` の権限が必要です(初期状態ではオフ)。
クエリパラメーター
| 名前 | 型 | 必須 | 説明 |
|---|---|---|---|
| limit | number | 任意 | 1 ページあたりのメッセージ数、1-1000(既定値 500)。 |
| offset | number | 任意 | ページ送りで読み飛ばすメッセージ数(既定値 0)。 |
messages と participants の内容は履歴インデックスから取得されます。このインデックスはサーバーに 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 }
}