openapi: 3.0.3 info: { title: Authorized Users API, version: 1.0.0 } servers: [ { url: https://your-domain.com/api/v1 } ] tags: [ { name: Authorized Users } ] security: [ { bearerAuth: [] } ] paths: /authorized-users: get: tags: [Authorized Users] summary: List all authorized users parameters: - in: query name: page schema: { type: integer, default: 1 } - in: query name: per_page schema: { type: integer, default: 20 } - in: query name: role schema: { type: string } - in: query name: status schema: { type: string, enum: [active, inactive] } responses: "200": { description: Authorized users retrieved } post: tags: [Authorized Users] summary: Create new authorized user requestBody: required: true content: application/json: schema: { $ref: '#/components/schemas/AuthorizedUserCreate' } responses: "201": { description: User created successfully } /authorized-users/{id}: get: tags: [Authorized Users] summary: Get authorized user by ID parameters: - in: path name: id required: true schema: { type: integer } responses: "200": { description: User retrieved successfully } "404": { description: Not found } delete: tags: [Authorized Users] summary: Delete authorized user parameters: - in: path name: id required: true schema: { type: integer } responses: "200": { description: User deleted } "404": { description: Not found } components: schemas: AuthorizedUserCreate: type: object required: [name, email, password, role] properties: name: { type: string } email: { type: string, format: email } password: { type: string, minLength: 6 } role: { type: string } status: { type: string, enum: [active, inactive] }