API
API-Dokumentation
Die Gilden-API stellt ausgewählte Gildendaten für vertrauenswürdige Werkzeuge bereit, ohne Schreibzugriff zu vergeben. Jeder Pfad nutzt GET und jede Antwort ist JSON.
Schlüssel anlegen und schützen
Berechtigte Offiziere legen einen Schlüssel in der Gildenoberfläche unter Schnittstelle an. Wähle nur die Leserechte, die der Client wirklich benötigt. Das vollständige Secret wird einmal angezeigt: Behandle es wie ein Passwort, baue es nie in ein öffentliches Browser-Bundle ein und widerrufe es bei Verlust sofort.
Authentifizierung und erster Aufruf
Die Basisadresse lautet https:/loot.rocks/api/v1. Sende den Schlüssel im Authorization-Header als Bearer lgv1_…. Der Aufruf der Wurzel prüft den Schlüssel und liefert Gilde, Schlüsselname und Leserechte.
curl --request GET "https:/loot.rocks/api/v1" \
--header "Authorization: Bearer lgv1_…"
Antworten und Pagination
Listen liefern höchstens 50 Datensätze in data. Ist has_more wahr, gib next_cursor beim nächsten Aufruf unverändert als cursor weiter. Cursor sind undurchsichtig und an Route sowie Filter gebunden. Discord-IDs stehen als JSON-Strings, damit JavaScript keine Genauigkeit verliert. Antworten verwenden Cache-Control: no-store. division wählt eine Division, division=none nur gildenweite Datensätze; ohne den Parameter kommen alle erlaubten Divisionen zurück.
{
"guild_id": "123456789012345678",
"page_size": 50,
"has_more": true,
"next_cursor": "undurchsichtiger-wert",
"data": []
}
Statuscodes und Limits
400— Unbekannte oder doppelte Parameter, ein ungültiger Filter oder Cursor.401— Fehlender, ungültiger oder widerrufener Schlüssel; einschließlich WWW-Authenticate: Bearer realm="guild-api".403— Dem Schlüssel fehlt das von der Route verlangte Leserecht.404— Das benötigte Gildenmodul ist ausgeschaltet oder die Ressource nicht verfügbar.429— Mehr als 60 Anfragen in 60 Sekunden mit diesem Schlüssel; Retry-After beachten.503— API oder Speicher sind vorübergehend nicht verfügbar.
Leserechte
applications.read— Bewerbungen lesenevents.read— Events lesenmembers.read— Mitglieder lesentasks.read— Aufträge lesenloot.read— Loot lesenanalytics.read— Führungszahlen lesenunits.read— Bereiche lesenattendance.read— Anwesenheit lesenabsence.read— Abwesenheiten lesenships.read— Schiffe leseninventory.read— Gildeninventar lesenproofs.read— Beweisbilder lesenforms.read— Formulare und Umfragen lesenrequests.read— Anträge lesentickets.read— Tickets lesenalliances.read— Allianzen lesenledger.read— Kasse lesen
Endpunkte
| Pfad | Leserecht | Modul | Query | Inhalt |
|---|---|---|---|---|
/api/v1 | — | — | — | Gültiger Schlüssel. Antwort: version, guild_id, name, capabilities. |
/api/v1/members | members.read | guild_roster | cursor, division | Mitgliederprofile und Organisationsdaten. |
/api/v1/events | events.read | events | cursor | Events mit Zeit, Status und Metadaten. |
/api/v1/teams | units.read | guild_teams | cursor, division | Teams, Divisionen und Bereiche. |
/api/v1/attendance | attendance.read | guild_attendance | cursor, user_id | Event-Anwesenheit und Teilnahme. |
/api/v1/absences | absence.read | guild_roster | cursor, user_id | Gemeldete Abwesenheiten. |
/api/v1/forms | forms.read | guild_recruit | cursor | Formulare, Felder und Umfragen. |
/api/v1/requests | requests.read | guild_recruit | cursor | Eingereichte Bewerbungen und Anträge. |
/api/v1/tickets | tickets.read | tickets | cursor, division | Tickets mit Status und Zuweisung. |
/api/v1/alliances | alliances.read | — | cursor | Allianzen, ohne eigenen Modul-Schalter. |
/api/v1/alliance-operations | alliances.read | — | status | Freigabestatus gemeinsamer Events, Aufträge und Loot-Sessions. |
/api/v1/ledger | ledger.read | guild_ledger | cursor, division | Kassenbuchungen mit Währungskontext. |
/api/v1/ships | ships.read | star_citizen | cursor | Gilden- und Mitgliederschiffe. |
/api/v1/inventory | inventory.read | guild_inventory | cursor, kind, division | Inventargegenstände und Gildenschiffe. |
/api/v1/loot-sessions | loot.read | loot | cursor, division | Loot-Sessions mit Status und Summen. |
/api/v1/proofs | proofs.read | — | proof_id, cursor, subject_kind, subject_id | Beweisbilder, ohne eigenen Modul-Schalter. |