API Documentation - Painel Gestor

Endpoint: /auth

Autentica um usuário e retorna um token JWT, além dos dados completos do usuário autenticado e suas associações.

Method: POST

Request Body

{
  "email": "exemplo@empresa.com",
  "senha": "senhaSegura123"
}

Response

Um objeto JSON contendo o token JWT e os detalhes do usuário autenticado.

{
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MSwiZW1haWwiOiJvcGVyYWRvckBleGVtcGxvLmNvbSIsImlhdCI6MTcyNTQ5MDUxNywiZXhwIjoxNzI1NDk0MTE3fQ.w12345cHSo_vVKLSc78-9wb2JISAPt",
  "user": {
    "id": 1,
    "nome": "Carlos Alberto",
    "email": "carlos.alberto@example.com",
    "empresa_id": 2,
    "empresa": {
      "id": 2,
      "nome": "Empresa Exemplo",
      "cnpj": "99.999.999/0001-99",
      "endereco": "Rua Exemplo, 100",
      "telefone": "11987654321",
      "email": "contato@empresaexemplo.com",
      "plano": "Premium",
      "data_expiracao": "2025-12-31T23:59:59.000Z",
      "created_at": "2023-07-01T10:00:00.000Z",
      "updated_at": "2023-07-01T10:00:00.000Z"
    },
    "clientes": [
      {
        "id": 1,
        "empresa_id": 2,
        "nome": "João Pereira",
        "cpf": "123.456.789-00",
        "telefone": "11991234567",
        "email": "joao.pereira@example.com",
        "endereco": "Av Principal, 500",
        "grupo_categoria": null,
        "created_at": "2024-01-15T09:00:00.000Z",
        "updated_at": "2024-01-15T09:00:00.000Z"
      }
    ],
    "cobrancas": [
      {
        "id": 101,
        "descricao": "Cobrança de Assinatura",
        "valor": 200.00,
        "data": "2024-02-01T00:00:00.000Z",
        "createdAt": "2024-01-30T12:00:00.000Z",
        "updatedAt": "2024-01-30T12:00:00.000Z",
        "clienteId": 1
      }
    ],
    "despesas": [
      {
        "id": 10,
        "empresa_id": 2,
        "descricao": "Compra de Equipamentos",
        "valor": "1500.00",
        "vencimento": "2024-03-15T00:00:00.000Z",
        "status": "pendente",
        "createdAt": "2024-02-28T09:30:00.000Z",
        "updatedAt": "2024-02-28T09:30:00.000Z"
      }
    ],
    "pagamentos": [
      {
        "id": 201,
        "empresa_id": 2,
        "cliente_id": 1,
        "descricao": "Pagamento Assinatura Fevereiro 2024",
        "valor": "200.00",
        "data_pagamento": "2024-02-01T00:00:00.000Z",
        "status": "pago",
        "metodo_pagamento": "cartao_credito",
        "created_at": "2024-01-31T11:00:00.000Z",
        "updated_at": "2024-01-31T11:00:00.000Z"
      }
    ]
  }
}

Status Codes

  • 200 OK: Autenticação bem-sucedida. Retorna o token JWT e os dados do usuário.
  • 401 Unauthorized: Credenciais inválidas.

Endpoint: /despesas

Gerencia as despesas cadastradas no sistema.

Method: GET

Response

[
  {
    "id": 1,
    "empresa_id": 1,
    "descricao": "Compra de material de escritório",
    "valor": 1000.50,
    "vencimento": "2024-09-01T00:00:00",
    "status": "pago",
    "created_at": "2024-08-30T12:00:00",
    "updated_at": "2024-08-30T12:00:00"
  }
]

Status Codes

  • 200 OK: Retorna a lista de despesas.

Method: POST

Request Body

{
  "empresa_id": 1,
  "descricao": "Compra de material de escritório",
  "valor": 1000.50,
  "vencimento": "2024-09-01T00:00:00",
  "status": "pago"
}

Response

{
  "message": "Despesa criada com sucesso.",
  "despesa": {
    "id": 2,
    "empresa_id": 1,
    "descricao": "Compra de material de escritório",
    "valor": 1000.50,
    "vencimento": "2024-09-01T00:00:00",
    "status": "pago",
    "created_at": "2024-09-01T12:00:00",
    "updated_at": "2024-09-01T12:00:00"
  }
}

Status Codes

  • 201 Created: Despesa criada com sucesso.

Endpoint: /empresas

Gerencia as empresas cadastradas no sistema.

Method: GET

Response

[
  {
    "id": 1,
    "nome": "LF DEVELOPER",
    "cnpj": "52.169.874/0001-70",
    "endereco": "Av brasil 50751",
    "telefone": "21990950562",
    "email": "contato@lf.dev.br",
    "created_at": "2024-08-30T12:00:00",
    "updated_at": "2024-08-30T12:00:00"
  }
]

Status Codes

  • 200 OK: Retorna a lista de empresas.

Method: POST

Request Body

{
  "nome": "LF DEVELOPER",
  "cnpj": "52.169.874/0001-70",
  "endereco": "Av brasil 50751",
  "telefone": "21990950562",
  "email": "contato@lf.dev.br"
}

Response

{
  "message": "Empresa criada com sucesso.",
  "empresa": {
    "id": 2,
    "nome": "LF DEVELOPER",
    "cnpj": "52.169.874/0001-70",
    "endereco": "Av brasil 50751",
    "telefone": "21990950562",
    "email": "contato@lf.dev.br",
    "created_at": "2024-09-01T12:00:00",
    "updated_at": "2024-09-01T12:00:00"
  }
}

Status Codes

  • 201 Created: Empresa criada com sucesso.

Endpoint: /cobrancas

Gerencia as cobranças cadastradas no sistema.

Method: GET

Response

[
  {
    "id": 1,
    "descricao": "Cobrança de serviço mensal",
    "valor": 100.75,
    "data": "2024-08-24T12:00:00",
    "clienteId": 3,
    "created_at": "2024-08-24T12:00:00",
    "updated_at": "2024-08-24T12:00:00"
  }
]

Status Codes

  • 200 OK: Retorna a lista de cobranças.

Method: POST

Request Body

{
  "descricao": "Cobrança de serviço mensal",
  "valor": 100.75,
  "data": "2024-08-24T12:00:00",
  "clienteId": 3
}

Response

{
  "message": "Cobrança criada com sucesso.",
  "cobranca": {
    "id": 2,
    "descricao": "Cobrança de serviço mensal",
    "valor": 100.75,
    "data": "2024-08-24T12:00:00",
    "clienteId": 3,
    "created_at": "2024-09-01T12:00:00",
    "updated_at": "2024-09-01T12:00:00"
  }
}

Status Codes

  • 201 Created: Cobrança criada com sucesso.