Skip to content

almeidadylan/Projeto-Casptone-m4-grupo-14

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

83 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

KenzieFy

Tabela de conteúdo


Sobre

  • Esta aplicação foi feita sem fins lucrativos para upload e consulta de musicas sem direitos autorais.

  • Está é uma api de musicas sem direitos autorais onde é possivel, escutar, fazer download, ver os dados da musica, criar contas, fazer upload de musicas, login, deletar o usuario e/ou suas musicas.

  • Para fazer a consulta de musicas, não é necessário fazer login ou ter conta.

  • Para fazer upload de alguma musica no banco de dados é necessário ter conta cadastrada.

Integrantes

Aplicação

url base da aplicação no heroku: https://capstone-m4-grupo-14.herokuapp.com/

Rotas

GET

1.1 - Para listar todas as musicas, utilize a a rota:
GET /musics - formato de resposta - status 200

[
  {
    "id": "357b3141-b69a-4321-8cfa-a69f828c88fb",
    "category": "eletronic",
    "name": "Cartoon - C U Again.mp3",
    "key": "bd029002e172debc15590de8d2182ecb-Cartoon - C U Again.mp3",
    "size": "8121078",
    "url": "https://upload-capstone-m4-grupo-14.s3.sa-east-1.amazonaws.com/bd029002e172debc15590de8d2182ecb-Cartoon+-+C+U+Again.mp3",
    "letter": "",
    "created_at": "Wed May 25 2022 10:03:22 GMT-0400 (Amazon Standard Time)"
  }
]

1.2 - Para ler os dados de uma musica especifica, utilize a rota:
GET /music/<music_id> - formato de resposta - status 200

{
  "id": "357b3141-b69a-4321-8cfa-a69f828c88fb",
  "id_autor": "657b15a8-20ab-4834-a468-e6b967bfeda5",
  "category": "eletronic",
  "name": "Cartoon - C U Again.mp3",
  "key": "bd029002e172debc15590de8d2182ecb-Cartoon - C U Again.mp3",
  "size": "8121078",
  "url": "https://upload-capstone-m4-grupo-14.s3.sa-east-1.amazonaws.com/bd029002e172debc15590de8d2182ecb-Cartoon+-+C+U+Again.mp3",
  "letter": "",
  "created_at": "Wed May 25 2022 10:03:22 GMT-0400 (Amazon Standard Time)"
}

1.3 - Para fazer uma listagem de todos os usuario, utilize a rota:
GET /users - formato de resposta - 200

[
  {
    "id": "b6ad452c-9217-4f9b-a9ae-9f5bc8fcc022",
    "name": "admin",
    "email": "[email protected]",
    "CPF": "$2b$11$V.tglBHHTHBit7AlSDDZ3ezXDLmyHQrTO/And3xfuY3f6DC3uLLgi",
    "birth_date": "13/13/1300",
    "phone": "12345678910",
    "password": "$2b$10$K9uo3aKOu3dVud0LucE9reIO21KDWa.XWTromTpxrEgEbgv.gCMvm",
    "age": 700
  }
]

1.4 - Para ler os dados de um usuario especifico, utilize a rota:
GET /users/<user_id> - formato de resposta - 200

{
  "id": "b6ad452c-9217-4f9b-a9ae-9f5bc8fcc022",
  "name": "admin",
  "email": "[email protected]",
  "CPF": "$2b$11$V.tglBHHTHBit7AlSDDZ3ezXDLmyHQrTO/And3xfuY3f6DC3uLLgi",
  "birth_date": "13/13/1300",
  "phone": "12345678910",
  "password": "$2b$10$K9uo3aKOu3dVud0LucE9reIO21KDWa.XWTromTpxrEgEbgv.gCMvm",
  "age": 700
}

1.5 - Para ler os dados um estili musical, utilize a rota:
GET /categories/ - formato de resposta - 200

[
  {
    "id": "b6ad452c-9217-4f9b-a9ae-9f5bc8fcc022",
    "name": "Rock",
  },
  {
    "id": "770ab26f-d2fb-4b9b-884b-d1841f67a4a5",
    "name": "Música clássica"
  }
]

1.6 - Para ler os dados de uma categoria de musica especifica, utilize a rota:
GET /categories/<id_category> - formato de resposta - 200

{
		"id": "d0c2d241-3822-445d-943c-9da6499674d8",
		"name": "Música de anime"
}

POST

2.1 - Para criar uma conta de usuario, utilize a rota:
POST /users - formato de requisição

