openapi: 3.0.3 info: title: 'satcompany-client-management API Documentation' description: '' version: 1.0.0 servers: - url: 'https://satcompany-client-management.soukiweb.com.br' tags: - name: Endpoints description: '' paths: /api/clients: get: summary: 'Listar clientes.' operationId: listarClientes description: 'Retorna a lista completa de clientes cadastrados.' parameters: [] responses: 200: description: '' content: application/json: schema: type: array items: type: object properties: id: type: integer example: 1 name: type: string example: 'João da Silva' email: type: string example: joao@email.com example: - id: 1 name: 'João da Silva' email: joao@email.com tags: - Endpoints security: [] post: summary: 'Cadastrar cliente.' operationId: cadastrarCliente description: 'Cria um novo cliente com os dados validados.' parameters: [] responses: 201: description: '' content: application/json: schema: type: object example: id: 1 name: 'João da Silva' email: joao@email.com properties: id: type: integer example: 1 name: type: string example: 'João da Silva' email: type: string example: joao@email.com tags: - Endpoints requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'O campo value não deve conter mais de 255 caracteres.' example: vmqeopfuudtdsufvyvddq cpf: type: string description: 'O campo value deve conter 11 caracteres.' example: amniihfqcoy email: type: string description: 'O campo value não contém um endereço de e-mail válido.' example: agustin98@example.com phone: type: string description: 'O campo value não deve conter mais de 20 caracteres.' example: hdtqtqxbajwbpilpm cep: type: string description: 'O campo value deve conter 8 caracteres.' example: ufinllwl street: type: string description: 'O campo value não deve conter mais de 255 caracteres.' example: oauydlsmsjuryvojcybzv neighborhood: type: string description: 'O campo value não deve conter mais de 255 caracteres.' example: rbyickznkygloigmkwxph number: type: string description: 'O campo value não deve conter mais de 10 caracteres.' example: lvazjrcnf complement: type: string description: 'O campo value não deve conter mais de 255 caracteres.' example: baqywuxhgjjmzuxjubqou nullable: true city: type: string description: 'O campo value não deve conter mais de 255 caracteres.' example: zswiwxtrkimfcatbxspzm state: type: string description: 'O campo value deve conter 2 caracteres.' example: ra status: type: string description: '' example: ativo enum: - ativo - inativo required: - name - cpf - email - phone - cep - street - neighborhood - number - city - state - status security: [] '/api/clients/{id}': get: summary: 'Exibir cliente.' operationId: exibirCliente description: 'Retorna os dados de um cliente específico.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 1 name: 'João da Silva' email: joao@email.com properties: id: type: integer example: 1 name: type: string example: 'João da Silva' email: type: string example: joao@email.com tags: - Endpoints security: [] delete: summary: 'Remover cliente.' operationId: removerCliente description: 'Remove o cliente do sistema.' parameters: [] responses: 204: description: '' content: application/json: schema: type: object example: { } properties: { } tags: - Endpoints security: [] parameters: - in: path name: id description: 'The ID of the client.' example: 17 required: true schema: type: integer