test(bruno): update API collections for consolidated endpoints
Add collections for Delete User, Reset User Password, and Update User endpoints. Remove obsolete collections for individual profile update operations. Update Update Profile collection to reflect new consolidated API structure.
This commit is contained in:
@@ -1,25 +0,0 @@
|
||||
info:
|
||||
name: Delete Account
|
||||
type: http
|
||||
seq: 4
|
||||
http:
|
||||
method: DELETE
|
||||
url: '{{base_url}}/api/auth/account'
|
||||
auth: inherit
|
||||
body:
|
||||
type: none
|
||||
|
||||
docs: |-
|
||||
## Delete Account
|
||||
|
||||
Permanently deletes user account and all associated data.
|
||||
|
||||
**Method:** DELETE
|
||||
|
||||
**Endpoint:** /api/auth/account
|
||||
|
||||
**Authentication:** Required
|
||||
|
||||
**Usage:**
|
||||
- **Self-deletion**: DELETE /api/auth/account (no parameters)
|
||||
- **Admin deletion**: DELETE /api/auth/account?user_id={uuid
|
||||
@@ -0,0 +1,25 @@
|
||||
info:
|
||||
name: Delete User
|
||||
type: http
|
||||
seq: 12
|
||||
http:
|
||||
method: DELETE
|
||||
url: '{{base_url}}/api/auth/profile/{{user_id}}'
|
||||
auth: inherit
|
||||
|
||||
docs: |-
|
||||
## Delete User Account
|
||||
|
||||
Delete a user account. Users can delete their own account, admins can delete any user.
|
||||
|
||||
**Method:** DELETE
|
||||
|
||||
**Endpoint:** /api/auth/profile (self) or /api/auth/profile/:id (admin)
|
||||
|
||||
**Authentication:** Required (Bearer token)
|
||||
|
||||
**Status Codes:**
|
||||
- 200: Success
|
||||
- 400: Cannot delete the last admin
|
||||
- 403: Not an admin (when trying to delete another user)
|
||||
- 404: User not found
|
||||
@@ -0,0 +1,36 @@
|
||||
info:
|
||||
name: Reset User Password
|
||||
type: http
|
||||
seq: 11
|
||||
http:
|
||||
method: PUT
|
||||
url: '{{base_url}}/api/auth/password/{{user_id}}'
|
||||
auth: inherit
|
||||
body:
|
||||
type: json
|
||||
jsonBody: |-
|
||||
{
|
||||
"new_password": "NewSecurePassword123!",
|
||||
"confirm_password": "NewSecurePassword123!"
|
||||
}
|
||||
|
||||
docs: |-
|
||||
## Admin Reset User Password
|
||||
|
||||
Admin-only endpoint to reset another user's password.
|
||||
|
||||
**Method:** PUT
|
||||
|
||||
**Endpoint:** /api/auth/password/:id
|
||||
|
||||
**Authentication:** Required (Admin Bearer token)
|
||||
|
||||
**Request Body:**
|
||||
- `new_password` (string, required): New password
|
||||
- `confirm_password` (string, required): Must match new_password
|
||||
|
||||
**Status Codes:**
|
||||
- 200: Success
|
||||
- 400: Passwords do not match or invalid format
|
||||
- 403: Not an admin
|
||||
- 404: User not found
|
||||
@@ -0,0 +1,42 @@
|
||||
info:
|
||||
name: Update User
|
||||
type: http
|
||||
seq: 10
|
||||
http:
|
||||
method: PUT
|
||||
url: '{{base_url}}/api/auth/profile/{{user_id}}'
|
||||
auth: inherit
|
||||
body:
|
||||
type: json
|
||||
jsonBody: |-
|
||||
{
|
||||
"username": "newusername",
|
||||
"email": "newemail@example.com",
|
||||
"role": "admin"
|
||||
}
|
||||
|
||||
docs: |-
|
||||
## Admin Update User
|
||||
|
||||
Admin-only endpoint to update another user's profile.
|
||||
|
||||
**Method:** PUT
|
||||
|
||||
**Endpoint:** /api/auth/profile/:id
|
||||
|
||||
**Authentication:** Required (Admin Bearer token)
|
||||
|
||||
**Request Body:**
|
||||
- `username` (string, optional): New username
|
||||
- `email` (string, optional): New email
|
||||
- `first_name` (string, optional): First name
|
||||
- `last_name` (string, optional): Last name
|
||||
- `theme` (string, optional): Theme preference
|
||||
- `role` (string, optional): Role ("user" or "admin") - admin only
|
||||
|
||||
**Status Codes:**
|
||||
- 200: Success
|
||||
- 400: Invalid role or cannot demote last admin
|
||||
- 403: Not an admin
|
||||
- 404: User not found
|
||||
- 409: Username or email already taken
|
||||
@@ -1,33 +0,0 @@
|
||||
info:
|
||||
name: Update Email
|
||||
type: http
|
||||
seq: 2
|
||||
http:
|
||||
method: PUT
|
||||
url: '{{base_url}}/api/auth/email'
|
||||
auth: inherit
|
||||
body:
|
||||
type: json
|
||||
|
||||
docs: |-
|
||||
## Update Email
|
||||
|
||||
Updates the authenticated user's email address.
|
||||
|
||||
**Method:** PUT
|
||||
|
||||
**Endpoint:** /api/auth/email
|
||||
|
||||
**Authentication:** Required
|
||||
|
||||
**Request Body:**
|
||||
- `email` (string, required): New email address (must be valid email format)
|
||||
|
||||
**Response:**
|
||||
- `message` (string): Success message
|
||||
|
||||
**Status Codes:**
|
||||
- 200: Success
|
||||
- 400: Invalid email format
|
||||
- 401: Unauthorized
|
||||
- 409: Email already taken
|
||||
@@ -8,7 +8,14 @@ http:
|
||||
auth: inherit
|
||||
body:
|
||||
type: json
|
||||
jsonBody: "{\n \"first_name\": \"Updated\",\n \"last_name\": \"Name\""
|
||||
jsonBody: |-
|
||||
{
|
||||
"username": "updateduser",
|
||||
"email": "updated@example.com",
|
||||
"first_name": "Updated",
|
||||
"last_name": "User",
|
||||
"theme": "dracula"
|
||||
}
|
||||
|
||||
docs: |-
|
||||
## Update User Profile
|
||||
@@ -22,8 +29,11 @@ docs: |-
|
||||
**Authentication:** Required (Bearer token)
|
||||
|
||||
**Request Body:**
|
||||
- `username` (string, optional): New username (must be unique)
|
||||
- `email` (string, optional): New email address (must be unique)
|
||||
- `first_name` (string, optional): First name
|
||||
- `last_name` (string, optional): Last name
|
||||
- `theme` (string, optional): Theme preference
|
||||
|
||||
**Response:**
|
||||
- `message` (string): Success message
|
||||
@@ -32,3 +42,4 @@ docs: |-
|
||||
- 200: Success
|
||||
- 400: Invalid request
|
||||
- 401: Unauthorized
|
||||
- 409: Username or email already taken
|
||||
|
||||
@@ -1,19 +1,22 @@
|
||||
info:
|
||||
name: Update Theme
|
||||
type: http
|
||||
seq: 4
|
||||
seq: 5
|
||||
http:
|
||||
method: PUT
|
||||
url: '{{base_url}}/api/auth/theme'
|
||||
auth: inherit
|
||||
body:
|
||||
type: json
|
||||
jsonBody: "{\n \"theme\": \"dracula\""
|
||||
jsonBody: |-
|
||||
{
|
||||
"theme": "dracula"
|
||||
}
|
||||
|
||||
docs: |-
|
||||
## Update User Theme
|
||||
## Update Theme
|
||||
|
||||
Updates the authenticated user's theme preference.
|
||||
Fast theme switching for the application UI.
|
||||
|
||||
**Method:** PUT
|
||||
|
||||
@@ -22,7 +25,7 @@ docs: |-
|
||||
**Authentication:** Required (Bearer token)
|
||||
|
||||
**Request Body:**
|
||||
- `theme` (string): Theme name (tokyo-night, dracula, nord, solarized-dark, monokai, one-dark-pro, material-dark, catppuccin-mocha, catppuccin-macchiato, catppuccin-frappe, catppuccin-latte)
|
||||
- `theme` (string, required): Theme name
|
||||
|
||||
**Response:**
|
||||
- `message` (string): Success message
|
||||
|
||||
@@ -1,33 +0,0 @@
|
||||
info:
|
||||
name: Update Username
|
||||
type: http
|
||||
seq: 1
|
||||
http:
|
||||
method: PUT
|
||||
url: '{{base_url}}/api/auth/username'
|
||||
auth: inherit
|
||||
body:
|
||||
type: json
|
||||
|
||||
docs: |-
|
||||
## Update Username
|
||||
|
||||
Updates the authenticated user's username.
|
||||
|
||||
**Method:** PUT
|
||||
|
||||
**Endpoint:** /api/auth/username
|
||||
|
||||
**Authentication:** Required
|
||||
|
||||
**Request Body:**
|
||||
- `username` (string, required): New username (3-50 characters)
|
||||
|
||||
**Response:**
|
||||
- `message` (string): Success message
|
||||
|
||||
**Status Codes:**
|
||||
- 200: Success
|
||||
- 400: Invalid username
|
||||
- 401: Unauthorized
|
||||
- 409: Username already taken
|
||||
Reference in New Issue
Block a user