This service provides an authentication api for user management.
- Validate a users credentials via username and password
- CRUD users
- CRUD sessions
- CRUD apps
- CRUD app sessions
Method | Path | Description | |
---|---|---|---|
Apps To authenticate and act on behave of a user, you do so using an "app". |
|||
1.1 | GET | /v1/apps | List all apps you can manage |
1.2 | GET | /v1/apps/:id | Get information about an app you can manage |
1.3 | POST | /v1/apps | Create a new app |
1.4 | DELETE | /v1/apps/:id | Delete an app you can manage |
1.5 | POST | /v1/apps/:id/activate | Claim ownership over a newly created app |
Permissions The access that different users have in an app is controlled by "permissions". |
|||
2.1 | GET | /v1/apps/:appId/permissions | List all permissions an app has available |
2.2 | POST | /v1/apps/:appId/permissions | Create a new permission for an app you manage |
App Sessions An app creates a "session" which is then passed to a user to authenticate. |
|||
3.1 | GET | /v1/apps/:appId/sessions | List all sessions for an app you can manage |
3.2 | GET | /v1/apps/:appId/sessions/current | Get information about the current app session |
3.3 | POST | /v1/apps/:appId/sessions | Create a new app session for an app you can manage |
4.2 | POST | /v1/apps/:appId/sessions/:sessionId/activate | Activate an app session |
User Sessions A user session is stored on the sso provider and can authorise app sessions to act on their behalf. |
|||
4.1 | GET | /v1/sessions/current | Get information about your user session |
4.3 | POST | /v1/sessions | Create a new user session |
Users Users are entities that can login to an app via the sso portal. |
|||
5.1 | GET | /v1/users | List all users who have interacted with an app your manage |
5.2 | GET | /v1/users/:id | Get information about a user |
5.3 | POST | /v1/users | Create a new user |
Other endpoints These endpoints are provided for convenience. |
|||
6.1 | GET | /v1/permissions | List all permissions across all apps |
This project is licensed under the terms of the GPLv3 license.