Nosso projeto tem o foco de um "Ekomerce" da Kenzie Academy com validações e verificações, reforçando a segurança e o desempenho!!!
Validação do admin
Method - POST
Endpoint - /auth/admins
Body - {
"email": "[email protected]",
"password": "123456"
}
Request - 200
Retornando o token de acesso do admin
Validação do usuário
Method - POST
Endpoint - /auth/customers
Body - {
"email": "[email protected]",
"password": "123456"
}
Request - 200
Retornando o token de acesso do usuário
Criando um admin
Method - POST
Endpoint - /admins
Body - {
"name": "Admin",
"email": "[email protected]",
"password": "123456"
}
Request - 201
Retorna admin referente as informações passada por body
Criando um usuário
Method - POST
Endpoint - /customers
Body - {
"name": "Silvio",
"last_name": "Romano",
"email": "[email protected]",
"password": "123456"
}
Request - 201
Retorna usuário referente as informações passada por body
Adicionando Endereço ao usuário
Method - POST
Endpoint - /customers/<int:customer_id>/addresses
Header - Authorization: Bearer <token_user>
Body - {
"name": "Rua Dom Pedro II",
"number": 79,
"complement": "Casa",
"zipcode": "12345-678",
"city": "João Pessoa",
"state": "PB"
}
Request - 201
Retorna endereço referente ao body
Adicionando um produto ao sistema (Apenas Admin)
Method - POST (ADMIN)
Endpoint - /products
Header - Authorization: Bearer <token_admin>
Body - {
"name":"Camiseta",
"description":"Camiseta Branca M",
"current_price":29.99,
"discount":0,
"amount_products":100,
"image_url":"https://img.elo7.com.br/product/main/2256D07/camiseta-branca-malha-fria-camiseta-para-trabalho.jpg"
}
Request - 201
Retorna produto referente ao body
Adicionar produto ao carinho do usuário
Method - POST
Endpoint - /customers/<int:customer_id>/cart/products/<int:product_id>
Header - Authorization: Bearer <token_user>
Body - No Content
Request - 201
Retorno do produto adicionado
Criando Ordem ao comprar item
Method - POST
Endpoint - /customers/<int:customer_id>/orders
Header - Authorization: Bearer <token_user>
Body - {
"invoice_url": https://url_tested_matrix;
"payment_type": Cartão de Credito;
}
Request - 201
Retorno a ordem da compra
Enviando Email da compra
Method - POST
Endpoint - /customers/<int:customer_id>/addresses/<int:address_id>/orders/<int:order_id>/email
Header - Authorization: Bearer <token_user>
Body - No Content
Request - 201
Envia Email para o usuário da compra
Trazendo todos os usuários cadastrados (APENAS ADMINs)
Method - GET (ADMIN)
Endpoint - /customers
Body - No Content
Request - 200
Retorna todos os usuários cadastrados
Trazendo usuário respectivo
Method - GET
Endpoint - /customers/<int:customer_id>
Header - Authorization: Bearer <token_user>
Body - No Content
Request - 200
Retorna um usuário respectivo
Trazendo todos os endereços de um usuário
Method - GET
Endpoint - /customers/<int:customer_id>/addresses
Header - Authorization: Bearer <token_user>
Body - No Content
Request - 200
Retorna todos os endereços cadastrados de um usuário
Trazendo endereços especificos dos usuários
Method - GET
Endpoint - /customers/<int:customer_id>/addresses/<int:address_id>
Header - Authorization: Bearer <token_user>
Body - No Content
Request - 200
Retorno
Trazendo todos os endereços (APENAS ADMINs)
Method - GET (ADMIN)
Endpoint - /addresses
Header - Authorization: Bearer <token_user>
Body - No Content
Request - 200
Retorno
Trazendo endereço especifico (APENAS ADMINs)
Method - GET (ADMIN)
Endpoint - /addresses/<int:address_id>
Header - Authorization: Bearer <token_user>
Body - No Content
Request - 200
Retorno
Fazendo alterações no usuário
Method - PATCH
Endpoint - /customers/<int:customer_id>
Header - Authorization: Bearer <token_user>
Body - {
"name": "Romano",
"last_name": "Silvio",
"email":"[email protected]",
}
Request - 200
Devem passar pelo menos um item no body, quantidade opcional
Fazendo alterações no endereço
Method - PATCH
Endpoint - /customers/<int:customer_id>/addresses/<int:address_id>
Header - Authorization: Bearer <token_user>
Body - {
"name": "Rua Dom Torreto",
"number": 857,
"complement": "Apartamento",
"zipcode": "12345-698",
"city": "Curitiba",
"state": "PR"
}
Request - 200
Devem passar pelo menos um item no body, quantidade opcional
Fazendo alterações no produto (APENAS ADMINs)
Method - PATCH (ADMIN)
Endpoint - /products/<int:product_id>
Header - Authorization: Bearer <token_admin>
Body - {
"name":"Camiseta G",
"description":"Camiseta Laranja",
"current_price":44.99,
"discount":22,
"amount_products":110,
"image_url":"https://img.elo7.com.br/product/main/2256D07/camiseta-branca-malha-fria-camiseta-para-trabalho.jpg"
}
Request - 201
Devem passar pelo menos um item no body, quantidade opcional
Fazendo alterações na quantidade de um produto no cart
Method - PATCH
Endpoint - /customers/<int:customer_id>/cart/products/<int:product_id>?quantity_product=value
Header - Authorization: Bearer <token_user>
Body - No Content
Request - 201
Valor passado por url quantity_product
Fazendo alteração no order
Method - PATCH
Endpoint - /customers/<int:customer_id>/orders/<int:order_id>
Header - Authorization: Bearer <token_user>
Body - {
"payment_type": "Boleto",
"invoice_url": "https://fiscal_boletod"
}
Request - 201
Devem passar pelo menos um item no body, quantidade opcional
Deletando todos os produtos do carrinho de um usuário
Method - DELETE
Endpoint - /customers/<int:customer_id>/cart
Header - Authorization: Bearer <token_user>
Body - no content
Request - 204
Sem Retorno
Deletando Produto especifico do carrinho de um usuário
Method - DELETE
Endpoint - /customers/<int:customer_id>/cart/products/<int:product_id>
Header - Authorization: Bearer <token_user>
Body - no content
Request - 204
Sem Retorno