mirror of
https://github.com/KeyZox71/knl_meowscendence.git
synced 2025-10-14 02:54:44 +02:00
Merge pull request #40 from KeyZox71/doc
「🎉」 init: started writing doc for auth api
This commit is contained in:
68
doc/auth/2fa.md
Normal file
68
doc/auth/2fa.md
Normal file
@ -0,0 +1,68 @@
|
|||||||
|
# 2fa
|
||||||
|
|
||||||
|
Abailable endpoints:
|
||||||
|
- POST `/2fa`
|
||||||
|
- POST `/2fa/verify`
|
||||||
|
- DELETE `/2fa`
|
||||||
|
|
||||||
|
Common return:
|
||||||
|
- 500 with response
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"error": "Internal server error"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## POST `/2fa`
|
||||||
|
|
||||||
|
Used to enable 2fa (need to verify after to confirm)
|
||||||
|
|
||||||
|
Inputs: just need a valid JWT cookie
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
- 200
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"secret": "<the generated secret>"
|
||||||
|
"otpauthUrl": "<the generated url>"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## POST `/2fa/verify`
|
||||||
|
|
||||||
|
Used to confirm 2fa
|
||||||
|
|
||||||
|
Inputs: a valid JWT in cookie and
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"token": "<token given by 2fa>"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
- 200
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"msg": "2FA verified successfully"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
- 401 || 400 || 404
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"error": "<corresponding error>"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## DELETE `/2fa`
|
||||||
|
|
||||||
|
Used to remove 2fa
|
||||||
|
|
||||||
|
Inputs: a valid JWT in cookie
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
- 200
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"msg": "TOTP removed"
|
||||||
|
}
|
||||||
|
```
|
65
doc/auth/login.md
Normal file
65
doc/auth/login.md
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
# Login
|
||||||
|
|
||||||
|
Abailable endpoints:
|
||||||
|
- POST `/login`
|
||||||
|
- GET `/login/google`
|
||||||
|
- GET `/login/google/callback`
|
||||||
|
|
||||||
|
Common return:
|
||||||
|
- 500 with response
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"error": "Internal server error"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## POST `/login`
|
||||||
|
|
||||||
|
Used to login
|
||||||
|
|
||||||
|
Input needed :
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"user": "<string>",
|
||||||
|
"password": "<string>"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Can return:
|
||||||
|
- 200 with response and cookie in header
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"msg": "Login successfully"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
- 400 with response
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"error": "<corresponding error>"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## GET `/login/google`
|
||||||
|
|
||||||
|
Used to redirect the user to the login page for google auth
|
||||||
|
|
||||||
|
Always return:
|
||||||
|
- redirect to the google auth url
|
||||||
|
|
||||||
|
## GET `/login/google/callback`
|
||||||
|
|
||||||
|
Used to get the callback from google and confirm the login
|
||||||
|
|
||||||
|
Can return:
|
||||||
|
- 400 with response
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"error": "<corresponding error>"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
- 200 with response and cookie in header
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"msg": "Login successfully"
|
||||||
|
}
|
||||||
|
```
|
5
doc/auth/me.md
Normal file
5
doc/auth/me.md
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
GET `/me`
|
||||||
|
|
||||||
|
Inputs : just need the JWT cookie
|
||||||
|
|
||||||
|
Returns the user of the account
|
65
doc/auth/register.md
Normal file
65
doc/auth/register.md
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
# Register
|
||||||
|
|
||||||
|
Available endpoints:
|
||||||
|
- POST `/register`
|
||||||
|
- GET `/register/google`
|
||||||
|
- GET `/register/google/callback`
|
||||||
|
|
||||||
|
Common return:
|
||||||
|
- 500 with response
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"error": "Internal server error"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## POST `/register`
|
||||||
|
|
||||||
|
Used to register
|
||||||
|
|
||||||
|
Input needed :
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"user": "<string>",
|
||||||
|
"password": "<string>"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Can return:
|
||||||
|
- 200 with response and cookie in header
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"msg": "Register successfully"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
- 400 with response
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"error": "<corresponding error>"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## GET `/register/google`
|
||||||
|
|
||||||
|
Used to redirect to the google auth page
|
||||||
|
|
||||||
|
Always return:
|
||||||
|
- redirect to the google auth url
|
||||||
|
|
||||||
|
## GET `/register/google/callback`
|
||||||
|
|
||||||
|
Used to get the callback from google and register
|
||||||
|
|
||||||
|
Can return:
|
||||||
|
- 400 with response
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"error": "<corresponding error>"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
- 200 with response and cookie in header
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"msg": "Register successfully"
|
||||||
|
}
|
||||||
|
```
|
Reference in New Issue
Block a user