Endpunkt-Zugriffsrollen
Dieses Dokument zeigt eine Übersicht der Endpunkte der öffentlichen Alan-API und beschreibt für wen einzelne Endpunkte zugänglich sind. Allgemein werden alle Zugriffsrechte auf Endpunkte anhand von Benutzerrollen gesteuert. Die Rollen sind im Benutzermanagement definiert und Benutzern zugewiesen.
Wenn ein Benutzer nicht über eine erforderliche Rolle verfügt, wird der Zugriff auf den Endpunkt verweigert. Zugehörige UI-Elemente werden im Frontend ebenfalls ausgeblendet.
Rollenkonzept
Annahme: Jeder User hat mindestens die Rolle alan-user. Ein User kann mehrere Rollen haben.
| Rolle | Beschreibung |
|---|---|
alan-user | Kann Chatten sowie bestehende Experten und Wissensdatenbanken nutzen |
alan-contributor | Wie User, kann mit Schreibrechten geteilte Ressourcen bearbeiten (Experten, Wissensdatenbanken) |
alan-editor | Wie Contributor, kann Experten und Wissensdatenbanken erstellen, teilen und löschen |
alan-admin | Hat Zugriff auf Admin-Funktionen wie Datenverbindungen, Gruppen oder Tenant-Einstellungen. Bitte beachten Sie: Die Rolle alan-admin enthält nicht automatisch die Berechtigungen der anderen Rollen. Ein Admin muss separate Rollen zugewiesen bekommen, um beispielsweise zu chatten oder Experten und Wissensdatenbanken zu bearbeiten oder zu erstellen. |
API-Endpunkte
Die folgende Tabelle listet alle öffentlichen API-Endpunkte und ihre erforderlichen Zugriffsrollen auf.
| Pfad | Methode | Rollen |
|---|---|---|
| /abilities/system | GET | User, Contributor, Editor |
| /chats/ | GET | User, Contributor, Editor |
| /chats/ | POST | User, Contributor, Editor |
| /chats/ | GET | User, Contributor, Editor |
| /chats/ | PUT | User, Contributor, Editor |
| /chats/ | DELETE | User, Contributor, Editor |
| /chats/{chat_id}/approve | POST | User, Contributor, Editor |
| /chats/{chat_id}/generate | POST | User, Contributor, Editor |
| /chats/{chat_id}/messages/ | GET | User, Contributor, Editor |
| /chats/{chat_id}/messages/ | GET | User, Contributor, Editor |
| /chats/{chat_id}/messages/ | PUT | User, Contributor, Editor |
| /chats/{chat_id}/messages/{message_id}/files/{chat_file_id}/content | GET | User, Contributor, Editor |
| /chats/{chat_id}/regenerate | POST | User, Contributor, Editor |
| /connectors/ | GET | User, Contributor, Editor |
| /connectors/ | POST | Admin |
| /connectors/knowledge-bases | GET | User, Contributor, Editor |
| /connectors/validate-restapi | POST | Admin |
| /connectors/ | GET | Admin |
| /connectors/ | PUT | Admin |
| /connectors/ | DELETE | Admin |
| /connectors/{connector_id}/knowledge-bases | POST | Editor |
| /connectors/{connector_id}/knowledge-bases | GET | User, Contributor, Editor |
| /connectors/{connector_id}/knowledge-bases/ | PUT | Contributor, Editor |
| /connectors/{connector_id}/knowledge-bases/ | GET | User, Contributor, Editor |
| /connectors/{connector_id}/knowledge-bases/ | DELETE | Editor |
| /docs | GET | |
| /docs | HEAD | |
| /docs/oauth2-redirect | GET | |
| /docs/oauth2-redirect | HEAD | |
| /experts/ | GET | User, Contributor, Editor |
| /experts/ | POST | Editor |
| /experts/ | GET | User, Contributor, Editor |
| /experts/ | DELETE | Editor |
| /experts/ | PUT | Contributor, Editor |
| /files/ | POST | User, Contributor, Editor |
| /files/ | GET | User, Contributor, Editor |
| /files/ | PUT | User, Contributor, Editor |
| /files/ | GET | User, Contributor, Editor |
| /files/ | DELETE | User, Contributor, Editor |
| /files/{file_id}/chunks | GET | User, Contributor, Editor |
| /files/{file_id}/content | GET | User, Contributor, Editor |
| /files/{file_id}/plaintext | GET | User, Contributor, Editor |
| /groups/ | GET | Admin |
| /groups/ | POST | Admin |
| /groups/ | GET | Admin |
| /groups/ | DELETE | Admin |
| /groups/ | PUT | Admin |
| /health/ | GET | |
| /llm/generate_stream | POST | User, Contributor, Editor |
| /models/ | GET | User, Contributor, Editor |
| /notifications/ | GET | User, Contributor, Editor |
| /notifications/ | PUT | User, Contributor, Editor |
| /oai/chat/completions | POST | User, Contributor, Editor |
| /oai/embeddings | POST | User, Contributor, Editor |
| /oai/models | GET | User, Contributor, Editor |
| /oai/models/ | GET | User, Contributor, Editor |
| /openapi.json | GET | |
| /openapi.json | HEAD | |
| /redoc | GET | |
| /redoc | HEAD | |
| /search/ | POST | User, Contributor, Editor |
| /shares/ | GET | User, Contributor, Editor |
| /shares/ | POST | Editor |
| /shares/received | GET | User, Contributor, Editor |
| /shares/recipients | GET | User, Contributor, Editor |
| /shares/search_recipients | GET | User, Contributor, Editor |
| /shares/ | DELETE | Editor |
| /snapshots/ | POST | User, Contributor, Editor |
| /snapshots/ | GET | User, Contributor, Editor |
| /snapshots/import | POST | User, Contributor, Editor |
| /snapshots/ | GET | User, Contributor, Editor |
| /snapshots/ | DELETE | User, Contributor, Editor |
| /snapshots/{snapshot_id}/messages/{snapshot_message_id}/files/{snapshot_chat_file_id}/content | GET | User, Contributor, Editor |
| /tenant/info | GET | User, Contributor, Editor |
| /tenant/licenses | GET | Admin |
| /tenant/quota | GET | Admin |
| /tenant/settings | GET | Admin |
| /tenant/settings | PUT | Admin |
| /user/ | GET | User, Contributor, Editor |
| /user/api-keys | POST | User, Contributor, Editor |
| /user/api-keys | GET | User, Contributor, Editor |
| /user/api-keys/ | GET | User, Contributor, Editor |
| /user/api-keys/ | DELETE | User, Contributor, Editor |
| /user/api-keys/{key_id}/renew | POST | User, Contributor, Editor |
| /user/issuer | GET | User, Contributor, Editor |
| /user/settings | GET | User, Contributor, Editor |
| /user/settings | PUT | User, Contributor, Editor |
| /user/token | GET | User, Contributor, Editor |
| /version/ | GET | User, Contributor, Editor |