API RESTful para Eventos e Festas

šŸŽŖ Uma API completa para organizar seus eventos e festas!

šŸš€ Tecnologias:

  • Node.js
  • Express
  • MongoDB
  • Mongoose

šŸ“ƒ DocumentaĆ§Ć£o:

Endpoints:

- /api/services: Cria, lista, recupera, atualiza e exclui serviƧos.
- /api/parties: Cria, lista, recupera, atualiza e exclui festas.

RequisiƧƵes:

POST: Cria um novo registro.
GET: Recupera um registro.
PUT: Atualiza um registro.
DELETE: Exclui um registro.

Respostas:

200 OK: Sucesso.
400 Bad Request: Erro de requisiĆ§Ć£o.
401 Unauthorized: UsuĆ”rio nĆ£o autenticado.
403 Forbidden: UsuĆ”rio nĆ£o autorizado.
404 Not Found: Registro nĆ£o encontrado.

šŸ”Ø InstalaĆ§Ć£o:

  1. Clone o repositĆ³rio:
git clone https://github.com/[seu-usuƔrio]/api-eventos-festas.git

ou com a CLI

gh repo clone vhraposo/partytime
  1. Instale as dependĆŖncias:
npm install
  1. Crie um arquivo .env como mostra o .env.exemple

  2. Inicie o servidor:

npm start

šŸŽ‰ Pronto! A API estarĆ” rodando na porta 3000.

Exemplos de requisiƧƵes:

Criar um serviƧo

Endpoints

Cria um serviƧo

curl http://localhost:3000/api/services
{
  "name": "Algum serviƧo",
  "description": "Uma descriĆ§Ć£o",
  "price": 1000,
  "image": "https://example.com/imagem.jpg"
}

Listar todos os serviƧos

  • Metodo: GET
curl http://localhost:3000/api/services

Recuperar um serviƧo

curl http://localhost:3000/api/services/1234567890

Atualizar um serviƧo

  • Metodo: PUT
    curl http://localhost:3000/api/services/1234567890
{
  "name": "Novo nome",
  "description": "Uma nova descriĆ§Ć£o",
  "price": 2000,
  "image": "https://example.com/nova-imagem.jpg"
}

Excluir um serviƧo

  • Metodo: DELETE
    curl http://localhost:3000/api/services/1234567890

Criar uma festa

  • Metodo: POST
    curl http://localhost:3000/api/parties
{
  "title": "Minha festa",
  "author": "Victor",
  "description": "Uma festa de aniversƔrio",
  "budget": 10000,
  "image": "https://example.com/imagem.jpg",
  "services": [
    {
      "name": "Algum serviƧo",
      "id": 1234567890
    }
  ]
}

Listar todas as festas

curl http://localhost:3000/api/parties

Recuperar uma festa

curl http://localhost:3000/api/parties/1234567890

Atualizar uma festa

{
"title": "Minha festa atualizada",
"author": "Victor Raposo",
"description": "Uma
}