# Team und Rollen

Rollen, Sitze, Einladungen und die Rechte im Dashboard.

## Hinweise für KI-Agenten

- API-Basisadresse: `https://api.eventwerk.eu/api/v1`
- OpenAPI 3.1: `https://api.eventwerk.eu/openapi.json` und `/api/v1/openapi.json`. Daraus lassen sich Clients und Typprüfungen generieren.
- Anmeldung: `Authorization: Bearer ew_...`
- Schlüssel: Einstellungen unter `/dashboard/einstellungen`, nur mit Eventwerk Plus und nur für Eigentümer. Der volle Schlüssel wird nur einmal angezeigt. Name und Zeitpunkt der letzten Nutzung werden geführt und ausgegeben.
- Zeiten: Alle Zeitpunkte kommen in UTC mit Suffix `Z`. Die Zeitzone des Events steht getrennt in `timezone` als IANA-Name, Standard `Europe/Vienna`. Clients rechnen selbst um.
- Paginierung: Die Event- und Anmeldelisten liefern `{items, has_more, next_cursor}` mit `limit` (Standard 50, höchstens 200), `cursor` und `updated_since`.
- Grenzen: 200 Anfragen pro Minute je Schlüssel. Der Zähler liegt im Speicher je Instanz, ist hinter mehreren Instanzen ein Vielfaches und beginnt nach einem Deploy neu. Bei Überschreitung antwortet die API mit 429, `rate_limited` und `Retry-After`.
- Gastgrenzen: Anmelde-Link 20 je Stunde je IP-Adresse, Anmeldung 60 je Stunde je IP-Adresse und 3 je Stunde je E-Mail-Adresse und Event.
- Fehler: JSON mit `code` und `message`, optional mit `details`.

Eine Organisation hat Mitglieder mit einer von drei Rollen. Die Rolle bestimmt, welche Bereiche im Dashboard sichtbar sind und welche Aktionen die API erlaubt.

## Rollen

| Rolle | Rechte |
| --- | --- |
| Eigentümer | Darf alles, einschließlich Rollen, Team, Einladungen, Plan, API-Schlüssel und Webhooks. |
| Verwaltung | Darf alles außer Rollen ändern. Dazu gehören Events, Gäste, Nachrichten, Umfragen, Programm und Einladungen. |
| Einlass | Darf Gäste lesen und einchecken. Keine Verwaltung, keine Gästeliste-Änderung. |

Nur Eigentümer können die Rolle owner vergeben. Der letzte Eigentümer kann weder entfernt noch herabgestuft werden.

## Sitze

Eigentümer und Verwaltung belegen einen Sitz. Die Rolle Einlass belegt keinen Sitz. Offene Einladungen zählen als belegt.

| Plan | Sitze für Eigentümer und Verwaltung |
| --- | --- |
| Eventwerk | 3 |
| Eventwerk Plus | 5 |

Ist die Sitzgrenze erreicht, antwortet eine Einladung mit Status 403 und `plan_required`.

## Einladungen

1. Im Dashboard unter Team eine E-Mail-Adresse und eine Rolle wählen.
2. Eventwerk sendet einen Einladungslink an `/einladung/<token>`.
3. Die eingeladene Person bestätigt die Einladung mit ihrem Namen.
4. Die Einladung ist 14 Tage gültig.

- Eine bereits Mitglied gewordene Adresse ergibt `already_member`.
- Eine offene Einladung für dieselbe Adresse ergibt `invitation_pending`.
- Der Beitritt mit einem bereits bestehenden Konto ist noch nicht umgesetzt.
- Offene Einladungen lassen sich zurückziehen.

## Organisation

Name und Slug der Organisation ändern Sie in den Einstellungen. Der Slug bestimmt die öffentliche Adresse `/veranstalter/<slug>` und muss eindeutig sein. Ein belegter Slug ergibt `slug_taken`.