{
  "name": "andre",
  "cpf": "041.937.690-73",
  "birth_date": "04/10/1994",
  "phone": "41996515821",
  "email": "[email protected]",
  "password": "admin123",
  "age": 27
}

POST /users - formato de resposta - 201

{
  "status": "ok",
  "message": "user created",
  "user": {
    "id": "fa391083-e13e-4283-bb41-a0f61f15611f",
    "name": "andre",
    "email": "[email protected]",
    "password": "$2b$10$ItAMU1x.4uPLTIEc2TW7xuxVGAD1JWcQEopgxclkHvBcM95gZIMAi",
    "CPF": "$2b$11$ZT2zRWPlSA3mwSqWozrvd.KeZRD4QMuZPK7my/AtSbivxPKjYQWga",
    "birth_date": "04/10/1994",
    "phone": "41996515821",
    "age": 27
  }
}

2.2 - Para fazer login em uma conta, utilize a rota:
POST /users/login - formato de requisição

{
  "email": "[email protected]",
  "password": "admin123"
}

POST /users/login - formato de resposta - 200

{
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6ImFuZHJlcm9kcmlndWVzc2lsQGdtYWlsLmNvbSIsImlhdCI6MTY1MzYyMDIwOSwiZXhwIjoxNjUzNzA2NjA5fQ.fPnervTSxD4JvoTpgvitV23GDhy328iH9zHKb-eCS0w"
}

2.3 - Para criar fazer upload de uma musica, utilize a rota:
Atenção! É necessário ter um token de autorização para acessar essa rota:
POST /music - formato de requisição

{
  "file": "Skillet-Hero.mp3",
  "id_category": "b78c24d2-236e-4989-883e-402f1af45fab"
}

POST /musics - formato de resposta - 201

{
  "status": "ok",
  "message": "upload done",
  "upload": {
    "id": "dde12a10-1096-4411-b36d-f458290a1450",
    "name": "Skillet-Hero.mp3",
    "key": "e83e9e57c7249d619ec18875b8afe68c-Skillet-Hero.mp3",
    "size": "3.06 mb",
    "url": "https://upload-capstone-m4-grupo-14.s3.amazonaws.com/e83e9e57c7249d619ec18875b8afe68c-Skillet-Hero.mp3"
  }
}

2.4 - Para criar uma categoria de musica, utilize a rota:
Atenção! É necessário ter um token de autorização para acessar essa rota.
POST /categories formato de requisição

{
  "name": "Heavy metal",
}

POST /categories/ - formato de resposta - 201

{
  "id": "d0c2d241-3822-445d-943c-9da6499674d8",
  "name": "Heavy metal"
}

PATCH

3.1 - Para atualizar os dados de um usuario, utilize a rota:
Atenção! É necessário ter um token de autorização para acessar essa rota.
PATCH /users/<user_id> formato de requisição

{
  "email": "[email protected]",
  "name": "André Rodrigues",
  "birth_date": "12/07/1995",
  "password": "@andreAdmin"
}

PATCH /users/<user_id> - formato de resposta - 200

{
  "status": "ok",
  "message": "Updated user",
  "user": {
    "id": "b6ad452c-9217-4f9b-a9ae-9f5bc8fcc022",
    "name": "André Rodrigues",
    "email": "[email protected]",
    "CPF": "$2b$11$V.tglBHHTHBit7AlSDDZ3ezXDLmyHQrTO/And3xfuY3f6DC3uLLgi",
    "birth_date": "12/07/1995",
    "phone": "12345678910",
    "password": "$2b$10$K9uo3aKOu3dVud0LucE9reIO21KDWa.XWTromTpxrEgEbgv.gCMvm",
    "age": 27
  }
}

DELETE

4.1 - Para deletar uma musica de sua criação, utilize a rota:
OBS: não é possível deletar uma musica que você não fez upload.
Atenção! É necessário ter um token de autorização para acessar essa rota.
DELETE /musics/<music_id> - formato de resposta - 200

{
  "message": "Deleted music"
}

4.2 - Para deletar um usuario, utilize a rota:
Atenção! É necessário ter um token de autorização para acessar essa rota.
DELETE /users/<user_id> - formato de resposta - 200

{
  "message": "Deleted user"
}

4.3 - Para deletar uma categoria, utilize a rota:
Atenção! É necessário ter um token de autorização para acessar essa rota.
DELETE /users/<user_id> - formato de resposta - 200

{
  "message": "Deleted category"
}

Tecnologias

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •