Bem-vindo(a), aqui você irá aprender como a API funciona e como utilizá-la.
Front-End -> README.md
A SoulPet API é uma aplicação para sistemas internos de petshops, que provê a integração de um banco de dados para cadastro e manipulação de clientes, pets, produtos, serviços e pedidos.
A clareza visual é um foco para essa API, onde os funcionários que estarão trabalhando com ela têm uma interface clara e amigável, facilitando o fluxo de trabalho. Além disso, todas os dados são validados de acordo com seu tipo e informação.
- A realização e manutenção do cadastro de clientes, com seu nome, e-mail e telefone, assim como a de seus respectivos pets, com nome, tipo, porte, e data de nascimento.
- Cadastrar produtos e checar sua disponibilidade em estoque.
- O agendamentos de serviços
- Criação e organização de pedidos
- E muito mais.
Com a utilização dessa API, os petshops mantem um banco de dados único que otimiza o trabalho e o fluxo de informações dentro da empresa, indiretamente diminuindo erros e tempo desperdiçado.
Realizar um Git Clone
do repositório.
npm install
para instalar todas as dependências necessárias.
Configurar o arquivo .env
:
DB_HOST=localhost
DB_NAME=soulpet_db
DB_USER=root
DB_PASSWORD=(senha do mySQL)
Deve-se primeiro inicializar o repositório
npm start
Abre em: http://localhost:3001
nome
- String, com no máximo 130 caracteres
- Obrigatório
email
- String, com no máximo 130 caracteres no formato padrão de e-mail
- Deve ser um e-mail único
- Obrigatório
telefone
- String, com no máximo 130 caracteres
- Obrigatório
endereco
- Deve satisfazer as condições no model "endereco"
- Opcional
uf
- String com no máximo 2 caracteres
- Obrigatório
cidade
- String com no máximo 255 caracteres
- Obrigatório
cep
- String com no máximo 9 caracteres
- Obrigatório
rua
- String com no máximo 255 caracteres
- Obrigatório
numero
- String com no máximo 255 caracteres
- Obrigatório
nome
- String, com no máximo 130 caracteres
- Obrigatório
tipo
- String com no máximo 100 caracteres
- Obrigatório
porte
- String com no máximo 100 caracteres
- Obrigatório
dataNasc
- Data no formato YYYY/MM/DD
- Obrigatório
nome
- String com no máximo 255 caracteres
- Obrigatório
preco
- Número float
- Obrigatório
descricao
- String com no máximo 150 caracteres
- Obrigatório
desconto
- Número float
- Obrigatório
dataDesconto
- Data no formato YYYY/MM/DD
- Obrigatório
categoria
- String com no máximo 255 caracteres
- Obrigatório
dataAgendada
- Data no formato YYYY/MM/DD
- Obrigatório
realizada
- Boolean (TRUE/FALSE)
- Obrigatório
nome
- String com no máximo 255 caracteres
- Obrigatório
preco
- Número float
- Obrigatório
-
Lista todos os clientes http://localhost:3001/clientes
-
Filtra os clientes por id http://localhost:3001/clientes/:id
- Params:
id
= o id do cliente gerado pelo mySQL
- Params:
-
Lista o endereco de um cliente escolhido pelo id http://localhost:3001/clientes/:clienteId/endereco
- Params:
clienteId
= o id do cliente gerado pelo mySQL
- Params:
-
Cadastra um novo cliente http://localhost:3001/clientes
- Body:
nome
= Nome do cliente
email
= Email do cliente
telefone
= Telefone do cliente
endereco
(opcional) = Endereço do cliente, inclui: UF, Cidade, Cep, Rua, Número
- Body:
- Atualiza os dados de um cliente http://localhost:3001/clientes/:id
- Params:
id
= o id do cliente gerado pelo mySQL - Body:
nome
= Nome do cliente
email
= Email do cliente
telefone
= Telefone do cliente
endereco
(opcional) = Endereço do cliente, inclui: UF, Cidade, Cep, Rua, Número
- Params:
- Deleta um cliente http://localhost:3001/clientes/:id
- Params:
id
= O id do cliente gerado pelo mySQL
- Params:
-
Lista todos os pets http://localhost:3001/pets
-
Filtra os pets por id http://localhost:3001/pets/:id
- Params:
id
= O id do cliente gerado pelo mySQL
- Params:
-
Filtra os pets pelo id do cliente http://localhost:3001/clientes/:clienteId/pets
- Params:
clienteId
= O id do cliente gerado pelo mySQL
- Params:
- Cadastra um novo pet http://localhost:3001/pets
- Body:
nome
= Nome do pet
tipo
= Tipo do pet
porte
= Porte do pet
dataNasc
= Data de nascimento do pet
clienteId
= O id do pet gerado pelo mySQL
- Body:
- Atualiza os dados de um pet http://localhost:3001/pets/:id
- Params:
id
= O id do pet gerado pelo mySQL - Body:
nome
= Nome do pet
tipo
= Tipo do pet
porte
= Porte do pet
dataNasc
= Data de nascimento do pet
clienteId
= O id do cliente gerado pelo mySQL
- Params:
- Deleta um pet http://localhost:3001/pets/:id
- Params:
id
= O id do cliente gerado pelo mySQL
- Params:
- Lista todos os produtos http://localhost:3001/produtos
- Query:
nome
= Nome do produto
preco
= Preço do produto
categoria
= Categoria do produto
- Query:
- Filtra os produtos por id http://localhost:3001/produtos/:id
- Params:
id
= O id do produto gerado pelo mySQL
- Params:
- Cadastra um novo produto http://localhost:3001/produtos
- Body:
nome
= Nome do produto
descricao
= Descrição do produto
preco
= Preço do produto
desconto
= Desconto a ser aplicado no produto
dataDesconto
= Data de vencimento do desconto
categoria
= Categoria do produto
- Body:
- Atualiza os dados de um produto http://localhost:3001/produtos/:id
- Params:
id
= O id do produto gerado pelo mySQL - Body:
nome
= Nome do produto
descricao
= Descrição do produto
preco
= Preço do produto
desconto
= Desconto a ser aplicado no produto
dataDesconto
= Data de vencimento do desconto
categoria
= Categoria do produto
- Params:
- Deleta todos os produtos http://localhost:3001/produtos/all
- Deleta um produtos http://localhost:3001/produtos/:id
- Params:
id
= O id do produto gerado pelo mySQL
- Params:
- Lista todos os agendamentos http://localhost:3001/agendamentos
- Filtra os agendamentos por id http://localhost:3001/agendamentos/:id
- Params:
id
= O id do agendamento gerado pelo mySQL
- Params:
- Cadastra um novo agendamento http://localhost:3001/agendamentos
- Body:
dataAgendada
= Data agendada para o serviço
petId
= O id do pet gerado pelo mySQL
ServicoId
= O id do serviço gerado pelo mySQL
- Body:
- Atualiza os dados de um agendamento http://localhost:3001/agendamentos/:id
- Params:
id
= O id do agendamento gerado pelo mySQL - Body:
dataAgendada
= Data agendada para o serviço
realizada
= Se o serviço já foi realizado
petId
= O id do pet gerado pelo mySQL
ServicoId
= O id do serviço gerado pelo mySQL
- Params:
- Deleta todos agendamentos http://localhost:3001/agendamentos/all
- Deleta um agendamento http://localhost:3001/agendamentos/:id
- Params:
id
= O id do agendamento gerado pelo mySQL
- Params:
- Lista todos os servicos http://localhost:3001/servicos
- Filtra os servicos por id http://localhost:3001/servicos/:id
- Params:
id
= O id do serviço gerado pelo mySQL
- Params:
- Cadastra um novo servico http://localhost:3001/servicos
- Body:
nome
= Nome do serviço
preco
= Preço do serviço
- Body:
- Deleta todos os serviços http://localhost:3001/servicos/all
- Deleta um servico http://localhost:3001/servicos/:id
- Params:
id
= O id do serviço gerado pelo mySQL
- Params: