[
  {
    "endpoint": "/api/user-management",
    "method": "GET",
    "description": "Retrieve all users as a plain array.",
    "responses": {
      "200": { "$ref": "../examples/usermanagement/list.200.json" },
      "401": { "$ref": "../examples/errors/401.json" },
      "403": { "$ref": "../examples/errors/403.json" },
      "500": { "$ref": "../examples/errors/500.json" }
    }
  },
  {
    "endpoint": "/api/user-management",
    "method": "POST",
    "description": "Create a new user.",
    "request": {
      "body": {
        "email": "string (required, valid email, unique)",
        "name": "string (required)",
        "password": "string (required, min 8 characters)",
        "role": "string (required)",
        "status": "string (optional, default: 'Active', enum: [Active, Suspended, Inactive])"
      }
    },
    "responses": {
      "201": { "$ref": "../examples/usermanagement/create.201.json" },
      "400": { "$ref": "../examples/errors/400.json" },
      "401": { "$ref": "../examples/errors/401.json" },
      "403": { "$ref": "../examples/errors/403.json" },
      "409": { "$ref": "../examples/errors/409.json" },
      "500": { "$ref": "../examples/errors/500.json" }
    }
  },
  {
    "endpoint": "/api/user-management/{userId}",
    "method": "DELETE",
    "description": "Delete a user by ID.",
    "request": {
      "path": {
        "userId": "string (required, unique identifier of the user)"
      }
    },
    "responses": {
      "200": { "$ref": "../examples/usermanagement/delete.200.json" },
      "401": { "$ref": "../examples/errors/401.json" },
      "403": { "$ref": "../examples/errors/403.json" },
      "404": { "$ref": "../examples/errors/404.json" },
      "500": { "$ref": "../examples/errors/500.json" }
    }
  },
  {
    "endpoint": "/api/user-management/{userId}",
    "method": "PATCH",
    "description": "Update a user by ID with partial data.",
    "request": {
      "path": {
        "userId": "string (required, unique identifier of the user)"
      },
      "body": {
        "email": "string (optional, valid email, unique)",
        "name": "string (optional)",
        "role": "string (optional)",
        "status": "string (optional, enum: [Active, Suspended, Inactive])"
      }
    },
    "responses": {
      "200": { "$ref": "../examples/usermanagement/update.200.json" },
      "400": { "$ref": "../examples/errors/400.json" },
      "401": { "$ref": "../examples/errors/401.json" },
      "403": { "$ref": "../examples/errors/403.json" },
      "404": { "$ref": "../examples/errors/404.json" },
      "409": { "$ref": "../examples/errors/409.json" },
      "500": { "$ref": "../examples/errors/500.json" }
    }
  },
  {
    "endpoint": "/api/user-management/{userId}",
    "method": "PATCH",
    "description": "Block/Suspend a user by ID.",
    "request": {
      "path": {
        "userId": "string (required, unique identifier of the user)"
      },
      "body": {
        "status": "string (required, must be 'suspended')"
      }
    },
    "responses": {
      "200": { "$ref": "../examples/usermanagement/block.200.json" },
      "401": { "$ref": "../examples/errors/401.json" },
      "403": { "$ref": "../examples/errors/403.json" },
      "404": { "$ref": "../examples/errors/404.json" },
      "500": { "$ref": "../examples/errors/500.json" }
    }
  },
  {
    "endpoint": "/api/user-management/{userId}",
    "method": "PATCH",
    "description": "Activate a user by ID.",
    "request": {
      "path": {
        "userId": "string (required, unique identifier of the user)"
      },
      "body": {
        "status": "string (required, must be 'active')"
      }
    },
    "responses": {
      "200": { "$ref": "../examples/usermanagement/activate.200.json" },
      "401": { "$ref": "../examples/errors/401.json" },
      "403": { "$ref": "../examples/errors/403.json" },
      "404": { "$ref": "../examples/errors/404.json" },
      "500": { "$ref": "../examples/errors/500.json" }
    }
  }
]
