13.19
Pretraga prijepisa
/<guild_id>/api/transcripts/searchPretražuje svaki zatvoreni tiket na poslužitelju, a ne samo podatke o njemu: što je unutra rečeno, tko je to rekao, tko je sudjelovao, kada je otvoren ili zatvoren, s kojeg je panela, kakvu je ocjenu dobio ili koju je Discord oznaku kanala imao. Riječ je o istom mehanizmu kao kod dubinskog pretraživanja u nadzornoj ploči. Traži ovlast `search_transcripts` (zadano isključena).
/<guild_id>/api/transcripts/searchIsto to, samo se filtri šalju u sadržaju JSON umjesto kao parametri upita. Lakše kod dugih pretraga i popisa sudionika. Pošaljete li oboje, vrijedi sadržaj.
Svaki rezultat nosi podatke o tiketu, do 8 sudionika i, ako ste tražili po sadržaju, do 3 odgovarajuća ulomka poruka, da vidite *zašto* je tiket pronađen. Uzmite TicketId iz bilo kojeg rezultata i predajte ga Dohvatu prijepisa za cijeli popis poruka ili Dohvatu prijepisa u HTML-u za gotovu arhivu.
Filtri (svi su neobavezni; složite ih koliko želite)
| Naziv | Vrsta | Obavezno | Opis |
|---|---|---|---|
| q | string | neobavezno | Slobodno pretraživanje sadržaja poruka, najviše 200 znakova. Riječi kraće od 3 znaka kazalo preskače. |
| said_by | string | neobavezno | Uzima u obzir samo sadržaj koji je napisala ta Discord oznaka korisnika. Koristite je uz q. |
| participants | string[] | neobavezno | Do 5 korisnika koji su pisali u tiketu, svaki kao Discord oznaka korisnika ili dio korisničkog imena. Kod GET-a odvojeni zarezom, kod POST-a kao popis. |
| participants_mode | string | neobavezno | all (zadano) traži da su svi navedeni sudionici pisali u istom tiketu; any pronalazi tikete u kojima je pisao barem jedan od njih. |
| include_bots | boolean | neobavezno | Uzima u obzir i poruke te sudionike koji su botovi. Zadano je false. |
| opened_by | string | neobavezno | Onaj tko je otvorio tiket, kao Discord oznaka korisnika ili dio korisničkog imena. |
| closed_by | string | neobavezno | Discord oznaka onoga tko je zatvorio tiket. |
| channel_id | string | neobavezno | Discord oznaka kanala ili niti u kojoj se tiket odvijao. |
| panel_id | number | neobavezno | Samo tiketi otvoreni s tog panela. |
| opened_from | number | neobavezno | Unixov vremenski žig: samo tiketi otvoreni u tom trenutku ili poslije. |
| opened_to | number | neobavezno | Unixov vremenski žig: samo tiketi otvoreni u tom trenutku ili prije. |
| closed_from | number | neobavezno | Unixov vremenski žig: samo tiketi zatvoreni u tom trenutku ili poslije. |
| closed_to | number | neobavezno | Unixov vremenski žig: samo tiketi zatvoreni u tom trenutku ili prije. |
| rating_min | number | neobavezno | Najniža ocjena, 1-5. |
| rating_max | number | neobavezno | Najviša ocjena, 1-5. |
| limit | number | neobavezno | Rezultata po stranici, 1-50 (zadano 25). |
| offset | number | neobavezno | Rezultata koji se preskaču pri listanju, najviše 10000 (zadano 0). |
Pretraživanje je ograničeno na 10 zahtjeva u minuti po ključu, odvojeno od ostalog čitanja, i radi u strogo odmjerenom vremenu. Pretraga koja ne stigne završiti vraća 504. Suzite filtre (dodajte razdoblje ili panel) pa pokušajte ponovno, umjesto da ponavljate isti upit. Vrijednosti koje ne prođu provjeru odbacuju se umjesto da zahtjev padne, pa u odgovoru pogledajte vraćeni objekt filters da vidite što je zapravo primijenjeno.
Pretraživanje čita kazalo prijepisa, koje nastaje dok poslužitelj ima Premium i pri prvom uključivanju obuhvati i vašu dosadašnju arhivu. Objekt coverage u svakom odgovoru kaže koliko je vaših prijepisa u kazalu (indexed) od svih pohranjenih (total). Ako obrada arhive još traje, ta se dva broja zasad ne poklapaju.
curl -X GET \
-H "Authorization: Bearer <API_TOKEN>" \
"https://api.ticketsx.xyz/<guild_id>/api/transcripts/search?q=refund&participants=123456789,987654321&participants_mode=all&closed_from=1730000000&limit=25"curl -X POST \
-H "Authorization: Bearer <API_TOKEN>" \
-H "Content-Type: application/json" \
-d '{"q":"refund","participants":["123456789","987654321"],"participants_mode":"all","closed_from":1730000000,"limit":25}' \
https://api.ticketsx.xyz/<guild_id>/api/transcripts/search{
"transcripts": [
{
"TicketId": 42,
"AuthorId": "123456789",
"AuthorUsername": "jane",
"PanelId": 1,
"PanelName": "Support",
"Rating": 5,
"RatingCount": 1,
"CloseReason": "Resolved",
"CreatedAt": 1732200000,
"ClosedAt": 1732210000,
"ChannelId": "1122334455",
"ClosedBy": "987654321",
"Participants": [
{ "UserId": "123456789", "Username": "jane", "MessageCount": 12, "IsBot": false }
],
"Snippets": [
{ "AuthorId": "123456789", "AuthorUsername": "jane", "Content": "my refund never arrived", "CreatedAt": 1732200050 }
]
}
],
"pagination": { "total": 1, "limit": 25, "offset": 0, "returned": 1 },
"coverage": { "indexed": 480, "total": 480 },
"filters": { "q": "refund", "participants_mode": "all", "limit": 25 }
}