13.18
取得對話紀錄
GET
/<guild_id>/api/transcripts/<ticket_id>依工單 ID 取得某張已關閉工單的完整對話紀錄:全部中繼資料(開單者、面板、評分、關閉理由、認領人、各項時間)、依時間順序排列的每一則訊息,以及每位參與者的訊息統計。你可以先用**搜尋對話紀錄**找到工單,或用**取得對話紀錄 HTML** 取回已算繪的封存。需要 `view_transcripts` 權限(預設關閉)。
查詢參數
| 名稱 | 型別 | 必填 | 說明 |
|---|---|---|---|
| limit | number | 選填 | 每頁訊息數,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 }
}