git clone git@github.com:m6-full-stack/back-end.git
2. Na raiza do projeto, rode o seguinte comando para realizar a instalação de todas as dependências:
yarn installl
3. Copie o arquivo ".env.example" e cole na raiz do projeto, agora altere o nome do arquivo para ".env" e preenche as variáveis de ambiente dispostas ali de acordo com suas informações de conexão do postgreSQL.
yarn typeorm migration:run -d src/data-source.ts
yarn dev
Essa aplicação é um e-commerce voltado a compra e venda de veículos, através dela o usuário pode anunciar ou comprar carros e/ou motos, podendo ter acesso a diversas informações do veículos e, caso o usuário se interresse pelo menos a aplicação irá te encaminhar ao vendedor para que ambos possam negociar a venda.
- Typescript
- Express
- NodeJs
- Typeorm
- Bcrypt
- Jsonwebtoken
- Uuid
- PostgreSQL
A API tem um total de 7 endpoints
A url base da API é https://fullstack-project-qi7p.onrender.com
POST /users - FORMATO DE REQUISIÇÃO
{
"name": "Camille",
"email": "cammille@mail.com",
"password": "123456",
"phone": "012 12345-6789",
"description": "Desenvolvedora Full-stack",
"address": {
"cep": "12345678",
"state": "Minas Gerais",
"city": "Belo Horizonte",
"street": "Avenida Jorge Teixeira",
"number": "1041",
"complement": "casa"
},
"is_seller": true,
"birthdate": "1991-12-22",
"cpf": "123.456.789-10"
}POST /users - FORMATO DE REPOSTA - STATUS 201
{
"created_at": "02/03/2023",
"updated_at": "02/03/2023",
"name": "Camille",
"email": "cammille@mail.com",
"phone": "012 12345-6789",
"cpf": "123.456.789-10",
"birthdate": "1991-12-22",
"description": "Desenvolvedora Full-stack",
"address": {
"id": "35bbd5dd-d4bb-4bef-b623-ec283fcac638",
"cep": "12345678",
"state": "Minas Gerais",
"city": "Belo Horizonte",
"street": "Avenida Jorge Teixeira",
"number": "1041",
"complement": "casa"
},
"is_seller": true,
"id": "5edc3a2f-55fd-4c15-b510-a0d8d6f05167"
}| Código do Erro | Descrição |
|---|---|
| 400 Conflict | Email already exists! |
| 400 Conflict | CPF already exists! |
POST /login - FORMATO DE REQUISIÇÃO
{
"email": "cammille@mail.com",
"password": "123456"
}POST /login - FORMATO DE RESPOSTA - STATUS 200
{
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjVlZGMzYTJmLTU1ZmQtNGMxNS1iNTEwLWEwZDhkNmYwNTE2NyIsImlzX2J1eWVyIjpmYWxzZSwiaWF0IjoxNjc3NzY0OTc2LCJleHAiOjE2Nzc4NTEzNzZ9.OLI4BBb1t-DuiP-GWVqaYxo4YfkrnrNecVczJvZL1mg"
}| Código do Erro | Descrição |
|---|---|
| 403 Forbidden | Invalid email or password. |
| 403 Forbidden | Invalid email or password. |
GET /annoucement - FORMATO DE REQUISIÇÃO
VazioGET /annoucement - FORMATO DE RESPOSTA - STATUS 200
[
{
"createdAt": "2023-03-02",
"id": "526920e5-cf10-4690-9f17-120379144a7f",
"type": "Venda",
"title": "Fox G2, Unico Dono, Hiper Econômico",
"year": "2011",
"mileage": "112.000",
"price": "27.900",
"description": "VW Fox 2011, 5p, 1.0, 8v, 111k Km, vidro, trava, alarme, sensor de estacionamento, espelhos elétricos, ótimo de mecanica, ótimo de elétrica, ótimo de lata, bateria, velas, cabos de velas, bobina e pneus novos. Mega econômico, 17 km/l na estrada e 11 na cidade. Pequenos detalhes nos parachoques. Tabela R$ 31.800,00. Somente a vista R$ 28.000,00",
"vehicle_type": "Carro",
"cover_image": "https://img1.icarros.com/dbimg/galeriaimgmodelo/2/6886_1",
"is_sold": false,
"advertiserId": "5edc3a2f-55fd-4c15-b510-a0d8d6f05167",
"images_list": [
{
"id": "89dff4c7-5ef1-48c5-9390-2cdcaf70399a",
"image_url": "https://cdn.carrosp.com.br/img/6/full/volkswagen-fox-2011-americana-4960e4ef0e872ac688b1ceb2caa4776b.png"
},
{
"id": "fece626a-a332-466a-a9d9-0f4c8d33b818",
"image_url": "https://s3.ecompletocarros.dev/images/lojas/232/veiculos/25266/veiculoInfoVeiculoImagesMobile/vehicle_image_1592260062_4d4713169324ebfea213ba526b3a21b5.jpeg"
}
],
"comments": []
}
]Nenhum, máximo que pode acontecer é retornar uma lista vaziaGET /users/:id - FORMATO DE REQUISIÇÃO
VazioGET /users/:id - FORMATO DE RESPOSTA - STATUS 200
{
"created_at": "2023-03-02",
"updated_at": "2023-03-02",
"id": "5edc3a2f-55fd-4c15-b510-a0d8d6f05167",
"name": "Camille",
"email": "cammille@mail.com",
"phone": "012 12345-6789",
"cpf": "123.456.789-10",
"birthdate": "1991-12-22",
"description": "Desenvolvedora Full-stack",
"is_seller": true,
"announcements": [
{
"createdAt": "2023-03-02",
"id": "526920e5-cf10-4690-9f17-120379144a7f",
"type": "Venda",
"title": "Fox G2, Unico Dono, Hiper Econômico",
"year": "2011",
"mileage": "112.000",
"price": "27.900",
"description": "VW Fox 2011, 5p, 1.0, 8v, 111k Km, vidro, trava, alarme, sensor de estacionamento, espelhos elétricos, ótimo de mecanica, ótimo de elétrica, ótimo de lata, bateria, velas, cabos de velas, bobina e pneus novos. Mega econômico, 17 km/l na estrada e 11 na cidade. Pequenos detalhes nos parachoques. Tabela R$ 31.800,00. Somente a vista R$ 28.000,00",
"vehicle_type": "Carro",
"cover_image": "https://img1.icarros.com/dbimg/galeriaimgmodelo/2/6886_1",
"is_sold": false,
"advertiserId": "5edc3a2f-55fd-4c15-b510-a0d8d6f05167",
"images_list": [
{
"id": "89dff4c7-5ef1-48c5-9390-2cdcaf70399a",
"image_url": "https://cdn.carrosp.com.br/img/6/full/volkswagen-fox-2011-americana-4960e4ef0e872ac688b1ceb2caa4776b.png"
},
{
"id": "fece626a-a332-466a-a9d9-0f4c8d33b818",
"image_url": "https://s3.ecompletocarros.dev/images/lojas/232/veiculos/25266/veiculoInfoVeiculoImagesMobile/vehicle_image_1592260062_4d4713169324ebfea213ba526b3a21b5.jpeg"
}
],
"comments": []
}
],
"address": {
"id": "35bbd5dd-d4bb-4bef-b623-ec283fcac638",
"cep": "12345678",
"state": "Minas Gerais",
"city": "Belo Horizonte",
"street": "Avenida Jorge Teixeira",
"number": "1041",
"complement": "casa"
}
}| Código do Erro | Descrição |
|---|---|
| 404 Not found | User not found. |
GET /user - FORMATO DE REQUISIÇÃO
VazioGET /users - FORMATO DE RESPOSTA - STATUS 200
[
{
"created_at": "2023-03-02",
"updated_at": "2023-03-02",
"id": "5edc3a2f-55fd-4c15-b510-a0d8d6f05167",
"name": "Camille",
"email": "cammille@mail.com",
"phone": "012 12345-6789",
"cpf": "123.456.789-10",
"birthdate": "1991-12-22",
"description": "Desenvolvedora Full-stack",
"is_seller": true,
"address": {
"id": "35bbd5dd-d4bb-4bef-b623-ec283fcac638",
"cep": "12345678",
"state": "Minas Gerais",
"city": "Belo Horizonte",
"street": "Avenida Jorge Teixeira",
"number": "1041",
"complement": "casa"
}
}
]Nenhum, máximo que pode acontecer é retornar uma lista vaziaPATCH /users - FORMATO DE REQUISIÇÃO
{
"name": "Camille Ribeiro"
}PATCH /user - FORMATO DE RESPOSTA - STATUS 200
{
"message": "Updated user",
"user": {
"created_at": "2023-03-02",
"updated_at": "2023-03-02",
"id": "5edc3a2f-55fd-4c15-b510-a0d8d6f05167",
"name": "Camille Ribeiro",
"email": "cammille@mail.com",
"phone": "012 12345-6789",
"cpf": "123.456.789-10",
"birthdate": "1991-12-22",
"description": "Desenvolvedora Full-stack",
"is_seller": true,
"address": {
"id": "35bbd5dd-d4bb-4bef-b623-ec283fcac638",
"cep": "12345678",
"state": "Minas Gerais",
"city": "Belo Horizonte",
"street": "Avenida Jorge Teixeira",
"number": "1041",
"complement": "casa"
}
}
}| Código do Erro | Descrição |
|---|---|
| 401 Unauthorized | Token required. |
DELETE /users - FORMATO DE REQUISIÇÃO
VazioDELETE /users - FORMATO DE RESPOSTA - STATUS 204
Vazio| Código do Erro | Descrição |
|---|---|
| 401 Unauthorized | Token required. |
PATCH /users/address - FORMATO DE REQUISIÇÃO
{
"number": 1042
}PATCH /users/address - FORMATO DE RESPOSTA
{
"message": "Updated address",
"user": {
"id": "35bbd5dd-d4bb-4bef-b623-ec283fcac638",
"cep": "12345678",
"state": "Minas Gerais",
"city": "Belo Horizonte",
"street": "Avenida Jorge Teixeira",
"number": "1042",
"complement": "casa"
}
}| Código do Erro | Descrição |
|---|---|
| 404 Not found | User not found. |
POST /announcement - FORMATO DE REQUISIÇÃO
{
"type": "Venda",
"title": "Fox G2, Unico Dono, Hiper Econômico",
"year": "2011",
"mileage": "112.000",
"price": "27.900",
"description": "VW Fox 2011, 5p, 1.0, 8v, 111k Km, vidro, trava, alarme, sensor de estacionamento, espelhos elétricos, ótimo de mecanica, ótimo de elétrica, ótimo de lata, bateria, velas, cabos de velas, bobina e pneus novos. Mega econômico, 17 km/l na estrada e 11 na cidade. Pequenos detalhes nos parachoques. Tabela R$ 31.800,00. Somente a vista R$ 28.000,00",
"vehicle_type": "Carro",
"cover_image": "https://img1.icarros.com/dbimg/galeriaimgmodelo/2/6886_1",
"images_list": [
"https://cdn.carrosp.com.br/img/6/full/volkswagen-fox-2011-americana-4960e4ef0e872ac688b1ceb2caa4776b.png",
"https://s3.ecompletocarros.dev/images/lojas/232/veiculos/25266/veiculoInfoVeiculoImagesMobile/vehicle_image_1592260062_4d4713169324ebfea213ba526b3a21b5.jpeg"
]
}POST /announcement - FORMATO DE RESPOSTA - STATUS 201
{
"createdAt": "2023-03-02",
"id": "c9953fe0-5728-41a7-a0f7-8abfdddf625b",
"type": "Venda",
"title": "Fox G2, Unico Dono, Hiper Econômico",
"year": "2011",
"mileage": "112.000",
"price": "27.900",
"description": "VW Fox 2011, 5p, 1.0, 8v, 111k Km, vidro, trava, alarme, sensor de estacionamento, espelhos elétricos, ótimo de mecanica, ótimo de elétrica, ótimo de lata, bateria, velas, cabos de velas, bobina e pneus novos. Mega econômico, 17 km/l na estrada e 11 na cidade. Pequenos detalhes nos parachoques. Tabela R$ 31.800,00. Somente a vista R$ 28.000,00",
"vehicle_type": "Carro",
"cover_image": "https://img1.icarros.com/dbimg/galeriaimgmodelo/2/6886_1",
"is_sold": false,
"advertiserId": "5edc3a2f-55fd-4c15-b510-a0d8d6f05167",
"images_list": [
{
"id": "692de442-bca7-41c4-976e-bb26d3e98cf1",
"image_url": "https://cdn.carrosp.com.br/img/6/full/volkswagen-fox-2011-americana-4960e4ef0e872ac688b1ceb2caa4776b.png"
},
{
"id": "0ed2cb0c-84ba-4990-800d-cf319ab63e01",
"image_url": "https://s3.ecompletocarros.dev/images/lojas/232/veiculos/25266/veiculoInfoVeiculoImagesMobile/vehicle_image_1592260062_4d4713169324ebfea213ba526b3a21b5.jpeg"
}
],
"comments": []
}| Código do Erro | Descrição |
|---|---|
| 403 Forbidden | This user cannot advertise! |
GET /announcement/:id - FORMATO DE REQUISIÇÃO
VazioGET /announcement/:id - FORMATO DE RESPOSTA - STATUS 200
{
"createdAt": "2023-03-02",
"id": "c9953fe0-5728-41a7-a0f7-8abfdddf625b",
"type": "Venda",
"title": "Fox G2, Unico Dono, Hiper Econômico",
"year": "2011",
"mileage": "112.000",
"price": "27.900",
"description": "VW Fox 2011, 5p, 1.0, 8v, 111k Km, vidro, trava, alarme, sensor de estacionamento, espelhos elétricos, ótimo de mecanica, ótimo de elétrica, ótimo de lata, bateria, velas, cabos de velas, bobina e pneus novos. Mega econômico, 17 km/l na estrada e 11 na cidade. Pequenos detalhes nos parachoques. Tabela R$ 31.800,00. Somente a vista R$ 28.000,00",
"vehicle_type": "Carro",
"cover_image": "https://img1.icarros.com/dbimg/galeriaimgmodelo/2/6886_1",
"is_sold": false,
"advertiserId": "5edc3a2f-55fd-4c15-b510-a0d8d6f05167",
"images_list": [
{
"id": "692de442-bca7-41c4-976e-bb26d3e98cf1",
"image_url": "https://cdn.carrosp.com.br/img/6/full/volkswagen-fox-2011-americana-4960e4ef0e872ac688b1ceb2caa4776b.png"
},
{
"id": "0ed2cb0c-84ba-4990-800d-cf319ab63e01",
"image_url": "https://s3.ecompletocarros.dev/images/lojas/232/veiculos/25266/veiculoInfoVeiculoImagesMobile/vehicle_image_1592260062_4d4713169324ebfea213ba526b3a21b5.jpeg"
}
],
"comments": []
}| Código do Erro | Descrição |
|---|---|
| 404 Not found | Announcement not found. |
PATCH /announcement/:id - FORMATO DE REQUISIÇÃO
{
"year": "2012"
}PATCH /announcement/:id - FORMATO DE RESPOSTA - STATUS 200
{
"createdAt": "2023-03-02",
"id": "c9953fe0-5728-41a7-a0f7-8abfdddf625b",
"type": "Venda",
"title": "Fox G2, Unico Dono, Hiper Econômico",
"year": "2012",
"mileage": "112.000",
"price": "27.900",
"description": "VW Fox 2011, 5p, 1.0, 8v, 111k Km, vidro, trava, alarme, sensor de estacionamento, espelhos elétricos, ótimo de mecanica, ótimo de elétrica, ótimo de lata, bateria, velas, cabos de velas, bobina e pneus novos. Mega econômico, 17 km/l na estrada e 11 na cidade. Pequenos detalhes nos parachoques. Tabela R$ 31.800,00. Somente a vista R$ 28.000,00",
"vehicle_type": "Carro",
"cover_image": "https://img1.icarros.com/dbimg/galeriaimgmodelo/2/6886_1",
"is_sold": false,
"advertiserId": "5edc3a2f-55fd-4c15-b510-a0d8d6f05167",
"images_list": [
{
"id": "692de442-bca7-41c4-976e-bb26d3e98cf1",
"image_url": "https://cdn.carrosp.com.br/img/6/full/volkswagen-fox-2011-americana-4960e4ef0e872ac688b1ceb2caa4776b.png"
},
{
"id": "0ed2cb0c-84ba-4990-800d-cf319ab63e01",
"image_url": "https://s3.ecompletocarros.dev/images/lojas/232/veiculos/25266/veiculoInfoVeiculoImagesMobile/vehicle_image_1592260062_4d4713169324ebfea213ba526b3a21b5.jpeg"
}
],
"comments": []
}| Código do Erro | Descrição |
|---|---|
| 404 Not found | This announcement don't exists! |
DELETE /announcement/:id - FORMATO DE REQUISIÇÃO
VazioDELETE /announcement/:id - FORMATO DE RESPOSTA - STATUS 204
Vazio| Código do Erro | Descrição |
|---|---|
| 404 Not found | This announcement don't exists! |
POST /comment/:id_announcement - FORMATO DE REQUISIÇÃO
{
"content": "Quando foi a última troca de oleo?"
}POST /comment/:id_announcement - FORMATO DE RESPOSTA - STATUS 201
{
"id": "e5f2318d-0dc2-4736-a051-680dbbaaa0fc",
"content": "Quando foi a última troca de oleo?",
"created_at": "2023-03-02T18:18:08.280Z",
"user": {
"created_at": "2023-03-02",
"updated_at": "2023-03-02",
"id": "5edc3a2f-55fd-4c15-b510-a0d8d6f05167",
"name": "Camille",
"email": "cammille@mail.com",
"phone": "012 12345-6789",
"cpf": "123.456.789-10",
"birthdate": "1991-12-22",
"description": "Desenvolvedora Full-stack",
"is_seller": true
},
"announcement": {
"createdAt": "02/03/2023",
"id": "c9953fe0-5728-41a7-a0f7-8abfdddf625b"
}
}| Código do Erro | Descrição |
|---|---|
| 404 Not found | Announcement not exists |
| 404 Not found | User not exist |
PATCH /comment/:id - FORMATO DE REQUISIÇÃO
{
"id": "e5f2318d-0dc2-4736-a051-680dbbaaa0fc",
"content": "Quando foi a última troca de óleo?",
"created_at": "2023-03-02T18:18:08.280Z"
}| Código do Erro | Descrição |
|---|---|
| 404 Not found | Comment not found |
| 403 Forbidden | You are not the owner of this comment |
DELETE /comment/:id - FORMATO DE REQUISIÇÃO
VazioDELETE /comment/:id - FORMATO DE RESPOSTA - STATUS 204
VazioGET /profile - FORMATO DE REQUISIÇÃO
VazioGET /profile - FORMATO DE RESPOSTA - STATUS 200
{
"created_at": "2023-03-02",
"updated_at": "2023-03-02",
"id": "5edc3a2f-55fd-4c15-b510-a0d8d6f05167",
"name": "Camille",
"email": "cammille@mail.com",
"phone": "012 12345-6789",
"cpf": "123.456.789-10",
"birthdate": "1991-12-22",
"description": "Desenvolvedora Full-stack",
"is_seller": true,
"announcements": [
{
"createdAt": "2023-03-02",
"id": "c9953fe0-5728-41a7-a0f7-8abfdddf625b",
"type": "Venda",
"title": "Fox G2, Unico Dono, Hiper Econômico",
"year": "2012",
"mileage": "112.000",
"price": "27.900",
"description": "VW Fox 2011, 5p, 1.0, 8v, 111k Km, vidro, trava, alarme, sensor de estacionamento, espelhos elétricos, ótimo de mecanica, ótimo de elétrica, ótimo de lata, bateria, velas, cabos de velas, bobina e pneus novos. Mega econômico, 17 km/l na estrada e 11 na cidade. Pequenos detalhes nos parachoques. Tabela R$ 31.800,00. Somente a vista R$ 28.000,00",
"vehicle_type": "Carro",
"cover_image": "https://img1.icarros.com/dbimg/galeriaimgmodelo/2/6886_1",
"is_sold": false,
"advertiserId": "5edc3a2f-55fd-4c15-b510-a0d8d6f05167",
"images_list": [
{
"id": "692de442-bca7-41c4-976e-bb26d3e98cf1",
"image_url": "https://cdn.carrosp.com.br/img/6/full/volkswagen-fox-2011-americana-4960e4ef0e872ac688b1ceb2caa4776b.png"
},
{
"id": "0ed2cb0c-84ba-4990-800d-cf319ab63e01",
"image_url": "https://s3.ecompletocarros.dev/images/lojas/232/veiculos/25266/veiculoInfoVeiculoImagesMobile/vehicle_image_1592260062_4d4713169324ebfea213ba526b3a21b5.jpeg"
}
],
"comments": [
{
"id": "e5f2318d-0dc2-4736-a051-680dbbaaa0fc",
"content": "Quando foi a última troca de óleo?",
"created_at": "2023-03-02T18:18:08.280Z"
}
]
}
],
"address": {
"id": "35bbd5dd-d4bb-4bef-b623-ec283fcac638",
"cep": "12345678",
"state": "Minas Gerais",
"city": "Belo Horizonte",
"street": "Avenida Jorge Teixeira",
"number": "1042",
"complement": "casa"
}
}POST /images/:id_announcement - FORMATO DE REQUISIÇÃO
{
"image_url": "https://s3.ecompletocarros.dev/images/lojas/232/veiculos/25266/veiculoInfoVeiculoImagesMobile/vehicle_image_1592260062_4d4713169324ebfea213ba526b3a21b5.jpeg"
}POST /images/:id_announcement - FORMATO DE RESPOSTA - STATUS 201
{
"id": "35bbd5dd-d4bb-4bef-b623-ec283fcac638",
"image_url": "https://s3.ecompletocarros.dev/images/lojas/232/veiculos/25266/veiculoInfoVeiculoImagesMobile/vehicle_image_1592260062_4d4713169324ebfea213ba526b3a21b5.jpeg",
"announcement_id": "692de442-bca7-41c4-976e-bb26d3e98cf1"
}| Código do Erro | Descrição |
|---|---|
| 404 Not found | Announcement not exists |
DELETE /images/:id - FORMATO DE REQUISIÇÃO
VazioDELETE /images/:id - FORMATO DE RESPOSTA - STATUS 204
Vazio| Código do Erro | Descrição |
|---|---|
| 404 Not found | Image not exists |