{"info":{"_postman_id":"bedd1d18-6748-4a91-9b3a-555f9a2be277","name":"Order-Application","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[],"description":"<html><head></head><body></body></html>","owner":"50687802","collectionId":"bedd1d18-6748-4a91-9b3a-555f9a2be277","publishedId":"2sBXcLhdiG","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"},"publishDate":"2026-03-09T23:18:59.000Z"},"item":[{"name":"Auth","item":[{"name":"Login","id":"8bb5c19b-c30f-40b1-be98-e2ef325fae4e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"email\": \"admin@email.com\",\r\n  \"password\": \"123456\"\r\n}","options":{"raw":{"language":"json"}}},"url":"http://localhost:3000/login","description":"<h2 id=\"login\">Login</h2>\n<p>Autentica um usuário validando suas credenciais e retorna um token JWT em caso de sucesso. Este token deve ser utilizado nas requisições subsequentes que exigem autorização.</p>\n<hr />\n<h3 id=\"corpo-da-requisição\">Corpo da Requisição</h3>\n<p>O corpo da requisição deve ser enviado como <strong>JSON</strong> (<code>application/json</code>).</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Obrigatório</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>email</code></td>\n<td>string</td>\n<td>✅ Sim</td>\n<td>O endereço de e-mail cadastrado do usuário</td>\n</tr>\n<tr>\n<td><code>password</code></td>\n<td>string</td>\n<td>✅ Sim</td>\n<td>A senha do usuário</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Exemplo:</strong></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"email\": \"admin@email.com\",\n  \"password\": \"123456\"\n}\n\n</code></pre>\n<hr />\n<h3 id=\"resposta\">Resposta</h3>\n<p>Em caso de sucesso, o endpoint retorna <strong>HTTP 200</strong> com os seguintes campos:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>user</code></td>\n<td>string</td>\n<td>O e-mail do usuário autenticado.</td>\n</tr>\n<tr>\n<td><code>token</code></td>\n<td>string</td>\n<td>Um token JWT assinado para ser usado na autenticação.</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Exemplo:</strong></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"user\": \"admin@email.com\",\n  \"token\": \"&lt;token JWT&gt;\"\n}\n\n</code></pre>\n<hr />\n<h3 id=\"uso\">Uso</h3>\n<p>Inclua o <code>token</code> retornado no cabeçalho <code>Authorization</code> das requisições protegidas:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>Authorization: Bearer &lt;token&gt;\n\n</code></pre>","urlObject":{"protocol":"http","port":"3000","path":["login"],"host":["localhost"],"query":[],"variable":[]}},"response":[],"_postman_id":"8bb5c19b-c30f-40b1-be98-e2ef325fae4e"}],"id":"f1c4ebc1-0363-42b9-b62e-1629c951c205","_postman_id":"f1c4ebc1-0363-42b9-b62e-1629c951c205","description":""},{"name":"Orders","item":[{"name":"New Order","id":"c205cb06-0ae3-43b0-8391-cbff86c373a0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"numeroPedido\": \"v5\",\r\n    \"valorTotal\": 40000,\r\n    \"dataCriacao\": \"2023-07-19T12:24:11.5299601+00:00\",\r\n    \"items\": [\r\n        {\r\n        \"idItem\": \"123\",\r\n        \"quantidadeItem\": 2,\r\n        \"valorItem\": 10000\r\n        },\r\n        {\r\n        \"idItem\": \"321\",\r\n        \"quantidadeItem\": 1,\r\n        \"valorItem\": 10000\r\n        },\r\n        {\r\n        \"idItem\": \"456\",\r\n        \"quantidadeItem\": 2,\r\n        \"valorItem\": 10000\r\n        },\r\n        {\r\n        \"idItem\": \"654\",\r\n        \"quantidadeItem\": 1,\r\n        \"valorItem\": 10000\r\n        }\r\n    ]\r\n}","options":{"raw":{"language":"json"}}},"url":"http://localhost:3000/order ","description":"<h2 id=\"novo-pedido\">Novo Pedido</h2>\n<p>Cria um novo pedido no sistema, enviando os detalhes do pedido incluindo os itens, valor total e data de criação.</p>\n<p><strong>Método:</strong> <code>POST</code><br /><strong>URL:</strong> <code>http://localhost:3000/order</code></p>\n<hr />\n<h2 id=\"corpo-da-requisição\">Corpo da Requisição</h2>\n<p>O corpo da requisição deve ser enviado como <strong>JSON</strong> com os seguintes campos:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>numeroPedido</code></td>\n<td><code>string</code></td>\n<td>Identificador único do pedido</td>\n</tr>\n<tr>\n<td><code>valorTotal</code></td>\n<td><code>integer</code></td>\n<td>Valor total do pedido</td>\n</tr>\n<tr>\n<td><code>dataCriacao</code></td>\n<td><code>string</code></td>\n<td>Data e hora de criação</td>\n</tr>\n<tr>\n<td><code>items</code></td>\n<td><code>array</code></td>\n<td>Lista de itens incluídos no pedido</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"objeto-do-array-de-itens\">Objeto do Array de Itens</h3>\n<p>Cada objeto dentro do array <code>items</code> contém:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>idItem</code></td>\n<td><code>string</code></td>\n<td>Identificador único do item</td>\n</tr>\n<tr>\n<td><code>quantidadeItem</code></td>\n<td><code>integer</code></td>\n<td>Quantidade do item no pedido</td>\n</tr>\n<tr>\n<td><code>valorItem</code></td>\n<td><code>integer</code></td>\n<td>Valor unitário do item</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"exemplo-de-corpo-da-requisição\">Exemplo de Corpo da Requisição</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"numeroPedido\": \"v10089015vdb-01\",\n  \"valorTotal\": 10000,\n  \"dataCriacao\": \"2023-07-19T12:24:11.5299601+00:00\",\n  \"items\": [\n    { \"idItem\": \"2434\", \"quantidadeItem\": 1, \"valorItem\": 1000 }\n  ]\n}\n\n</code></pre>\n<hr />\n<h2 id=\"resposta\">Resposta</h2>\n<h3 id=\"201-created--pedido-criado-com-sucesso\"><code>201 Created</code> — Pedido criado com sucesso</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"message\": \"O pedido foi criado com sucesso!\"\n}\n\n</code></pre>\n<p>Retornado quando o pedido é criado com sucesso. A resposta confirma a operação com uma mensagem de sucesso.</p>\n","urlObject":{"protocol":"http","port":"3000","path":["order "],"host":["localhost"],"query":[],"variable":[]}},"response":[],"_postman_id":"c205cb06-0ae3-43b0-8391-cbff86c373a0"},{"name":"List Orders","id":"f99ad1cf-0ad6-4edb-8526-195ed4039870","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"GET","header":[],"url":"http://localhost:3000/order/list","description":"<h2 id=\"listar-pedidos\">Listar Pedidos</h2>\n<p>Retorna uma lista com todos os pedidos cadastrados no sistema. A resposta é um array de objetos, onde cada objeto contém o identificador do pedido, o valor total e a data de criação.</p>\n<hr />\n<p><strong>Método:</strong> <code>GET</code><br /><strong>URL:</strong> <code>http://localhost:3000/order/list</code></p>\n<hr />\n<h2 id=\"campos-da-resposta\">Campos da Resposta</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>orderId</code></td>\n<td><code>string</code></td>\n<td>Identificador único do pedido.</td>\n</tr>\n<tr>\n<td><code>value</code></td>\n<td><code>string</code></td>\n<td>Valor monetário total do pedido.</td>\n</tr>\n<tr>\n<td><code>creationDate</code></td>\n<td><code>string</code></td>\n<td>Timestamp indicando quando o pedido foi criado.</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h2 id=\"exemplo-de-resposta\">Exemplo de Resposta</h2>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">[\n  {\n    \"orderId\": \"v10089015vdb-01\",\n    \"value\": \"10000.00\",\n    \"creationDate\": \"2023-07-19T12:24:11.000Z\"\n  },\n  {\n    \"orderId\": \"v2\",\n    \"value\": \"4000.00\",\n    \"creationDate\": \"2023-07-19T12:24:11.000Z\"\n  },\n  {\n    \"orderId\": \"v3\",\n    \"value\": \"40000.00\",\n    \"creationDate\": \"2023-07-19T12:24:11.000Z\"\n  },\n  {\n    \"orderId\": \"v4\",\n    \"value\": \"40000.00\",\n    \"creationDate\": \"2023-07-19T12:24:11.000Z\"\n  }\n]\n\n</code></pre>\n<p><strong>Código de Status:</strong> <code>200 OK</code></p>\n","urlObject":{"protocol":"http","port":"3000","path":["order","list"],"host":["localhost"],"query":[],"variable":[]}},"response":[],"_postman_id":"f99ad1cf-0ad6-4edb-8526-195ed4039870"},{"name":"Find Order By ID","id":"d802aacf-1075-4d9b-a14a-a62e4063f718","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"GET","header":[],"url":"http://localhost:3000/order/v10089015vdb-01","description":"<h2 id=\"buscar-pedido-por-id\">Buscar Pedido por ID</h2>\n<p>Retorna os detalhes de um pedido específico com base no seu identificador único (<code>orderId</code>).</p>\n<hr />\n<h3 id=\"método-e-url\">Método e URL</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>GET http://localhost:3000/order/:orderId\n\n</code></pre><hr />\n<h3 id=\"parâmetros-de-caminho-path-variables\">Parâmetros de Caminho (Path Variables)</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parâmetro</th>\n<th>Tipo</th>\n<th>Obrigatório</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>orderId</code></td>\n<td>string</td>\n<td>Sim</td>\n<td>Identificador único do pedido. Ex: <code>v10089015vdb-01</code></td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h3 id=\"exemplo-de-requisição\">Exemplo de Requisição</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>GET http://localhost:3000/order/v10089015vdb-01\n\n</code></pre><hr />\n<h3 id=\"resposta-de-sucesso\">Resposta de Sucesso</h3>\n<p><strong>Código:</strong> <code>200 OK</code></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"order\": {\n    \"orderId\": \"v10089015vdb-01\",\n    \"value\": \"10000.00\",\n    \"creationDate\": \"2023-07-19T12:24:11.000Z\"\n  },\n  \"items\": [\n    {\n      \"id\": 2,\n      \"orderId\": \"v10089015vdb-01\",\n      \"productId\": 2434,\n      \"quantity\": 1,\n      \"price\": \"1000.00\"\n    }\n  ]\n}\n\n</code></pre>\n<hr />\n<h3 id=\"campos-da-resposta\">Campos da Resposta</h3>\n<p><strong>Objeto</strong> <strong><code>order</code></strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>orderId</code></td>\n<td>string</td>\n<td>Identificador único do pedido.</td>\n</tr>\n<tr>\n<td><code>value</code></td>\n<td>string</td>\n<td>Valor total do pedido.</td>\n</tr>\n<tr>\n<td><code>creationDate</code></td>\n<td>string</td>\n<td>Data e hora de criação do pedido.</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Array</strong> <strong><code>items</code></strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>integer</td>\n<td>Identificador único do item.</td>\n</tr>\n<tr>\n<td><code>orderId</code></td>\n<td>string</td>\n<td>Identificador do pedido ao qual o item pertence.</td>\n</tr>\n<tr>\n<td><code>productId</code></td>\n<td>integer</td>\n<td>Identificador do produto.</td>\n</tr>\n<tr>\n<td><code>quantity</code></td>\n<td>integer</td>\n<td>Quantidade do produto no pedido.</td>\n</tr>\n<tr>\n<td><code>price</code></td>\n<td>string</td>\n<td>Preço unitário do produto.</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h3 id=\"possíveis-erros\">Possíveis Erros</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Código</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>404</code></td>\n<td>Pedido não encontrado para o ID informado.</td>\n</tr>\n<tr>\n<td><code>500</code></td>\n<td>Erro interno do servidor</td>\n</tr>\n<tr>\n<td></td>\n<td></td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"http","port":"3000","path":["order","v10089015vdb-01"],"host":["localhost"],"query":[],"variable":[]}},"response":[],"_postman_id":"d802aacf-1075-4d9b-a14a-a62e4063f718"},{"name":"Update Order","id":"50dd2793-bf84-45b1-b238-da159b17afa1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"order\": {\r\n        \"orderId\": \"v10089015vdb-01\",\r\n        \"value\": \"15000.00\",\r\n        \"creationDate\": \"2023-07-19T12:24:11.000Z\"\r\n    },\r\n    \"items\": [\r\n        {\r\n            \"id\": 2,\r\n            \"orderId\": \"v10089015vdb-01\",\r\n            \"productId\": 2434,\r\n            \"quantity\": 1,\r\n            \"price\": \"1000.00\"\r\n        }\r\n    ]\r\n}","options":{"raw":{"language":"json"}}},"url":"http://localhost:3000/order/v2","description":"<h2 id=\"atualizar-pedido\">Atualizar Pedido</h2>\n<p>Atualiza um pedido existente no sistema.</p>\n<hr />\n<h3 id=\"endpoint\">Endpoint</h3>\n<p><code>PUT http://localhost:3000/order/</code>v10089015vdb-01</p>\n<hr />\n<h3 id=\"corpo-da-requisição\">Corpo da Requisição</h3>\n<p>O corpo da requisição deve ser enviado como <strong>JSON</strong> e contém os campos:</p>\n<h4 id=\"order-objeto\"><code>order</code> (objeto)</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>orderId</code></td>\n<td><code>string</code></td>\n<td>Identificador único do pedido a ser atualizado.</td>\n</tr>\n<tr>\n<td><code>value</code></td>\n<td><code>string</code></td>\n<td>Valor total do pedido.</td>\n</tr>\n<tr>\n<td><code>creationDate</code></td>\n<td><code>string</code></td>\n<td>Data de criação do pedido.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"items-array-de-objetos\"><code>items</code> (array de objetos)</h4>\n<p>Cada elemento do array <code>items</code> representa um produto associado ao pedido.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Tipo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td><code>integer</code></td>\n<td>Identificador único do item do pedido.</td>\n</tr>\n<tr>\n<td><code>orderId</code></td>\n<td><code>string</code></td>\n<td>Identificador do pedido ao qual este item pertence. Deve corresponder ao <code>order.orderId</code>.</td>\n</tr>\n<tr>\n<td><code>productId</code></td>\n<td><code>integer</code></td>\n<td>Identificador do produto sendo pedido.</td>\n</tr>\n<tr>\n<td><code>quantity</code></td>\n<td><code>integer</code></td>\n<td>Quantidade do produto.</td>\n</tr>\n<tr>\n<td><code>price</code></td>\n<td><code>string</code></td>\n<td>Preço unitário do produto.</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Exemplo de corpo da requisição:</strong></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"order\": {\n    \"orderId\": \"v10089015vdb-01\",\n    \"value\": \"15000.00\",\n    \"creationDate\": \"2023-07-19T12:24:11.000Z\"\n  },\n  \"items\": [\n    {\n      \"id\": 2,\n      \"orderId\": \"v10089015vdb-01\",\n      \"productId\": 2434,\n      \"quantity\": 1,\n      \"price\": \"1000.00\"\n    }\n  ]\n}\n\n</code></pre>\n<hr />\n<h3 id=\"resposta\">Resposta</h3>\n<h4 id=\"200-ok--pedido-atualizado-com-sucesso\"><code>200 OK</code> — Pedido atualizado com sucesso</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"message\": \"Pedido atualizado com sucesso!\"\n}\n\n</code></pre>\n<p>A mensagem <code>\"Pedido atualizado com sucesso!\"</code> confirma que o pedido foi atualizado com êxito.</p>\n","urlObject":{"protocol":"http","port":"3000","path":["order","v2"],"host":["localhost"],"query":[],"variable":[]}},"response":[],"_postman_id":"50dd2793-bf84-45b1-b238-da159b17afa1"},{"name":"Delete Order","id":"505a9a47-8eda-4bf7-b966-189b425238c1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"DELETE","header":[],"body":{"mode":"raw","raw":""},"url":"http://localhost:3000/order/v5","description":"<h2 id=\"deletar-pedido\">Deletar Pedido</h2>\n<p>Remove um pedido existente do sistema.</p>\n<hr />\n<p><strong>Método:</strong> <code>DELETE</code><br /><strong>URL:</strong> <code>http://localhost:3000/order/</code>v10089015vdb-01</p>\n<hr />\n<h3 id=\"resposta\">Resposta</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Código de Status</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>200 OK</code></td>\n<td>O pedido foi deletado com sucesso.</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Corpo da Resposta (Sucesso):</strong></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"message\": \"Pedido deletado com sucesso!\"\n}\n\n</code></pre>\n<blockquote>\n<p><strong>Observação:</strong> A resposta retorna uma mensagem de confirmação indicando que o pedido foi removido com sucesso.</p>\n</blockquote>\n","urlObject":{"protocol":"http","port":"3000","path":["order","v5"],"host":["localhost"],"query":[],"variable":[]}},"response":[],"_postman_id":"505a9a47-8eda-4bf7-b966-189b425238c1"}],"id":"1f25a6ad-9dd1-4f16-b5b7-63bfe7807a67","_postman_id":"1f25a6ad-9dd1-4f16-b5b7-63bfe7807a67","description":""}]}