info:
  name: Update Profile
  type: http
  seq: 4
http:
  method: PUT
  url: '{{base_url}}/api/auth/profile'
  auth: inherit
  body:
    type: json
    jsonBody: |-
      {
        "username": "updateduser",
        "email": "updated@tests.bookhoard.internal",
        "first_name": "Updated",
        "last_name": "User",
        "theme": "dracula"
      }

docs: |-
  ## Update User Profile
    
    Updates the authenticated user's profile information.
    
    **Method:** PUT
    
    **Endpoint:** /api/auth/profile
    
    **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
    
    **Status Codes:**
    - 200: Success
    - 400: Invalid request
    - 401: Unauthorized
    - 409: Username or email already taken
