# Authentication

| Method | Path | What it does | Permission | Sudo | Approval |
|---|---|---|---|---|---|
| GET | `/api/auth/2fa` | Two Factor Status | `self` |  |  |
| POST | `/api/auth/2fa/backup-codes` | Regenerate Backup Codes | `self` | yes |  |
| POST | `/api/auth/2fa/confirm` | Two Factor Confirm | `self` |  |  |
| POST | `/api/auth/2fa/disable` | Two Factor Disable | `self` | yes |  |
| POST | `/api/auth/2fa/enroll` | Two Factor Enroll | `self` |  |  |
| GET | `/api/auth/accounts` | List Accounts | `accounts.read` |  |  |
| POST | `/api/auth/accounts` | Create Account | `accounts.manage` | yes | yes |
| GET | `/api/auth/accounts/{username}` | Get Account | `accounts.read` |  |  |
| PATCH | `/api/auth/accounts/{username}` | Update Account | `accounts.manage` | yes | yes |
| DELETE | `/api/auth/accounts/{username}` | Remove Account | `accounts.manage` | yes |  |
| POST | `/api/auth/accounts/{username}/disable` | Disable Account | `accounts.manage` | yes |  |
| POST | `/api/auth/accounts/{username}/enable` | Enable Account | `accounts.manage` | yes |  |
| POST | `/api/auth/accounts/{username}/reset-mfa` | Reset Account Mfa | `accounts.manage` | yes |  |
| PUT | `/api/auth/accounts/{username}/roles` | Set Account Roles | `accounts.manage` | yes |  |
| POST | `/api/auth/accounts/{username}/unlock` | Unlock Account | `accounts.manage` | yes |  |
| POST | `/api/auth/elevate` | Elevate | `self` |  |  |
| GET | `/api/auth/exceptions` | List Exceptions | `accounts.read` |  |  |
| POST | `/api/auth/exceptions` | Create Exception | `accounts.manage` | yes |  |
| DELETE | `/api/auth/exceptions/{exception_id}` | Revoke Exception | `accounts.manage` | yes |  |
| POST | `/api/auth/fleet/revoke` | Revoke Own Fleet Token | `self` |  |  |
| POST | `/api/auth/invitations` | Create Invitation | `accounts.manage` | yes | yes |
| POST | `/api/auth/invitations/accept` | Accept Invitation | `public` |  |  |
| POST | `/api/auth/invitations/open` | Open Invitation | `public` |  |  |
| POST | `/api/auth/login` | Login | `public` |  |  |
| POST | `/api/auth/login/second-factor` | Login Second Factor | `public` |  |  |
| POST | `/api/auth/logout` | Logout | `self` |  |  |
| POST | `/api/auth/notice/accept` | Accept Notice | `self` |  |  |
| POST | `/api/auth/password` | Change Password | `self` |  |  |
| POST | `/api/auth/password-reset/confirm` | Confirm Password Reset | `public` |  |  |
| POST | `/api/auth/password-reset/request` | Request Password Reset | `public` |  |  |
| GET | `/api/auth/roles` | List Roles | `self` |  |  |
| GET | `/api/auth/session` | Get Session Info | `public` |  |  |
| GET | `/api/auth/sessions` | Get Sessions | `self` |  |  |
| POST | `/api/auth/sessions/revoke-all` | Revoke All Sessions | `self` |  |  |
| POST | `/api/auth/sessions/revoke-others` | Revoke Other Sessions | `self` |  |  |
| DELETE | `/api/auth/sessions/{sid_prefix}` | Revoke One Session | `self` |  |  |
| GET | `/api/auth/tokens` | List Api Tokens | `self` |  |  |
| POST | `/api/auth/tokens` | Create Api Token | `self` | yes |  |
| PATCH | `/api/auth/tokens/{token_id}` | Restrict Api Token | `self` |  |  |
| DELETE | `/api/auth/tokens/{token_id}` | Revoke Api Token | `self` |  |  |
| GET | `/api/auth/verify` | Verify Token | `self` |  |  |
| POST | `/api/auth/ws-ticket` | Create Ws Ticket | `self` |  |  |

