paths:
  /api/users:
    get:
      summary: Get all users
      tags: [Users]
      responses:
        '200':
          description: List of all users
    post:
      summary: Create new user
      tags: [Users]
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - name
                - email
              properties:
                name:
                  type: string
                email:
                  type: string
      responses:
        '201':
          description: User created
        '400':
          description: Invalid input
  /api/users/{id}:
    get:
      summary: Get user by ID
      tags: [Users]
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
          description: User ID
      responses:
        '200':
          description: User data
        '404':
          description: User not found
    put:
      summary: Update user
      tags: [Users]
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
          description: User ID
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                email:
                  type: string
      responses:
        '200':
          description: User updated
        '400':
          description: Invalid input
        '404':
          description: User not found
    delete:
      summary: Delete user
      tags: [Users]
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
          description: User ID
      responses:
        '200':
          description: User deleted
        '404':
          description: User not found
  /api/users/{id}/posts:
    get:
      summary: Get user's posts
      tags: [Users]
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
          description: User ID
      responses:
        '200':
          description: List of user's posts
        '404':
          description: User not found 