Dokumentation

TicketsX schneller lernen

Einrichtungsanleitungen, die vollständige Befehlsreferenz, Premium-Funktionen und die REST-API an einem Ort.

13.24

Ratenbegrenzungen und Sicherheit

Die API ist so gebaut, dass sich ein Token nie zum Missbrauch eines Servers nutzen lässt, selbst wenn es nach außen gelangt. Die folgenden Schutzmechanismen gelten für jede Anfrage.

Bei jedem Endpunkt wird zuerst Premium geprüft, noch bevor das Token nachgeschlagen und eine Ratenbegrenzung gezählt wird. Ein Server ohne aktives Abo bekommt so immer dieselbe 402-Antwort statt einer halb ausgeführten Anfrage.

  • Keine Massen-Pings. Bei allen Nachrichten über die API, auch Webhook-Nachrichten und Tags, sind @everyone, @here und beliebige Rollenerwähnungen deaktiviert. Beim Öffnen eines Tickets lassen sich nur die im Panel eingestellte Rolle und die erstellende Person anpingen.
  • Keine Vortäuschung fremder Identitäten. Anzeigenamen von Webhooks mit geschützten Wörtern wie "discord" oder "clyde" werden ersetzt, und Bild-Überschreibungen müssen gültige https://-URLs sein.
  • Premium erforderlich. Die API ist eine Premium-Funktion. Ohne aktives Abo liefert jede Anfrage 402 mit premium_required: true, und neue Tokens lassen sich weder erstellen noch austauschen.
  • Ratenbegrenzungen. Jedes Token ist je Aktion begrenzt (zum Beispiel: Ticket öffnen 10/min, Nachricht senden 30/min, Umbenennen 2/10min, Panelwechsel 2/10min, Panel bearbeiten 10/min, Panel erneut senden 4/10min, Leseabfragen 120/min). Wird ein Limit überschritten, kommt 429 mit einem Wert retry_after in Sekunden zurück. Die aktuelle Tabelle liefert GET /api/token.
  • Aufwendige Leseabfragen sind gesondert begrenzt. Transkriptsuche und HTML-Downloads bekommen je 10/min, vollständige indexierte Transkripte 30/min, damit sie nie das großzügige Kontingent von 120/min für Leseabfragen belasten. Die Suche läuft serverweit zusätzlich höchstens zweimal gleichzeitig und bricht mit 504 ab, wenn sie ihr Zeitbudget überschreitet. So kann Suchverkehr den Ticketbetrieb nie ausbremsen.
  • Obergrenze für offene Tickets. Erreicht ein Server seine Sicherheitsgrenze für offene Tickets, öffnet die API keine neuen mehr, und für Nutzer auf der Sperrliste öffnet sie grundsätzlich keine.
  • So wenig Rechte wie möglich. Sensible Berechtigungen (Ticketnachrichten lesen, Transkripte ansehen, Transkripte durchsuchen, Transkript-HTML herunterladen, Tags nutzen, Tickets umbenennen, Panels verwalten, Ticket-Panel wechseln) sind standardmäßig aus und müssen je Token bewusst eingeschaltet werden.
  • Zugriffe auf Historisches werden protokolliert. Der Download eines vollständigen HTML-Transkripts landet mit dem verantwortlichen Token im Aktivitätsprotokoll des Servers, ebenso wie jede Änderung über die API.
  • Panels bleiben an deine Einrichtung gebunden. "Panels verwalten" kann nur das Aussehen eines Panels ändern (Name, Embed, Schaltflächen). Kanäle, Kategorien, erwähnte Rollen, Formulare und Support-Teams lassen sich über die API nicht ändern.
  • Ablauf und Austausch. Tokens lassen sich mit einem Ablaufdatum versehen, deaktivieren oder im Dashboard austauschen. Beim Austausch wird das bisherige Geheimnis sofort ungültig.
  • Bindung an den Server. Ein Token funktioniert nur für den einen Server, in dem es erstellt wurde, und jede Anfrage wird erneut dagegen geprüft.