Dokumentacija

Nauči TicketsX brže

Upute za postavljanje, popis svih naredbi, mogućnosti Premiuma i REST API na jednom mjestu.

13.24

Ograničenja i sigurnost

API je izrađen tako da se ključem nikad ne može naštetiti poslužitelju, čak ni ako procuri. Sljedeća zaštita vrijedi za svaki zahtjev.

Na svakoj krajnjoj točki Premium se provjerava prije svega ostalog, i prije traženja ključa i prije brojanja bilo kojeg ograničenja, pa poslužitelj bez aktivne pretplate uvijek dobiva isti odgovor 402 umjesto dopola izvedenog zahtjeva.

  • Nema masovnih spominjanja. U svim porukama poslanima preko API-ja (uključujući poruke webhookom i oznake) isključeni su @everyone, @here i proizvoljna spominjanja uloga. Pri otvaranju tiketa mogu se spomenuti samo uloga postavljena na panelu i onaj tko je tiket otvorio.
  • Nema lažnog predstavljanja. Prikazana imena webhooka s pridržanim riječima poput "discord" ili "clyde" zamjenjuju se, a postavljena slika mora biti valjana https:// adresa.
  • Premium je nužan. API je mogućnost Premiuma. Bez aktivne pretplate svaki zahtjev vraća 402 s poljem premium_required: true, a novi se ključevi ne mogu ni stvoriti ni zamijeniti.
  • Ograničenja zahtjeva. Svaki ključ ima ograničenje po pojedinom postupku (na primjer: otvaranje tiketa 10 u minuti, slanje poruke 30 u minuti, preimenovanje 2 u 10 minuta, promjena panela 2 u 10 minuta, izmjene panela 10 u minuti, ponovno slanje panela 4 u 10 minuta, čitanje 120 u minuti). Prekoračenje vraća 429 s vrijednošću retry_after u sekundama. Trenutnu tablicu dohvatite s GET /api/token.
  • Teška čitanja imaju vlastita ograničenja. Pretraživanje prijepisa i preuzimanje prijepisa u HTML-u dobivaju po 10 u minuti, a potpuni obrađeni prijepisi 30 u minuti, pa nikad ne troše od izdašnih 120 čitanja u minuti. Pretraživanje uz to na cijelom poslužitelju radi najviše dva puta istodobno i prekida se s 504 ako prekorači svoje vrijeme, pa promet pretraga nikad ne guši rad na tiketima.
  • Gornja granica otvorenih tiketa. Kad poslužitelj dosegne sigurnosnu granicu otvorenih tiketa, API ih više ne otvara, a korisnicima s crnog popisa ne otvara tikete uopće.
  • Što manje ovlasti. Osjetljive ovlasti (Čitanje poruka tiketa, Pregled prijepisa, Pretraživanje prijepisa, Preuzimanje prijepisa u HTML-u, Korištenje oznaka, Preimenovanje tiketa, Upravljanje panelima, Promjena panela tiketa) zadano su isključene i moraju se namjerno uključiti za svaki ključ.
  • Čitanje starijih podataka se bilježi. Preuzimanje potpunog HTML prijepisa upisuje se u zapisnik radnji poslužitelja zajedno s ključem kojim je izvedeno, kao i svaka izmjena koju API napravi.
  • Paneli ostaju vezani uz vašu postavu. Ovlast Upravljanje panelima mijenja samo izgled panela (naziv, ugrađenu poruku, gumbe). Kanali, kategorije, uloge za spominjanje, obrasci i timovi podrške ne mijenjaju se preko API-ja.
  • Istek i zamjena. Ključevima se može zadati istek, mogu se isključiti ili zamijeniti iz nadzorne ploče; zamjena odmah poništava prijašnji tajni podatak.
  • Vezan uz jedan poslužitelj. Ključ radi samo na poslužitelju na kojem je nastao, a to se pri svakom zahtjevu iznova provjerava.