{"info":{"_postman_id":"8cb0fe1f-edcd-435f-9b9b-98d389768288","name":"Maker - IO","description":"<html><head></head><body><p>O <strong>Maker IO</strong> é o barramento de mensageria da Maker desenvolvido para conectar, de forma assíncrona e segura, os diversos sistemas que compõem o ecossistema de e-commerce e varejo — como ERPs, PIMs, WMSs, plataformas e marketplaces. Ele atua como um hub central, garantindo a troca de dados em tempo real com padronização e desacoplamento entre as aplicações.</p>\n<p><strong>O que é possível fazer com esta integração</strong><br>Com a integração ao Maker IO, você consegue automatizar e centralizar os principais fluxos operacionais e comerciais do negócio:</p>\n<ul>\n<li><p><strong>Catálogo e Produtos:</strong> Sincronizar cadastros de produtos, SKUs, variações, marcas e categorias em tempo real (product, sku).</p>\n</li>\n<li><p><strong>Estoque e Preços:</strong> Atualizar dinamicamente os saldos de estoque (físico, virtual, pré-venda ou <em>cross-docking</em>) e tabelas de preço (stock, price).</p>\n</li>\n<li><p><strong>Gestão de Pedidos:</strong> Acompanhar todo o ciclo de vida da venda, desde a criação do pedido e atualização do status de pagamento até cancelamentos, trocas e devoluções (order, order-payment-status, order-treatment).</p>\n</li>\n<li><p><strong>Logística e Expedição:</strong> Transmitir dados de transportadoras, códigos de rastreamento, volumes de embalagem e documentos fiscais de transporte (shipment, carrier, transport-document).</p>\n</li>\n</ul>\n<p><strong>Como acontece a integração:</strong> A comunicação no Maker IO baseia-se no modelo de arquitetura <strong>Pub/Sub (Publish/Subscribe)</strong> e utiliza requisições HTTP REST autenticadas por Bearer Token (JWT):</p>\n<ol>\n<li><p><a href=\"#6ed770ff-1713-4cee-9d5d-7b7afe74779a\">Autenticação</a><strong>:</strong> A aplicação envia suas credenciais para o endpoint <code>/token</code> e obtém um token JWT com validade de 2 horas para autenticar as requisições posteriores.</p>\n</li>\n<li><p><a href=\"#1deb6f21-f1e5-4e43-a634-072bf119aa5c\">Publicação (Publish)</a><strong>:</strong> Quando um dado é alterado no sistema de origem (ex.: um produto é atualizado no ERP), uma mensagem estruturada em formato JSON é publicada no <em>tópico</em> correspondente do Maker IO.</p>\n</li>\n<li><p><a href=\"#01ce6e57-3000-4352-b4e1-21241c895fbd\">Assinatura (Subscribe) e Filas</a><strong>:</strong> As aplicações consumidoras se inscrevem nos tópicos dos quais precisam receber dados. O Maker IO cria e gerencia uma fila exclusiva para cada consumidor, permitindo até mesmo a aplicação de filtros via <code>jsonpath</code>.</p>\n</li>\n<li><p><a href=\"#de90d461-0107-4370-b9bc-47e1d8ca45db\">Consumo e Confirmação (ACK)</a><strong>:</strong> O sistema consumidor busca as mensagens disponíveis em sua fila. Após salvar ou processar a informação com sucesso, ele envia uma confirmação de recebimento (<code>ACK</code>), removendo a mensagem da fila e garantindo a integridade do processo sem perda de dados.</p>\n</li>\n</ol>\n<h3 id=\"termos-utilizados\">Termos Utilizados</h3>\n<p>Abaixo alguns temos utilizados nas URL das requisições e o seu significado:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Termo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>app-id</code></td>\n<td>Identificador único da aplicação junto ao Maker IO.</td>\n</tr>\n<tr>\n<td><code>queueId</code></td>\n<td>UUID de identificação da fila.</td>\n</tr>\n<tr>\n<td><code>consume-topicId</code></td>\n<td>Identificador do tópico da mensagem, pode ser <code>location</code>, <code>product</code>, <code>sku</code>, <code>bundle</code>, <code>stock</code>, <code>price</code>, <code>customer</code>, <code>order</code>, <code>carrier</code>, <code>carrier-order-notify</code>, <code>order-treatment</code>, <code>order-payment-status</code>, <code>order-exception</code>, <code>order-relocation</code>, <code>fulfillment-status</code>, <code>feedback</code>.</td>\n</tr>\n<tr>\n<td><code>messageId</code></td>\n<td>UUID de identificação da mensagem.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"canais-de-comunicação\">Canais de Comunicação</h3>\n<p>Caso queira contratar algum dos nossos serviços ou<br>expandir os termos do contrato atual, entre em contato com nosso time<br>comercial através do e-mail: <a href=\"https://mailto:comercial@makertec.com.br\">comercial@makertec.com.br</a>.<br>Caso<br>tenha algum problemas na API ou dúvidas na configuração e utilização,<br>entre em contato com nosso time de suporte pelo e-mail: <a href=\"https://mailto:suporte@markertec.com.br\">suporte@makertec.com.br</a> ou pelo telefone (45) 99859 0373.</p>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[],"owner":"29661909","collectionId":"8cb0fe1f-edcd-435f-9b9b-98d389768288","publishedId":"2sBYHRW2B7","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"},"publishDate":"2026-10-14T20:40:49.000Z"},"item":[{"name":"V2","item":[{"name":"Login, Permissions e Subscribe","item":[{"name":"Login","item":[{"name":"Login","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if(Math.trunc(pm.response.code / 100) === 2){\r\n    var jsonData = pm.response.json();\r\n    pm.environment.set(\"token\", jsonData.token);\r\n}"],"id":"51b33529-4a29-4808-9e9e-27e1000b9475"}}],"id":"9d3cf5c8-0de4-45da-bed8-0014a035b7d1","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"username\": \"{{app-user}}\",\r\n    \"password\": \"{{app-pass}}\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/token","description":"<p>Este endpoint realiza a autenticação e geração do token da aplicação junto à plataforma Maker IO.</p>\n<p>O token gerado possui tempo de expiração determinado pela plataforma. Após sua expiração, uma nova autenticação deverá ser realizada para obtenção de um novo token.</p>\n<p>O payload possui os seguintes campos:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Campo</strong></th>\n<th><strong>Obrigatório</strong></th>\n<th><strong>Tipo de dado</strong></th>\n<th><strong>Descrição</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>username</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Usuário da aplicação fornecido pelo Time Maker IO</td>\n</tr>\n<tr>\n<td><code>password</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Senha da aplicação fornecida pelo Time Maker IO</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","token"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[{"id":"ed9896a5-613e-4d2a-b601-788655189af7","name":"Login","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"username\": \"{{app-user}}\",\r\n    \"password\": \"{{app-pass}}\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/token"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"token\": \"eyJraWQiOiJrZXlzL2xhbWJkYS1hdXRoLWp3dF9saW54aW9fYXBpX3Byb2RfY2xpZW50LnB1YiIsInR5cCI6IkpXVCIsImFsZyI6IlJTMjU2In0.eyJpc3MiOiJsYW1iZGEtYXV0aC1qd3RfbGlueGlvX2FwaV9wcm9kX2NsaWVudCIsInN1YiI6InN5cy1kaWctaW8tbWFrZXItc2VsZmRldiIsIm5iZiI6MTc5MDM3MDUyMSwic2NvcGVzIjpbImlwYXVzZXJzIiwicnVuZGVjay1wcmQtb3BlcmF0aW9ucy10b29scy1yZWFkIiwiZGF0YWxha2UtYXBpLWRpZy1jb21tZXJjZSIsImRhdGFsYWtlLWFwaS1hdXRoIiwiZGF0YWxha2UtYXBpLW1vZC1zZXRhZGlnaXRhbCIsImRhdGFsYWtlLWFwaS12YXItaGlwZXIiLCJkYXRhbGFrZS1hcGktc2hvLW1pbGxlbml1bSIsImRhdGFsYWtlLWFwaS12YXItdmhzeXMiLCJsaW54aW8tYXBpLXByb2QtY2xpZW50LWhvbW9sb2dhdGlvbiIsImxpbnhpby1hcGktc3RnLWNsaWVudCJdLCJleHAiOjE3OTAzNzc3MjEsImlhdCI6MTc5MDM3MDUyMX0.eKxy38egLcaqh_hRCf0SYhvdgEQaCm77zaSJOeIGkj0nTRYzp0jnQjBruAAn43tvD_WLXzDI3cinbZTsdy3k08EOGCuTHUEs1heuU2JYUMOszLx0siD-kEsrF7WhTLHKmAt00iCcpoVp2OfkQ_qbdUVwB_kAq1cJ0jT2k5ppyzhGeMOxYhlAC61RPbIc4EthO3IkNOuRyuSoortBLYvS1kDdsHCliH9i-mJpnT76nGmaFQDBa3y9m5k-CqZuviAjheQgOS8PaISxfDvglz0HtOGcpthnPGV992IaGDriiCaKfg4vzjRvnVOst4lLVQPtEPbLDF_1CDitPoYblHPWn4imPkFbR_cRz3Jsp_Qs9SjQ0Vt5yzRamtsrezinud_R5w2i5IehBPUGKjlAsAx1gZK2JW7mKN1NNB3KRFeb1CzMCnqyDv0mUNgWuA90bVyRzQGkyybhYveEDJxweLmYXYAE2gMwNfb6nn4E6JFuhwn8HDtxwL0RU1SKQLW97c_r1_cOIenrlM9OjFCY0jJH3ootU5TxZwKN-j4xt1vYPW1Dt2TWfD8q45gMD36U0-FIwptXOcHCQvga9szWpDMmtBWuP0QawMGbt08WKvIGaqgTZ_Oj2Prk8IUef9TAHFuizmJ-y8hOgTDid7CSLx9ThcCjd39Cofsq6jNMFLsACQI\"\n}"},{"id":"8724629c-3047-41c4-9e3b-ad28e6dc6f61","name":"Falha na autenticação","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"username\": \"{{app-user}}\",\r\n    \"password\": \"{{app-pass}}\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/token"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": \"User or password not found.\"\n}"}],"_postman_id":"9d3cf5c8-0de4-45da-bed8-0014a035b7d1"}],"id":"6ed770ff-1713-4cee-9d5d-7b7afe74779a","description":"<p>A <strong>Maker IO Integration API</strong> utiliza o padrão <strong>OAuth2 / JWT (JSON Web Token)</strong> para autenticação e autorização de requisições.</p>\n<p>O processo de login é a etapa inicial em que a aplicação envia suas credenciais de integração (<code>username</code> e <code>password</code>) para o serviço de autenticação, essas credenciais são fornecidas pelo time Maker. Em caso de validação bem-sucedida, o Maker IO retorna um token de acesso temporário (<strong>Bearer Token</strong>). Este token deve ser enviado no cabeçalho (<em>Header</em>) de todas as chamadas subsequentes aos endpoints da API (como <code>permissions</code>, <code>subscriptions</code> e publicação de tópicos). O token gerado tem duração de 2 horas, e um novo <strong>Login</strong> deve ser feito para atualizar esse token.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>POST</code></p>\n</li>\n<li><p><strong>URL:</strong> <code>/v2/token</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n<li><p><strong>Autenticação:</strong> Não exige token prévio (Endpoint público de autenticação).</p>\n</li>\n</ul>\n","_postman_id":"6ed770ff-1713-4cee-9d5d-7b7afe74779a"},{"name":"Permissions","item":[{"name":"Permissions","id":"c64b29df-8894-48a7-aa54-c2699c4e6665","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"GET","header":[],"url":"{{api-host}}/v2/applications/{{app-id}}/permissions","description":"<p>Este endpoint consulta todas as permissões disponíveis para a aplicação informada.</p>\n<p>As permissões determinam quais operações a aplicação poderá executar na plataforma, como publicação de mensagens, criação de assinaturas, consumo de eventos e demais recursos disponibilizados pelo Maker IO.</p>\n<p>É necessário que a requisição seja realizada utilizando um token de autenticação válido e que o <code>applicationId</code> informado pertença à aplicação autenticada.</p>\n<p>Em caso de sucesso, será retornada a relação completa das permissões configuradas para a aplicação, permitindo identificar quais tópicos e operações estão disponíveis para utilização.</p>\n<p>A request retorna 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>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>publish</code></td>\n<td>Array com os tópicos e o indentificador da sua aplicação que serão apresentados à outra aplicação para receber mensagens.</td>\n</tr>\n<tr>\n<td><code>publish[].topicId</code></td>\n<td>Identificador do tópico da sua aplicação que está habilitado para receber mensagens de outras aplicações.</td>\n</tr>\n<tr>\n<td><code>publish[].userId</code></td>\n<td>Identificador da sua aplicação que será apresentado à outras aplicações.</td>\n</tr>\n<tr>\n<td><code>subscribe</code></td>\n<td>Array com os tópicos e identificadores das aplicações que podem ter mensagens roteada e consumidas pela sua aplicação.</td>\n</tr>\n<tr>\n<td><code>subscribe[].topicId</code></td>\n<td>Identificador do tópico que sua aplicação tem permissão para consumir de outra aplicação.</td>\n</tr>\n<tr>\n<td><code>subscribe[].user</code></td>\n<td>Identificador da sua aplicação que será apresentado à aplicação que publicou a mensagem.</td>\n</tr>\n<tr>\n<td><code>subscribe[].producerApplicationId</code></td>\n<td>Identificador da aplicação que publicou a mensagem no tópico.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","permissions"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[{"id":"d967e70e-5f58-4c7f-ae7a-bab0b9f54198","name":"Permissions","originalRequest":{"method":"GET","header":[],"url":"{{api-host}}/v2/applications/maker-selfdev/permissions"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"publish\": [\n        {\n            \"topicId\": \"carrier-order-notify\",\n            \"user\": \"sys-dig-io-maker-selfdev\"\n        },\n        {\n            \"topicId\": \"order\",\n            \"user\": \"sys-dig-io-maker-selfdev\"\n        },\n        {\n            \"topicId\": \"price\",\n            \"user\": \"sys-dig-io-maker-selfdev\"\n        },\n        {\n            \"topicId\": \"fulfillment-status\",\n            \"user\": \"sys-dig-io-maker-selfdev\"\n        },\n        {\n            \"topicId\": \"order-treatment\",\n            \"user\": \"sys-dig-io-maker-selfdev\"\n        },\n        {\n            \"topicId\": \"product\",\n            \"user\": \"sys-dig-io-maker-selfdev\"\n        },\n        {\n            \"topicId\": \"order-exception\",\n            \"user\": \"sys-dig-io-maker-selfdev\"\n        },\n        {\n            \"topicId\": \"order-payment-status\",\n            \"user\": \"sys-dig-io-maker-selfdev\"\n        },\n        {\n            \"topicId\": \"sku\",\n            \"user\": \"sys-dig-io-maker-selfdev\"\n        },\n        {\n            \"topicId\": \"location\",\n            \"user\": \"sys-dig-io-maker-selfdev\"\n        },\n        {\n            \"topicId\": \"carrier\",\n            \"user\": \"sys-dig-io-maker-selfdev\"\n        },\n        {\n            \"topicId\": \"customer\",\n            \"user\": \"sys-dig-io-maker-selfdev\"\n        },\n        {\n            \"topicId\": \"stock\",\n            \"user\": \"sys-dig-io-maker-selfdev\"\n        },\n        {\n            \"topicId\": \"order-relocation\",\n            \"user\": \"sys-dig-io-maker-selfdev\"\n        }\n    ],\n    \"subscribe\": [\n        {\n            \"topicId\": \"order-relocation\",\n            \"user\": \"sys-dig-io-maker-selfdev\",\n            \"producerApplicationId\": \"maker-selfdev\"\n        },\n        {\n            \"topicId\": \"order-treatment\",\n            \"user\": \"sys-dig-io-maker-selfdev\",\n            \"producerApplicationId\": \"maker-selfdev\"\n        },\n        {\n            \"topicId\": \"order-payment-status\",\n            \"user\": \"sys-dig-io-maker-selfdev\",\n            \"producerApplicationId\": \"maker-selfdev\"\n        },\n        {\n            \"topicId\": \"order\",\n            \"user\": \"sys-dig-io-maker-selfdev\",\n            \"producerApplicationId\": \"maker-selfdev\"\n        },\n        {\n            \"topicId\": \"order-exception\",\n            \"user\": \"sys-dig-io-maker-selfdev\",\n            \"producerApplicationId\": \"maker-selfdev\"\n        },\n        {\n            \"topicId\": \"feedback\",\n            \"user\": \"sys-dig-io-maker-selfdev\",\n            \"producerApplicationId\": \"maker-selfdev\"\n        },\n        {\n            \"topicId\": \"stock\",\n            \"user\": \"sys-dig-io-maker-selfdev\",\n            \"producerApplicationId\": \"maker-selfdev\"\n        },\n        {\n            \"topicId\": \"sku\",\n            \"user\": \"sys-dig-io-maker-selfdev\",\n            \"producerApplicationId\": \"maker-selfdev\"\n        },\n        {\n            \"topicId\": \"fulfillment-status\",\n            \"user\": \"sys-dig-io-maker-selfdev\",\n            \"producerApplicationId\": \"maker-selfdev\"\n        },\n        {\n            \"topicId\": \"customer\",\n            \"user\": \"sys-dig-io-maker-selfdev\",\n            \"producerApplicationId\": \"maker-selfdev\"\n        },\n        {\n            \"topicId\": \"carrier-order-notify\",\n            \"user\": \"sys-dig-io-maker-selfdev\",\n            \"producerApplicationId\": \"maker-selfdev\"\n        },\n        {\n            \"topicId\": \"carrier\",\n            \"user\": \"sys-dig-io-maker-selfdev\",\n            \"producerApplicationId\": \"maker-selfdev\"\n        },\n        {\n            \"topicId\": \"location\",\n            \"user\": \"sys-dig-io-maker-selfdev\",\n            \"producerApplicationId\": \"maker-selfdev\"\n        },\n        {\n            \"topicId\": \"product\",\n            \"user\": \"sys-dig-io-maker-selfdev\",\n            \"producerApplicationId\": \"maker-selfdev\"\n        },\n        {\n            \"topicId\": \"price\",\n            \"user\": \"sys-dig-io-maker-selfdev\",\n            \"producerApplicationId\": \"maker-selfdev\"\n        }\n    ]\n}"},{"id":"41fd67dc-bfb6-465a-a29a-9c65567a6e45","name":"URL incorreta","originalRequest":{"method":"GET","header":[],"url":"{{api-host}}/v2/applications/maker-selfdev/permission"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2026-09-28T12:33:18.452+00:00\",\n    \"path\": \"/v2/applications/maker-selfdev/permission\",\n    \"status\": 404,\n    \"error\": \"Not Found\",\n    \"requestId\": \"47862608-2227005\"\n}"},{"id":"8e1aa109-eebb-42b0-8c04-b1c1d2492053","name":"Token expirado","originalRequest":{"method":"GET","header":[],"url":"{{api-host}}/v2/applications/maker-selfdev/permissions"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"exp\": \"token expired\"\n}"},{"id":"4dfa80f5-904b-4ba5-86b6-04366c84c8de","name":"Falha na autenticação","originalRequest":{"method":"GET","header":[],"url":"{{api-host}}/v2/applications/maker-selfdev/permissions"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Unauthorized\"\n}"}],"_postman_id":"c64b29df-8894-48a7-aa54-c2699c4e6665"}],"id":"1292f5d6-6732-47eb-a775-05397229c54d","description":"<p><strong>Permission</strong> (Permissões) é o mecanismo de segurança e governança que controla quais tópicos de mensageria (como pedidos, produtos, estoques, clientes e notificações de transporte) uma aplicação está autorizada a acessar.</p>\n<p>Como o Maker IO funciona com base na publicação (<code>PUBLISH</code>) e no consumo/roteamento (<code>SUBSCRIBE</code>) de eventos, cada permissão define explicitamente duas informações principais:</p>\n<ol>\n<li><p><strong>O Tópico (<strong><strong><code>topic</code></strong></strong>):</strong> O canal de eventos ao qual a aplicação deseja se conectar (ex.: <code>customer</code>, <code>bundle</code>, <code>carrier-order-notify</code>).</p>\n</li>\n<li><p><strong>A Ação Permitida (<strong><strong><code>actions</code></strong></strong>):</strong></p>\n<ul>\n<li><p><code>PUBLISH</code>: Autoriza a aplicação a enviar/publicar dados no tópico.</p>\n</li>\n<li><p><code>SUBSCRIBE</code>: Autoriza a aplicação a realizar a subscrição (roteamento) para receber e consumir as mensagens enviadas para a sua fila privada.</p>\n</li>\n</ul>\n</li>\n</ol>\n<p>Uma aplicação consumidora <strong>somente conseguirá realizar o</strong> <em><strong>subscribe</strong></em> nas filas/tópicos que possuírem a permissão <code>SUBSCRIBE</code> devidamente concedida.</p>\n<h3 id=\"como-verificar-as-filas-liberadas-para-a-sua-aplicação\">Como verificar as filas liberadas para a sua Aplicação</h3>\n<p>Antes de implementar qualquer rotina de <em>subscribe</em> ou tentativa de consumo de mensagens, a aplicação consumidora deve executar uma chamada ao endpoint de permissões para listar as filas ativas e liberadas.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>GET</code></p>\n</li>\n<li><p><strong>URL:</strong> <code>/v2/applications/{{app-id}}/permissions</code></p>\n</li>\n<li><p><strong>Header de Autenticação:</strong> <code>Authorization: Bearer {{token}}</code></p>\n</li>\n</ul>\n<h5 id=\"onde\">Onde:</h5>\n<ul>\n<li><p><code>app-id</code>: Identificador da sua aplicação no Maker IO.</p>\n</li>\n<li><p><code>token</code>: Bearer Token gerado pelo endpoint de <a href=\"#6ed770ff-1713-4cee-9d5d-7b7afe74779a\">Login</a>.</p>\n</li>\n</ul>\n<h2 id=\"observação-importante-sobre-o-escopo-das-permissões\">Observação Importante sobre o Escopo das Permissões</h2>\n<p><strong>ATENÇÃO:</strong></p>\n<p><strong>As permissões e liberação de filas no Maker IO são concedidas no nível da APLICAÇÃO (<strong><strong><code>applicationId</code></strong></strong>), e NÃO no nível de usuário individual.</strong></p>\n<ul>\n<li><p><strong>Acesso Compartilhado:</strong> Todos os usuários, clientes, operadores ou subcontas associados à mesma aplicação consumidora terão acesso às <strong>mesmas filas e tópicos liberados</strong> para aquela aplicação.</p>\n</li>\n<li><p><strong>Escopo Global da Aplicação:</strong> Se a sua aplicação receber permissão para realizar o <em>subscribe</em> no tópico <code>carrier-order-notify</code>, essa fila estará disponível para o ecossistema completo da aplicação, mesmo para usuários ou clientes que não utilizem o processo de expedição ou logística em sua rotina de trabalho diária.</p>\n</li>\n<li><p><strong>Recomendação de Arquitetura:</strong> Caso existam cenários de negócio com restrições severas de isolamento de dados entre clientes/usuários, recomenda-se a criação de <code>applicationIds</code> distintos para cada contexto ou o tratamento do controle de acesso interno dentro da própria aplicação consumidora após o recebimento da mensagem.</p>\n</li>\n</ul>\n","_postman_id":"1292f5d6-6732-47eb-a775-05397229c54d"},{"name":"Subscribe","item":[{"name":"Subscribe","id":"d2ef39ab-173f-4631-9ec3-3f98641ec495","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"producerApplicationId\": \"{{producerApplicationId}}\",\r\n    \"topicId\": \"{{consume-topicId}}\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/queues","description":"<p>Este endpoint efetua a criação (assinatura) de uma fila para que a sua aplicação possa receber e consumir mensagens de um tópico específico gerado por uma aplicação produtora.</p>\n<p>Sem realizar este subscribe, sua aplicação não criará a fila necessária para o consumo dos eventos.</p>\n<p>É necessário que a sua aplicação (informada na URL por meio do <code>applicationId</code>) possua permissão de consumo (<strong>Subscribe</strong>) para o tópico e para a aplicação produtora desejada.</p>\n<p>Em caso de sucesso, este endpoint retornará o <code>queueId</code> recém-criado, que deverá ser utilizado nas futuras operações de consumo, confirmação de mensagens (Ack), retenção (Hold) e gerenciamento da fila.</p>\n<p>O payload possui os seguintes campos:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Campo</strong></th>\n<th><strong>Obrigatório</strong></th>\n<th><strong>Tipo</strong></th>\n<th><strong>Descrição</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong><code>producerApplicationId</code></strong></td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do sistema produtor (a aplicação que origina/publica as mensagens). Pode ser consultado no endpoint de listagem de filas.</td>\n</tr>\n<tr>\n<td><strong><code>topicId</code></strong></td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do tópico que se deseja assinar e ouvir (ex:  <br /><code>order</code>, <code>price</code>, <code>stock</code>, <code>fulfillment-status</code>).</td>\n</tr>\n<tr>\n<td><strong><code>filter</code></strong></td>\n<td>Não</td>\n<td>string</td>\n<td>Filtro opcional do tópico no formato jsonpath (ex:  <br /><code>$.property[?(@.child &lt;= 10)]</code>) para determinar regras específicas de retenção das mensagens.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","queues"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[{"id":"f166061a-9949-42ad-a12c-57b4ddfbf71a","name":"Inscrição realizada","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"producerApplicationId\": \"maker-selfdev\",\r\n    \"topicId\": \"order\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/maker-selfdev/queues"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Your subscription is being created and will be available soon!\",\n    \"queueId\": \"1808d60e2b0f4cb618911fc4c76b3eb7337b87ea2eb1d28c5fea895812a482ab\"\n}"},{"id":"fcc7b298-6bf8-43a4-b77b-5b6e14551055","name":"Sem permissão para subscribe","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"producerApplicationId\": \"sys-dig-io-maker-selfdev\",\r\n    \"topicId\": \"feedback\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/maker-selfdev/queues"},"status":"Forbidden","code":403,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"name\": \"Forbidden\",\n    \"message\": \"Not allowed to subscribe on this resource!!\"\n}"},{"id":"4ee6890a-d677-461b-bf73-524a4fd6666a","name":"Inscrição existente","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"producerApplicationId\": \"maker-selfdev\",\r\n    \"topicId\": \"order\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/maker-selfdev/queues"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"queueId\": \"1808d60e2b0f4cb618911fc4c76b3eb7337b87ea2eb1d28c5fea895812a482ab\",\n    \"name\": \"BadRequest\",\n    \"message\": \"Already subscribed in Topic order with Application maker-selfdev from Producer Application maker-selfdev\"\n}"},{"id":"db36c038-55aa-4d09-8296-c19041901db2","name":"Token expirado","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"producerApplicationId\": \"maker-selfdev\",\r\n    \"topicId\": \"order\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/maker-selfdev/queues"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"exp\": \"token expired\"\n}"}],"_postman_id":"d2ef39ab-173f-4631-9ec3-3f98641ec495"},{"name":"Subscribe","id":"f8934618-73b4-437c-8464-3b3dbf19a634","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"filter\": \"$[?(@.stockType == 'VIRTUAL')]\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/queues/{{queueId}}","description":"<p>Este endpoint atualiza uma assinatura já existente, permitindo alterar as regras de retenção das mensagens recebidas pela fila.</p>\n<p>A atualização é utilizada principalmente para modificar o filtro (<code>filter</code>) aplicado sobre as mensagens entregues à aplicação, sem a necessidade de remover e recriar a assinatura. Para atualizar a inscrição informe a <code>applicationId</code> e a <code>queueId</code> na URL da request.</p>\n<p>É necessário que a aplicação possua permissão de consumo para a fila informada e que o <code>queueId</code> corresponda a uma assinatura existente vinculada ao <code>applicationId</code>.</p>\n<p>Em caso de sucesso, as novas configurações da assinatura passarão a ser utilizadas imediatamente para o processamento das próximas mensagens publicadas no tópico.</p>\n<p>O payload possui os seguintes campos:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Campo</strong></th>\n<th><strong>Obrigatório</strong></th>\n<th><strong>Tipo</strong></th>\n<th><strong>Descrição</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong><code>filter</code></strong></td>\n<td>Sim</td>\n<td>string</td>\n<td>Filtro opcional do tópico no formato jsonpath (ex: <code>$.property[?(@.child &lt;= 10)]</code>) para determinar regras específicas de retenção das mensagens.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","queues","{{queueId}}"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[{"id":"e990a11f-aa0c-40e4-af05-b41406bd49d5","name":"Alteração de inscrição","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"filter\": \"$[?(@.stockType == 'VIRTUAL')]\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/maker-selfdev/queues/1808d60e2b0f4cb618911fc4c76b3eb7337b87ea2eb1d28c5fea895812a482ab"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Your subscription is being updated and will be available soon!\"\n}"},{"id":"d9ad07eb-af4a-4f50-acb6-a639b378becb","name":"Fila não localizada","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"filter\": \"$[?(@.stockType == 'VIRTUAL')]\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/maker-selfdev/queues/82a904582574dc9c4355f9a8436997572074ac0a6ac5ca68cedf567f16a94457"},"status":"Forbidden","code":403,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"name\": \"Forbidden\",\n    \"message\": \"Queue82a904582574dc9c4355f9a8436997572074ac0a6ac5ca68cedf567f16a94457 does not exist!`\"\n}"},{"id":"2f1fc623-eabc-4bd9-8ca7-ac54a8fcecf0","name":"Token expirado","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"filter\": \"$[?(@.stockType == 'VIRTUAL')]\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/maker-selfdev/queues/1808d60e2b0f4cb618911fc4c76b3eb7337b87ea2eb1d28c5fea895812a482ab"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"exp\": \"token expired\"\n}"},{"id":"a66a2ac0-36a4-42b8-bd1c-fd171fa6ce70","name":"Falha na autenticação","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"filter\": \"$[?(@.stockType == 'VIRTUAL')]\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/maker-selfdev/queues/1808d60e2b0f4cb618911fc4c76b3eb7337b87ea2eb1d28c5fea895812a482ab"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Unauthorized\"\n}"}],"_postman_id":"f8934618-73b4-437c-8464-3b3dbf19a634"},{"name":"Unsubscribe","id":"0bd5a03f-cdbd-4d9c-b498-d09aac74f018","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"DELETE","header":[],"url":"{{api-host}}/v2/applications/{{app-id}}/queues/{{queueId}}","description":"<p>Este endpoint realiza o cancelamento de uma assinatura existente.</p>\n<p>Após a remoção da assinatura, a aplicação deixará de receber novas mensagens publicadas no tópico correspondente. Essa operação encerra o vínculo entre a fila de consumo e o tópico da aplicação produtora.</p>\n<p>Para remover a inscrição em uma fila informe a seu <code>applicationId</code> e o <code>queueId</code> da fila que deseja retirar a inscrição na URL da request.</p>\n<p>Em caso de sucesso, a fila será removida e nenhuma nova mensagem será roteada para sua aplicação.</p>\n","urlObject":{"path":["v2","applications","{{app-id}}","queues","{{queueId}}"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[{"id":"39c8d410-973f-4f55-9555-b260aa23d350","name":"Inscrição retirada","originalRequest":{"method":"DELETE","header":[],"url":"{{api-host}}/v2/applications/maker-selfdev/queues/1808d60e2b0f4cb618911fc4c76b3eb7337b87ea2eb1d28c5fea895812a482ab"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Topic was unsubscribed successfully!\"\n}"},{"id":"df6f7342-f3de-4708-9bef-c6951f3685a9","name":"Fila não localizada","originalRequest":{"method":"DELETE","header":[],"url":"{{api-host}}/v2/applications/maker-selfdev/queues/1808d60e2b0f4cb618911fc4c76b3eb7337b87ea2eb1d28c5fea895812a48200"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"name\": \"NotFound\",\n    \"message\": \"Your subscription does not exists!\"\n}"},{"id":"b7fa55d8-0761-4d92-83a5-c7e3dfd1fb34","name":"Inscrição não localizada","originalRequest":{"method":"DELETE","header":[],"url":"{{api-host}}/v2/applications/maker-selfdev/queues/1808d60e2b0f4cb618911fc4c76b3eb7337b87ea2eb1d28c5fea895812a48200"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"name\": \"NotFound\",\n    \"message\": \"Your subscription does not exists!\"\n}"},{"id":"2cf60bd4-ed1a-466f-80c1-a53df221c1c8","name":"Falha na autenticação","originalRequest":{"method":"DELETE","header":[],"url":"{{api-host}}/v2/applications/maker-selfdev/queues/1808d60e2b0f4cb618911fc4c76b3eb7337b87ea2eb1d28c5fea895812a482ab"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Unauthorized\"\n}"}],"_postman_id":"0bd5a03f-cdbd-4d9c-b498-d09aac74f018"}],"id":"01ce6e57-3000-4352-b4e1-21241c895fbd","description":"<p>No <strong>Maker IO</strong>, a publicação de mensagens (<em>Publish</em>) e o consumo de dados são totalmente desacoplados. Quando uma aplicação pública uma mensagem em um tópico (como <code>carrier-order-notify</code>, <code>customer</code> ou <code>bundle</code>), essa mensagem chega a um barramento central.<br />O <strong>Subscribe</strong> funciona como uma <strong>regra de roteamento (binding)</strong>. Ele instrui o Maker IO a direcionar uma cópia de todas as mensagens publicadas naquele tópico específico diretamente para a fila privada da aplicação que realizou a inscrição.</p>\n<p><strong>Importante:</strong> Sem o <strong>Subscribe</strong>, as mensagens publicadas no tópico não são roteadas para a sua aplicação e são descartadas após um período determinado (TTL).</p>\n<h3 id=\"quem-deve-fazer-o-subscribe\">Quem deve fazer o Subscribe?</h3>\n<p>O <strong>subscribe</strong> deve ser realizado pela <strong>Aplicação Consumidora</strong> (sistemas receptores como ERPs, TMSs, WMSs, CRMs ou e-commerces). Sempre que a sua aplicação precisar \"escutar\" alterações ou novos eventos gerados por outros sistemas no Maker IO, ela precisa registrar, atualizar ou gerenciar a subscrição no tópico correspondente.</p>\n<h3 id=\"gerenciamento-do-subscribe-ciclo-de-vida\">Gerenciamento do Subscribe (Ciclo de Vida)</h3>\n<p>Antes de realizar qualquer operação de subscrição, a aplicação consumidora <strong>deve consultar as permissões liberadas</strong> através do endpoint <code>GET /v2/applications/{{app-id}}/permissions</code> para confirmar se possui a ação <code>SUBSCRIBE</code> autorizada para o tópico desejado.</p>\n<h3 id=\"1-realizar-uma-inscrição-post\">1. Realizar uma Inscrição (<code>POST</code>)</h3>\n<p>Após identificar os tópicos liberados no <code>GET permissions</code>, a aplicação envia a requisição de criação do roteamento para ativar a entrega de mensagens em sua fila privada.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>POST</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/queues</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{token}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n</ul>\n<h5 id=\"onde\">Onde:</h5>\n<ul>\n<li><p><code>app-id</code>: Identificador da sua aplicação no Maker IO.</p>\n</li>\n<li><p><code>token</code>: Bearer Token gerado pelo endpoint de <a href=\"#6ed770ff-1713-4cee-9d5d-7b7afe74779a\">Login</a>.</p>\n</li>\n</ul>\n<h3 id=\"2-alterar-uma-inscrição-put\">2. Alterar uma Inscrição (<code>PUT</code>)</h3>\n<p>Caso seja necessário atualizar as configurações ou parâmetros de uma inscrição existente (como alterar o endereço de destino de um webhook, ajustar políticas de <em>retry</em> ou modificar parâmetros da subscrição), utilize o método <code>PUT</code>.</p>\n<h4 id=\"requisição-1\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>PUT</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/queues/{{queueId}}</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{token}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n</ul>\n<h5 id=\"onde-1\">Onde:</h5>\n<ul>\n<li><p><code>app-id</code>: Identificador da sua aplicação no Maker IO.</p>\n</li>\n<li><p><code>queueId</code>: UUID da fila que deseja alterar a inscrição.</p>\n</li>\n<li><p><code>token</code>: Bearer Token gerado pelo endpoint de <a href=\"#6ed770ff-1713-4cee-9d5d-7b7afe74779a\">Login</a>.</p>\n</li>\n</ul>\n<h3 id=\"3-apagarcancelar-uma-inscrição-delete\">3. Apagar/Cancelar uma Inscrição (<code>DELETE</code>)</h3>\n<p>Se a sua aplicação não precisar mais receber as mensagens de determinado tópico ou se o processo de integração for descontinuado, é necessário apagar a subscrição para remover a regra de roteamento.</p>\n<h4 id=\"requisição-2\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>DELETE</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/queues/?{{queueId}}</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{token}}</code></p>\n</li>\n</ul>\n<h5 id=\"onde-2\">Onde:</h5>\n<ul>\n<li><p><code>app-id</code>: Identificador da sua aplicação no Maker IO.</p>\n</li>\n<li><p><code>queueId</code>: UUID da fila que deseja cancelar a inscrição.</p>\n</li>\n<li><p><code>token</code>: Bearer Token gerado pelo endpoint de <a href=\"#6ed770ff-1713-4cee-9d5d-7b7afe74779a\">Login</a>.</p>\n</li>\n</ul>\n<h2 id=\"roteamento-de-mensagens-e-consumo-dos-dados-da-fila\">Roteamento de Mensagens e Consumo dos Dados da Fila</h2>\n<p>Com a subscrição ativa (<code>POST</code> ou <code>PUT</code>), todas as novas mensagens enviadas para o tópico passam a ser entregues automaticamente na fila da sua aplicação. A partir deste momento, a aplicação consumidora pode realizar a leitura dos dados diretamente da sua fila privada (via protocolo AMQP/RabbitMQ ou Webhook configurado).</p>\n","_postman_id":"01ce6e57-3000-4352-b4e1-21241c895fbd"}],"id":"7a41ba47-cfe0-402f-b3b3-ab35e250f127","description":"<p>Para utilizar o Maker IO é necessário realizar os passos iniciais de Login, Permissions e Subscribe, cada processo é dependente do outro, onde:</p>\n<ul>\n<li><p><strong>Login (Camada de Autenticação):</strong> É a etapa inicial de identificação da aplicação. Através do envio das credenciais (<code>username</code> e <code>password</code>), o Maker IO valida o acesso e gera um token JWT (<code>accessToken</code>), que deve ser utilizado no cabeçalho de todas as chamadas seguintes, esse token tem uma duração determinada, e o processo de <strong>Login</strong> deve ser refeito quando o token expirar.</p>\n</li>\n<li><p><strong>Permissions (Camada de Autorização):</strong> Define a política de acesso da aplicação (<code>applicationId</code>). É o mecanismo de segurança que lista a quais tópicos a sua aplicação tem permissão de se conectar e quais ações ela pode executar (<code>PUBLISH</code> para publicar mensagens ou <code>SUBSCRIBE</code> para consumi-las).</p>\n</li>\n<li><p><strong>Subscribe (Camada de Roteamento):</strong> É a instrução de vinculação que conecta a sua aplicação a um tópico de eventos. Ao realizar a subscrição, o Maker IO cria a regra de roteamento necessária para direcionar as mensagens publicadas naquele tópico diretamente para a fila privada da sua aplicação. O subscribe é feito apenas uma vez e só deve ser repetido se a inscrição na fila por apagada.</p>\n</li>\n</ul>\n<h3 id=\"a-relação-entre-login-permissions-e-subscribe\"><strong>A Relação entre Login, Permissions e Subscribe</strong></h3>\n<p>O fluxo segue uma dependência direta em cadeia: o <strong>Login</strong> é o ponto de partida obrigatório para obter o token de autenticação. De posse desse token, a aplicação consulta suas <strong>Permissions</strong> para verificar quais tópicos possuem a ação <code>SUBSCRIBE</code> autorizada. Por fim, a <strong>Permission</strong> atua como o pré-requisito mandatório para a execução do <strong>Subscribe</strong>: a sua aplicação só conseguirá registrar a subscrição e ativar o roteamento de dados para a sua fila se a ação estiver previamente liberada. Tentativas de assinar filas sem token válido ou sem permissão serão recusadas pela camada de segurança do Maker IO.</p>\n","_postman_id":"7a41ba47-cfe0-402f-b3b3-ab35e250f127"},{"name":"Queues","item":[{"name":"Queues","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if(Math.trunc(pm.response.code / 100) === 2){\r\n    var jsonData = pm.response.json();\r\n    \r\n    for(var queue of jsonData.queues){\r\n        if(queue.topicId === pm.environment.get(\"consume-topicId\") && \r\n          (queue.producerApplicationId === pm.environment.get(\"producerApplicationId\") || queue.topicId === \"feedback\")  ){\r\n            pm.environment.set(\"queueId\", queue.queueId);\r\n            break;\r\n        }else{\r\n            pm.environment.unset(\"queueId\")\r\n        }\r\n    }\r\n}\r\n"],"id":"259b887a-07bf-438e-9c8d-b750d65666c8"}}],"id":"d9d7cb15-a03a-4e46-9a03-c6e43d7ab626","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"GET","header":[{"key":"Accept","value":"application/json"}],"url":"{{api-host}}/v2/applications/{{app-id}}/queues","description":"<p>O retorno do endpoint possui a seguinte estrutura:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Campo</strong></th>\n<th><strong>Descrição</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong><code>queueId</code></strong></td>\n<td>Identificador da fila atrelada à assinatura que recebe as mensagens do tópico.</td>\n</tr>\n<tr>\n<td><strong><code>producerApplicationId</code></strong></td>\n<td>Identificador do sistema dono/produtor do tópico que origina as mensagens.</td>\n</tr>\n<tr>\n<td><strong><code>topicId</code></strong></td>\n<td>Identificador do tópico assinado e monitorado pela aplicação.</td>\n</tr>\n<tr>\n<td><strong><code>filter</code></strong></td>\n<td>Filtro opcional no formato jsonpath aplicado para reter apenas mensagens sob critérios específicos.</td>\n</tr>\n<tr>\n<td><code>approximateNumberOfMessages</code></td>\n<td>Quantidade aproximada de mensagens na fila aguardando tratamento.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","queues"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[{"id":"5685a96b-af73-408a-8b57-e583e3b09495","name":"Queues","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"}],"url":"{{api-host}}/v2/applications/maker-selfdev/queues"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"queues\": [\n        {\n            \"queueId\": \"5b1a93f4dadbb189e36a7af3365a8f9beafd996a0028c8557b9cda3bef71976a\",\n            \"topicId\": \"carrier\",\n            \"producerApplicationId\": \"maker-selfdev\",\n            \"approximateNumberOfMessages\": 0\n        },\n        {\n            \"queueId\": \"e4b28bbe5ce68c993b8778ba99acf97f081e8159ee163723f12021e5772c8308\",\n            \"topicId\": \"carrier-order-notify\",\n            \"producerApplicationId\": \"maker-selfdev\",\n            \"approximateNumberOfMessages\": 0\n        },\n        {\n            \"queueId\": \"7a62ce97d139eaf8e2ace6e1dbfe0787eb85badc1414015c5ee704e9d7739fe9\",\n            \"topicId\": \"customer\",\n            \"producerApplicationId\": \"maker-selfdev\",\n            \"approximateNumberOfMessages\": 0\n        },\n        {\n            \"queueId\": \"5c809c9a15febd7e15fbb5bd295a2607783d572eb723480428b3279211c12bcb\",\n            \"topicId\": \"feedback\",\n            \"producerApplicationId\": \"*\",\n            \"approximateNumberOfMessages\": 0\n        },\n        {\n            \"queueId\": \"7f9420a41afd1a974161337e33758fab84e0d84335eb5b3139152e2920170103\",\n            \"topicId\": \"fulfillment-status\",\n            \"producerApplicationId\": \"maker-selfdev\",\n            \"approximateNumberOfMessages\": 0\n        },\n        {\n            \"queueId\": \"0ee5e4a74f9dd3ecfd6f4bfc20e772308880ea16146e9acef580b1fe2b9b71cf\",\n            \"topicId\": \"location\",\n            \"producerApplicationId\": \"maker-selfdev\",\n            \"approximateNumberOfMessages\": 2\n        },\n        {\n            \"queueId\": \"1808d60e2b0f4cb618911fc4c76b3eb7337b87ea2eb1d28c5fea895812a482ab\",\n            \"topicId\": \"order\",\n            \"producerApplicationId\": \"maker-selfdev\",\n            \"approximateNumberOfMessages\": 0\n        },\n        {\n            \"queueId\": \"95364dab289772599d5226a4cfb76fdc781edb938a4cae455e75c27003b25d5d\",\n            \"topicId\": \"order-exception\",\n            \"producerApplicationId\": \"maker-selfdev\",\n            \"approximateNumberOfMessages\": 0\n        },\n        {\n            \"queueId\": \"f5ab0b512a5b1dc4421d27492f04844609a97683ea6273c176ed1ebb2c0c5d92\",\n            \"topicId\": \"order-payment-status\",\n            \"producerApplicationId\": \"maker-selfdev\",\n            \"approximateNumberOfMessages\": 0\n        },\n        {\n            \"queueId\": \"3c30fb68232fd92f170cfd903171d81275ec6598e68fe7cc0a3cbff35dc06f13\",\n            \"topicId\": \"order-treatment\",\n            \"producerApplicationId\": \"maker-selfdev\",\n            \"approximateNumberOfMessages\": 0\n        },\n        {\n            \"queueId\": \"e8c73d93dffed05858c65914cdea87b8a25ec144d28ad70f7831560864862db1\",\n            \"topicId\": \"price\",\n            \"producerApplicationId\": \"maker-selfdev\",\n            \"approximateNumberOfMessages\": 0\n        },\n        {\n            \"queueId\": \"5d0a898e6cb7f358fe3121db4800645491d6c07160149e0a119b9242c15274f5\",\n            \"topicId\": \"product\",\n            \"producerApplicationId\": \"maker-selfdev\",\n            \"approximateNumberOfMessages\": 1\n        },\n        {\n            \"queueId\": \"82e65cdbe6c297408164b31de57e7d13ca90eb1706c95749a64184effcdd59d6\",\n            \"topicId\": \"sku\",\n            \"producerApplicationId\": \"maker-selfdev\",\n            \"approximateNumberOfMessages\": 2\n        },\n        {\n            \"queueId\": \"82a904582574dc9c4355f9a8436997572074ac0a6ac5ca68cedf567f16a94459\",\n            \"topicId\": \"stock\",\n            \"filter\": \"$[?(@.stockType == 'VIRTUAL')]\",\n            \"producerApplicationId\": \"maker-selfdev\",\n            \"approximateNumberOfMessages\": 0\n        }\n    ]\n}"},{"id":"7873545d-7a76-422f-8374-d4b8624cc68e","name":"URL incorreta","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"}],"url":"{{api-host}}/v2/applications/maker-selfdev/queues"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2026-09-30T18:06:39.838+00:00\",\n    \"path\": \"/v2/applications/maker-selfdev/queue\",\n    \"status\": 404,\n    \"error\": \"Not Found\",\n    \"requestId\": \"22a6a4d1-4206670\"\n}"},{"id":"0c018dc3-4321-4584-942e-6e89102cac38","name":"Falha na autenticação","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"}],"url":"{{api-host}}/v2/applications/maker-selfdev/queues"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Unauthorized\"\n}"}],"_postman_id":"d9d7cb15-a03a-4e46-9a03-c6e43d7ab626"}],"id":"2a4a0cd7-a278-4a43-9e33-2ff90282d19e","description":"<p>Este endpoint consulta todas as filas (assinaturas) atualmente cadastradas para a aplicação informada.</p>\n<p>Cada fila representa uma assinatura entre uma aplicação consumidora e um tópico publicado por outra aplicação. Essa consulta permite identificar quais tópicos estão sendo consumidos, quais filtros estão configurados e a quantidade de mensagens pendentes de tratamento na fila.</p>\n<p>É necessário que a aplicação possua um token de autenticação válido e que o <code>applicationId</code> informado corresponda à aplicação que deseja consultar.</p>\n<p>Em caso de sucesso, será retornada a lista completa das filas existentes, incluindo seus respectivos identificadores (<code>queueId</code>), aplicação produtora, tópico assinado, filtros configurados e status da assinatura.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>GET</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/queues</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{token}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n</ul>\n<h5 id=\"onde\">Onde:</h5>\n<ul>\n<li><p><code>app-id</code>: Identificador da sua aplicação no Maker IO.</p>\n</li>\n<li><p><code>token</code>: Bearer Token gerado pelo endpoint de <a href=\"#6ed770ff-1713-4cee-9d5d-7b7afe74779a\">Login</a>.</p>\n</li>\n</ul>\n","_postman_id":"2a4a0cd7-a278-4a43-9e33-2ff90282d19e"},{"name":"Message Lifecycle","item":[],"id":"82191b0c-56f0-4ad0-8b7e-3be373bf5cb2","description":"<p>No Maker IO desde a publicação da mensagem até o seu feedback exite um fluxo onde cada aplicação da integração tem o seu papel e devem executar alguns processos no fluxo da mensagem, isso é necessário para que a mensagem não fique sem um tratamento adequado, para evitar que as aplicações das duas pontas não fiquem sem uma resposta sobre o conteúdo da mensagem, e não sobrecarregar a integração com mensagens que já foram recebidas e tratadas.</p>\n<p>Abaixo segue um fluxograma com a etapa da mensagem em cada aplicação e a ação necessária dessa aplicação para que a mensagem siga o seu fluxo correto:</p>\n<img src=\"https://i.imgur.com/u3Szwwc.png\" />\n\n<p>Onde:</p>\n<p><strong>1 - Publicação da Mensagem</strong>: A publicação da mensagem é o inicio do fluxo, independente do tópico que tenha sido, a mensagem segue o mesmo fluxo. Para acontecer a publicação a <strong>Aplicação Origem</strong> precisa estar ativa na integração do Maker IO e com o <a href=\"#6ed770ff-1713-4cee-9d5d-7b7afe74779a\">token</a> vigente.</p>\n<p><strong>2 - Roteamento da Mensagem</strong>: Aqui o Maker IO faz o roteamento da mensagem publicada para a fila privada da <strong>Aplicação de destino</strong>, ou <strong>Aplicação Consumidora</strong>. A Aplicação Consumidora deve estar ativa na Integração do Maker IO, com <a href=\"#6ed770ff-1713-4cee-9d5d-7b7afe74779a\">token</a> vigente, com a <a href=\"#01ce6e57-3000-4352-b4e1-21241c895fbd\">inscrição</a> na fila do tópico da mensagem e com permissão para essa fila, caso contrário, a mensagem não será roteada para a Aplicação Consumidora.</p>\n<p><strong>3 - Consumo da Mensagem</strong>: Aqui a mensagem é consumida pela Aplicação Consumidora e dado o devido tratamento da informação na sua aplicação/sistema. Só devem ser consumidas as mensagens que podem ser tratadas no momento. Mensagens que não forem consumidas no prazo de 7 dias, ou tiverem mais de 100 consumos sem um <a href=\"#10cfed31-2322-447a-b1ff-9094753c183e\">ACK</a> serão automaticamente descartadas da fila. Não deve ser feito o consumo em uma fila que não tem mensagens para serem tratadas, o consumo de mensagens só deve ser feito após o <a href=\"#2a4a0cd7-a278-4a43-9e33-2ff90282d19e\">GET queues</a> da fila.</p>\n<p><strong>4 - Hold na Mensagem</strong>: Esse passo é <strong>opcional</strong>, só deve ser utilizado quando a mensagem não puder ser consumida no momento(por falta de alguma outra mensagem ou vinculo, Exemplo: o envio de estoque de um produto que ainda não foi cadastrado, ou o envio de um status de pagamento de um pedido que ainda não foi integrado), quando a mensagem é deixada em Hold ela é retirada da fila do consumo por 900 segundos(esse tempo pode ser ajustado conforme a realidade de cada aplicação), após esse tempo ela volta para a fila prioritária de consumo, podendo ser consumida ou levada a Hold novamente. Mensagens que não forem consumidas no prazo de 7 dias serão automaticamente descartadas.</p>\n<p>5 - <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\"><b>ACK da Mensagem</b></a>: Esse passo é um retorno da <strong>Aplicação Consumidora</strong> à <strong>Aplicação Origem</strong> sobre a mensagem publicada, pode ser um <strong>ACK de sucesso</strong> indicando que a mensagem foi consumida e tratada, um <strong>ACK de erro</strong>, indicando que a mensagem foi consumida mas por algum motivo a aplicação consumidora não pode fazer o seu tratamento, ou ainda um <strong>ACK de descarte</strong> indicando que a mensagem é obsoleta(quando a informação da aplicação é mais atual do que a informação que veio na mensagem), ou quando os prazos para consumo da mensagem são ultrapassados.</p>\n<p><strong>6 - Roteamento da Mensagem</strong>: Aqui o Maker IO faz um novo roteamento sobre o ACK emitido pela <strong>Aplicação Consumidora</strong> para a <strong>Aplicação Origem</strong>.</p>\n<p><strong>7 - Consumo do Feedback</strong>: A Aplicação Origem consome o ACK que veio da Aplicação Consumidora referente à mensagem e faz o devido tratamento da informação na sua aplicação. Mensagens que não forem consumidas no prazo de 7 dias, ou tiverem mais de 100 consumos sem um <a href=\"#10cfed31-2322-447a-b1ff-9094753c183e\">ACK</a> serão automaticamente descartadas da fila.</p>\n<p><strong>8 -</strong> <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\"><b>ACK do Feedback</b></a>: A aplicação Origem após realizar o tratamento do ACK emitido pela Aplicação Consumidora faz um ACK de Feedback e com isso finalizando o ciclo da mensagem e retirando ela das filas.</p>\n","_postman_id":"82191b0c-56f0-4ad0-8b7e-3be373bf5cb2"},{"name":"Publish Message","item":[{"name":"Location","item":[{"name":"Location","id":"b4679d47-cfdd-4604-92fa-90783b4a751b","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"accept","value":"application/json"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"locationId\": \"002\",\n    \"locationCode\": \"002\",\n    \"name\": \"locationId-002\",\n    \"address\": {\n        \"addressId\": \"0001\",\n        \"addressName\": \"teste\",\n        \"addressLine1\": \"Travessa Z\",\n        \"addressLine2\": \"\",\n        \"number\": \"773\",\n        \"zipCode\": \"83404440\",\n        \"neighbourhood\": \"Campo Pequeno\",\n        \"city\": \"Colombo\",\n        \"state\": \"PR\",\n        \"country\": \"BR\",\n        \"contactName\": \"contato\",\n        \"contactPhone\": \"+554599999999\",\n        \"latitude\": -25.372603,\n        \"longitude\": -49.2056119,\n        \"default\": true\n    },\n    \"companyName\": \"Maker Store\",\n    \"email\": \"storemaker@makertec.com.br\",\n    \"documentNumber\": {\n        \"cnpj\": \"71443354000159\",\n        \"ie\": \"5275576583\"\n    },\n    \"phone\": \"+554532260203\",\n    \"workingDays\": {\n        \"MON\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            },\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"TUE\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"WED\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"THU\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"FRI\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"SAT\": [\n            {\n                \"to\": \"14:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ]\n    },\n    \"enabled\": true,\n    \"type\": \"STORE\",\n    \"pickupEnabled\": true,\n    \"shipmentEnabled\": true,\n    \"handlingDays\": 1.0,\n    \"pickupDeadline\": 5,\n    \"createdAt\": \"2026-03-03T15:26:40Z\",\n    \"updatedAt\": \"2026-03-03T15:26:40Z\"\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/location/messages","description":"<h3 id=\"descrição-dos-campos-do-payload\">Descrição dos campos do payload</h3>\n<p>A publicação do <strong>Location</strong> utiliza o payload abaixo, alguns arrays ou objetos do payload ficaram disponibilizados em outra seção para que a documentação não ficasse muito extensa, utilizar o link na descrição do array ou objeto para ser direcionado à seção correspondente e verificar seus campos e regras.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Campo</strong></th>\n<th><strong>Obrigatório</strong></th>\n<th><strong>Tipo de dado</strong></th>\n<th><strong>Descrição</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>locationId</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Código identificador da location.</td>\n</tr>\n<tr>\n<td><code>locationCode</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Código de referência ou sigla operacional da localização.</td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome de exibição da localização.</td>\n</tr>\n<tr>\n<td><code>enabled</code></td>\n<td>Sim</td>\n<td>boolean</td>\n<td>Informa se a localização está ativa, informe <strong>true</strong> ou <strong>false</strong>.</td>\n</tr>\n<tr>\n<td><code>type</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo da localização, informe <strong>DISTRIBUTION CENTER</strong> para centro de distribuição; <strong>STORE</strong> para loja; <strong>FRINCHISE</strong> para franquia.</td>\n</tr>\n<tr>\n<td><code>updatedAt</code></td>\n<td>Sim</td>\n<td>string (date-time)</td>\n<td>Data e hora de atualização no formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td><code>companyName</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Razão Social da empresa ou filial associada.</td>\n</tr>\n<tr>\n<td><code>email</code></td>\n<td>Não</td>\n<td>string</td>\n<td>E-mail de contato principal da location.</td>\n</tr>\n<tr>\n<td><code>phone</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Telefone principal de contato da location.</td>\n</tr>\n<tr>\n<td><code>pickupEnabled</code></td>\n<td>Sim</td>\n<td>boolean</td>\n<td>Indica se a location permite a retirada de produtos em loja, aceita valores <strong>true</strong> ou <strong>false</strong>, o padrão é <strong>false</strong>.</td>\n</tr>\n<tr>\n<td><code>shipmentEnabled</code></td>\n<td>Sim</td>\n<td>boolean</td>\n<td>Indica se a location permite o envio de produtos aos clientes, aceita valores <strong>true</strong> ou <strong>false</strong>, o padrão é <strong>false</strong>.</td>\n</tr>\n<tr>\n<td><code>handlingDays</code></td>\n<td>Sim</td>\n<td>number</td>\n<td>Quantidade de dias necessários para manuseio ou preparação de produtos.</td>\n</tr>\n<tr>\n<td><code>pickupDeadline</code></td>\n<td>Sim</td>\n<td>integer</td>\n<td>Prazo limite em dias para o cliente retirar o pedido na loja após ser notificado.</td>\n</tr>\n<tr>\n<td><code>createdAt</code></td>\n<td>Sim</td>\n<td>string (date-time)</td>\n<td>Data e hora de criação do registro no sistema de origem no formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td><code>address</code></td>\n<td>Sim</td>\n<td>object</td>\n<td>Objeto contendo os dados de endereço da location, para verificar as regras do objeto favor verificar na seção <a href=\"#6a0bd1da-969e-4b17-a219-9d0de72591ec\"><b>Address</b></a>, na tabela estão especificados os campos obrigatórios e as suas regras.</td>\n</tr>\n<tr>\n<td><code>documentNumber</code></td>\n<td>Sim</td>\n<td>object</td>\n<td>Objeto com a documentação fiscal da location.</td>\n</tr>\n<tr>\n<td><code>documentNumber.cnpj</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Número do CNPJ da location, informar sem pontuação ou caracteres especiais.</td>\n</tr>\n<tr>\n<td><code>documentNumber.ie</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Número da Inscrição Estadual da location.</td>\n</tr>\n<tr>\n<td><code>workingDays</code></td>\n<td>Não</td>\n<td>object</td>\n<td>Objeto com as informações de dias e horário de funcionamento da location, informar o horário no formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td><code>workingDays.MON</code></td>\n<td>Não</td>\n<td>array</td>\n<td>Horário de funcionamento da location para segunda-feira.</td>\n</tr>\n<tr>\n<td><code>workingDays.MON[].from</code></td>\n<td>Sim</td>\n<td>string (time)</td>\n<td>Horário inicial do funcionamento da location para segunda-feira.</td>\n</tr>\n<tr>\n<td><code>workingDays.MON[].to</code></td>\n<td>Sim</td>\n<td>string (time)</td>\n<td>Horário final do funcionamento da location para segunda-feira.</td>\n</tr>\n<tr>\n<td><code>workingDays.TUE</code></td>\n<td>Não</td>\n<td>array</td>\n<td>Horário de funcionamento da location para terça-feira.</td>\n</tr>\n<tr>\n<td><code>workingDays.TUE[].from</code></td>\n<td>Sim</td>\n<td>string (time)</td>\n<td>Horário inicial do funcionamento da location para terça-feira.</td>\n</tr>\n<tr>\n<td><code>workingDays.TUE[].to</code></td>\n<td>Sim</td>\n<td>string (time)</td>\n<td>Horário final do funcionamento da location para terça-feira.</td>\n</tr>\n<tr>\n<td><code>workingDays.WED</code></td>\n<td>Não</td>\n<td>array</td>\n<td>Horário de funcionamento da location para quarta-feira.</td>\n</tr>\n<tr>\n<td><code>workingDays.WED[].from</code></td>\n<td>Sim</td>\n<td>string (time)</td>\n<td>Horário inicial do funcionamento da location para quarta-feira.</td>\n</tr>\n<tr>\n<td><code>workingDays.WED[].to</code></td>\n<td>Sim</td>\n<td>string (time)</td>\n<td>Horário final do funcionamento da location para quarta-feira.</td>\n</tr>\n<tr>\n<td><code>workingDays.THU</code></td>\n<td>Não</td>\n<td>array</td>\n<td>Horário de funcionamento da location para quinta-feira.</td>\n</tr>\n<tr>\n<td><code>workingDays.THU[].from</code></td>\n<td>Sim</td>\n<td>string (time)</td>\n<td>Horário inicial do funcionamento da location para quinta-feira.</td>\n</tr>\n<tr>\n<td><code>workingDays.THU[].to</code></td>\n<td>Sim</td>\n<td>string (time)</td>\n<td>Horário final do funcionamento da location para quinta-feira.</td>\n</tr>\n<tr>\n<td><code>workingDays.FRI</code></td>\n<td>Não</td>\n<td>array</td>\n<td>Horário de funcionamento da location para sexta-feira.</td>\n</tr>\n<tr>\n<td><code>workingDays.FRI[].from</code></td>\n<td>Sim</td>\n<td>string (time)</td>\n<td>Horário inicial do funcionamento da location para sexta-feira.</td>\n</tr>\n<tr>\n<td><code>workingDays.FRI[].to</code></td>\n<td>Sim</td>\n<td>string (time)</td>\n<td>Horário final do funcionamento da location para sexta-feira.</td>\n</tr>\n<tr>\n<td><code>workingDays.SAT</code></td>\n<td>Não</td>\n<td>array</td>\n<td>Horário de funcionamento da location para sábado.</td>\n</tr>\n<tr>\n<td><code>workingDays.SAT[].from</code></td>\n<td>Sim</td>\n<td>string (time)</td>\n<td>Horário inicial do funcionamento da location para sábado.</td>\n</tr>\n<tr>\n<td><code>workingDays.SAT[].to</code></td>\n<td>Sim</td>\n<td>string (time)</td>\n<td>Horário final do funcionamento da location para sábado.</td>\n</tr>\n<tr>\n<td><code>workingDays.SUN</code></td>\n<td>Não</td>\n<td>array</td>\n<td>Horário de funcionamento da location para domingo.</td>\n</tr>\n<tr>\n<td><code>workingDays.SUN[].from</code></td>\n<td>Sim</td>\n<td>string (time)</td>\n<td>Horário inicial do funcionamento da location para domingo.</td>\n</tr>\n<tr>\n<td><code>workingDays.SUN[].to</code></td>\n<td>Sim</td>\n<td>string (time)</td>\n<td>Horário final do funcionamento da location para doming.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","location","messages"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[{"id":"87de0322-75c2-4fc7-b2ab-29b644e635b7","name":"Publicação de Location - CD","originalRequest":{"method":"POST","header":[{"key":"accept","value":"application/json"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"locationId\": \"001\",\n    \"locationCode\": \"001\",\n    \"name\": \"locationId-001\",\n    \"address\": {\n        \"addressId\": \"0001\",\n        \"addressName\": \"teste\",\n        \"addressLine1\": \"Rua Vitória\",\n        \"addressLine2\": \"Sala 3002\",\n        \"number\": \"2296\",\n        \"zipCode\": \"85802229\",\n        \"neighbourhood\": \"Neva\",\n        \"city\": \"Cascavel\",\n        \"state\": \"PR\",\n        \"country\": \"BR\",\n        \"contactName\": \"contato\",\n        \"contactPhone\": \"+554599999999\",\n        \"latitude\": -24.963707,\n        \"longitude\": -53.4769316,\n        \"default\": true\n    },\n    \"companyName\": \"Maker CD\",\n    \"email\": \"cdmaker@makertec.com.br\",\n    \"documentNumber\": {\n        \"cnpj\": \"36716856000105\",\n        \"ie\": \"2866775845\"\n    },\n    \"phone\": \"+554532260203\",\n    \"workingDays\": {\n        \"MON\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"09:00:00Z\"\n            },\n            {\n                \"to\": \"19:00:00Z\",\n                \"from\": \"08:00:00Z\"\n            }\n        ],\n        \"TUE\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"09:00:00Z\"\n            }\n        ],\n        \"WED\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"09:00:00Z\"\n            }\n        ],\n        \"THU\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"09:00:00Z\"\n            }\n        ],\n        \"FRI\": [\n            {\n                \"to\": \"19:00:00Z\",\n                \"from\": \"10:00:00Z\"\n            }\n        ]\n    },\n    \"enabled\": true,\n    \"type\": \"DISTRIBUTION CENTER\",\n    \"pickupEnabled\": false,\n    \"shipmentEnabled\": true,\n    \"handlingDays\": 1.0,\n    \"pickupDeadline\": 5,\n    \"createdAt\": \"2026-03-03T15:26:40Z\",\n    \"updatedAt\": \"2026-03-03T15:26:40Z\"\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/maker-selfdev/topics/location/messages"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"messageId\": \"c826acf0-0e81-4711-9851-b729b8b0f3d7\"\n}"},{"id":"30c790d4-4fb6-4341-8180-d7e2cfe865c2","name":"Publicação de Location - Store","originalRequest":{"method":"POST","header":[{"key":"accept","value":"application/json"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"locationId\": \"002\",\n    \"locationCode\": \"002\",\n    \"name\": \"locationId-002\",\n    \"address\": {\n        \"addressId\": \"0001\",\n        \"addressName\": \"teste\",\n        \"addressLine1\": \"Travessa Z\",\n        \"addressLine2\": \"\",\n        \"number\": \"773\",\n        \"zipCode\": \"83404440\",\n        \"neighbourhood\": \"Campo Pequeno\",\n        \"city\": \"Colombo\",\n        \"state\": \"PR\",\n        \"country\": \"BR\",\n        \"contactName\": \"contato\",\n        \"contactPhone\": \"+554599999999\",\n        \"latitude\": -25.372603,\n        \"longitude\": -49.2056119,\n        \"default\": true\n    },\n    \"companyName\": \"Maker Store\",\n    \"email\": \"storemaker@makertec.com.br\",\n    \"documentNumber\": {\n        \"cnpj\": \"71443354000159\",\n        \"ie\": \"5275576583\"\n    },\n    \"phone\": \"+554532260203\",\n    \"workingDays\": {\n        \"MON\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            },\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"TUE\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"WED\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"THU\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"FRI\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"SAT\": [\n            {\n                \"to\": \"14:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ]\n    },\n    \"enabled\": true,\n    \"type\": \"STORE\",\n    \"pickupEnabled\": true,\n    \"shipmentEnabled\": true,\n    \"handlingDays\": 1.0,\n    \"pickupDeadline\": 5,\n    \"createdAt\": \"2026-03-03T15:26:40Z\",\n    \"updatedAt\": \"2026-03-03T15:26:40Z\"\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/maker-selfdev/topics/location/messages"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"messageId\": \"3015f8d3-4d9c-45f7-83aa-6723a97605f2\"\n}"},{"id":"d767fdfd-6b7d-4e9c-a693-269cc481e8a2","name":"Campo obrigatório não enviado","originalRequest":{"method":"POST","header":[{"key":"accept","value":"application/json"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"locationCode\": \"002\",\n    \"name\": \"locationId-002\",\n    \"address\": {\n        \"addressId\": \"0001\",\n        \"addressName\": \"teste\",\n        \"addressLine1\": \"Travessa Z\",\n        \"addressLine2\": \"\",\n        \"number\": \"773\",\n        \"zipCode\": \"83404440\",\n        \"neighbourhood\": \"Campo Pequeno\",\n        \"city\": \"Colombo\",\n        \"state\": \"PR\",\n        \"country\": \"BR\",\n        \"contactName\": \"contato\",\n        \"contactPhone\": \"+554599999999\",\n        \"latitude\": -25.372603,\n        \"longitude\": -49.2056119,\n        \"default\": true\n    },\n    \"companyName\": \"Maker Store\",\n    \"email\": \"storemaker@makertec.com.br\",\n    \"documentNumber\": {\n        \"cnpj\": \"71443354000159\",\n        \"ie\": \"5275576583\"\n    },\n    \"phone\": \"+554532260203\",\n    \"workingDays\": {\n        \"MON\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            },\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"TUE\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"WED\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"THU\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"FRI\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"SAT\": [\n            {\n                \"to\": \"14:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ]\n    },\n    \"enabled\": true,\n    \"type\": \"STORE\",\n    \"pickupEnabled\": true,\n    \"shipmentEnabled\": true,\n    \"handlingDays\": 1.0,\n    \"pickupDeadline\": 5,\n    \"createdAt\": \"2026-03-03T15:26:40Z\",\n    \"updatedAt\": \"2026-03-03T15:26:40Z\"\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/maker-selfdev/topics/location/messages"},"status":"Unprocessable Content","code":422,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"name\": \"UnprocessableEntity\",\n    \"message\": \"Message of \\\"location\\\" does not match with schema, please check errors.\",\n    \"errors\": [\n        {\n            \"path\": \"$\",\n            \"validation\": \"must have required property 'locationId'\"\n        }\n    ]\n}"},{"id":"b3f8b8ba-af33-4f16-9cd4-ac8d4aad24b9","name":"Campo fora do padrão esperado","originalRequest":{"method":"POST","header":[{"key":"accept","value":"application/json"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"locationId\": \"001\",\n    \"locationCode\": \"001\",\n    \"name\": \"locationId-001\",\n    \"address\": {\n        \"addressId\": \"0001\",\n        \"addressName\": \"teste\",\n        \"addressLine1\": \"Rua Vitória\",\n        \"addressLine2\": \"Sala 3002\",\n        \"number\": \"2296\",\n        \"zipCode\": \"85802229\",\n        \"neighbourhood\": \"Neva\",\n        \"city\": \"Cascavel\",\n        \"state\": \"PR\",\n        \"country\": \"BR\",\n        \"contactName\": \"contato\",\n        \"contactPhone\": \"+554599999999\",\n        \"latitude\": -24.963707,\n        \"longitude\": -53.4769316,\n        \"default\": true\n    },\n    \"companyName\": \"Maker CD\",\n    \"email\": \"cdmaker@makertec.com.br\",\n    \"documentNumber\": {\n        \"cnpj\": \"36716856000105\",\n        \"ie\": \"2866775845\"\n    },\n    \"phone\": \"554532260203\",\n    \"workingDays\": {\n        \"MON\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"09:00:00Z\"\n            },\n            {\n                \"to\": \"19:00:00Z\",\n                \"from\": \"08:00:00Z\"\n            }\n        ],\n        \"TUE\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"09:00:00Z\"\n            }\n        ],\n        \"WED\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"09:00:00Z\"\n            }\n        ],\n        \"THU\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"09:00:00Z\"\n            }\n        ],\n        \"FRI\": [\n            {\n                \"to\": \"19:00:00Z\",\n                \"from\": \"10:00:00Z\"\n            }\n        ]\n    },\n    \"enabled\": true,\n    \"type\": \"DISTRIBUTION CENTER\",\n    \"pickupEnabled\": false,\n    \"shipmentEnabled\": true,\n    \"handlingDays\": 1.0,\n    \"pickupDeadline\": 5,\n    \"createdAt\": \"2026-03-03T15:26:40Z\",\n    \"updatedAt\": \"2026-03-03T15:26:40Z\"\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/maker-selfdev/topics/location/messages"},"status":"Unprocessable Content","code":422,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"name\": \"UnprocessableEntity\",\n    \"message\": \"Message of \\\"location\\\" does not match with schema, please check errors.\",\n    \"errors\": [\n        {\n            \"path\": \"$.phone\",\n            \"validation\": \"does not match the regex pattern ^(\\\\+\\\\d{1,3})?(\\\\d{2})(9{1})?([1-9]{1})(\\\\d{7})$\"\n        }\n    ]\n}"},{"id":"ec2110fc-e0f5-4292-b1d5-5353eec1513a","name":"Token expirado","originalRequest":{"method":"POST","header":[{"key":"accept","value":"application/json"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"locationId\": \"002\",\n    \"locationCode\": \"002\",\n    \"name\": \"locationId-002\",\n    \"address\": {\n        \"addressId\": \"0001\",\n        \"addressName\": \"teste\",\n        \"addressLine1\": \"Travessa Z\",\n        \"addressLine2\": \"\",\n        \"number\": \"773\",\n        \"zipCode\": \"83404440\",\n        \"neighbourhood\": \"Campo Pequeno\",\n        \"city\": \"Colombo\",\n        \"state\": \"PR\",\n        \"country\": \"BR\",\n        \"contactName\": \"contato\",\n        \"contactPhone\": \"+554599999999\",\n        \"latitude\": -25.372603,\n        \"longitude\": -49.2056119,\n        \"default\": true\n    },\n    \"companyName\": \"Maker Store\",\n    \"email\": \"storemaker@makertec.com.br\",\n    \"documentNumber\": {\n        \"cnpj\": \"71443354000159\",\n        \"ie\": \"5275576583\"\n    },\n    \"phone\": \"+554532260203\",\n    \"workingDays\": {\n        \"MON\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            },\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"TUE\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"WED\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"THU\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"FRI\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"SAT\": [\n            {\n                \"to\": \"14:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ]\n    },\n    \"enabled\": true,\n    \"type\": \"STORE\",\n    \"pickupEnabled\": true,\n    \"shipmentEnabled\": true,\n    \"handlingDays\": 1.0,\n    \"pickupDeadline\": 5,\n    \"createdAt\": \"2026-03-03T15:26:40Z\",\n    \"updatedAt\": \"2026-03-03T15:26:40Z\"\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/location/messages"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"exp\": \"token expired\"\n}"},{"id":"b1d87009-efeb-4181-8305-70b50ac93d1a","name":"URL incorreta","originalRequest":{"method":"POST","header":[{"key":"accept","value":"application/json"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"locationId\": \"002\",\n    \"locationCode\": \"002\",\n    \"name\": \"locationId-002\",\n    \"address\": {\n        \"addressId\": \"0001\",\n        \"addressName\": \"teste\",\n        \"addressLine1\": \"Travessa Z\",\n        \"addressLine2\": \"\",\n        \"number\": \"773\",\n        \"zipCode\": \"83404440\",\n        \"neighbourhood\": \"Campo Pequeno\",\n        \"city\": \"Colombo\",\n        \"state\": \"PR\",\n        \"country\": \"BR\",\n        \"contactName\": \"contato\",\n        \"contactPhone\": \"+554599999999\",\n        \"latitude\": -25.372603,\n        \"longitude\": -49.2056119,\n        \"default\": true\n    },\n    \"companyName\": \"Maker Store\",\n    \"email\": \"storemaker@makertec.com.br\",\n    \"documentNumber\": {\n        \"cnpj\": \"71443354000159\",\n        \"ie\": \"5275576583\"\n    },\n    \"phone\": \"+554532260203\",\n    \"workingDays\": {\n        \"MON\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            },\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"TUE\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"WED\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"THU\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"FRI\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"SAT\": [\n            {\n                \"to\": \"14:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ]\n    },\n    \"enabled\": true,\n    \"type\": \"STORE\",\n    \"pickupEnabled\": true,\n    \"shipmentEnabled\": true,\n    \"handlingDays\": 1.0,\n    \"pickupDeadline\": 5,\n    \"createdAt\": \"2026-03-03T15:26:40Z\",\n    \"updatedAt\": \"2026-03-03T15:26:40Z\"\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/maker-selfdev/topics/location/messages"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2026-09-30T19:28:05.049+00:00\",\n    \"path\": \"/v2/applications/maker-selfdev/topics/location/message\",\n    \"status\": 404,\n    \"error\": \"Not Found\",\n    \"requestId\": \"4e2d04f8-6178149\"\n}"},{"id":"4ad5233b-f6a0-4ff7-a410-c08dc7154122","name":"Falha na autenticação","originalRequest":{"method":"POST","header":[{"key":"accept","value":"application/json"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"locationId\": \"002\",\n    \"locationCode\": \"002\",\n    \"name\": \"locationId-002\",\n    \"address\": {\n        \"addressId\": \"0001\",\n        \"addressName\": \"teste\",\n        \"addressLine1\": \"Travessa Z\",\n        \"addressLine2\": \"\",\n        \"number\": \"773\",\n        \"zipCode\": \"83404440\",\n        \"neighbourhood\": \"Campo Pequeno\",\n        \"city\": \"Colombo\",\n        \"state\": \"PR\",\n        \"country\": \"BR\",\n        \"contactName\": \"contato\",\n        \"contactPhone\": \"+554599999999\",\n        \"latitude\": -25.372603,\n        \"longitude\": -49.2056119,\n        \"default\": true\n    },\n    \"companyName\": \"Maker Store\",\n    \"email\": \"storemaker@makertec.com.br\",\n    \"documentNumber\": {\n        \"cnpj\": \"71443354000159\",\n        \"ie\": \"5275576583\"\n    },\n    \"phone\": \"+554532260203\",\n    \"workingDays\": {\n        \"MON\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            },\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"TUE\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"WED\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"THU\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"FRI\": [\n            {\n                \"to\": \"18:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ],\n        \"SAT\": [\n            {\n                \"to\": \"14:00:00Z\",\n                \"from\": \"08:30:00Z\"\n            }\n        ]\n    },\n    \"enabled\": true,\n    \"type\": \"STORE\",\n    \"pickupEnabled\": true,\n    \"shipmentEnabled\": true,\n    \"handlingDays\": 1.0,\n    \"pickupDeadline\": 5,\n    \"createdAt\": \"2026-03-03T15:26:40Z\",\n    \"updatedAt\": \"2026-03-03T15:26:40Z\"\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/location/messages"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Unauthorized\"\n}"}],"_postman_id":"b4679d47-cfdd-4604-92fa-90783b4a751b"}],"id":"d42b874c-77f5-4163-98fe-d04fc1e2729a","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Endpoint utilizado para a publicação de mensagens de <code>location</code>, locations são estoques físicos, lojas, estoques de terceiros ou centros de distribuição e são utilizadas em várias publicações relacionadas à produto e pedido. O endpoint permite incluir, alterar ou desabilitar essas informações.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>POST</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/location/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{token}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n</ul>\n<h5 id=\"onde\">Onde:</h5>\n<ul>\n<li><p><code>app-id</code>: Identificador da sua aplicação no Maker IO.</p>\n</li>\n<li><p><code>token</code>: Bearer Token gerado pelo endpoint de <a href=\"#0be47a1e-bf5a-477f-9b0b-77009a952071\">Login</a>.</p>\n</li>\n</ul>\n","_postman_id":"d42b874c-77f5-4163-98fe-d04fc1e2729a"},{"name":"Product","item":[{"name":"Product","id":"6cb032eb-bd73-4c52-af79-cccd9b585e7e","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"additionalCategories\": [],\r\n    \"brand\": {\r\n        \"id\": \"1\",\r\n        \"name\": \"Maker Jeans\"\r\n    },\r\n    \"attributes\": [],\r\n    \"manufacturer\": {\r\n        \"id\": \"1\",\r\n        \"name\": \"Maker Confecções\"\r\n    },\r\n    \"createdAt\": \"2026-09-30T16:55:03-03:00\",\r\n    \"description\": \"<p>A Calça Jeans Maker é a escolha perfeita para quem busca conforto, praticidade e estilo no dia a dia. Com modelagem regular, proporciona um caimento equilibrado, oferecendo liberdade de movimento sem ficar excessivamente justa ou larga. Possui cintura tradicional, fechamento frontal por zíper e botão, passantes para cinto e bolsos funcionais, unindo praticidade e funcionalidade. O design clássico facilita diversas combinações, tornando a peça versátil para diferentes ocasiões.</p>\\n\",\r\n    \"enabled\": true,\r\n    \"flags\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"name\": \"calça\"\r\n        },\r\n        {\r\n            \"id\": \"2\",\r\n            \"name\": \"jeans\"\r\n        },\r\n        {\r\n            \"id\": \"3\",\r\n            \"name\": \"adulto\"\r\n        }\r\n    ],\r\n    \"images\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"height\": 1000,\r\n            \"width\": 1000,\r\n            \"url\": \"https://images.tcdn.com.br/img/img_prod/1313352/calca_jeans_masculina_black_1_20251112164457_19e96d32103d.jpg\",\r\n            \"isProductMedia\": true,\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\"\r\n        }\r\n    ],\r\n    \"keywords\": [\r\n        \"Calça\",\r\n        \"Masculino\",\r\n        \"Calça Masculina\"\r\n    ],\r\n    \"metaDescription\": \"\",\r\n    \"metaKeywords\": [\r\n        \"Calça Masculina\"\r\n    ],\r\n    \"productId\": \"PS.00001.0001\",\r\n    \"publishedAt\": \"2026-09-30T16:55:03-03:00\",\r\n    \"publishedScope\": \"web\",\r\n    \"title\": \"Calça Masculina Maker Jeans\",\r\n    \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n    \"category\": {\r\n        \"id\": \"01\",\r\n        \"name\": \"Masculino\",\r\n        \"child\": {\r\n            \"id\": \"01\",\r\n            \"name\": \"Calça\"\r\n        }\r\n    },\r\n    \"variations\": [\r\n        {\r\n            \"id\": \"SIZE\",\r\n            \"name\": \"Tamanho\"\r\n        }\r\n    ],\r\n    \"skus\": [\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444144\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593383\",\r\n            \"skuId\": \"2593383\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 40\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"40\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"40\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        },\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444151\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593384\",\r\n            \"skuId\": \"2593384\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 42\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"42\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"42\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        },\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444168\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593385\",\r\n            \"skuId\": \"2593385\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 44\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"44\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"44\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        },\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444137\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593382\",\r\n            \"skuId\": \"2593382\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 38\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"38\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"38\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        }\r\n    ],\r\n    \"tags\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"name\": \"Calça Masculina\"\r\n        }\r\n    ],\r\n    \"videos\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"height\": 680,\r\n            \"width\": 420,\r\n            \"url\": \"https://videos.widde.io/widde-bucket-sp/605e3776-8677-4b80-a796-e4c8ec81a17c/videos/a6bc7752-c054-498d-9f3b-bf445ca8514a-1754400313789-2442181/gif.mp4\",\r\n            \"isProductMedia\": true,\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\"\r\n        }\r\n    ],\r\n    \"warranty\": \"\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/product/messages","description":"<h3 id=\"descrição-dos-campos-do-payload\">Descrição dos campos do payload</h3>\n<p>A publicação do <strong>Product</strong> utiliza o payload abaixo, alguns arrays ou objetos do payload ficaram disponibilizados em outra seção para que a documentação não ficasse muito extensa, utilizar o link na descrição do array ou objeto para ser direcionado à seção correspondente e verificar seus campos e regras.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Campo</strong></th>\n<th><strong>Obrigatório</strong></th>\n<th><strong>Tipo de dado</strong></th>\n<th><strong>Descrição</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>productId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do produto no sistema de origem. É imutável e não pode ser vazio ou conter apenas espaços em branco.</td>\n</tr>\n<tr>\n<td>title</td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome ou título do produto exibido no catálogo. Não pode ser vazio.</td>\n</tr>\n<tr>\n<td>enabled</td>\n<td>Sim</td>\n<td>boolean</td>\n<td>Informa se o produto está ativo, aceita valores <strong>true</strong> ou <strong>false</strong>, se for enviado false os campos <strong>publishedAt</strong> e <strong>publishedUntil</strong> serão desconsiderados.</td>\n</tr>\n<tr>\n<td>createdAt</td>\n<td>Sim</td>\n<td>string (date-time)</td>\n<td>Data e hora da criação do produto no formato ISO 8601 (ex.: 2023-10-25T14:30:15.697Z ou 2023-10-25T11:30:15.697-03:00).</td>\n</tr>\n<tr>\n<td>updatedAt</td>\n<td>Sim</td>\n<td>string (date-time)</td>\n<td>Data e hora da última atualização do produto no formato ISO 8601 (ex.: 2023-10-25T14:30:15.697Z ou 2023-10-25T11:30:15.697-03:00).</td>\n</tr>\n<tr>\n<td>publishedAt</td>\n<td>Verificar regra</td>\n<td>string(date-time)</td>\n<td>Data e hora de publicação do produto, aceita o formato ISO 8601, o campo é obrigatório se o <strong>skus.enabled</strong> for <strong>true</strong>.</td>\n</tr>\n<tr>\n<td>publishedUntil</td>\n<td>Não</td>\n<td>string(date-time)</td>\n<td>Data e hora final de disponibilidade do produto, aceita o formato ISO 8601.</td>\n</tr>\n<tr>\n<td>publishedScope</td>\n<td>Sim</td>\n<td>string</td>\n<td>Indica o tipo de canal que o produto será ofertado, informe <strong>web</strong> para vendas online e <strong>pos</strong> para venda offline.</td>\n</tr>\n<tr>\n<td>description</td>\n<td>Sim</td>\n<td>string</td>\n<td>Descrição detalhada do produto, podendo conter texto simples ou formatação HTML.</td>\n</tr>\n<tr>\n<td>brand</td>\n<td>Sim</td>\n<td>object</td>\n<td>Objeto com as informações da marca associada ao produto.</td>\n</tr>\n<tr>\n<td>brand.id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador da marca.</td>\n</tr>\n<tr>\n<td>brand.name</td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome comercial da marca.</td>\n</tr>\n<tr>\n<td>category</td>\n<td>Sim</td>\n<td>object</td>\n<td>Lista de categorias nas quais o produto está classificado.</td>\n</tr>\n<tr>\n<td>category.id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador da categoria</td>\n</tr>\n<tr>\n<td>category.name</td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome da categoria.</td>\n</tr>\n<tr>\n<td>category.child</td>\n<td>Não</td>\n<td>object</td>\n<td>Objeto com informações da categoria adicional derivada da categoria adicional. É possível incluir vários níveis de <strong>additionalCategories.child</strong>.</td>\n</tr>\n<tr>\n<td>category.child.id</td>\n<td>Não</td>\n<td>string</td>\n<td>Identificador da categoria adicional.</td>\n</tr>\n<tr>\n<td>category.child.name</td>\n<td>Não</td>\n<td>string</td>\n<td>Nome da categoria adicional.</td>\n</tr>\n<tr>\n<td>additionalCategories</td>\n<td>Não</td>\n<td>array</td>\n<td>Informação de categorias adicionais do produto.</td>\n</tr>\n<tr>\n<td>additionalCategories[].id</td>\n<td>Não</td>\n<td>string</td>\n<td>Identificador da categoria adicional.</td>\n</tr>\n<tr>\n<td>additionalCategories[].name</td>\n<td>Não</td>\n<td>string</td>\n<td>Nome da categoria adicional.</td>\n</tr>\n<tr>\n<td>additionalCategories[].child</td>\n<td>Não</td>\n<td>object</td>\n<td>Objeto com informações da categoria adicional derivada da categoria adicional. É possível incluir vários níveis de <strong>additionalCategories.child</strong>.</td>\n</tr>\n<tr>\n<td>additionalCategories[].child.id</td>\n<td>Não</td>\n<td>string</td>\n<td>Identificador da categoria adicional.</td>\n</tr>\n<tr>\n<td>additionalCategories[].child.name</td>\n<td>Não</td>\n<td>string</td>\n<td>Nome da categoria adicional.</td>\n</tr>\n<tr>\n<td>skus</td>\n<td>Sim</td>\n<td>array</td>\n<td>Lista com as variações do produto.</td>\n</tr>\n<tr>\n<td>skus.additionalHandlingDays</td>\n<td>Não</td>\n<td>number</td>\n<td>Quantidade de dias adicionais para o manuseio do produto.</td>\n</tr>\n<tr>\n<td>skus.attributes</td>\n<td>Não</td>\n<td>array</td>\n<td>Lista com os atributos das variações do produto.</td>\n</tr>\n<tr>\n<td>skus.attributes[].id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do atributo.</td>\n</tr>\n<tr>\n<td>skus.attributes[].name</td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome do atributo.</td>\n</tr>\n<tr>\n<td>skus.attributes[].value</td>\n<td>Sim</td>\n<td>string</td>\n<td>Valor atribuído ao produto.</td>\n</tr>\n<tr>\n<td>skus.attributes[].format</td>\n<td>Não</td>\n<td>string</td>\n<td>Formato da estrutura do atributo, informe <strong>TEXT</strong>, <strong>LIST</strong>, <strong>MULTI_LIST</strong> ou <strong>HTML</strong>.</td>\n</tr>\n<tr>\n<td>skus.enabled</td>\n<td>Sim</td>\n<td>boolean</td>\n<td>Informa se a variação do produto está ativa, aceita valores <strong>true</strong> ou <strong>false</strong>, se for enviado false os campos <strong>publishedAt</strong> e <strong>publishedUntil</strong> serão desconsiderados, se se for enviado true os campos <strong>publishedAt</strong> e <strong>publishedUntil</strong> serão obrigatórios.</td>\n</tr>\n<tr>\n<td>skus.height</td>\n<td>Sim</td>\n<td>object</td>\n<td>Informações referente à altura do produto, sem considerar a embalagem de transporte.</td>\n</tr>\n<tr>\n<td>skus.height.unit</td>\n<td>Sim</td>\n<td>string</td>\n<td>Unidade de medida da altura, o padrão é <strong>cm</strong>.</td>\n</tr>\n<tr>\n<td>skus.height.value</td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor numérico da altura.</td>\n</tr>\n<tr>\n<td>skus.width</td>\n<td>Sim</td>\n<td>object</td>\n<td>Informações referente à largura do produto, sem considerar a embalagem de transporte.</td>\n</tr>\n<tr>\n<td>skus.width.unit</td>\n<td>Sim</td>\n<td>string</td>\n<td>Unidade de medida da largura, o padrão é <strong>cm</strong>.</td>\n</tr>\n<tr>\n<td>skus.width.value</td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor numérico da largura.</td>\n</tr>\n<tr>\n<td>skus.lenght</td>\n<td>Sim</td>\n<td>object</td>\n<td>Informações referente ao comprimento do produto, sem considerar a embalagem de transporte.</td>\n</tr>\n<tr>\n<td>skus.length.unit</td>\n<td>Sim</td>\n<td>string</td>\n<td>Unidade de medida do comprimento, o padrão é <strong>cm</strong>.</td>\n</tr>\n<tr>\n<td>skus.length.value</td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor numérico do comprimento.</td>\n</tr>\n<tr>\n<td>skus.weight</td>\n<td>Sim</td>\n<td>object</td>\n<td>Informações referente ao peso do produto, sem considerar a embalagem de transporte.</td>\n</tr>\n<tr>\n<td>skus.weight.unit</td>\n<td>Sim</td>\n<td>string</td>\n<td>Unidade de medida do peso, o padrão é <strong>kg</strong>.</td>\n</tr>\n<tr>\n<td>skus.weight.value</td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor numérico do peso.</td>\n</tr>\n<tr>\n<td>skus.identifiers.defautGtin</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código EAN principal, código ISBN ou código SKU principal.</td>\n</tr>\n<tr>\n<td>skus.identifiers.gtins[]</td>\n<td>Não</td>\n<td>array(string)</td>\n<td>Lista com os códigos de barra do SKU.</td>\n</tr>\n<tr>\n<td>skus.outOfStockSales</td>\n<td>Não</td>\n<td>boolean</td>\n<td>Indica se é possível efetuar vendas sem estoque, aceita valores <strong>true</strong> ou <strong>false</strong>, o padrão é false.</td>\n</tr>\n<tr>\n<td>skus.outOfStockSalesAdditionalHandlingDays</td>\n<td>Não</td>\n<td>number</td>\n<td>Quantidade de dias adicionais para manuseio do produto para vendas sem estoque.</td>\n</tr>\n<tr>\n<td>skus.outOfStockSalesQuantity</td>\n<td>Não</td>\n<td>number</td>\n<td>Quantidade liberada para vendas sem estoque.</td>\n</tr>\n<tr>\n<td>skus.productId</td>\n<td>Não</td>\n<td>string</td>\n<td>Código interno do produto.</td>\n</tr>\n<tr>\n<td>skus.publishedAt</td>\n<td>Verificar regra</td>\n<td>string(date-time)</td>\n<td>Data e hora de publicação da variação do produto, aceita o formato iSO 8601, o campo é obrigatório se o <strong>skus.enabled</strong> for <strong>true</strong>.</td>\n</tr>\n<tr>\n<td>skus.publishedUntil</td>\n<td>Não</td>\n<td>string(date-time)</td>\n<td>Data e hora final de disponibilidade da variação do produto, aceita o formato iSO 8601.</td>\n</tr>\n<tr>\n<td>skus.updatedAt</td>\n<td>Sim</td>\n<td>string(date-time)</td>\n<td>Data e hora de atualização da variação do produto, aceita o formato iSO 8601.</td>\n</tr>\n<tr>\n<td>skus.requiresShipping</td>\n<td>Sim</td>\n<td>boolean</td>\n<td>Indica se o SKU será enviado por transportadora.</td>\n</tr>\n<tr>\n<td>skus.sku</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código externo do SKU.</td>\n</tr>\n<tr>\n<td>skus.skuId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do SKU.</td>\n</tr>\n<tr>\n<td>skus.title</td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome do SKU.</td>\n</tr>\n<tr>\n<td>attributes</td>\n<td>Não</td>\n<td>array (object)</td>\n<td>Lista de atributos do produto.</td>\n</tr>\n<tr>\n<td>attributes[].data</td>\n<td>Sim</td>\n<td>object</td>\n<td>Dados para configuração do valor do atributo.</td>\n</tr>\n<tr>\n<td>attributes[].data.id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do valor do atributo.</td>\n</tr>\n<tr>\n<td>attributes[].data.type</td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo do valor do atributo, informe <strong>string</strong>, <strong>number</strong>, <strong>boolean</strong>.</td>\n</tr>\n<tr>\n<td>attributes[].data.value</td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Valor do atributo, utilizar quando o valor for de livre digitação, é necessário enviar quando não for informado o campo <strong>attributes[].data.values</strong>.</td>\n</tr>\n<tr>\n<td>attributes[].data.values</td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Valores do atributo, utilizar quando o valor for pré definido, é necessário enviar quando não for informado o campo <strong>attributes[].data.value</strong>.</td>\n</tr>\n<tr>\n<td>attributes[].format</td>\n<td>Não</td>\n<td>string</td>\n<td>Formato da estrutura do atributo, informe <strong>TEXT</strong>, <strong>LIST</strong>, <strong>MULTI-LIST</strong>, <strong>HTML</strong>.</td>\n</tr>\n<tr>\n<td>attributes[].id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do atributo.</td>\n</tr>\n<tr>\n<td>attributes[].name</td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome do atributo.</td>\n</tr>\n<tr>\n<td>flags</td>\n<td>Não</td>\n<td>array</td>\n<td>Lista de flags do produto, essa informação é enviada para plataformas de comércio eletrônico para facilitar a busca por parte dos clientes.</td>\n</tr>\n<tr>\n<td>flags[].id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador da flag.</td>\n</tr>\n<tr>\n<td>flags[].name</td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome da flag.</td>\n</tr>\n<tr>\n<td>images</td>\n<td>Não</td>\n<td>array</td>\n<td>Lista de imagens do produto.</td>\n</tr>\n<tr>\n<td>images[].id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador da imagem.</td>\n</tr>\n<tr>\n<td>images[].isProductMedia</td>\n<td>Não</td>\n<td>boolean</td>\n<td>Indica se a imagem pertence somente ao produto base.</td>\n</tr>\n<tr>\n<td>images[].skusId</td>\n<td>Não</td>\n<td>array(string)</td>\n<td>Lista de identificadores dos SKUs que a imagem será vinculada.</td>\n</tr>\n<tr>\n<td>images[].height</td>\n<td>Não</td>\n<td>integer</td>\n<td>Altura da imagem.</td>\n</tr>\n<tr>\n<td>images[].width</td>\n<td>Não</td>\n<td>integer</td>\n<td>Largura da imagem.</td>\n</tr>\n<tr>\n<td>images[].url</td>\n<td>Sim</td>\n<td>string</td>\n<td>URL onde a imagem está disponível para download.</td>\n</tr>\n<tr>\n<td>images[].updatedAt</td>\n<td>Sim</td>\n<td>string</td>\n<td>Data e hora de atualização da imagem.</td>\n</tr>\n<tr>\n<td>keywords</td>\n<td>Não</td>\n<td>array(string)</td>\n<td>Palavras-chave utilizadas para facilitar a busca pelo produto em plataformas de comércio eletrônico.</td>\n</tr>\n<tr>\n<td>manufacturer</td>\n<td>Não</td>\n<td>object</td>\n<td>Informações sobre o fabricante do produto.</td>\n</tr>\n<tr>\n<td>manufacturer.id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do fabricante.</td>\n</tr>\n<tr>\n<td>manufacturer.name</td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome do fabricante.</td>\n</tr>\n<tr>\n<td>metaDescription</td>\n<td>Não</td>\n<td>string</td>\n<td>Meta descrição do produto, é utilizada em plataformas de comércio eletrônico para chamar atenção de clientes ao produto.</td>\n</tr>\n<tr>\n<td>metaKeywords</td>\n<td>Não</td>\n<td>array(string)</td>\n<td>Palavras chave para consulta do produto em plataformas de comércio eletrônico.</td>\n</tr>\n<tr>\n<td>tags</td>\n<td>Não</td>\n<td>array</td>\n<td>Lista com as tags do produto, tags são utilizadas em sistemas de busca em plataformas de comércio eletrônico.</td>\n</tr>\n<tr>\n<td>tags[].id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador da tag.</td>\n</tr>\n<tr>\n<td>tags[].name</td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome da tag.</td>\n</tr>\n<tr>\n<td>variations</td>\n<td>Não</td>\n<td>array</td>\n<td>Lista com os tipos de variação do produto, as variações podem ser tamanho, cor, voltagem.</td>\n</tr>\n<tr>\n<td>variations[].id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do tipo de variação do produto.</td>\n</tr>\n<tr>\n<td>variations[].name</td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome do tipo de variação do produto.</td>\n</tr>\n<tr>\n<td>videos</td>\n<td>Não</td>\n<td>array</td>\n<td>Lista de vídeos do produto.</td>\n</tr>\n<tr>\n<td>videos[].id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do vídeo.</td>\n</tr>\n<tr>\n<td>videos[].isProductMedia</td>\n<td>Não</td>\n<td>boolean</td>\n<td>Indica se o vídeo pertence somente ao produto base.</td>\n</tr>\n<tr>\n<td>videos[].skusId</td>\n<td>Não</td>\n<td>string</td>\n<td>Lista de identificadores dos SKUs que o vídeo será vinculado.</td>\n</tr>\n<tr>\n<td>videos[].height</td>\n<td>Não</td>\n<td>integer</td>\n<td>Altura do vídeo.</td>\n</tr>\n<tr>\n<td>videos[].width</td>\n<td>Não</td>\n<td>integer</td>\n<td>Largura do vídeo.</td>\n</tr>\n<tr>\n<td>videos[].url</td>\n<td>Sim</td>\n<td>string</td>\n<td>URL onde o vídeo está disponível para download.</td>\n</tr>\n<tr>\n<td>videos[].updatedAt</td>\n<td>Sim</td>\n<td>string</td>\n<td>Data e hora de atualização do vídeo.</td>\n</tr>\n<tr>\n<td>warranty</td>\n<td>Não</td>\n<td>string</td>\n<td>Descrição das condições e tempo de garantia do produto.</td>\n</tr>\n<tr>\n<td>url</td>\n<td>Não</td>\n<td>string</td>\n<td>URL do produto no e-commerce.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","product","messages"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[{"id":"d8097ad1-a787-4516-b33f-f4f772a0da30","name":"Publicação de produto","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"additionalCategories\": [],\r\n    \"brand\": {\r\n        \"id\": \"1\",\r\n        \"name\": \"Maker Jeans\"\r\n    },\r\n    \"attributes\": [],\r\n    \"manufacturer\": {\r\n        \"id\": \"1\",\r\n        \"name\": \"Maker Confecções\"\r\n    },\r\n    \"createdAt\": \"2026-09-30T16:55:03-03:00\",\r\n    \"description\": \"<p>A Calça Jeans Maker é a escolha perfeita para quem busca conforto, praticidade e estilo no dia a dia. Com modelagem regular, proporciona um caimento equilibrado, oferecendo liberdade de movimento sem ficar excessivamente justa ou larga. Possui cintura tradicional, fechamento frontal por zíper e botão, passantes para cinto e bolsos funcionais, unindo praticidade e funcionalidade. O design clássico facilita diversas combinações, tornando a peça versátil para diferentes ocasiões.</p>\\n\",\r\n    \"enabled\": true,\r\n    \"flags\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"name\": \"calça\"\r\n        },\r\n        {\r\n            \"id\": \"2\",\r\n            \"name\": \"jeans\"\r\n        },\r\n        {\r\n            \"id\": \"3\",\r\n            \"name\": \"adulto\"\r\n        }\r\n    ],\r\n    \"images\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"height\": 1000,\r\n            \"width\": 1000,\r\n            \"url\": \"https://images.tcdn.com.br/img/img_prod/1313352/calca_jeans_masculina_black_1_20251112164457_19e96d32103d.jpg\",\r\n            \"isProductMedia\": true,\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\"\r\n        }\r\n    ],\r\n    \"keywords\": [\r\n        \"Calça\",\r\n        \"Masculino\",\r\n        \"Calça Masculina\"\r\n    ],\r\n    \"metaDescription\": \"\",\r\n    \"metaKeywords\": [\r\n        \"Calça Masculina\"\r\n    ],\r\n    \"productId\": \"PS.00001.0001\",\r\n    \"publishedAt\": \"2026-09-30T16:55:03-03:00\",\r\n    \"publishedScope\": \"web\",\r\n    \"title\": \"Calça Masculina Maker Jeans\",\r\n    \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n    \"category\": {\r\n        \"id\": \"01\",\r\n        \"name\": \"Masculino\",\r\n        \"child\": {\r\n            \"id\": \"01\",\r\n            \"name\": \"Calça\"\r\n        }\r\n    },\r\n    \"variations\": [\r\n        {\r\n            \"id\": \"SIZE\",\r\n            \"name\": \"Tamanho\"\r\n        }\r\n    ],\r\n    \"skus\": [\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444144\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593383\",\r\n            \"skuId\": \"2593383\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 40\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"40\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"40\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        },\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444151\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593384\",\r\n            \"skuId\": \"2593384\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 42\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"42\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"42\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        },\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444168\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593385\",\r\n            \"skuId\": \"2593385\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 44\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"44\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"44\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        },\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444137\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593382\",\r\n            \"skuId\": \"2593382\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 38\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"38\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"38\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        }\r\n    ],\r\n    \"tags\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"name\": \"Calça Masculina\"\r\n        }\r\n    ],\r\n    \"videos\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"height\": 680,\r\n            \"width\": 420,\r\n            \"url\": \"https://videos.widde.io/widde-bucket-sp/605e3776-8677-4b80-a796-e4c8ec81a17c/videos/a6bc7752-c054-498d-9f3b-bf445ca8514a-1754400313789-2442181/gif.mp4\",\r\n            \"isProductMedia\": true,\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\"\r\n        }\r\n    ],\r\n    \"warranty\": \"\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/maker-selfdev/topics/product/messages"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"messageId\": \"4d20329c-be0d-4627-9044-015899c337c7\"\n}"},{"id":"20380e53-737f-4011-8e4e-6b0af8873d86","name":"Campo obrigatório não enviado","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"additionalCategories\": [],\r\n    \"brand\": {\r\n        \"id\": \"1\",\r\n        \"name\": \"Maker Jeans\"\r\n    },\r\n    \"attributes\": [],\r\n    \"manufacturer\": {\r\n        \"id\": \"1\",\r\n        \"name\": \"Maker Confecções\"\r\n    },\r\n    \"createdAt\": \"2026-09-30T16:55:03-03:00\",\r\n    \"description\": \"<p>A Calça Jeans Maker é a escolha perfeita para quem busca conforto, praticidade e estilo no dia a dia. Com modelagem regular, proporciona um caimento equilibrado, oferecendo liberdade de movimento sem ficar excessivamente justa ou larga. Possui cintura tradicional, fechamento frontal por zíper e botão, passantes para cinto e bolsos funcionais, unindo praticidade e funcionalidade. O design clássico facilita diversas combinações, tornando a peça versátil para diferentes ocasiões.</p>\\n\",\r\n    \"enabled\": true,\r\n    \"flags\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"name\": \"calça\"\r\n        },\r\n        {\r\n            \"id\": \"2\",\r\n            \"name\": \"jeans\"\r\n        },\r\n        {\r\n            \"id\": \"3\",\r\n            \"name\": \"adulto\"\r\n        }\r\n    ],\r\n    \"images\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"height\": 1000,\r\n            \"width\": 1000,\r\n            \"url\": \"https://images.tcdn.com.br/img/img_prod/1313352/calca_jeans_masculina_black_1_20251112164457_19e96d32103d.jpg\",\r\n            \"isProductMedia\": true,\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\"\r\n        }\r\n    ],\r\n    \"keywords\": [\r\n        \"Calça\",\r\n        \"Masculino\",\r\n        \"Calça Masculina\"\r\n    ],\r\n    \"metaDescription\": \"\",\r\n    \"metaKeywords\": [\r\n        \"Calça Masculina\"\r\n    ],\r\n    \"publishedAt\": \"2026-09-30T16:55:03-03:00\",\r\n    \"publishedScope\": \"web\",\r\n    \"title\": \"Calça Masculina Maker Jeans\",\r\n    \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n    \"category\": {\r\n        \"id\": \"01\",\r\n        \"name\": \"Masculino\",\r\n        \"child\": {\r\n            \"id\": \"01\",\r\n            \"name\": \"Calça\"\r\n        }\r\n    },\r\n    \"variations\": [\r\n        {\r\n            \"id\": \"SIZE\",\r\n            \"name\": \"Tamanho\"\r\n        }\r\n    ],\r\n    \"skus\": [\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444144\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593383\",\r\n            \"skuId\": \"2593383\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 40\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"40\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"40\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        },\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444151\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593384\",\r\n            \"skuId\": \"2593384\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 42\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"42\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"42\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        },\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444168\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593385\",\r\n            \"skuId\": \"2593385\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 44\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"44\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"44\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        },\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444137\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593382\",\r\n            \"skuId\": \"2593382\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 38\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"38\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"38\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        }\r\n    ],\r\n    \"tags\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"name\": \"Calça Masculina\"\r\n        }\r\n    ],\r\n    \"videos\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"height\": 680,\r\n            \"width\": 420,\r\n            \"url\": \"https://videos.widde.io/widde-bucket-sp/605e3776-8677-4b80-a796-e4c8ec81a17c/videos/a6bc7752-c054-498d-9f3b-bf445ca8514a-1754400313789-2442181/gif.mp4\",\r\n            \"isProductMedia\": true,\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\"\r\n        }\r\n    ],\r\n    \"warranty\": \"\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/product/messages"},"status":"Unprocessable Content","code":422,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"name\": \"UnprocessableEntity\",\n    \"message\": \"Message of \\\"product\\\" does not match with schema, please check errors.\",\n    \"errors\": [\n        {\n            \"path\": \"$\",\n            \"validation\": \"must have required property 'productId'\",\n            \"description\": \"Property \\\"productId\\\" is required.\"\n        }\n    ]\n}"},{"id":"c87d4d7c-28de-43ae-8df1-47e0301913ac","name":"Campo fora do padrão esperado","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"additionalCategories\": [],\r\n    \"brand\": {\r\n        \"id\": \"1\",\r\n        \"name\": \"Maker Jeans\"\r\n    },\r\n    \"attributes\": [],\r\n    \"manufacturer\": {\r\n        \"id\": \"1\",\r\n        \"name\": \"Maker Confecções\"\r\n    },\r\n    \"createdAt\": \"2026-09-30T16:55:03-03:00\",\r\n    \"description\": \"<p>A Calça Jeans Maker é a escolha perfeita para quem busca conforto, praticidade e estilo no dia a dia. Com modelagem regular, proporciona um caimento equilibrado, oferecendo liberdade de movimento sem ficar excessivamente justa ou larga. Possui cintura tradicional, fechamento frontal por zíper e botão, passantes para cinto e bolsos funcionais, unindo praticidade e funcionalidade. O design clássico facilita diversas combinações, tornando a peça versátil para diferentes ocasiões.</p>\\n\",\r\n    \"enabled\": true,\r\n    \"flags\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"name\": \"calça\"\r\n        },\r\n        {\r\n            \"id\": \"2\",\r\n            \"name\": \"jeans\"\r\n        },\r\n        {\r\n            \"id\": \"3\",\r\n            \"name\": \"adulto\"\r\n        }\r\n    ],\r\n    \"images\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"height\": \"1000\",\r\n            \"width\": \"1000\",\r\n            \"skuIds\": \"\",\r\n            \"url\": \"https://images.tcdn.com.br/img/img_prod/1313352/calca_jeans_masculina_black_1_20251112164457_19e96d32103d.jpg\",\r\n            \"isProductMedia\": true,\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\"\r\n        }\r\n    ],\r\n    \"keywords\": \"\",\r\n    \"metaDescription\": \"\",\r\n    \"metaKeywords\": \"\",\r\n    \"productId\": \"PS.00001.0001\",\r\n    \"publishedAt\": \"2026-09-30T16:55:03-03:00\",\r\n    \"publishedScope\": \"WEB\",\r\n    \"publishedUntil\": \"\",\r\n    \"title\": \"Calça Masculina Maker Jeans\",\r\n    \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n    \"category\": {\r\n        \"id\": \"01\",\r\n        \"name\": \"Masculino\",\r\n        \"child\": {\r\n            \"id\": \"01\",\r\n            \"name\": \"Calça\"\r\n        }\r\n    },\r\n    \"variations\": [\r\n        {\r\n            \"id\": \"SIZE\",\r\n            \"name\": \"Tamanho\"\r\n        }\r\n    ],\r\n    \"skus\": [\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444144\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593383\",\r\n            \"skuId\": \"2593383\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 40\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"40\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"40\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        },\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444151\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593384\",\r\n            \"skuId\": \"2593384\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 42\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"42\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"42\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        },\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444168\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593385\",\r\n            \"skuId\": \"2593385\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 44\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"44\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"44\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        },\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444137\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593382\",\r\n            \"skuId\": \"2593382\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 38\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"38\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"38\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        }\r\n    ],\r\n    \"tags\": [\r\n        {\r\n            \"id\": \"\",\r\n            \"name\": \"\"\r\n        }\r\n    ],\r\n    \"url\": \"\",\r\n    \"videos\": [\r\n        {\r\n            \"id\": \"\",\r\n            \"height\": \"\",\r\n            \"width\": \"\",\r\n            \"skuIds\": \"\",\r\n            \"url\": \"\",\r\n            \"isProductMedia\": true,\r\n            \"updatedAt\": \"\"\r\n        }\r\n    ],\r\n    \"warranty\": \"\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/product/messages"},"status":"Unprocessable Content","code":422,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"name\": \"UnprocessableEntity\",\n    \"message\": \"Message of \\\"product\\\" does not match with schema, please check errors.\",\n    \"errors\": [\n        {\n            \"path\": \"$.url\",\n            \"validation\": \"does not match the regex pattern ^(https?://[0-9]{1,3}\\\\.[0-9]{1,3}\\\\.[0-9]{1,3}\\\\.[0-9]{1,3}|(https?://(?:www[0-9]{0,2}?\\\\.|(?!www[0-9]{0,2}?))|www[0-9]{0,2}?\\\\.)[a-zA-Z0-9@:%\\\\._\\\\+~#=\\\\-]{1,}\\\\.[a-zA-Z]{2,63}\\\\b)(:[0-9]{1,5}\\\\b)?((/|\\\\?).*)?$\"\n        },\n        {\n            \"path\": \"$.tags[0].id\",\n            \"validation\": \"does not match the regex pattern ^(?!\\\\s*$).+\"\n        },\n        {\n            \"path\": \"$.tags[0].name\",\n            \"validation\": \"does not match the regex pattern ^(?!\\\\s*$).+\"\n        },\n        {\n            \"path\": \"$.images[0].width\",\n            \"validation\": \"string found, integer expected\"\n        },\n        {\n            \"path\": \"$.images[0].height\",\n            \"validation\": \"string found, integer expected\"\n        },\n        {\n            \"path\": \"$.images[0].skuIds\",\n            \"validation\": \"string found, array expected\"\n        },\n        {\n            \"path\": \"$.videos[0].id\",\n            \"validation\": \"does not match the regex pattern ^(?!\\\\s*$).+\"\n        },\n        {\n            \"path\": \"$.videos[0].updatedAt\",\n            \"validation\": \"does not match the date-time pattern must be a valid RFC 3339 date-time\"\n        },\n        {\n            \"path\": \"$.videos[0].width\",\n            \"validation\": \"string found, integer expected\"\n        },\n        {\n            \"path\": \"$.videos[0].height\",\n            \"validation\": \"string found, integer expected\"\n        },\n        {\n            \"path\": \"$.videos[0].url\",\n            \"validation\": \"does not match the uri pattern must be a valid RFC 3986 URI\"\n        },\n        {\n            \"path\": \"$.videos[0].url\",\n            \"validation\": \"does not match the regex pattern ^(https?://[0-9]{1,3}\\\\.[0-9]{1,3}\\\\.[0-9]{1,3}\\\\.[0-9]{1,3}|(https?://(?:www[0-9]{0,2}?\\\\.|(?!www[0-9]{0,2}?))|www[0-9]{0,2}?\\\\.)[a-zA-Z0-9@:%\\\\._\\\\+~#=\\\\-]{1,}\\\\.[a-zA-Z]{2,63}\\\\b)(:[0-9]{1,5}\\\\b)?((/|\\\\?).*)?$\"\n        },\n        {\n            \"path\": \"$.videos[0].skuIds\",\n            \"validation\": \"string found, array expected\"\n        },\n        {\n            \"path\": \"$.publishedScope\",\n            \"validation\": \"does not have a value in the enumeration [\\\"web\\\", \\\"pos\\\"]\",\n            \"description\": \"Property \\\"publishedScope\\\" only accepts the values declared in enum values, current value is \\\"WEB\\\".\"\n        },\n        {\n            \"path\": \"$.publishedUntil\",\n            \"validation\": \"does not match the date-time pattern must be a valid RFC 3339 date-time\"\n        },\n        {\n            \"path\": \"$.keywords\",\n            \"validation\": \"string found, array expected\"\n        },\n        {\n            \"path\": \"$.metaKeywords\",\n            \"validation\": \"string found, array expected\"\n        }\n    ]\n}"},{"id":"b649afe8-b4d7-40ac-8119-6a9313bc724e","name":"Token expirado","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"additionalCategories\": [],\r\n    \"brand\": {\r\n        \"id\": \"1\",\r\n        \"name\": \"Maker Jeans\"\r\n    },\r\n    \"attributes\": [],\r\n    \"manufacturer\": {\r\n        \"id\": \"1\",\r\n        \"name\": \"Maker Confecções\"\r\n    },\r\n    \"createdAt\": \"2026-09-30T16:55:03-03:00\",\r\n    \"description\": \"<p>A Calça Jeans Maker é a escolha perfeita para quem busca conforto, praticidade e estilo no dia a dia. Com modelagem regular, proporciona um caimento equilibrado, oferecendo liberdade de movimento sem ficar excessivamente justa ou larga. Possui cintura tradicional, fechamento frontal por zíper e botão, passantes para cinto e bolsos funcionais, unindo praticidade e funcionalidade. O design clássico facilita diversas combinações, tornando a peça versátil para diferentes ocasiões.</p>\\n\",\r\n    \"enabled\": true,\r\n    \"flags\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"name\": \"calça\"\r\n        },\r\n        {\r\n            \"id\": \"2\",\r\n            \"name\": \"jeans\"\r\n        },\r\n        {\r\n            \"id\": \"3\",\r\n            \"name\": \"adulto\"\r\n        }\r\n    ],\r\n    \"images\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"height\": \"1000\",\r\n            \"width\": \"1000\",\r\n            \"skuIds\": \"\",\r\n            \"url\": \"https://images.tcdn.com.br/img/img_prod/1313352/calca_jeans_masculina_black_1_20251112164457_19e96d32103d.jpg\",\r\n            \"isProductMedia\": true,\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\"\r\n        }\r\n    ],\r\n    \"keywords\": \"\",\r\n    \"metaDescription\": \"\",\r\n    \"metaKeywords\": \"\",\r\n    \"productId\": \"PS.00001.0001\",\r\n    \"publishedAt\": \"2026-09-30T16:55:03-03:00\",\r\n    \"publishedScope\": \"WEB\",\r\n    \"publishedUntil\": \"\",\r\n    \"title\": \"Calça Masculina Maker Jeans\",\r\n    \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n    \"category\": {\r\n        \"id\": \"01\",\r\n        \"name\": \"Masculino\",\r\n        \"child\": {\r\n            \"id\": \"01\",\r\n            \"name\": \"Calça\"\r\n        }\r\n    },\r\n    \"variations\": [\r\n        {\r\n            \"id\": \"SIZE\",\r\n            \"name\": \"Tamanho\"\r\n        }\r\n    ],\r\n    \"skus\": [\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444144\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593383\",\r\n            \"skuId\": \"2593383\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 40\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"40\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"40\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        },\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444151\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593384\",\r\n            \"skuId\": \"2593384\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 42\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"42\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"42\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        },\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444168\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593385\",\r\n            \"skuId\": \"2593385\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 44\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"44\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"44\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        },\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444137\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593382\",\r\n            \"skuId\": \"2593382\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 38\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"38\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"38\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        }\r\n    ],\r\n    \"tags\": [\r\n        {\r\n            \"id\": \"\",\r\n            \"name\": \"\"\r\n        }\r\n    ],\r\n    \"url\": \"\",\r\n    \"videos\": [\r\n        {\r\n            \"id\": \"\",\r\n            \"height\": \"\",\r\n            \"width\": \"\",\r\n            \"skuIds\": \"\",\r\n            \"url\": \"\",\r\n            \"isProductMedia\": true,\r\n            \"updatedAt\": \"\"\r\n        }\r\n    ],\r\n    \"warranty\": \"\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/maker-selfdev/topics/product/messages"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"exp\": \"token expired\"\n}"},{"id":"d9e20e00-62bd-4f45-84d1-ba981d0170c8","name":"URL incorreta","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"additionalCategories\": [],\r\n    \"brand\": {\r\n        \"id\": \"1\",\r\n        \"name\": \"Maker Jeans\"\r\n    },\r\n    \"attributes\": [],\r\n    \"manufacturer\": {\r\n        \"id\": \"1\",\r\n        \"name\": \"Maker Confecções\"\r\n    },\r\n    \"createdAt\": \"2026-09-30T16:55:03-03:00\",\r\n    \"description\": \"<p>A Calça Jeans Maker é a escolha perfeita para quem busca conforto, praticidade e estilo no dia a dia. Com modelagem regular, proporciona um caimento equilibrado, oferecendo liberdade de movimento sem ficar excessivamente justa ou larga. Possui cintura tradicional, fechamento frontal por zíper e botão, passantes para cinto e bolsos funcionais, unindo praticidade e funcionalidade. O design clássico facilita diversas combinações, tornando a peça versátil para diferentes ocasiões.</p>\\n\",\r\n    \"enabled\": true,\r\n    \"flags\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"name\": \"calça\"\r\n        },\r\n        {\r\n            \"id\": \"2\",\r\n            \"name\": \"jeans\"\r\n        },\r\n        {\r\n            \"id\": \"3\",\r\n            \"name\": \"adulto\"\r\n        }\r\n    ],\r\n    \"images\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"height\": 1000,\r\n            \"width\": 1000,\r\n            \"url\": \"https://images.tcdn.com.br/img/img_prod/1313352/calca_jeans_masculina_black_1_20251112164457_19e96d32103d.jpg\",\r\n            \"isProductMedia\": true,\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\"\r\n        }\r\n    ],\r\n    \"keywords\": [\r\n        \"Calça\",\r\n        \"Masculino\",\r\n        \"Calça Masculina\"\r\n    ],\r\n    \"metaDescription\": \"\",\r\n    \"metaKeywords\": [\r\n        \"Calça Masculina\"\r\n    ],\r\n    \"productId\": \"PS.00001.0001\",\r\n    \"publishedAt\": \"2026-09-30T16:55:03-03:00\",\r\n    \"publishedScope\": \"web\",\r\n    \"title\": \"Calça Masculina Maker Jeans\",\r\n    \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n    \"category\": {\r\n        \"id\": \"01\",\r\n        \"name\": \"Masculino\",\r\n        \"child\": {\r\n            \"id\": \"01\",\r\n            \"name\": \"Calça\"\r\n        }\r\n    },\r\n    \"variations\": [\r\n        {\r\n            \"id\": \"SIZE\",\r\n            \"name\": \"Tamanho\"\r\n        }\r\n    ],\r\n    \"skus\": [\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444144\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593383\",\r\n            \"skuId\": \"2593383\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 40\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"40\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"40\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        },\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444151\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593384\",\r\n            \"skuId\": \"2593384\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 42\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"42\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"42\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        },\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444168\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593385\",\r\n            \"skuId\": \"2593385\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 44\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"44\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"44\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        },\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444137\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593382\",\r\n            \"skuId\": \"2593382\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 38\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"38\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"38\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        }\r\n    ],\r\n    \"tags\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"name\": \"Calça Masculina\"\r\n        }\r\n    ],\r\n    \"videos\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"height\": 680,\r\n            \"width\": 420,\r\n            \"url\": \"https://videos.widde.io/widde-bucket-sp/605e3776-8677-4b80-a796-e4c8ec81a17c/videos/a6bc7752-c054-498d-9f3b-bf445ca8514a-1754400313789-2442181/gif.mp4\",\r\n            \"isProductMedia\": true,\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\"\r\n        }\r\n    ],\r\n    \"warranty\": \"\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/maker-selfdev/topics/product/messages"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2026-10-01T15:01:23.298+00:00\",\n    \"path\": \"/v2/applications/maker-selfdev/topics/product/message\",\n    \"status\": 404,\n    \"error\": \"Not Found\",\n    \"requestId\": \"7610eb6a-3213937\"\n}"},{"id":"4f10f80a-fd06-4b8f-9fbf-c30690bae380","name":"Falha na autenticação","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"additionalCategories\": [],\r\n    \"brand\": {\r\n        \"id\": \"1\",\r\n        \"name\": \"Maker Jeans\"\r\n    },\r\n    \"attributes\": [],\r\n    \"manufacturer\": {\r\n        \"id\": \"1\",\r\n        \"name\": \"Maker Confecções\"\r\n    },\r\n    \"createdAt\": \"2026-09-30T16:55:03-03:00\",\r\n    \"description\": \"<p>A Calça Jeans Maker é a escolha perfeita para quem busca conforto, praticidade e estilo no dia a dia. Com modelagem regular, proporciona um caimento equilibrado, oferecendo liberdade de movimento sem ficar excessivamente justa ou larga. Possui cintura tradicional, fechamento frontal por zíper e botão, passantes para cinto e bolsos funcionais, unindo praticidade e funcionalidade. O design clássico facilita diversas combinações, tornando a peça versátil para diferentes ocasiões.</p>\\n\",\r\n    \"enabled\": true,\r\n    \"flags\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"name\": \"calça\"\r\n        },\r\n        {\r\n            \"id\": \"2\",\r\n            \"name\": \"jeans\"\r\n        },\r\n        {\r\n            \"id\": \"3\",\r\n            \"name\": \"adulto\"\r\n        }\r\n    ],\r\n    \"images\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"height\": 1000,\r\n            \"width\": 1000,\r\n            \"url\": \"https://images.tcdn.com.br/img/img_prod/1313352/calca_jeans_masculina_black_1_20251112164457_19e96d32103d.jpg\",\r\n            \"isProductMedia\": true,\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\"\r\n        }\r\n    ],\r\n    \"keywords\": [\r\n        \"Calça\",\r\n        \"Masculino\",\r\n        \"Calça Masculina\"\r\n    ],\r\n    \"metaDescription\": \"\",\r\n    \"metaKeywords\": [\r\n        \"Calça Masculina\"\r\n    ],\r\n    \"productId\": \"PS.00001.0001\",\r\n    \"publishedAt\": \"2026-09-30T16:55:03-03:00\",\r\n    \"publishedScope\": \"web\",\r\n    \"title\": \"Calça Masculina Maker Jeans\",\r\n    \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n    \"category\": {\r\n        \"id\": \"01\",\r\n        \"name\": \"Masculino\",\r\n        \"child\": {\r\n            \"id\": \"01\",\r\n            \"name\": \"Calça\"\r\n        }\r\n    },\r\n    \"variations\": [\r\n        {\r\n            \"id\": \"SIZE\",\r\n            \"name\": \"Tamanho\"\r\n        }\r\n    ],\r\n    \"skus\": [\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444144\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593383\",\r\n            \"skuId\": \"2593383\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 40\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"40\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"40\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        },\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444151\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593384\",\r\n            \"skuId\": \"2593384\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 42\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"42\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"42\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        },\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444168\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593385\",\r\n            \"skuId\": \"2593385\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 44\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"44\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"44\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        },\r\n        {\r\n            \"enabled\": true,\r\n            \"height\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 3.00\r\n            },\r\n            \"identifiers\": {\r\n                \"defaultGtin\": \"7901138444137\"\r\n            },\r\n            \"length\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 30.00\r\n            },\r\n            \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\r\n            \"requiresShipping\": true,\r\n            \"sku\": \"2593382\",\r\n            \"skuId\": \"2593382\",\r\n            \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 38\",\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\r\n            \"variationOptions\": [\r\n                {\r\n                    \"id\": \"COLOR\",\r\n                    \"name\": \"Cor\",\r\n                    \"data\": {\r\n                        \"id\": \"211\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"Azul Claro\"\r\n                    }\r\n                },\r\n                {\r\n                    \"id\": \"SIZE\",\r\n                    \"name\": \"Tamanho\",\r\n                    \"data\": {\r\n                        \"id\": \"38\",\r\n                        \"type\": \"string\",\r\n                        \"value\": \"38\"\r\n                    }\r\n                }\r\n            ],\r\n            \"weight\": {\r\n                \"unit\": \"kg\",\r\n                \"value\": 0.52\r\n            },\r\n            \"width\": {\r\n                \"unit\": \"cm\",\r\n                \"value\": 25.00\r\n            }\r\n        }\r\n    ],\r\n    \"tags\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"name\": \"Calça Masculina\"\r\n        }\r\n    ],\r\n    \"videos\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"height\": 680,\r\n            \"width\": 420,\r\n            \"url\": \"https://videos.widde.io/widde-bucket-sp/605e3776-8677-4b80-a796-e4c8ec81a17c/videos/a6bc7752-c054-498d-9f3b-bf445ca8514a-1754400313789-2442181/gif.mp4\",\r\n            \"isProductMedia\": true,\r\n            \"updatedAt\": \"2026-09-30T16:55:03-03:00\"\r\n        }\r\n    ],\r\n    \"warranty\": \"\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/product/messages"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Unauthorized\"\n}"}],"_postman_id":"6cb032eb-bd73-4c52-af79-cccd9b585e7e"}],"id":"968f5a66-f7c4-480a-adb3-64559406e847","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>O tópico <code>product</code> destina-se ao cadastro, atualização e sincronização do catálogo de produtos.</p>\n<p>Através da publicação de mensagens neste tópico, os sistemas produtores (como ERPs, PIMs ou plataformas de e-commerce) enviam dados institucionais e estruturais do produto, tais como identificador único, título, descrição, marca, categorias associadas, dimensões básicas, garantia e a lista dos identificadores de SKUs vinculados.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>POST</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/product/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{token}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n</ul>\n<h5 id=\"onde\">Onde:</h5>\n<ul>\n<li><p><code>app-id</code>: Identificador da sua aplicação no Maker IO.</p>\n</li>\n<li><p><code>token</code>: Bearer Token gerado pelo endpoint de <a href=\"#0be47a1e-bf5a-477f-9b0b-77009a952071\">Login</a>.</p>\n</li>\n</ul>\n","_postman_id":"968f5a66-f7c4-480a-adb3-64559406e847"},{"name":"SKU","item":[{"name":"Sku","id":"86ea13f3-7dda-4c1e-a807-efcea6c2405d","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"productId\": \"PS.00001.0001\",\r\n    \"sku\": \"259338\",\r\n    \"skuId\": \"259338\",\r\n    \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 50\",\r\n    \"variationOptions\": [\r\n        {\r\n            \"id\": \"COLOR\",\r\n            \"name\": \"Cor\",\r\n            \"data\": {\r\n                \"id\": \"211\",\r\n                \"type\": \"string\",\r\n                \"value\": \"Azul Claro\"\r\n            }\r\n        },\r\n        {\r\n            \"id\": \"SIZE\",\r\n            \"name\": \"Tamanho\",\r\n            \"data\": {\r\n                \"id\": \"50\",\r\n                \"type\": \"string\",\r\n                \"value\": \"50\"\r\n            }\r\n        }\r\n    ],\r\n    \"height\": {\r\n        \"value\": 3.00,\r\n        \"unit\": \"cm\"\r\n    },\r\n    \"length\": {\r\n        \"value\": 30.00,\r\n        \"unit\": \"cm\"\r\n    },\r\n    \"width\": {\r\n        \"value\": 25.00,\r\n        \"unit\": \"cm\"\r\n    },\r\n    \"weight\": {\r\n        \"value\": 0.52,\r\n        \"unit\": \"kg\"\r\n    },\r\n    \"enabled\": true,\r\n    \"identifiers\": {\r\n        \"defaultGtin\": \"7890710050560\",\r\n        \"gtins\": [\r\n            \"7890710050560\"\r\n        ]\r\n    },\r\n    \"publishedAt\": \"2026-10-01T09:33:08-03:00\",\r\n    \"requiresShipping\": true,\r\n    \"updatedAt\": \"2026-10-01T09:33:08-03:00\",\r\n    \"additionalHandlingDays\": 5,\r\n    \"outOfStockSalesQuantity\": 2.0,\r\n    \"outOfStockSalesAdditionalHandlingDays\": 15\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/sku/messages","description":"<h3 id=\"descrição-dos-campos-do-payload\">Descrição dos campos do payload</h3>\n<p>A publicação do SKU utiliza o payload abaixo:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Obrigatório</th>\n<th>Tipo de dado</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>skuId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do SKU.</td>\n</tr>\n<tr>\n<td>sku</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código comercial do SKU.</td>\n</tr>\n<tr>\n<td>productId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do produto base que terá o vínculo do SKU, esse campo é obrigatório quando está publicando somente o SKU mas é opcional quando está publicando o produto e o SKU.</td>\n</tr>\n<tr>\n<td>title</td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome ou título de exibição do SKU.</td>\n</tr>\n<tr>\n<td>enabled</td>\n<td>Sim</td>\n<td>boolean</td>\n<td>Informa se o SKU está ativo, aceita valores <strong>true</strong> ou <strong>false</strong>, o padrão do campo é <strong>true</strong>. Se for enviado como <strong>false</strong> irá desconsiderar os campos <strong>publishedAt</strong> e <strong>publishedUntil</strong>.</td>\n</tr>\n<tr>\n<td>requiresShipping</td>\n<td>Sim</td>\n<td>boolean</td>\n<td>Indica se o SKU será enviado por transportadora, aceita valores <strong>true</strong> ou <strong>false</strong>.</td>\n</tr>\n<tr>\n<td>updatedAt</td>\n<td>Sim</td>\n<td>string (date-time)</td>\n<td>Data e hora de atualização do SKU, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>height</td>\n<td>Sim</td>\n<td>object</td>\n<td>Informações sobre a altura do SKU.</td>\n</tr>\n<tr>\n<td>height.unit</td>\n<td>Sim</td>\n<td>string</td>\n<td>Unidade de medida para a altura do SKU, padrão <strong>cm</strong>.</td>\n</tr>\n<tr>\n<td>height.value</td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor da altura do SKU sem considerar a embalagem de envio.</td>\n</tr>\n<tr>\n<td>width</td>\n<td>Sim</td>\n<td>object</td>\n<td>Informações sobre a largura do SKU.</td>\n</tr>\n<tr>\n<td>width.unit</td>\n<td>Sim</td>\n<td>string</td>\n<td>Unidade de medida para a largura do SKU, padrão <strong>cm</strong>.</td>\n</tr>\n<tr>\n<td>width.value</td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor da largura do SKU sem considerar a embalagem de envio.</td>\n</tr>\n<tr>\n<td>length</td>\n<td>Sim</td>\n<td>object</td>\n<td>Informações sobre o comprimento do SKU.</td>\n</tr>\n<tr>\n<td>length.unit</td>\n<td>Sim</td>\n<td>string</td>\n<td>Unidade de medida do comprimento, padrão <strong>cm</strong>.</td>\n</tr>\n<tr>\n<td>length.value</td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor do comprimento do SKU sem considerar a embalagem de envio.</td>\n</tr>\n<tr>\n<td>weight</td>\n<td>Sim</td>\n<td>object</td>\n<td>Informações de peso do SKU.</td>\n</tr>\n<tr>\n<td>weight.unit</td>\n<td>Sim</td>\n<td>string</td>\n<td>Unidade de medida do peso padrão <strong>kg</strong>.</td>\n</tr>\n<tr>\n<td>weight.value</td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor do peso do SKU sem considerar a embalagem de envio.</td>\n</tr>\n<tr>\n<td>additionalHandlingDays</td>\n<td>Não</td>\n<td>number</td>\n<td>Quantidade de dias adicionais de manuseio ou preparação do item.</td>\n</tr>\n<tr>\n<td>attributes</td>\n<td>Não</td>\n<td>array (object)</td>\n<td>Lista de atributos do SKU.</td>\n</tr>\n<tr>\n<td>attributes[].data</td>\n<td>Sim</td>\n<td>object</td>\n<td>Dados para configuração do valor do atributo.</td>\n</tr>\n<tr>\n<td>attributes[].data.id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do valor do atributo.</td>\n</tr>\n<tr>\n<td>attributes[].data.type</td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo do valor do atributo, informe <strong>string</strong>, <strong>number</strong>, <strong>boolean</strong>.</td>\n</tr>\n<tr>\n<td>attributes[].data.value</td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Valor do atributo, utilizar quando o valor for de livre digitação, é necessário enviar quando não for informado o campo <strong>attributes[].data.values</strong>.</td>\n</tr>\n<tr>\n<td>attributes[].data.values</td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Valores do atributo, utilizar quando o valor for pré definido, é necessário enviar quando não for informado o campo <strong>attributes[].data.value</strong>.</td>\n</tr>\n<tr>\n<td>attributes[].format</td>\n<td>Não</td>\n<td>string</td>\n<td>Formato da estrutura do atributo, informe <strong>TEXT</strong>, <strong>LIST</strong>, <strong>MULTI-LIST</strong>, <strong>HTML</strong>.</td>\n</tr>\n<tr>\n<td>attributes[].id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do atributo.</td>\n</tr>\n<tr>\n<td>attributes[].name</td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome do atributo.</td>\n</tr>\n<tr>\n<td>identifiers</td>\n<td>Não</td>\n<td>object</td>\n<td>Informações sobre o código de barras do SKU.</td>\n</tr>\n<tr>\n<td>identifiers.defaultGtin</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código de barras principal do SKU.</td>\n</tr>\n<tr>\n<td>identifiers.gtins</td>\n<td>Não</td>\n<td>array (string)</td>\n<td>Lista de códigos de barra do SKU.</td>\n</tr>\n<tr>\n<td>outOfStockSales</td>\n<td>Não</td>\n<td>boolean</td>\n<td>Indica se o SKU pode ser vendido sem estoque disponível, aceita valores <strong>true</strong> ou <strong>false</strong>.</td>\n</tr>\n<tr>\n<td>outOfStockSalesAdditionalHandlingDays</td>\n<td>Não</td>\n<td>number</td>\n<td>Quantidade de dias adicionais para manuseio ao vender sem estoque.</td>\n</tr>\n<tr>\n<td>outOfStockSalesQuantity</td>\n<td>Não</td>\n<td>number</td>\n<td>Quantidade de estoque liberada para vendas sem estoque.</td>\n</tr>\n<tr>\n<td>publishedAt</td>\n<td>Verificar regra</td>\n<td>string (date-time)</td>\n<td>Data de publicação do SKU em plataformas de comércio eletrônico, se torna obrigatório se o campo <strong>enabled</strong> for <strong>true</strong>, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>publishedUntil</td>\n<td>Não</td>\n<td>string (date-time)</td>\n<td>Data de limite ou fim da publicação do SKU em plataformas de comércio eletrônico, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>variationOptions</td>\n<td>Não</td>\n<td>array</td>\n<td>Lista com as opções de variação, são essas opções que caracterizam o SKU.</td>\n</tr>\n<tr>\n<td>variationOptions[].id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do tipo de variação, informe <strong>COLOR</strong>, <strong>SIZE</strong>, <strong>VOLTAGE</strong>, <strong>FLAVOR</strong> ou <strong>MATERIAL</strong>.</td>\n</tr>\n<tr>\n<td>variationOptions[].name</td>\n<td>Não</td>\n<td>string</td>\n<td>Nome de exibição da variação.</td>\n</tr>\n<tr>\n<td>variationOptions[].data</td>\n<td>Sim</td>\n<td>object</td>\n<td>Dados contendo os valores da variação.</td>\n</tr>\n<tr>\n<td>variationOptions[].data.id</td>\n<td>Não</td>\n<td>string</td>\n<td>Identificador do valor da variação.</td>\n</tr>\n<tr>\n<td>variationOptions[].data.type</td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo do valor da variação, informe <strong>string</strong>, <strong>number</strong> ou <strong>boolean</strong>.</td>\n</tr>\n<tr>\n<td>variationOptions[].data.value</td>\n<td>Sim</td>\n<td>string</td>\n<td>Valor da variação.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","sku","messages"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[{"id":"613b48ae-dd33-4cbe-8aa1-04fa29ef3531","name":"Publicação de Sku","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"productId\": \"PS.00001.0001\",\r\n    \"sku\": \"2593386\",\r\n    \"skuId\": \"2593386\",\r\n    \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 46\",\r\n    \"variationOptions\": [\r\n        {\r\n            \"id\": \"COLOR\",\r\n            \"name\": \"Cor\",\r\n            \"data\": {\r\n                \"id\": \"211\",\r\n                \"type\": \"string\",\r\n                \"value\": \"Azul Claro\"\r\n            }\r\n        },\r\n        {\r\n            \"id\": \"SIZE\",\r\n            \"name\": \"Tamanho\",\r\n            \"data\": {\r\n                \"id\": \"46\",\r\n                \"type\": \"string\",\r\n                \"value\": \"46\"\r\n            }\r\n        }\r\n    ],\r\n    \"height\": {\r\n        \"value\": 3.00,\r\n        \"unit\": \"cm\"\r\n    },\r\n    \"length\": {\r\n        \"value\": 30.00,\r\n        \"unit\": \"cm\"\r\n    },\r\n    \"width\": {\r\n        \"value\": 25.00,\r\n        \"unit\": \"cm\"\r\n    },\r\n    \"weight\": {\r\n        \"value\": 0.52,\r\n        \"unit\": \"kg\"\r\n    },\r\n    \"enabled\": true,\r\n    \"identifiers\": {\r\n        \"defaultGtin\": \"7890710050560\",\r\n        \"gtins\": [\r\n            \"7890710050560\"\r\n        ]\r\n    },\r\n    \"publishedAt\": \"2026-10-01T09:33:08-03:00\",\r\n    \"requiresShipping\": true,\r\n    \"updatedAt\": \"2026-10-01T09:33:08-03:00\",\r\n    \"additionalHandlingDays\": 5,\r\n    \"outOfStockSalesQuantity\": 2.0,\r\n    \"outOfStockSalesAdditionalHandlingDays\": 15\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/sku/messages"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"messageId\": \"6ca92792-72e8-4fde-8301-7d931e1b6ac9\"\n}"},{"id":"cb0a1b7b-bd57-4d83-8a9d-1f64d59d9a94","name":"Campo obrigatório não enviado","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"productId\": \"PS.00001.0001\",\r\n    \"skuId\": \"2593388\",\r\n    \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 50\",\r\n    \"variationOptions\": [\r\n        {\r\n            \"id\": \"COLOR\",\r\n            \"name\": \"Cor\",\r\n            \"data\": {\r\n                \"id\": \"211\",\r\n                \"type\": \"string\",\r\n                \"value\": \"Azul Claro\"\r\n            }\r\n        },\r\n        {\r\n            \"id\": \"SIZE\",\r\n            \"name\": \"Tamanho\",\r\n            \"data\": {\r\n                \"id\": \"50\",\r\n                \"type\": \"string\",\r\n                \"value\": \"50\"\r\n            }\r\n        }\r\n    ],\r\n    \"height\": {\r\n        \"value\": 3.00,\r\n        \"unit\": \"cm\"\r\n    },\r\n    \"length\": {\r\n        \"value\": 30.00,\r\n        \"unit\": \"cm\"\r\n    },\r\n    \"width\": {\r\n        \"value\": 25.00,\r\n        \"unit\": \"cm\"\r\n    },\r\n    \"weight\": {\r\n        \"value\": 0.52,\r\n        \"unit\": \"kg\"\r\n    },\r\n    \"enabled\": true,\r\n    \"identifiers\": {\r\n        \"defaultGtin\": \"7890710050560\",\r\n        \"gtins\": [\r\n            \"7890710050560\"\r\n        ]\r\n    },\r\n    \"publishedAt\": \"2026-10-01T09:33:08-03:00\",\r\n    \"requiresShipping\": true,\r\n    \"updatedAt\": \"2026-10-01T09:33:08-03:00\",\r\n    \"additionalHandlingDays\": 5,\r\n    \"outOfStockSalesQuantity\": 2.0,\r\n    \"outOfStockSalesAdditionalHandlingDays\": 15\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/maker-selfdev/topics/sku/messages"},"status":"Unprocessable Content","code":422,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"name\": \"UnprocessableEntity\",\n    \"message\": \"Message of \\\"sku\\\" does not match with schema, please check errors.\",\n    \"errors\": [\n        {\n            \"path\": \"$\",\n            \"validation\": \"must have required property 'sku'\"\n        }\n    ]\n}"},{"id":"616228a9-fe6d-4ca6-b20c-26152d848b93","name":"Campo fora do padrão esperado","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"productId\": \"PS.00001.0001\",\r\n    \"sku\": \"259338\",\r\n    \"skuId\": \"259338\",\r\n    \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 50\",\r\n    \"variationOptions\": [\r\n        {\r\n            \"id\": \"COLOR\",\r\n            \"name\": \"Cor\",\r\n            \"data\": {\r\n                \"id\": \"211\",\r\n                \"type\": \"string\",\r\n                \"value\": \"Azul Claro\"\r\n            }\r\n        },\r\n        {\r\n            \"id\": \"SIZE\",\r\n            \"name\": \"Tamanho\",\r\n            \"data\": {\r\n                \"id\": \"50\",\r\n                \"type\": \"string\",\r\n                \"value\": \"50\"\r\n            }\r\n        }\r\n    ],\r\n    \"height\": {\r\n        \"value\": 3.00,\r\n        \"unit\": \"cm\"\r\n    },\r\n    \"length\": {\r\n        \"value\": 30.00,\r\n        \"unit\": \"cm\"\r\n    },\r\n    \"width\": {\r\n        \"value\": 25.00,\r\n        \"unit\": \"cm\"\r\n    },\r\n    \"weight\": {\r\n        \"value\": 0.52,\r\n        \"unit\": \"kg\"\r\n    },\r\n    \"enabled\": true,\r\n    \"identifiers\": {\r\n        \"defaultGtin\": \"7890710050560\",\r\n        \"gtins\": [\r\n            \"7890710050560\"\r\n        ]\r\n    },\r\n    \"publishedAt\": \"01/10/2026\",\r\n    \"requiresShipping\": true,\r\n    \"updatedAt\": \"2026-10-01T09:33:08-03:00\",\r\n    \"additionalHandlingDays\": 5,\r\n    \"outOfStockSalesQuantity\": 2.0,\r\n    \"outOfStockSalesAdditionalHandlingDays\": 15\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/maker-selfdev/topics/sku/messages"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"name\": \"UnprocessableEntity\",\n    \"message\": \"Message of \\\"sku\\\" does not match with schema, please check errors.\",\n    \"errors\": [\n        {\n            \"path\": \"$.publishedAt\",\n            \"validation\": \"does not match the date-time pattern must be a valid RFC 3339 date-time\"\n        }\n    ]\n}"},{"id":"b4400896-4653-44bc-b103-8024c53db377","name":"Token expirado","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"productId\": \"PS.00001.0001\",\r\n    \"sku\": \"2593386\",\r\n    \"skuId\": \"2593386\",\r\n    \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 46\",\r\n    \"variationOptions\": [\r\n        {\r\n            \"id\": \"COLOR\",\r\n            \"name\": \"Cor\",\r\n            \"data\": {\r\n                \"id\": \"211\",\r\n                \"type\": \"string\",\r\n                \"value\": \"Azul Claro\"\r\n            }\r\n        },\r\n        {\r\n            \"id\": \"SIZE\",\r\n            \"name\": \"Tamanho\",\r\n            \"data\": {\r\n                \"id\": \"46\",\r\n                \"type\": \"string\",\r\n                \"value\": \"46\"\r\n            }\r\n        }\r\n    ],\r\n    \"height\": {\r\n        \"value\": 3.00,\r\n        \"unit\": \"cm\"\r\n    },\r\n    \"length\": {\r\n        \"value\": 30.00,\r\n        \"unit\": \"cm\"\r\n    },\r\n    \"width\": {\r\n        \"value\": 25.00,\r\n        \"unit\": \"cm\"\r\n    },\r\n    \"weight\": {\r\n        \"value\": 0.52,\r\n        \"unit\": \"kg\"\r\n    },\r\n    \"enabled\": true,\r\n    \"identifiers\": {\r\n        \"defaultGtin\": \"7890710050560\",\r\n        \"gtins\": [\r\n            \"7890710050560\"\r\n        ]\r\n    },\r\n    \"publishedAt\": \"2026-10-01T09:33:08-03:00\",\r\n    \"requiresShipping\": true,\r\n    \"updatedAt\": \"2026-10-01T09:33:08-03:00\",\r\n    \"additionalHandlingDays\": 5,\r\n    \"outOfStockSalesQuantity\": 2.0,\r\n    \"outOfStockSalesAdditionalHandlingDays\": 15\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/maker-selfdev/topics/sku/messages"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"exp\": \"token expired\"\n}"},{"id":"33452c9b-6ba5-4f75-abf0-d2516dbfd9dc","name":"URL incorreta","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"productId\": \"PS.00001.0001\",\r\n    \"sku\": \"259338\",\r\n    \"skuId\": \"259338\",\r\n    \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 50\",\r\n    \"variationOptions\": [\r\n        {\r\n            \"id\": \"COLOR\",\r\n            \"name\": \"Cor\",\r\n            \"data\": {\r\n                \"id\": \"211\",\r\n                \"type\": \"string\",\r\n                \"value\": \"Azul Claro\"\r\n            }\r\n        },\r\n        {\r\n            \"id\": \"SIZE\",\r\n            \"name\": \"Tamanho\",\r\n            \"data\": {\r\n                \"id\": \"50\",\r\n                \"type\": \"string\",\r\n                \"value\": \"50\"\r\n            }\r\n        }\r\n    ],\r\n    \"height\": {\r\n        \"value\": 3.00,\r\n        \"unit\": \"cm\"\r\n    },\r\n    \"length\": {\r\n        \"value\": 30.00,\r\n        \"unit\": \"cm\"\r\n    },\r\n    \"width\": {\r\n        \"value\": 25.00,\r\n        \"unit\": \"cm\"\r\n    },\r\n    \"weight\": {\r\n        \"value\": 0.52,\r\n        \"unit\": \"kg\"\r\n    },\r\n    \"enabled\": true,\r\n    \"identifiers\": {\r\n        \"defaultGtin\": \"7890710050560\",\r\n        \"gtins\": [\r\n            \"7890710050560\"\r\n        ]\r\n    },\r\n    \"publishedAt\": \"2026-10-01T09:33:08-03:00\",\r\n    \"requiresShipping\": true,\r\n    \"updatedAt\": \"2026-10-01T09:33:08-03:00\",\r\n    \"additionalHandlingDays\": 5,\r\n    \"outOfStockSalesQuantity\": 2.0,\r\n    \"outOfStockSalesAdditionalHandlingDays\": 15\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/maker-selfdev/topics/sku/message"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2026-10-01T17:28:37.537+00:00\",\n    \"path\": \"/v2/applications/maker-selfdev/topics/sku/message\",\n    \"status\": 404,\n    \"error\": \"Not Found\",\n    \"requestId\": \"eb88f711-5631204\"\n}"},{"id":"0623b713-e2af-4efe-a745-90215d503cfb","name":"Falha na autenticação","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"productId\": \"PS.00001.0001\",\r\n    \"sku\": \"259338\",\r\n    \"skuId\": \"259338\",\r\n    \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 50\",\r\n    \"variationOptions\": [\r\n        {\r\n            \"id\": \"COLOR\",\r\n            \"name\": \"Cor\",\r\n            \"data\": {\r\n                \"id\": \"211\",\r\n                \"type\": \"string\",\r\n                \"value\": \"Azul Claro\"\r\n            }\r\n        },\r\n        {\r\n            \"id\": \"SIZE\",\r\n            \"name\": \"Tamanho\",\r\n            \"data\": {\r\n                \"id\": \"50\",\r\n                \"type\": \"string\",\r\n                \"value\": \"50\"\r\n            }\r\n        }\r\n    ],\r\n    \"height\": {\r\n        \"value\": 3.00,\r\n        \"unit\": \"cm\"\r\n    },\r\n    \"length\": {\r\n        \"value\": 30.00,\r\n        \"unit\": \"cm\"\r\n    },\r\n    \"width\": {\r\n        \"value\": 25.00,\r\n        \"unit\": \"cm\"\r\n    },\r\n    \"weight\": {\r\n        \"value\": 0.52,\r\n        \"unit\": \"kg\"\r\n    },\r\n    \"enabled\": true,\r\n    \"identifiers\": {\r\n        \"defaultGtin\": \"7890710050560\",\r\n        \"gtins\": [\r\n            \"7890710050560\"\r\n        ]\r\n    },\r\n    \"publishedAt\": \"2026-10-01T09:33:08-03:00\",\r\n    \"requiresShipping\": true,\r\n    \"updatedAt\": \"2026-10-01T09:33:08-03:00\",\r\n    \"additionalHandlingDays\": 5,\r\n    \"outOfStockSalesQuantity\": 2.0,\r\n    \"outOfStockSalesAdditionalHandlingDays\": 15\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/sku/messages"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Unauthorized\"\n}"}],"_postman_id":"86ea13f3-7dda-4c1e-a807-efcea6c2405d"}],"id":"ae2a75e9-1408-410e-9909-2a483e48de2e","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>O tópico <code>sku</code> é utilizado para cadastrar, atualizar e sincronizar as especificações técnicas, variações (cor, tamanho), dimensões, peso, atributos fiscais/cadastrais e regras de estoque/handling de SKUs individuais (itens vendáveis).</p>\n<p>Através deste tópico, os sistemas de PIM, ERP ou E-commerce mantêm atualizados os detalhes de cada variação de produto vinculada a um produto base (productId), permitindo o controle preciso de logística, exposição e disponibilidade de venda sob encomenda.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>POST</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/sku/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{token}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n</ul>\n<h5 id=\"onde\">Onde:</h5>\n<ul>\n<li><p><code>app-id</code>: Identificador da sua aplicação no Maker IO.</p>\n</li>\n<li><p><code>token</code>: Bearer Token gerado pelo endpoint de <a href=\"#0be47a1e-bf5a-477f-9b0b-77009a952071\">Login</a>.</p>\n</li>\n</ul>\n","_postman_id":"ae2a75e9-1408-410e-9909-2a483e48de2e"},{"name":"Bundle","item":[{"name":"Bundle - payload completo, gerar exemplos com as diferentes condições e validações","id":"10589b59-5f13-4ba6-9b88-ff607c9734ba","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"bundleId\": \"kit-1234\",\r\n    \"title\": \"KIT DIA DOS PAIS\",\r\n    \"sku\": {\r\n        \"height\": {\r\n            \"value\": 8.0000,\r\n            \"unit\": \"cm\"\r\n        },\r\n        \"length\": {\r\n            \"value\": 15.5000,\r\n            \"unit\": \"cm\"\r\n        },\r\n        \"width\": {\r\n            \"value\": 15.0000,\r\n            \"unit\": \"cm\"\r\n        },\r\n        \"weight\": {\r\n            \"value\": 0.0800,\r\n            \"unit\": \"kg\"\r\n        },\r\n        \"sku\": \"16059.4013\",\r\n        \"skuId\": \"16059.4013\",\r\n        \"title\": \"ENVELOPE AUTOCLAVE 05X13 C/100 PACKGC .\"\r\n    },\r\n    \"attributes\": [\r\n        {\r\n            \"data\": {\r\n                \"id\": \"1\",\r\n                \"type\": \"number\",\r\n                \"value\": \"1\",\r\n                \"values\": \"\"\r\n            },\r\n            \"id\": \"1\",\r\n            \"name\": \"atributo teste\",\r\n            \"format\": \"LIST\"\r\n        }\r\n    ],\r\n    \"brand\": {\r\n        \"id\": \"9\",\r\n        \"name\": \"NAO CADASTRADO\"\r\n    },\r\n    \"category\": {\r\n        \"id\": \"S7\",\r\n        \"name\": \"BIOSSEGURANCA\",\r\n        \"child\": {\r\n            \"id\": \"L150\",\r\n            \"name\": \"EMBALAGEM PARA ESTERILIZA\",\r\n            \"child\": {\r\n                \"id\": \"\",\r\n                \"name\": \"\"\r\n            }\r\n        }\r\n    },\r\n    \"additionalCategories\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"name\": \"categoria adicional 1\",\r\n            \"child\": {\r\n                \"id\": \"\",\r\n                \"name\": \"\",\r\n                \"child\": {\r\n                    \"id\": \"\",\r\n                    \"name\": \"\"\r\n                }\r\n            }\r\n        }\r\n    ],\r\n    \"associatedProducts\": [\r\n        {\r\n            \"productId\": \"12\",\r\n            \"skuId\": \"\",\r\n            \"quantity\": 1,\r\n            \"required\": true,\r\n            \"discountType\": \"None\",\r\n            \"discountValue\": 0.0\r\n        }\r\n    ],\r\n    \"description\": \"<p>O Envelope Autoclave Pack GC 05 x 13 cm mant&eacute;m a barreira bacteriol&oacute;gica necess&aacute;ria para a esteriliza&ccedil;&atilde;o do conte&uacute;do. Pode ser utilizado com instrumentos m&eacute;dicos, odontol&oacute;gicos, veterin&aacute;rios e de est&eacute;tica. Indicado para esteriliza&ccedil;&atilde;o a vapor, g&aacute;s &oacute;xido de etileno (ETO) e raio gama. &Eacute; fabricado com papel grau cir&uacute;rgico e filme laminado multicamadas de poli&eacute;ster e polipropileno. Possui fita dupla face que dispensa a utiliza&ccedil;&atilde;o de seladora e cont&eacute;m orienta&ccedil;&atilde;o para a dobra impressa. Impress&atilde;o fora da &aacute;rea de contato com os produtos a serem esterilizados; Indicadores qu&iacute;micos que mudam de cor ap&oacute;s entrarem em contato com o agente esterilizante; Indica&ccedil;&atilde;o do sentido de abertura; Maior efici&ecirc;ncia; Selagem tripla.</p>\\n\",\r\n    \"manufacturer\": {\r\n        \"id\": \"4781\",\r\n        \"name\": \"ZERMATT INDUSTRIA E COMERCIO LTDA\"\r\n    },\r\n    \"enabled\": false, //padrão do campo true\r\n    \"flags\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"name\": \"temporário\"\r\n        },\r\n        {\r\n            \"id\": \"2\",\r\n            \"name\": \"estação\"\r\n        }\r\n    ],\r\n    \"createdAt\": \"2021-12-16T03:00:00.000Z\",\r\n    \"publishedAt\": \"2022-03-23T03:00:00.000Z\",\r\n    \"publishedScope\": \"web\",\r\n    \"updatedAt\": \"2022-09-17T07:55:58.744Z\",\r\n    \"images\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"url\": \"https://www.img.com.br/img.png\",\r\n            \"updatedAt\": \"2025-03-03T20:33:10.123Z\",\r\n            \"height\": 480,\r\n            \"width\": 640,\r\n            \"skuIds\": [\r\n                \"123\",\r\n                \"456\",\r\n                \"789\"\r\n            ],\r\n            \"isProductMedia\": true\r\n        }\r\n    ],\r\n    \"priceType\": \"Fixed\",\r\n    \"price\": 100.99,\r\n    \"discountType\": \"Percent\",\r\n    \"discountValue\": 0.0,\r\n    \"promotionalPriceFrom\": \"\",\r\n    \"promotionalPriceTo\": \"\",\r\n    \"salespromotionalPrice\": 99.5,\r\n    \"keywords\": [\r\n        \"temporada\",\r\n        \"kit\"\r\n    ],\r\n    \"tags\": [\r\n        {\r\n            \"id\": \"\",\r\n            \"name\": \"\"\r\n        },\r\n        {\r\n            \"id\": \"\",\r\n            \"name\": \"\"\r\n        }\r\n    ],\r\n    \"type\": \"AllProducts\",\r\n    \"url\": \"\",\r\n    \"videos\": [\r\n        {\r\n            \"id\": \"\",\r\n            \"skuIds\": \"\",\r\n            \"height\": \"\",\r\n            \"width\": \"\",\r\n            \"url\": \"\",\r\n            \"isProductMedia\": true,\r\n            \"updatedAt\": \"\"\r\n        }\r\n    ],\r\n    \"warranty\": \"\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/bundle/messages","description":"<h3 id=\"descrição-dos-campos-do-payload\">Descrição dos campos do payload</h3>\n<p>A publicação do Bundle utiliza o payload abaixo:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Campo</strong></th>\n<th><strong>Obrigatório</strong></th>\n<th><strong>Tipo de dado</strong></th>\n<th><strong>Descrição</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>bundleId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código identificador do kit/bundle no sistema.</td>\n</tr>\n<tr>\n<td>title</td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome ou título comercial do kit/bundle.</td>\n</tr>\n<tr>\n<td>enabled</td>\n<td>Sim</td>\n<td>boolean</td>\n<td>Indica se o kit/bundle está ativo, informe <strong>true</strong> ou <strong>false</strong>. O padrão é <strong>true</strong>.</td>\n</tr>\n<tr>\n<td>updatedAt</td>\n<td>Sim</td>\n<td>string (date-time)</td>\n<td>Data e hora da atualização do registro, no formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>type</td>\n<td>Não</td>\n<td>string</td>\n<td>Regra de composição do kit/bundle, informe <strong>AllProducts</strong> para indicar que quando colocado no carrinho, a compra acontece em todos os itens do kit/bundle; <strong>OneProduct</strong> para indicar que quando colocado no carrinho, a compra acontece somente para um dos itens do kit; <strong>MultipleProducts</strong> para indicar que quando colocado no carrinho, a compra acontece em múltiplos produtos do kit.</td>\n</tr>\n<tr>\n<td>priceType</td>\n<td>Não</td>\n<td>string</td>\n<td>Modelo de precificação do kit/bundle, informe <strong>Fixed</strong> para preço fixo; <strong>Discount</strong> para desconto no kit/bundle; <strong>ProductDiscount</strong> para desconto nos produtos do kit/bundle.</td>\n</tr>\n<tr>\n<td>price</td>\n<td>Não</td>\n<td>number</td>\n<td>Preço de venda do kit/bundle.</td>\n</tr>\n<tr>\n<td>salespromotionalPrice</td>\n<td>Não</td>\n<td>number</td>\n<td>Preço promocional de venda do kit/bundle.</td>\n</tr>\n<tr>\n<td>discountType</td>\n<td>Não</td>\n<td>string</td>\n<td>Identificação do tipo do ajuste do preço do kit/bundle, informe <strong>None</strong> para indicar que não existe nenhum ajuste no preço; <strong>Percent</strong> para indicar uma redução em percentual no preço do kit/bundle; <strong>Value</strong> para indicar uma redução de valor fixo no preço do kit/bundle, o valor informado no campo <strong>discountValue</strong> acompanha o tipo informado nesse campo.</td>\n</tr>\n<tr>\n<td>discountValue</td>\n<td>Não</td>\n<td>number</td>\n<td>Valor de ajuste no preço do kit/bundle conforme o tipo informado no campo <strong>discountType</strong>.</td>\n</tr>\n<tr>\n<td>promotionalPriceFrom</td>\n<td>Não</td>\n<td>string (date-time)</td>\n<td>Data e hora de início da vigência do preço promocional, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>promotionalPriceTo</td>\n<td>Não</td>\n<td>string (date-time)</td>\n<td>Data e hora de término da vigência do preço promocional, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>description</td>\n<td>Sim</td>\n<td>string</td>\n<td>Descrição detalhada do kit/bundle.</td>\n</tr>\n<tr>\n<td>warranty</td>\n<td>Não</td>\n<td>string</td>\n<td>Informações e prazos de garantia.</td>\n</tr>\n<tr>\n<td>url</td>\n<td>Não</td>\n<td>string</td>\n<td>Endereço URL do kit/bundle na loja.</td>\n</tr>\n<tr>\n<td>publishedScope</td>\n<td>Não</td>\n<td>string</td>\n<td>Canal/Escopo de publicação (ex.: web, mobile).</td>\n</tr>\n<tr>\n<td>createdAt</td>\n<td>Sim</td>\n<td>string (date-time)</td>\n<td>Data de criação do registro, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>publishedAt</td>\n<td>Sim</td>\n<td>string (date-time)</td>\n<td>Data de publicação do kit/bundle em plataformas de comércio eletrônico, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>publishedUntil</td>\n<td>Não</td>\n<td>string (date-time)</td>\n<td>Data final de publicação do kindle/bundle em plataformas de comércio eletrônico, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>sku</td>\n<td>Sim</td>\n<td>object</td>\n<td>Informações do kit/bundle na visão de SKU, para ser apresentado em plataformas de comércio eletrônico.</td>\n</tr>\n<tr>\n<td>sku.height</td>\n<td>Sim</td>\n<td>object</td>\n<td>Informações referente à altura do produto, sem considerar a embalagem de transporte.</td>\n</tr>\n<tr>\n<td>sku.height.unit</td>\n<td>Sim</td>\n<td>string</td>\n<td>Unidade de medida da altura, o padrão é <strong>cm</strong>.</td>\n</tr>\n<tr>\n<td>sku.height.value</td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor numérico da altura.</td>\n</tr>\n<tr>\n<td>sku.width</td>\n<td>Sim</td>\n<td>object</td>\n<td>Informações referente à largura do produto, sem considerar a embalagem de transporte.</td>\n</tr>\n<tr>\n<td>sku.width.unit</td>\n<td>Sim</td>\n<td>string</td>\n<td>Unidade de medida da largura, o padrão é <strong>cm</strong>.</td>\n</tr>\n<tr>\n<td>sku.width.value</td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor numérico da largura.</td>\n</tr>\n<tr>\n<td>sku.lenght</td>\n<td>Sim</td>\n<td>object</td>\n<td>Informações referente ao comprimento do produto, sem considerar a embalagem de transporte.</td>\n</tr>\n<tr>\n<td>sku.length.unit</td>\n<td>Sim</td>\n<td>string</td>\n<td>Unidade de medida do comprimento, o padrão é <strong>cm</strong>.</td>\n</tr>\n<tr>\n<td>sku.length.value</td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor numérico do comprimento.</td>\n</tr>\n<tr>\n<td>sku.weight</td>\n<td>Sim</td>\n<td>object</td>\n<td>Informações referente ao peso do produto, sem considerar a embalagem de transporte.</td>\n</tr>\n<tr>\n<td>sku.weight.unit</td>\n<td>Sim</td>\n<td>string</td>\n<td>Unidade de medida do peso, o padrão é <strong>kg</strong>.</td>\n</tr>\n<tr>\n<td>sku.weight.value</td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor numérico do peso.</td>\n</tr>\n<tr>\n<td>sku.sku</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código externo do kit/bundle.</td>\n</tr>\n<tr>\n<td>sku.skuId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código identificador do kit/bundle.</td>\n</tr>\n<tr>\n<td>sku.title</td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome do kit/bundle.</td>\n</tr>\n<tr>\n<td>brand</td>\n<td>Sim</td>\n<td>object</td>\n<td>Objeto com a informação da marca ou canal de venda vinculada ao kit/bundle.</td>\n</tr>\n<tr>\n<td>brand.id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código identificador da marca ou canal de venda vinculada ao kit/bundle.</td>\n</tr>\n<tr>\n<td>brand.name</td>\n<td>Sim</td>\n<td>object</td>\n<td>Nome da marca ou canal de venda vinculada ao kit/bundle.</td>\n</tr>\n<tr>\n<td>manufacturer</td>\n<td>Não</td>\n<td>object</td>\n<td>Identificação do fabricante do kit/bundle.</td>\n</tr>\n<tr>\n<td>manufacturer[].id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código identificador do fabricante do kit/bundle.</td>\n</tr>\n<tr>\n<td>manufacturer[].name</td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome do fabricante do kit/bundle.</td>\n</tr>\n<tr>\n<td>category</td>\n<td>Sim</td>\n<td>object</td>\n<td>Lista de categorias nas quais o kit/bundle está classificado.</td>\n</tr>\n<tr>\n<td>category.id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador da categoria</td>\n</tr>\n<tr>\n<td>category.name</td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome da categoria.</td>\n</tr>\n<tr>\n<td>category.child</td>\n<td>Não</td>\n<td>object</td>\n<td>Objeto com informações da categoria adicional derivada da categoria principal. É possível incluir vários níveis de <strong>categories.child</strong>.</td>\n</tr>\n<tr>\n<td>category.child.id</td>\n<td>Não</td>\n<td>string</td>\n<td>Identificador da categoria derivada.</td>\n</tr>\n<tr>\n<td>category.child.name</td>\n<td>Não</td>\n<td>string</td>\n<td>Nome da categoria derivada.</td>\n</tr>\n<tr>\n<td>additionalCategories</td>\n<td>Não</td>\n<td>array</td>\n<td>Informação de categorias adicionais associadas ao kit/bundle.</td>\n</tr>\n<tr>\n<td>additionalCategories[].id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador da categoria adicional.</td>\n</tr>\n<tr>\n<td>additionalCategories[].name</td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome da categoria adicional.</td>\n</tr>\n<tr>\n<td>additionalCategories[].child</td>\n<td>Não</td>\n<td>object</td>\n<td>Objeto com informações da categoria adicional derivada da categoria adicional. É possível incluir vários níveis de <strong>additionalCategories.child</strong>.</td>\n</tr>\n<tr>\n<td>additionalCategories[].child.id</td>\n<td>Não</td>\n<td>string</td>\n<td>Identificador da categoria adicional.</td>\n</tr>\n<tr>\n<td>additionalCategories[].child.name</td>\n<td>Não</td>\n<td>string</td>\n<td>Nome da categoria adicional.</td>\n</tr>\n<tr>\n<td>associatedProducts</td>\n<td>Sim</td>\n<td>array</td>\n<td>Lista de produtos ou SKUs que compõem o kit/bundle.</td>\n</tr>\n<tr>\n<td>associatedProducts[].productId</td>\n<td>Não</td>\n<td>string</td>\n<td>Código identificador do produto associado ao kit/bundle.</td>\n</tr>\n<tr>\n<td>associatedProducts[].skuId</td>\n<td>Não</td>\n<td>string</td>\n<td>Código identificador do SKU associado ao kit/bundle.</td>\n</tr>\n<tr>\n<td>associatedProducts[].quantity</td>\n<td>Sim</td>\n<td>integer</td>\n<td>Quantidade do produto ou SKU vinculada ao kit/bundle.</td>\n</tr>\n<tr>\n<td>associatedProducts[].required</td>\n<td>Sim</td>\n<td>boolean</td>\n<td>Indica que o item é obrigatório no kit/bundle, informe <strong>true</strong> ou <strong>false</strong>.</td>\n</tr>\n<tr>\n<td>associatedProducts[].discountType</td>\n<td>Não</td>\n<td>string</td>\n<td>Identificação do tipo do ajuste do preço do item no kit/bundle, informe <strong>None</strong> para indicar que não existe nenhum ajuste no preço; <strong>Percent</strong> para indicar uma redução em percentual no preço do item; <strong>Value</strong> para indicar uma redução de valor fixo no preço do item, o valor informado no campo <strong>associatedProducts[].discountValue</strong> acompanha o tipo informado nesse campo.</td>\n</tr>\n<tr>\n<td>associatedProducts[].discountValue</td>\n<td>Não</td>\n<td>number</td>\n<td>Valor de ajuste no preço do item do kit/bundle conforme o tipo informado no campo <strong>associatedProducts[].discountType</strong>.</td>\n</tr>\n<tr>\n<td>attributes</td>\n<td>Não</td>\n<td>array (object)</td>\n<td>Lista de atributos do kit/bundle.</td>\n</tr>\n<tr>\n<td>attributes[].data</td>\n<td>Sim</td>\n<td>object</td>\n<td>Dados para configuração do valor do atributo.</td>\n</tr>\n<tr>\n<td>attributes[].data.id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do valor do atributo.</td>\n</tr>\n<tr>\n<td>attributes[].data.type</td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo do valor do atributo, informe <strong>string</strong>, <strong>number</strong>, <strong>boolean</strong>.</td>\n</tr>\n<tr>\n<td>attributes[].data.value</td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Valor do atributo, utilizar quando o valor for de livre digitação, é necessário enviar quando não for informado o campo <strong>attributes[].data.values</strong>.</td>\n</tr>\n<tr>\n<td>attributes[].data.values</td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Valores do atributo, utilizar quando o valor for pré definido, é necessário enviar quando não for informado o campo <strong>attributes[].data.value</strong>.</td>\n</tr>\n<tr>\n<td>attributes[].format</td>\n<td>Não</td>\n<td>string</td>\n<td>Formato da estrutura do atributo, informe <strong>TEXT</strong>, <strong>LIST</strong>, <strong>MULTI-LIST</strong>, <strong>HTML</strong>.</td>\n</tr>\n<tr>\n<td>attributes[].id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do atributo.</td>\n</tr>\n<tr>\n<td>attributes[].name</td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome do atributo.</td>\n</tr>\n<tr>\n<td>flags</td>\n<td>Não</td>\n<td>array</td>\n<td>Lista de flags do kit/bundle, essa informação é enviada para plataformas de comércio eletrônico para facilitar a busca por parte dos clientes.</td>\n</tr>\n<tr>\n<td>flags[].id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador da flag.</td>\n</tr>\n<tr>\n<td>flags[].name</td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome da flag.</td>\n</tr>\n<tr>\n<td>keywords</td>\n<td>Não</td>\n<td>array (string)</td>\n<td>Palavras-chave relacionadas para mecanismos de busca.</td>\n</tr>\n<tr>\n<td>tags</td>\n<td>Não</td>\n<td>array</td>\n<td>Tags internas do kit/bundle.</td>\n</tr>\n<tr>\n<td>tags.id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código identificador da tag.</td>\n</tr>\n<tr>\n<td>tags.name</td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome da tag.</td>\n</tr>\n<tr>\n<td>images</td>\n<td>Não</td>\n<td>array</td>\n<td>Lista de imagens do kit/bundle.</td>\n</tr>\n<tr>\n<td>images[].id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador da imagem.</td>\n</tr>\n<tr>\n<td>images[].isProductMedia</td>\n<td>Não</td>\n<td>boolean</td>\n<td>Indica se a imagem pertence somente ao produto base do kit/bundle, informe <strong>true</strong> ou <strong>false</strong>.</td>\n</tr>\n<tr>\n<td>images[].skusId</td>\n<td>Não</td>\n<td>array(string)</td>\n<td>Lista de identificadores dos SKUs que a imagem será vinculada.</td>\n</tr>\n<tr>\n<td>images[].height</td>\n<td>Não</td>\n<td>integer</td>\n<td>Altura da imagem.</td>\n</tr>\n<tr>\n<td>images[].width</td>\n<td>Não</td>\n<td>integer</td>\n<td>Largura da imagem.</td>\n</tr>\n<tr>\n<td>images[].url</td>\n<td>Sim</td>\n<td>string</td>\n<td>URL onde a imagem está disponível para download.</td>\n</tr>\n<tr>\n<td>images[].updatedAt</td>\n<td>Sim</td>\n<td>string</td>\n<td>Data e hora de atualização da imagem, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>videos</td>\n<td>Não</td>\n<td>array</td>\n<td>Lista de vídeos do produto.</td>\n</tr>\n<tr>\n<td>videos[].id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do vídeo.</td>\n</tr>\n<tr>\n<td>videos[].isProductMedia</td>\n<td>Não</td>\n<td>boolean</td>\n<td>Indica se o vídeo pertence somente ao produto base.</td>\n</tr>\n<tr>\n<td>videos[].skusId</td>\n<td>Não</td>\n<td>string</td>\n<td>Lista de identificadores dos SKUs que o vídeo será vinculado.</td>\n</tr>\n<tr>\n<td>videos[].height</td>\n<td>Não</td>\n<td>integer</td>\n<td>Altura do vídeo.</td>\n</tr>\n<tr>\n<td>videos[].width</td>\n<td>Não</td>\n<td>integer</td>\n<td>Largura do vídeo.</td>\n</tr>\n<tr>\n<td>videos[].url</td>\n<td>Sim</td>\n<td>string</td>\n<td>URL onde o vídeo está disponível para download.</td>\n</tr>\n<tr>\n<td>videos[].updatedAt</td>\n<td>Sim</td>\n<td>string</td>\n<td>Data e hora de atualização do vídeo, no formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","bundle","messages"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[{"id":"31262a1d-f5f8-4dd2-8032-4b14a90e240b","name":"Token expirado","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"bundleId\": \"kit-1234\",\r\n    \"title\": \"KIT DIA DOS PAIS\",\r\n    \"sku\": {\r\n        \"height\": {\r\n            \"value\": 8.0000,\r\n            \"unit\": \"cm\"\r\n        },\r\n        \"length\": {\r\n            \"value\": 15.5000,\r\n            \"unit\": \"cm\"\r\n        },\r\n        \"width\": {\r\n            \"value\": 15.0000,\r\n            \"unit\": \"cm\"\r\n        },\r\n        \"weight\": {\r\n            \"value\": 0.0800,\r\n            \"unit\": \"kg\"\r\n        },\r\n        \"sku\": \"16059.4013\",\r\n        \"skuId\": \"16059.4013\",\r\n        \"title\": \"ENVELOPE AUTOCLAVE 05X13 C/100 PACKGC .\"\r\n    },\r\n    \"attributes\": [\r\n        {\r\n            \"data\": {\r\n                \"id\": \"1\",\r\n                \"type\": \"number\",\r\n                \"value\": \"1\",\r\n                \"values\": \"\"\r\n            },\r\n            \"id\": \"1\",\r\n            \"name\": \"atributo teste\",\r\n            \"format\": \"LIST\"\r\n        }\r\n    ],\r\n    \"brand\": {\r\n        \"id\": \"9\",\r\n        \"name\": \"NAO CADASTRADO\"\r\n    },\r\n    \"category\": {\r\n        \"id\": \"S7\",\r\n        \"name\": \"BIOSSEGURANCA\",\r\n        \"child\": {\r\n            \"id\": \"L150\",\r\n            \"name\": \"EMBALAGEM PARA ESTERILIZA\",\r\n            \"child\": {\r\n                \"id\": \"\",\r\n                \"name\": \"\"\r\n            }\r\n        }\r\n    },\r\n    \"additionalCategories\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"name\": \"categoria adicional 1\",\r\n            \"child\": {\r\n                \"id\": \"\",\r\n                \"name\": \"\",\r\n                \"child\": {\r\n                    \"id\": \"\",\r\n                    \"name\": \"\"\r\n                }\r\n            }\r\n        }\r\n    ],\r\n    \"associatedProducts\": [\r\n        {\r\n            \"productId\": \"12\",\r\n            \"skuId\": \"\",\r\n            \"quantity\": 1,\r\n            \"required\": true,\r\n            \"discountType\": \"None\",\r\n            \"discountValue\": 0.0\r\n        }\r\n    ],\r\n    \"description\": \"<p>O Envelope Autoclave Pack GC 05 x 13 cm mant&eacute;m a barreira bacteriol&oacute;gica necess&aacute;ria para a esteriliza&ccedil;&atilde;o do conte&uacute;do. Pode ser utilizado com instrumentos m&eacute;dicos, odontol&oacute;gicos, veterin&aacute;rios e de est&eacute;tica. Indicado para esteriliza&ccedil;&atilde;o a vapor, g&aacute;s &oacute;xido de etileno (ETO) e raio gama. &Eacute; fabricado com papel grau cir&uacute;rgico e filme laminado multicamadas de poli&eacute;ster e polipropileno. Possui fita dupla face que dispensa a utiliza&ccedil;&atilde;o de seladora e cont&eacute;m orienta&ccedil;&atilde;o para a dobra impressa. Impress&atilde;o fora da &aacute;rea de contato com os produtos a serem esterilizados; Indicadores qu&iacute;micos que mudam de cor ap&oacute;s entrarem em contato com o agente esterilizante; Indica&ccedil;&atilde;o do sentido de abertura; Maior efici&ecirc;ncia; Selagem tripla.</p>\\n\",\r\n    \"manufacturer\": {\r\n        \"id\": \"4781\",\r\n        \"name\": \"ZERMATT INDUSTRIA E COMERCIO LTDA\"\r\n    },\r\n    \"enabled\": false, //padrão do campo true\r\n    \"flags\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"name\": \"temporário\"\r\n        },\r\n        {\r\n            \"id\": \"2\",\r\n            \"name\": \"estação\"\r\n        }\r\n    ],\r\n    \"createdAt\": \"2021-12-16T03:00:00.000Z\",\r\n    \"publishedAt\": \"2022-03-23T03:00:00.000Z\",\r\n    \"publishedScope\": \"web\",\r\n    \"updatedAt\": \"2022-09-17T07:55:58.744Z\",\r\n    \"images\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"url\": \"https://www.img.com.br/img.png\",\r\n            \"updatedAt\": \"2025-03-03T20:33:10.123Z\",\r\n            \"height\": 480,\r\n            \"width\": 640,\r\n            \"skuIds\": [\r\n                \"123\",\r\n                \"456\",\r\n                \"789\"\r\n            ],\r\n            \"isProductMedia\": true\r\n        }\r\n    ],\r\n    \"priceType\": \"Fixed\",\r\n    \"price\": 100.99,\r\n    \"discountType\": \"Percent\",\r\n    \"discountValue\": 0.0,\r\n    \"promotionalPriceFrom\": \"\",\r\n    \"promotionalPriceTo\": \"\",\r\n    \"salespromotionalPrice\": 99.5,\r\n    \"keywords\": [\r\n        \"temporada\",\r\n        \"kit\"\r\n    ],\r\n    \"tags\": [\r\n        {\r\n            \"id\": \"\",\r\n            \"name\": \"\"\r\n        },\r\n        {\r\n            \"id\": \"\",\r\n            \"name\": \"\"\r\n        }\r\n    ],\r\n    \"type\": \"AllProducts\",\r\n    \"url\": \"\",\r\n    \"videos\": [\r\n        {\r\n            \"id\": \"\",\r\n            \"skuIds\": \"\",\r\n            \"height\": \"\",\r\n            \"width\": \"\",\r\n            \"url\": \"\",\r\n            \"isProductMedia\": true,\r\n            \"updatedAt\": \"\"\r\n        }\r\n    ],\r\n    \"warranty\": \"\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/bundle/messages"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":"{\n    \"exp\": \"token expired\"\n}"},{"id":"90d30090-0f44-4efe-99db-15c25e2dd9ec","name":"URL incorreta","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"bundleId\": \"kit-1234\",\r\n    \"title\": \"KIT DIA DOS PAIS\",\r\n    \"sku\": {\r\n        \"height\": {\r\n            \"value\": 8.0000,\r\n            \"unit\": \"cm\"\r\n        },\r\n        \"length\": {\r\n            \"value\": 15.5000,\r\n            \"unit\": \"cm\"\r\n        },\r\n        \"width\": {\r\n            \"value\": 15.0000,\r\n            \"unit\": \"cm\"\r\n        },\r\n        \"weight\": {\r\n            \"value\": 0.0800,\r\n            \"unit\": \"kg\"\r\n        },\r\n        \"sku\": \"16059.4013\",\r\n        \"skuId\": \"16059.4013\",\r\n        \"title\": \"ENVELOPE AUTOCLAVE 05X13 C/100 PACKGC .\"\r\n    },\r\n    \"attributes\": [\r\n        {\r\n            \"data\": {\r\n                \"id\": \"1\",\r\n                \"type\": \"number\",\r\n                \"value\": \"1\",\r\n                \"values\": \"\"\r\n            },\r\n            \"id\": \"1\",\r\n            \"name\": \"atributo teste\",\r\n            \"format\": \"LIST\"\r\n        }\r\n    ],\r\n    \"brand\": {\r\n        \"id\": \"9\",\r\n        \"name\": \"NAO CADASTRADO\"\r\n    },\r\n    \"category\": {\r\n        \"id\": \"S7\",\r\n        \"name\": \"BIOSSEGURANCA\",\r\n        \"child\": {\r\n            \"id\": \"L150\",\r\n            \"name\": \"EMBALAGEM PARA ESTERILIZA\",\r\n            \"child\": {\r\n                \"id\": \"\",\r\n                \"name\": \"\"\r\n            }\r\n        }\r\n    },\r\n    \"additionalCategories\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"name\": \"categoria adicional 1\",\r\n            \"child\": {\r\n                \"id\": \"\",\r\n                \"name\": \"\",\r\n                \"child\": {\r\n                    \"id\": \"\",\r\n                    \"name\": \"\"\r\n                }\r\n            }\r\n        }\r\n    ],\r\n    \"associatedProducts\": [\r\n        {\r\n            \"productId\": \"12\",\r\n            \"skuId\": \"\",\r\n            \"quantity\": 1,\r\n            \"required\": true,\r\n            \"discountType\": \"None\",\r\n            \"discountValue\": 0.0\r\n        }\r\n    ],\r\n    \"description\": \"<p>O Envelope Autoclave Pack GC 05 x 13 cm mant&eacute;m a barreira bacteriol&oacute;gica necess&aacute;ria para a esteriliza&ccedil;&atilde;o do conte&uacute;do. Pode ser utilizado com instrumentos m&eacute;dicos, odontol&oacute;gicos, veterin&aacute;rios e de est&eacute;tica. Indicado para esteriliza&ccedil;&atilde;o a vapor, g&aacute;s &oacute;xido de etileno (ETO) e raio gama. &Eacute; fabricado com papel grau cir&uacute;rgico e filme laminado multicamadas de poli&eacute;ster e polipropileno. Possui fita dupla face que dispensa a utiliza&ccedil;&atilde;o de seladora e cont&eacute;m orienta&ccedil;&atilde;o para a dobra impressa. Impress&atilde;o fora da &aacute;rea de contato com os produtos a serem esterilizados; Indicadores qu&iacute;micos que mudam de cor ap&oacute;s entrarem em contato com o agente esterilizante; Indica&ccedil;&atilde;o do sentido de abertura; Maior efici&ecirc;ncia; Selagem tripla.</p>\\n\",\r\n    \"manufacturer\": {\r\n        \"id\": \"4781\",\r\n        \"name\": \"ZERMATT INDUSTRIA E COMERCIO LTDA\"\r\n    },\r\n    \"enabled\": false, //padrão do campo true\r\n    \"flags\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"name\": \"temporário\"\r\n        },\r\n        {\r\n            \"id\": \"2\",\r\n            \"name\": \"estação\"\r\n        }\r\n    ],\r\n    \"createdAt\": \"2021-12-16T03:00:00.000Z\",\r\n    \"publishedAt\": \"2022-03-23T03:00:00.000Z\",\r\n    \"publishedScope\": \"web\",\r\n    \"updatedAt\": \"2022-09-17T07:55:58.744Z\",\r\n    \"images\": [\r\n        {\r\n            \"id\": \"1\",\r\n            \"url\": \"https://www.img.com.br/img.png\",\r\n            \"updatedAt\": \"2025-03-03T20:33:10.123Z\",\r\n            \"height\": 480,\r\n            \"width\": 640,\r\n            \"skuIds\": [\r\n                \"123\",\r\n                \"456\",\r\n                \"789\"\r\n            ],\r\n            \"isProductMedia\": true\r\n        }\r\n    ],\r\n    \"priceType\": \"Fixed\",\r\n    \"price\": 100.99,\r\n    \"discountType\": \"Percent\",\r\n    \"discountValue\": 0.0,\r\n    \"promotionalPriceFrom\": \"\",\r\n    \"promotionalPriceTo\": \"\",\r\n    \"salespromotionalPrice\": 99.5,\r\n    \"keywords\": [\r\n        \"temporada\",\r\n        \"kit\"\r\n    ],\r\n    \"tags\": [\r\n        {\r\n            \"id\": \"\",\r\n            \"name\": \"\"\r\n        },\r\n        {\r\n            \"id\": \"\",\r\n            \"name\": \"\"\r\n        }\r\n    ],\r\n    \"type\": \"AllProducts\",\r\n    \"url\": \"\",\r\n    \"videos\": [\r\n        {\r\n            \"id\": \"\",\r\n            \"skuIds\": \"\",\r\n            \"height\": \"\",\r\n            \"width\": \"\",\r\n            \"url\": \"\",\r\n            \"isProductMedia\": true,\r\n            \"updatedAt\": \"\"\r\n        }\r\n    ],\r\n    \"warranty\": \"\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/bundle/message"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2026-10-14T11:58:17.097+00:00\",\n    \"path\": \"/v2/applications/maker-selfdev/topics/bundle/message\",\n    \"status\": 404,\n    \"error\": \"Not Found\",\n    \"requestId\": \"ab66093b-2527701\"\n}"}],"_postman_id":"10589b59-5f13-4ba6-9b88-ff607c9734ba"}],"id":"f46f93cc-40e8-401d-ab4c-41fc88d61fd2","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>O tópico <code>bundle</code> é utilizado para criar, atualizar e gerenciar o cadastro de kits de produtos, combos e conjuntos (<em>bundles</em>).</p>\n<p>Através deste tópico, sistemas de ERP, PIM ou E-commerce cadastram a estrutura de kits compostos, agrupando múltiplos produtos associados, definindo regras de precificação fixa ou dinâmica, descontos do combo, dados fiscais, categorização, imagens e atributos técnicos do kit.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>POST</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/bundle/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{token}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n</ul>\n<h5 id=\"onde\">Onde:</h5>\n<ul>\n<li><p><code>app-id</code>: Identificador da sua aplicação no Maker IO.</p>\n</li>\n<li><p><code>token</code>: Bearer Token gerado pelo endpoint de <a href=\"#0be47a1e-bf5a-477f-9b0b-77009a952071\">Login</a>.</p>\n</li>\n</ul>\n","_postman_id":"f46f93cc-40e8-401d-ab4c-41fc88d61fd2"},{"name":"Stock","item":[{"name":"Stock","id":"969e782b-66de-4e46-828e-0435135c3053","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"additionalHandlingDays\": \"\",\r\n    \"availableQuantity\": 500,\r\n    \"enabled\": true,\r\n    \"locationId\": \"Teste\",\r\n    \"lotId\": \"\",\r\n    \"outOfStockSales\": false,\r\n    \"outOfStockSalesAdditionalHandlingDays\": 10,\r\n    \"outOfStockSalesQuantity\": 3.9,\r\n    \"presale\": {\r\n        \"billingStartsAt\": \"2025-06-17T14:29:35.121Z\",\r\n        \"endAt\": \"2025-06-20T14:29:35.121Z\",\r\n        \"startAt\": \"2025-06-17T14:29:35.121Z\"\r\n    },\r\n    \"sku\": \"765756\",\r\n    \"skuId\": \"765756\",\r\n    \"barcode\": [\r\n        \"123456789\",\r\n        \"987654321\"\r\n    ],\r\n    \"brandId\": \"site\",\r\n    \"stockType\": \"PRESALE\",\r\n    \"threshold\": 0,\r\n    \"totalQuantity\": 502,\r\n    \"updatedAt\": \"2025-06-17T14:29:35.121Z\",\r\n    \"virtual\": {\r\n        \"availableDate\": \"2025-06-17T15:29:35.121Z\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/stock/messages","description":"<h3 id=\"descrição-dos-campos-do-payload\">Descrição dos campos do payload</h3>\n<p>A publicação do Stock utiliza o payload abaixo:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Obrigatório</th>\n<th>Tipo de dado</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>skuId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do SKU.</td>\n</tr>\n<tr>\n<td>sku</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código externo do SKU, conhecido por vendedores e clientes.</td>\n</tr>\n<tr>\n<td>locationId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador da loja ou do Centro de Distribuição.</td>\n</tr>\n<tr>\n<td>stockType</td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo de estoque, informe <strong>PHYSICAL</strong> para estoque físico real; <strong>PRESALE</strong> para estoque de pré-venda, com data definida de início para venda; <strong>VIRTUAL</strong> para estoque virtual <strong>XDOCKING</strong> para estoque do fornecedor; <strong>FLOORSAMPLE</strong> para estoque de amostra.</td>\n</tr>\n<tr>\n<td>availableQuantity</td>\n<td>Sim</td>\n<td>integer</td>\n<td>Quantidade disponível para venda imediata na loja, descontando reservas e proteções.</td>\n</tr>\n<tr>\n<td>totalQuantity</td>\n<td>Sim</td>\n<td>integer</td>\n<td>Quantidade total em estoque na localização, sem descontar reservas ou proteções.</td>\n</tr>\n<tr>\n<td>enabled</td>\n<td>Sim</td>\n<td>boolean</td>\n<td>Informa se o SKU está liberado para venda, aceita valores <strong>true</strong> ou <strong>false</strong>.</td>\n</tr>\n<tr>\n<td>updatedAt</td>\n<td>Sim</td>\n<td>string (date-time)</td>\n<td>Data e hora da última atualização de estoque no formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>additionalHandlingDays</td>\n<td>Verificar regra</td>\n<td>number</td>\n<td>Quantidade de dias adicionais de manuseio na loja ou CD, se torna obrigatório se o campo <strong>stockType</strong> for <strong>XDOCKING</strong>.</td>\n</tr>\n<tr>\n<td>barcode</td>\n<td>Sim</td>\n<td>array (string)</td>\n<td>Lista de códigos de barra (EAN/GTIN) do SKU.</td>\n</tr>\n<tr>\n<td>brandId</td>\n<td>Não</td>\n<td>string</td>\n<td>Identificador da marca ou canal de vendas.</td>\n</tr>\n<tr>\n<td>lotId</td>\n<td>Não</td>\n<td>string</td>\n<td>Identificador do lote para estoques com controle por lote.</td>\n</tr>\n<tr>\n<td>threshold</td>\n<td>Não</td>\n<td>integer</td>\n<td>Quantidade de estoque retida por segurança ou proteção.</td>\n</tr>\n<tr>\n<td>outOfStockSales</td>\n<td>Não</td>\n<td>boolean</td>\n<td>Indica se é permitida a venda sem estoque disponível, aceita valores <strong>true</strong> ou <strong>false</strong>.</td>\n</tr>\n<tr>\n<td>outOfStockSalesQuantity</td>\n<td>Não</td>\n<td>number</td>\n<td>Quantidade de estoque liberada para vendas sem estoque.</td>\n</tr>\n<tr>\n<td>outOfStockSalesAdditionalHandlingDays</td>\n<td>Não</td>\n<td>number</td>\n<td>Quantidade de dias adicionais de manuseio para vendas sem estoque.</td>\n</tr>\n<tr>\n<td>presale</td>\n<td>Verificar regra</td>\n<td>object</td>\n<td>Lista de informações referente ao estoque de pré-venda, o objeto se torna obrigatório se o campo <strong>stockType</strong> for <strong>PRESALE</strong>.</td>\n</tr>\n<tr>\n<td>presale.startAt</td>\n<td>Sim</td>\n<td>string (date-time)</td>\n<td>Data de início da pré-venda, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>presale.endAt</td>\n<td>Sim</td>\n<td>string (date-time)</td>\n<td>Data de término da pré-venda, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>presale.billingStartsAt</td>\n<td>Não</td>\n<td>string (date-time)</td>\n<td>Data em que o faturamento do item da pré-venda está autorizado, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>virtual</td>\n<td>Verificar regra</td>\n<td>object</td>\n<td>Informação sobre o estoque virtual, se torna obrigatório se o campo <strong>stockType</strong> for <strong>VIRTUAL</strong>.</td>\n</tr>\n<tr>\n<td>virtual.availableDate</td>\n<td>Sim</td>\n<td>string (date-time)</td>\n<td>Data em que o estoque será recebido pelo lojista, data utilizada para cálculo do prazo de entrega.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","stock","messages"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"969e782b-66de-4e46-828e-0435135c3053"}],"id":"10beb79f-276c-4d96-86b9-860eaa33748a","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>O tópico <code>stock</code> é utilizado para atualizar, sincronizar e gerenciar as quantidades de estoque por SKU e localização (loja física, Centro de Distribuição ou estoque virtual/pré-venda).</p>\n<p>Através deste tópico, sistemas de ERP, WMS ou VMS atualizam os saldos disponíveis para venda, definem regras de <em>cross-docking</em>, prazos adicionais de expedição (<em>lead time</em>), margens de segurança (<em>threshold</em>) e janelas operacionais de pré-venda.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>POST</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/stock/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{token}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n</ul>\n<h5 id=\"onde\">Onde:</h5>\n<ul>\n<li><p><code>app-id</code>: Identificador da sua aplicação no Maker IO.</p>\n</li>\n<li><p><code>token</code>: Bearer Token gerado pelo endpoint de <a href=\"#0be47a1e-bf5a-477f-9b0b-77009a952071\">Login</a>.</p>\n</li>\n</ul>\n","_postman_id":"10beb79f-276c-4d96-86b9-860eaa33748a"},{"name":"Price","item":[{"name":"Price","id":"6d8a50c1-5688-4dde-b265-6ea569d59c22","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"barcode\": [\r\n        \"1234567890123\",\r\n        \"0123456789012\"\r\n    ],\r\n    \"listPrice\": 0,\r\n    \"locationId\": \"1.1\",\r\n    \"priceListId\": \"1.1\",\r\n    \"salesPrice\": 109.99,\r\n    \"salesPriceFrom\": 225.99,\r\n    \"salesPriceTo\": 175.99,\r\n    \"sku\": \"1:1-5390K-\",\r\n    \"skuId\": \"1:1-5390K-\",\r\n    \"updatedAt\": \"2025-10-16T00:00:00.000Z\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/price/messages","description":"<h3 id=\"descrição-dos-campos-do-payload\">Descrição dos campos do payload</h3>\n<p>A publicação do Price utiliza o payload abaixo:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Obrigatório</th>\n<th>Tipo de dado</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>barcode</td>\n<td>Não</td>\n<td>array (string)</td>\n<td>Lista de código de barras do SKU que será enviado o preço.</td>\n</tr>\n<tr>\n<td>listPrice</td>\n<td>Sim</td>\n<td>number</td>\n<td>Preço do SKU, se não for enviado o campo <strong>salesPrice</strong>, esse valor será considerado como preço de venda.</td>\n</tr>\n<tr>\n<td>locationId</td>\n<td>Não</td>\n<td>string</td>\n<td>Identificador da loja ou CD que tera o vínculo do preço, quando enviado esse campo o preço será vinculado somente à <strong>locationId</strong> informada.</td>\n</tr>\n<tr>\n<td>priceListId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador ou constante da lista de preço.</td>\n</tr>\n<tr>\n<td>salesPrice</td>\n<td>Verificar regra</td>\n<td>number</td>\n<td>Preço de venda do SKU, se for informado também o campo <strong>listPrice</strong> esse valor será apresentado como preço de venda, esse campo se torna obrigatório se for informado o campo <strong>salesPriceFrom</strong>.</td>\n</tr>\n<tr>\n<td>salesPriceFrom</td>\n<td>Não</td>\n<td>string (date-time)</td>\n<td>Data de inicio do preço informado no campo <strong>salesPrice</strong>, esse campo se torna obrigatório se for enviado o <strong>salesPriceTo</strong>, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>salesPriceTo</td>\n<td>Não</td>\n<td>string (date-time)</td>\n<td>Data final do preço informado no campo <strong>salesPrice</strong>, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>sku</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código comercial do SKU.</td>\n</tr>\n<tr>\n<td>skuId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do SKU.</td>\n</tr>\n<tr>\n<td>updatedAt</td>\n<td>Sim</td>\n<td>string (date-time)</td>\n<td>Data de atualização do preço, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","price","messages"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"6d8a50c1-5688-4dde-b265-6ea569d59c22"}],"id":"8c94d6bf-e380-4776-8156-603e55184d17","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>O tópico <code>price</code> é utilizado para o envio, atualização e sincronização de tabelas de preços e condições comerciais dos SKUs por localização (loja física ou centro de distribuição) ou por lista de preços.</p>\n<p>Através deste tópico, ERPs, PIMs ou hubs de integração enviam dados sobre preço de lista (preço \"de\"), preço de venda efetivo (preço \"por\"), faixas promocionais, códigos de barras e a associação do preço a uma filial ou canal específico.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>POST</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/price/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{token}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n</ul>\n<h5 id=\"onde\">Onde:</h5>\n<ul>\n<li><p><code>app-id</code>: Identificador da sua aplicação no Maker IO.</p>\n</li>\n<li><p><code>token</code>: Bearer Token gerado pelo endpoint de <a href=\"#0be47a1e-bf5a-477f-9b0b-77009a952071\">Login</a>.</p>\n</li>\n</ul>\n","_postman_id":"8c94d6bf-e380-4776-8156-603e55184d17"},{"name":"Customer","item":[{"name":"Customer","id":"e8a0356d-806c-4a82-b44e-2f2afd49aab3","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"accept","value":"application/json"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"acceptsMarketing\": true,\n    \"addresses\": [\n        {\n            \"addressId\": \"12374\",\n            \"addressLine1\": \"Rua teste 1\",\n            \"addressLine2\": \"Rua teste 2\",\n            \"addressName\": \"Teste addressName\",\n            \"city\": \"Sao Paulo\",\n            \"contactName\": \"Fulano\",\n            \"contactPhone\": \"+55 11 999999999\",\n            \"country\": \"Brasil\",\n            \"default\": true,\n            \"latitude\": 7,\n            \"longitude\": 19,\n            \"neighbourhood\": \"Bairro exemplo\",\n            \"notes\": \"Observações example\",\n            \"number\": \"10\",\n            \"state\": \"SP\",\n            \"zipCode\": \"00000001\"\n        }\n    ],\n    \"attributes\": [\n        {\n            \"data\": {\n                \"id\": \"1\",\n                \"type\": \"string\",\n                \"value\": \"gamer\"\n            },\n            \"id\": \"1\",\n            \"name\": \"Perfil\"\n        }\n    ],\n    \"createdAt\": \"2019-05-07 17:02:45.764000\",\n    \"customerId\": \"1\",\n    \"dateOfBirth\": \"1980-01-01\",\n    \"documentNumber\": {\n        \"cpf\": \"49987587860\",\n        \"rg\": \"380745014\"\n    },\n    \"email\": \"email@customer.com\",\n    \"firstName\": \"Fulano Da Silva\",\n    \"gender\": \"MALE\",\n    \"lastName\": \"Sauro\",\n    \"mobilePhone\": \"99995588\",\n    \"notes\": \"cliente vip\",\n    \"phone\": \"99995566\",\n    \"tags\": [\n        {\n            \"id\": \"1\",\n            \"name\": \"premium customer\"\n        }\n    ],\n    \"type\": \"PERSON\",\n    \"updatedAt\": \"2019-05-07 17:02:45.764000\"\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/customer/messages","description":"<h3 id=\"descrição-dos-campos-do-payload\">Descrição dos campos do payload</h3>\n<p>A publicação do <strong>Customer</strong> utiliza o payload abaixo, alguns arrays ou objetos do payload ficaram disponibilizados em outra seção para que a documentação não ficasse muito extensa, utilizar o link na descrição do array ou objeto para ser direcionado à seção correspondente e verificar seus campos e regras.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Obrigatório</th>\n<th>Tipo de dado</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>customerId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do cliente.</td>\n</tr>\n<tr>\n<td>type</td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo de pessoa, informe <strong>PERSON</strong> para pessoa física e <strong>COMPANY</strong> para pessoa jurídica, dependendo do tipo de pessoa a obrigatoriedade do campo documentNumber é alterada.</td>\n</tr>\n<tr>\n<td>documentNumber</td>\n<td>Sim</td>\n<td>object</td>\n<td>Informação sobre o tipo e o número do documento do cliente, a regra de validação e obrigatoriedade de cada campo varia conforme a informação do campo <strong>type</strong>.</td>\n</tr>\n<tr>\n<td>documentNumber.cnpj</td>\n<td>Conforme a regra</td>\n<td>string</td>\n<td>CNPJ do cliente, campo é obrigatório quando o <strong>type</strong> for <strong>COMPANY</strong>.</td>\n</tr>\n<tr>\n<td>documentNumber.ie</td>\n<td>Conforme a regra</td>\n<td>string</td>\n<td>Inscrição Estadual do cliente, campo é obrigatório quando o <strong>type</strong> for <strong>COMPANY</strong>.</td>\n</tr>\n<tr>\n<td>documentNumber.cpf</td>\n<td>Conforme a regra</td>\n<td>string</td>\n<td>CPF do cliente, campo é obrigatório quando o <strong>type</strong> for <strong>PERSON</strong>.</td>\n</tr>\n<tr>\n<td>documentNumber.rg</td>\n<td>Conforme a regra</td>\n<td>string</td>\n<td>RG do cliente, campo é obrigatório quando o <strong>type</strong> for <strong>PERSON</strong>.</td>\n</tr>\n<tr>\n<td>email</td>\n<td>Sim</td>\n<td>string</td>\n<td>E-mail do cliente.</td>\n</tr>\n<tr>\n<td>firstName</td>\n<td>Sim</td>\n<td>string</td>\n<td>Primeiro nome.</td>\n</tr>\n<tr>\n<td>lastName</td>\n<td>Não</td>\n<td>string</td>\n<td>Sobrenome.</td>\n</tr>\n<tr>\n<td>mobilePhone</td>\n<td>Não</td>\n<td>string</td>\n<td>Telefone celular do cliente.</td>\n</tr>\n<tr>\n<td>phone</td>\n<td>Não</td>\n<td>string</td>\n<td>Telefone do cliente.</td>\n</tr>\n<tr>\n<td>dateOfBirth</td>\n<td>Não</td>\n<td>string</td>\n<td>Data de nascimento, aceita formato <strong>YYYY-MM-DD</strong>.</td>\n</tr>\n<tr>\n<td>gender</td>\n<td>Não</td>\n<td>string</td>\n<td>Gênero.</td>\n</tr>\n<tr>\n<td>attributes</td>\n<td>Não</td>\n<td>array</td>\n<td>Lista de atributos do cliente.</td>\n</tr>\n<tr>\n<td>attributes.description</td>\n<td>Não</td>\n<td>string</td>\n<td>Descrição do atributo do cliente.</td>\n</tr>\n<tr>\n<td>attributes.id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do atributo do cliente.</td>\n</tr>\n<tr>\n<td>attributes.value</td>\n<td>Sim</td>\n<td>string</td>\n<td>Valor do atributo do cliente.</td>\n</tr>\n<tr>\n<td>addresses</td>\n<td>Não</td>\n<td>array</td>\n<td>Lista de endereços do cliente. Para maiores informações sobre as regras do endereço de cobrança, favor verificar na seção <a href=\"#6a0bd1da-969e-4b17-a219-9d0de72591ec\"><b>Address</b></a>.</td>\n</tr>\n<tr>\n<td>acceptsMarketing</td>\n<td>Sim</td>\n<td>boolean</td>\n<td>Indica se o cliente aceita receber mensagens de marketing, aceita valores <strong>true</strong> ou <strong>false</strong>.</td>\n</tr>\n<tr>\n<td>createdAt</td>\n<td>Sim</td>\n<td>string(date-time)</td>\n<td>Data de criação, aceita formato ISO 8601.</td>\n</tr>\n<tr>\n<td>updatedAt</td>\n<td>Sim</td>\n<td>string(date-time)</td>\n<td>Data de atualização, aceita formato ISO 8601.</td>\n</tr>\n<tr>\n<td>tags.id</td>\n<td>Não</td>\n<td>string</td>\n<td>Identificação da tag do cliente.</td>\n</tr>\n<tr>\n<td>tags.name</td>\n<td>Não</td>\n<td>string</td>\n<td>Nome da tag do cliente.</td>\n</tr>\n<tr>\n<td>notes</td>\n<td>Não</td>\n<td>string</td>\n<td>Observação referente ao cliente.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","customer","messages"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"e8a0356d-806c-4a82-b44e-2f2afd49aab3"}],"id":"2c5adddc-beab-4ca5-8b8a-20084b996185","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>O tópico <strong><code>customer</code></strong> é utilizado para cadastrar, atualizar e sincronizar a base de clientes (Pessoa Física ou Pessoa Jurídica) entre sistemas.</p>\n<p>Através deste tópico, plataformas de E-commerce, ERPs e CRMs sincronizam dados cadastrais do cliente, incluindo documentos de identificação (CPF, RG, CNPJ, IE), múltiplos endereços de entrega/faturamento, preferências de comunicação de marketing, atributos de perfil e tags de segmentação.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>POST</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/customer/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{token}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n</ul>\n<h5 id=\"onde\">Onde:</h5>\n<ul>\n<li><p><code>app-id</code>: Identificador da sua aplicação no Maker IO.</p>\n</li>\n<li><p><code>token</code>: Bearer Token gerado pelo endpoint de <a href=\"#0be47a1e-bf5a-477f-9b0b-77009a952071\">Login</a>.</p>\n</li>\n</ul>\n","_postman_id":"2c5adddc-beab-4ca5-8b8a-20084b996185"},{"name":"Order","item":[{"name":"Order","id":"e639e6ad-7d79-494e-9101-419a74f8fde7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{SEU_TOKEN}}"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"orderId\": \"3614092\",\n    \"paymentStatus\": \"DUE\",\n    \"status\": \"PENDING\",\n    \"attributes\": [\n        {\n            \"id\": \"attr-1\",\n            \"key\": \"gift_message\",\n            \"value\": \"Feliz aniversário!\"\n        }\n    ],\n    \"details\": {\n        \"currency\": \"BRL\",\n        \"subTotal\": 232.89,\n        \"shippingTotal\": 8.12,\n        \"taxTotal\": 0,\n        \"discountTotal\": 44.1,\n        \"total\": 231.01,\n        \"notes\": \"Entregar em horário comercial\"\n    },\n    \"device\": {\n        \"ipAddress\": \"189.10.20.30\",\n        \"userAgent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64)\",\n        \"deviceId\": \"dev-54321\",\n        \"platform\": \"WEB\",\n        \"location\": {\n            \"latitude\": -23.5505,\n            \"longitude\": -46.6333\n        }\n    },\n    \"payments\": [\n        {\n            \"balance\": {\n                \"due\": {\n                    \"amount\": 196.91,\n                    \"applicationId\": \"Commerce\"\n                }\n            },\n            \"paymentId\": \"1\",\n            \"currency\": \"BRL\",\n            \"isOnSitePayment\": true,\n            \"status\": \"DUE\",\n            \"details\": {\n                \"cash\": {\n                    \"acquirer\": \"12345678901231\",\n                    \"acquirerState\": \"PR\",\n                    \"beneficiary\": \"01234567890123\",\n                    \"capturedDate\": \"2025-06-16T16:32:01-03:00\",\n                    \"moneyChange\": 10,\n                    \"paymentDate\": \"2025-06-16T16:33:00-03:00\"\n                },\n                \"type\": \"CASH\",\n                \"provider\": \"RESHOP\"\n            }\n        }\n    ],\n    \"discount\": 0,\n    \"channelType\": \"ECOMMERCE\",\n    \"fulfillments\": [\n        {\n            \"fulfillmentId\": \"F1\",\n            \"items\": [\n                {\n                    \"name\": \"190202005102\",\n                    \"skuId\": \"190202005102\",\n                    \"quantity\": 1\n                }\n            ],\n            \"giftMessage\": {\n                \"format\": \"TEXT\",\n                \"value\": \"http://teste.com\"\n            },\n            \"locationId\": \"0011\",\n            \"type\": \"SHIPMENT\",\n            \"shipment\": {\n                \"amount\": 8.12,\n                \"carrier\": \"Personalizado\",\n                \"carrierInfo\": {\n                    \"alias\": \"Personalizado\",\n                    \"id\": \"51\",\n                    \"name\": \"Entrega Normal\"\n                },\n                \"address\": {\n                    \"country\": \"BR\",\n                    \"number\": \"555\",\n                    \"zipCode\": \"13070055\",\n                    \"default\": true,\n                    \"city\": \"Campinas\",\n                    \"contactName\": \"teste\",\n                    \"neighbourhood\": \"Jardim Chapadão\",\n                    \"addressLine1\": \"Avenida Francisco José de Camargo Andrade\",\n                    \"addressLine2\": \"até 670/671\",\n                    \"state\": \"SP\",\n                    \"contactPhone\": \"99935999878\",\n                    \"addressId\": \"shipmentF1\"\n                },\n                \"cost\": 8.124943181818182,\n                \"method\": \"Entrega Normal\",\n                \"daysToDelivery\": 3,\n                \"discount\": 0,\n                \"deliveryDate\": \"2022-01-21T00:00:00.000Z\",\n                \"type\": \"SHIPMENT_BY_CARRIER\"\n            },\n            \"status\": \"PENDING\"\n        },\n        {\n            \"fulfillmentId\": \"F2\",\n            \"items\": [\n                {\n                    \"name\": \"Arandela Alumínio Preto Ø25cm\",\n                    \"skuId\": \"9198890\",\n                    \"quantity\": 1\n                }\n            ],\n            \"locationId\": \"0003\",\n            \"type\": \"PICKUP\",\n            \"pickup\": {\n                \"address\": {\n                    \"addressId\": \"66968\",\n                    \"addressLine1\": \"Rua da Consolação\",\n                    \"addressName\": \"São Paulo - Consolação\",\n                    \"city\": \"São Paulo\",\n                    \"contactName\": \"Rafael de Sousa Barbosa\",\n                    \"country\": \"BR\",\n                    \"default\": false,\n                    \"neighbourhood\": \"Consolação\",\n                    \"number\": \"2004/2064\",\n                    \"state\": \"SP\",\n                    \"zipCode\": \"01302001\"\n                },\n                \"amount\": 0,\n                \"daysToPickup\": 1,\n                \"type\": \"STANDARD\"\n            },\n            \"status\": \"PENDING\"\n        }\n    ],\n    \"companyId\": \"grupoavenida\",\n    \"pointOfSaleId\": \"506\",\n    \"total\": 231.01,\n    \"brandId\": \"site\",\n    \"billingAddress\": {\n        \"country\": \"BR\",\n        \"number\": \"555\",\n        \"zipCode\": \"13070055\",\n        \"default\": false,\n        \"city\": \"Campinas\",\n        \"contactName\": \"teste teste\",\n        \"neighbourhood\": \"Jardim Chapadão\",\n        \"addressLine1\": \"Avenida Francisco José de Camargo Andrade\",\n        \"addressLine2\": \"até 670/671\",\n        \"state\": \"SP\",\n        \"contactPhone\": \"99935999878\",\n        \"addressId\": \"billing\"\n    },\n    \"items\": [\n        {\n            \"quantity\": 1,\n            \"price\": 89.99,\n            \"discount\": 10.0,\n            \"giftProduct\": false,\n            \"giftPackage\": false,\n            \"giftPackagePrice\": 0,\n            \"subTotal\": 79.99,\n            \"sku\": {\n                \"sku\": \"190202005102\",\n                \"skuId\": \"190202005102\",\n                \"identifiers\": {\n                    \"gtins\": [\n                        \"190202005102\"\n                    ],\n                    \"defaultGtin\": \"190202005102\"\n                },\n                \"length\": {\n                    \"unit\": \"cm\",\n                    \"value\": 8\n                },\n                \"height\": {\n                    \"unit\": \"cm\",\n                    \"value\": 27\n                },\n                \"width\": {\n                    \"unit\": \"cm\",\n                    \"value\": 28\n                },\n                \"weight\": {\n                    \"unit\": \"kg\",\n                    \"value\": 0.25\n                }\n            },\n            \"taxAmount\": 0\n        },\n        {\n            \"quantity\": 1,\n            \"price\": 142.9,\n            \"discount\": 34.1,\n            \"giftProduct\": false,\n            \"giftPackage\": false,\n            \"giftPackagePrice\": 0,\n            \"subTotal\": 79.99,\n            \"sku\": {\n                \"sku\": \"9198890\",\n                \"skuId\": \"9198890\",\n                \"identifiers\": {\n                    \"gtins\": [\n                        \"1190136005102\"\n                    ],\n                    \"defaultGtin\": \"1190136005102\"\n                },\n                \"length\": {\n                    \"unit\": \"cm\",\n                    \"value\": 40\n                },\n                \"height\": {\n                    \"unit\": \"cm\",\n                    \"value\": 15\n                },\n                \"width\": {\n                    \"unit\": \"cm\",\n                    \"value\": 40\n                },\n                \"weight\": {\n                    \"unit\": \"kg\",\n                    \"value\": 0.9\n                }\n            },\n            \"taxAmount\": 0\n        }\n    ],\n    \"promotions\": {\n        \"itemPromotions\": [\n            {\n                \"code\": \"987\",\n                \"description\": \"R$10 off no SKU 190202005102\",\n                \"discount\": 10,\n                \"sku\": \"190202005102\"\n            },\n            {\n                \"code\": \"0\",\n                \"description\": \"Desconto direto para venda\",\n                \"discount\": 34.1,\n                \"sku\": \"9198890\"\n            }\n        ],\n        \"orderPromotions\": [\n            {\n                \"code\": \"promo123\",\n                \"description\": \"promotest\",\n                \"discount\": 15.0\n            }\n        ]\n    },\n    \"purchasePlace\": \"Other\",\n    \"salesAgent\": {\n        \"amount\": 15.75,\n        \"documentNumber\": {\n            \"cpf\": \"11111111111\",\n            \"rg\": \"1590197\"\n        },\n        \"id\": \"10\",\n        \"name\": \"vendedor\"\n    },\n    \"tags\": [\n        \"promo\",\n        \"PROMO\"\n    ],\n    \"placedAt\": \"2022-01-17T18:41:37.000Z\",\n    \"customer\": {\n        \"createdAt\": \"2022-01-18T17:56:09.000Z\",\n        \"firstName\": \"teste\",\n        \"lastName\": \"teste\",\n        \"gender\": \"NOT INFORMED\",\n        \"documentNumber\": {\n            \"cpf\": \"42557391026\"\n        },\n        \"customerId\": \"cd8c626d-2327-401d-8f40-9df5b64244e7\",\n        \"dateOfBirth\": \"1997-05-12\",\n        \"type\": \"PERSON\",\n        \"acceptsMarketing\": false,\n        \"email\": \"teste@teste.com.br\",\n        \"updatedAt\": \"2022-01-18T17:56:09.000Z\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/applications/{{app-id}}/topics/order","description":"<h3 id=\"descrição-dos-campos-do-payload\">Descrição dos campos do payload</h3>\n<p>A publicação do Order utiliza o payload abaixo, alguns arrays ou objetos do payload ficaram disponibilizados em outra seção para que a documentação não ficasse muito extensa, utilizar o link na descrição do array ou objeto para ser direcionado à seção correspondente e verificar seus campos e regras.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Obrigatório</th>\n<th>Tipo de dado</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>orderId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do pedido</td>\n</tr>\n<tr>\n<td>paymentStatus</td>\n<td>Sim</td>\n<td>string</td>\n<td>Status do pagamento do pedido, informe: <strong>DUE</strong> para pagamento pendente; <strong>COMPLETE</strong> para pagamento aprovado. Esse estágio significa que o pedido poderá prosseguir para faturamento e expedição (por convenção o OMS/Commerce deve enviar esse status).</td>\n</tr>\n<tr>\n<td>status</td>\n<td>Sim</td>\n<td>string</td>\n<td>Status do pedido, informe: <strong>PENDING</strong> para pedido novo, sem a confirmação do pagamento; <strong>PROCESSING</strong> para pedido com o pagamento aprovado e em processo de separação e expedição na filial; <strong>DELIVERED</strong> para pedido entregue; <strong>DELIVERED_PARTIAL</strong> para pedido parcialmente entregue, utilizar quando um ou mais fulfillments <strong>não</strong> estão no status de <strong>DELIVERED</strong>; <strong>CANCELED</strong> para pedido cancelado.</td>\n</tr>\n<tr>\n<td>attributes</td>\n<td>Não</td>\n<td>array</td>\n<td>Lista de atributos do pedido.</td>\n</tr>\n<tr>\n<td>attributes[].id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador único do atributo.</td>\n</tr>\n<tr>\n<td>attributes[].description</td>\n<td>Não</td>\n<td>string</td>\n<td>Descrição do atributo.</td>\n</tr>\n<tr>\n<td>attributes[].value</td>\n<td>Sim</td>\n<td>string</td>\n<td>Valor correspondente ao atributo.</td>\n</tr>\n<tr>\n<td>discount</td>\n<td>Não</td>\n<td>number</td>\n<td>Valor total de desconto.</td>\n</tr>\n<tr>\n<td>channelType</td>\n<td>Sim</td>\n<td>string</td>\n<td>Canal de venda, informe <strong>ECOMMERCE</strong>, <strong>MARKETPLACE</strong>, <strong>SHOWROOMING</strong>, <strong>OTHER</strong>.</td>\n</tr>\n<tr>\n<td>companyId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador da empresa ou detentora de uma ou mais marcas dos itens do pedido.</td>\n</tr>\n<tr>\n<td>details</td>\n<td>Não</td>\n<td>object</td>\n<td>Detalhes do pedido referente ao Marketplace ou E-commerce que originou o pedido.</td>\n</tr>\n<tr>\n<td>details.marketplace.group</td>\n<td>Não</td>\n<td>string</td>\n<td>Nome do grupo do Marketplace que originou o pedido.</td>\n</tr>\n<tr>\n<td>details.marketplace.name</td>\n<td>Não</td>\n<td>string</td>\n<td>Nome do Marketplace que originou o pedido.</td>\n</tr>\n<tr>\n<td>details.marketplace.referenceOrderId</td>\n<td>Não</td>\n<td>string</td>\n<td>Código ou identificador do pedido no Marketplace.</td>\n</tr>\n<tr>\n<td>device</td>\n<td>Não</td>\n<td>string</td>\n<td>Identificador do dispositivo que o pedido foi fechado, informe <strong>DESKTOP</strong>, <strong>MOBILE</strong>, <strong>MIXED</strong>, para casos que o canal não informa o dispositivo, informar <strong>MIXED</strong>.</td>\n</tr>\n<tr>\n<td>pointOfSaleId</td>\n<td>Não</td>\n<td>string</td>\n<td>Identificador do local onde foi efetuada a venda, caso seja uma filial informar o locationId.</td>\n</tr>\n<tr>\n<td>total</td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor total do pedido</td>\n</tr>\n<tr>\n<td>brandId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador da marca</td>\n</tr>\n<tr>\n<td>purchasePlace</td>\n<td>Não</td>\n<td>string</td>\n<td>Local da compra (ex: Other, Store)</td>\n</tr>\n<tr>\n<td>tags</td>\n<td>Não</td>\n<td>array (string)</td>\n<td>Lista de tags vinculadas ao pedido</td>\n</tr>\n<tr>\n<td>placedAt</td>\n<td>Sim</td>\n<td>string (date-time)</td>\n<td>Data em que o pedido foi realizado, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>promotions</td>\n<td>Não</td>\n<td>object</td>\n<td>Lista referente à promoção aplicada no pedido e/ou nos itens do pedido.</td>\n</tr>\n<tr>\n<td>promotions.itemPromotions[].code</td>\n<td>Não</td>\n<td>string</td>\n<td>Código da promoção aplicada ao produto.</td>\n</tr>\n<tr>\n<td>promotions.itemPromotions[].description</td>\n<td>Não</td>\n<td>string</td>\n<td>Descrição da promoção aplicada ao produto.</td>\n</tr>\n<tr>\n<td>promotions.itemPromotions[].discount</td>\n<td>Não</td>\n<td>number</td>\n<td>Valor do desconto da promoção.</td>\n</tr>\n<tr>\n<td>promotions.itemPromotions[].sku</td>\n<td>Não</td>\n<td>string</td>\n<td>Código do SKU que recebeu a promoção.</td>\n</tr>\n<tr>\n<td>promotions.orderPromotions[].code</td>\n<td>Não</td>\n<td>string</td>\n<td>Código da promoção aplicada ao pedido.</td>\n</tr>\n<tr>\n<td>promotions.orderPromotions[].description</td>\n<td>Não</td>\n<td>string</td>\n<td>Descrição da promoção aplicada ao pedido.</td>\n</tr>\n<tr>\n<td>promotions.orderPromotions[].discount</td>\n<td>Não</td>\n<td>number</td>\n<td>Valor do desconto da promoção.</td>\n</tr>\n<tr>\n<td>purchasePlace</td>\n<td>Não</td>\n<td>string</td>\n<td>Identificação do local de realização da compra, informe: <strong>OnSitePurchase</strong>: Compra realizada com cliente no local físico. Operação presencial; <strong>InternetPurchase</strong>: Compra realizada pela internet (Origem em site de terceiros ou próprio site). Operação não presencial, pela Internet; <strong>CallCenterPurchase</strong>: Compra realizada por telefone. Operação não presencial, Teleatendimento; <strong>NFCeDelivery</strong>: Compra física com NFCe. NFC-e em operação com entrega a domicílio; <strong>Other</strong>: Operação não presencial, outro</td>\n</tr>\n<tr>\n<td>salesAgent</td>\n<td>Não</td>\n<td>object</td>\n<td>Objeto com as informações do representante de vendas associado ao pedido.</td>\n</tr>\n<tr>\n<td>salesAgent.amount</td>\n<td>Não</td>\n<td>number</td>\n<td>Valor da comissão recebida pelo representante de vendas.</td>\n</tr>\n<tr>\n<td>salesAgent.id</td>\n<td>Não</td>\n<td>string</td>\n<td>Identificador do vendedor.</td>\n</tr>\n<tr>\n<td>salesAgent.name</td>\n<td>Não</td>\n<td>string</td>\n<td>Nome do vendedor.</td>\n</tr>\n<tr>\n<td>salesAgent.documentNumber.cnpj</td>\n<td>Não</td>\n<td>string</td>\n<td>Número do CNPJ do vendedor, informar sem pontuação ou caracteres especiais.</td>\n</tr>\n<tr>\n<td>salesAgent.documentNumber.ie</td>\n<td>Não</td>\n<td>string</td>\n<td>Inscrição estadual do vendedor, informar sem pontuação ou caracteres especiais.</td>\n</tr>\n<tr>\n<td>salesAgent.documentNumber.cpf</td>\n<td>Não</td>\n<td>string</td>\n<td>Número do CPF do vendedor, informar sem pontuação ou caracteres especiais.</td>\n</tr>\n<tr>\n<td>salesAgent.documentNumber.rg</td>\n<td>Não</td>\n<td>string</td>\n<td>Número do RG do vendedor, informar sem pontuação ou caracteres especiais.</td>\n</tr>\n<tr>\n<td>payments</td>\n<td>Sim</td>\n<td>array</td>\n<td>Lista informações referente ao pagamento. Para maiores informações sobre as regras do pagamento, favor verificar na seção <a href=\"#5f7d37c4-433f-475d-a512-586124fd0be2\"><b>Payments</b></a>.</td>\n</tr>\n<tr>\n<td>fulfillments</td>\n<td>Sim</td>\n<td>array</td>\n<td>Lista com as informações referente à entrega do pedido. Para maiores informações sobre as regras referentes à entrega do pedido, favor verificar na seção <a href=\"#4b0eb9cc-fbeb-45b5-88c0-a58b4ebb8d1b\"><b>Fulfillments</b></a>.</td>\n</tr>\n<tr>\n<td>billingAddress</td>\n<td>Sim</td>\n<td>object</td>\n<td>Objeto com as informações referente ao endereço de cobrança. Para maiores informações sobre as regras do endereço de cobrança, favor verificar na seção <a href=\"#6a0bd1da-969e-4b17-a219-9d0de72591ec\"><b>Address</b></a>.</td>\n</tr>\n<tr>\n<td>items</td>\n<td>Sim</td>\n<td>array</td>\n<td>Lista com as informações referente ao items. Para maiores informações sobre as regras do pagamento, favor verificar na seção <a href=\"#0792006e-3638-4048-8a4e-128e85cbc070\"><b>Items</b></a>.</td>\n</tr>\n<tr>\n<td>customer</td>\n<td>Sim</td>\n<td>object</td>\n<td>Objeto com as informações referente ao cliente. Para maiores informações sobre as regras do cliente, favor verificar no tópico de <a href=\"#a72609a1-94de-498b-b0af-ee03d6aaad93\"><b>Customer</b></a>.</td>\n</tr>\n<tr>\n<td>notes</td>\n<td>Não</td>\n<td>string</td>\n<td>Observação do pedido.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["applications","{{app-id}}","topics","order"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"e639e6ad-7d79-494e-9101-419a74f8fde7"}],"id":"31c494b3-df7e-489e-803c-9c11e6d55912","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>O tópico <code>order</code> é a porta de entrada para a inclusão e sincronização de pedidos de venda no barramento do <strong>Maker IO</strong>.</p>\n<p>Através deste endpoint, sistemas emissores (e-commerces, marketplaces, ERPs, CRMs ou PDVs) publicam eventos de criação de pedidos. Na criação do pedido podem ser enviadas as informações de pagamento e entrega se essas informações já estiverem disponíveis na origem do pedido.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>POST</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/order/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{token}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n</ul>\n<h5 id=\"onde\">Onde:</h5>\n<ul>\n<li><p><code>app-id</code>: Identificador da sua aplicação no Maker IO.</p>\n</li>\n<li><p><code>token</code>: Bearer Token gerado pelo endpoint de <a href=\"#0be47a1e-bf5a-477f-9b0b-77009a952071\">Login</a>.</p>\n</li>\n</ul>\n","_postman_id":"31c494b3-df7e-489e-803c-9c11e6d55912"},{"name":"Carrier","item":[{"name":"Carrier","id":"82963695-5eb9-4375-b80f-df762e681f24","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"POST","header":[{"key":"accept","value":"application/json"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"carrierId\": \"01202080\",\n    \"companyName\": \"Teste\",\n    \"documentNumber\": {\n        \"cnpj\": \"01292804210125\",\n        \"ie\": \"Teste ie\"\n    },\n    \"address\": {\n        \"addressId\": \"12374\",\n        \"addressName\": \"Teste addressName\",\n        \"addressLine1\": \"Rua teste 1\",\n        \"addressLine2\": \"Rua teste 2\",\n        \"number\": \"10\",\n        \"zipCode\": \"00000001\",\n        \"neighbourhood\": \"Bairro exemplo\",\n        \"city\": \"Sao Paulo\",\n        \"state\": \"SP\",\n        \"country\": \"Brasil\",\n        \"contactName\": \"Fulano\",\n        \"contactPhone\": \"+55 11 999999999\",\n        \"latitude\": 7,\n        \"longitude\": 19,\n        \"notes\": \"Observações example\",\n        \"default\": true\n    },\n    \"mobilePhone\": \"21313131\",\n    \"phone\": \"11991245781\",\n    \"enabled\": true,\n    \"trackingConfig\": {\n        \"currentNumber\": \"20\",\n        \"startNumber\": \"2\",\n        \"endNumber\": \"10000\",\n        \"numberSize\": \"5\",\n        \"prefix\": \"BR\",\n        \"sufix\": \"IO\"\n    },\n    \"trackingUrlPattern\": \"https://tracking-example.com.br/item/123\",\n    \"tradingName\": \"Teste2\",\n    \"updatedAt\": \"2022-03-03T19:12:44Z\"\n}","options":{"raw":{"language":"json"}}},"url":"https://{{api-host}}/v2/applications/{{app-id}}/topics/carrier/messages","description":"<h3 id=\"descrição-dos-campos-do-payload\">Descrição dos campos do payload</h3>\n<p>A publicação do Carrier utiliza o payload abaixo, alguns arrays ou objetos do payload ficaram disponibilizados em outra seção para que a documentação não ficasse muito extensa, utilizar o link na descrição do array ou objeto para ser direcionado à seção correspondente e verificar seus campos e regras.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Campo</strong></th>\n<th><strong>Obrigatório</strong></th>\n<th><strong>Tipo de dado</strong></th>\n<th><strong>Descrição</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>carrierId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código identificador da transportadora no sistema.</td>\n</tr>\n<tr>\n<td>tradingName</td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome fantasia da transportadora.</td>\n</tr>\n<tr>\n<td>enabled</td>\n<td>Sim</td>\n<td>boolean</td>\n<td>Indica se a transportadora está ativa, informe <strong>true</strong> ou <strong>false</strong>.</td>\n</tr>\n<tr>\n<td>updatedAt</td>\n<td>Sim</td>\n<td>string (date-time)</td>\n<td>Data e hora de atualização do cadastro, no formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>companyName</td>\n<td>Sim</td>\n<td>string</td>\n<td>Razão social oficial da empresa transportadora.</td>\n</tr>\n<tr>\n<td>phone</td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Telefone fixo principal de contato da transportadora, se torna obrigatório se não for informado o campo <strong>mobilePhone</strong>.</td>\n</tr>\n<tr>\n<td>mobilePhone</td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Telefone celular ou canal de atendimento direto, se torna obrigatório se não for informado o campo <strong>phone</strong>.</td>\n</tr>\n<tr>\n<td>trackingUrlPattern</td>\n<td>Não</td>\n<td>string</td>\n<td>Endereço URL padrão de rastreamento, utilizada para montar o link de tracking do cliente.</td>\n</tr>\n<tr>\n<td>documentNumber</td>\n<td>Sim</td>\n<td>object</td>\n<td>Objeto com as informações de documentos fiscais da transportadora.</td>\n</tr>\n<tr>\n<td>documentNumber.cnpj</td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Número do CNPJ da transportadora, se torna obrigatório se não for informado o campo <strong>documentNumber.ie</strong>.</td>\n</tr>\n<tr>\n<td>documentNumber.ie</td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Número de Inscrição Estadual da transportadora, se torna obrigatório se não for informado o campo <strong>documentNumber.cnpj</strong>.</td>\n</tr>\n<tr>\n<td>address</td>\n<td>Sim</td>\n<td>object</td>\n<td>Objeto com as informações do endereço completo da sede ou matriz da transportadora, para maiores informações sobre os campos do objeto e suas regras favor verificar na seção <a href=\"#6a0bd1da-969e-4b17-a219-9d0de72591ec\"><b>Address</b></a>.</td>\n</tr>\n<tr>\n<td>trackingConfig</td>\n<td>Não</td>\n<td>object</td>\n<td>Objeto com as configurações utilizadas na geração de faixas e sequenciais de etiquetas de rastreamento.</td>\n</tr>\n<tr>\n<td>trackingConfig.startNumber</td>\n<td>Sim</td>\n<td>string</td>\n<td>Número inicial para ser utilizado na geração do código de rastreio.</td>\n</tr>\n<tr>\n<td>trackingConfig.endNumber</td>\n<td>Sim</td>\n<td>string</td>\n<td>Número final para ser utilizado na geração do código de rastreio.</td>\n</tr>\n<tr>\n<td>trackingConfig.currentNumber</td>\n<td>Sim</td>\n<td>string</td>\n<td>Número sequencial atual em utilização.</td>\n</tr>\n<tr>\n<td>trackingConfig.numberSize</td>\n<td>Sim</td>\n<td>string</td>\n<td>Quantidade de dígitos do número sequencial do código de rastreio.</td>\n</tr>\n<tr>\n<td>trackingConfig.prefix</td>\n<td>Sim</td>\n<td>string</td>\n<td>Caractéres iniciais que irão compor o código de rastreio (ex.: BR).</td>\n</tr>\n<tr>\n<td>trackingConfig.sufix</td>\n<td>Sim</td>\n<td>string</td>\n<td>Caractéres finais que irão compor o código de rastreio (ex.: IO).</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"https","path":["v2","applications","{{app-id}}","topics","carrier","messages"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"82963695-5eb9-4375-b80f-df762e681f24"}],"id":"c120debf-89b3-42d7-b06e-f68a87f67b32","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>O tópico <code>carrier</code> é utilizado para cadastrar, atualizar e gerenciar o cadastro de empresas transportadoras e operadoras logísticas.</p>\n<p>Através deste tópico, os sistemas de ERP, TMS ou WMS cadastram a razão social, nome fantasia, dados de contato, documentos fiscais (CNPJ/IE), padrões de URL para rastreamento de entregas e faixas numéricas de etiquetas/códigos de rastreio para geração sequencial automática.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>POST</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/carrier/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{token}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n</ul>\n<h5 id=\"onde\">Onde:</h5>\n<ul>\n<li><p><code>app-id</code>: Identificador da sua aplicação no Maker IO.</p>\n</li>\n<li><p><code>token</code>: Bearer Token gerado pelo endpoint de <a href=\"#0be47a1e-bf5a-477f-9b0b-77009a952071\">Login</a>.</p>\n</li>\n</ul>\n","_postman_id":"c120debf-89b3-42d7-b06e-f68a87f67b32"},{"name":"Carrier Order Notify","item":[{"name":"Order Carrier Notify - payload completo, gerar exemplos de cada situação","event":[{"listen":"prerequest","script":{"type":"text/javascript","exec":["pm.environment.set(\"orderId\", \"v\"+(Math.floor(Math.random() * (99999999 - 00000000)) + 00000000)+\"jvro\");\r\npm.environment.set(\"invoiceNumber\", Math.floor(Math.random() * (99999999 - 00000000)) + 00000000);"],"id":"eaa16aec-fabf-4076-b50d-743630b1d11d"}}],"id":"cbe7e3df-19cd-4ef6-bf60-d9b3b26d848c","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"brandId\": \"\",\r\n    \"channelType\": \"ECOMMERCE\",\r\n    \"customer\": {\r\n        \"acceptsMarketing\": true,\r\n        \"createdAt\": \"2019-05-07T17:02:45.764Z\",\r\n        \"customerId\": \"1\",\r\n        \"dateOfBirth\": \"1980-01-01\",\r\n        \"documentNumber\": {\r\n            \"cpf\": \"44091165095\"\r\n        },\r\n        \"email\": \"cicero.sousa@linx.com.br\",\r\n        \"firstName\": \"Cícero\",\r\n        \"gender\": \"MALE\",\r\n        \"lastName\": \"Sousa\",\r\n        \"mobilePhone\": \"11988454352\",\r\n        \"notes\": \"notes\",\r\n        \"phone\": \"1138454352\",\r\n        \"tags\": [\r\n            {\r\n                \"id\": \"1\",\r\n                \"name\": \"customer\"\r\n            }\r\n        ],\r\n        \"type\": \"PERSON\",\r\n        \"updatedAt\": \"2019-05-07T17:02:45.764Z\"\r\n    },\r\n    \"fulfillmentId\": \"F1\",\r\n    \"invoices\": [\r\n        {\r\n            \"createdAt\": \"2019-06-17T19:15:16.000Z\",\r\n            \"issuedAt\": \"2019-06-17T19:14:57.000Z\",\r\n            \"nfe\": {\r\n                \"authorizationProtocol\": \"135190432825913\",\r\n                \"cfop\": \"9035\",\r\n                \"eletronicKey\": \"90008550020012312512512523100102651042881435\",\r\n                \"invoicePdf\": \"https://host/invoicepdf-351906064.pdf\",\r\n                \"invoiceXml\": \"https://host/invoicexml-351906064.xml\",\r\n                \"invoiceXmlContent\": \"\",\r\n                \"observation\": \"Autorizado o uso da NFe\",\r\n                \"operation\": \"Venda merc.adq.receb.de terceiros\",\r\n                \"serialNumber\": \"1\"\r\n            },\r\n            \"number\": \"{{invoiceNumber}}\",\r\n            \"processedAt\": \"2019-06-17T19:15:11.000Z\",\r\n            \"type\": \"SALE\"\r\n        }\r\n    ],\r\n    \"location\": {\r\n        \"address\": {\r\n            \"addressId\": \"123\",\r\n            \"addresName\": \"\",\r\n            \"addressLine1\": \"Av. Afonso Delambert Neto\",\r\n            \"addressLine2\": \"ap 111\",\r\n            \"number\": \"26\",\r\n            \"neighbourhood\": \"Lagoa da Conceição\",\r\n            \"zipCode\": \"88062000\",\r\n            \"city\": \"Florianópolis\",\r\n            \"state\": \"SC\",\r\n            \"country\": \"BR\",\r\n            \"latitude\": 0.00,\r\n            \"longitude\": 0.00,\r\n            \"contactName\": \"\",\r\n            \"contactPhone\": \"\",\r\n            \"notes\": \"\",\r\n            \"default\": true\r\n        },\r\n        \"companyName\": \"\",\r\n        \"createdAt\": \"2019-05-07T17:02:45.782Z\",\r\n        \"documentNumber\": {\r\n            \"cnpj\": \"49669856009795\",\r\n            \"ie\": \"ISENTO\"\r\n        },\r\n        \"email\": \"carborno@sender.com\",\r\n        \"enabled\": true,\r\n        \"handlingDays\": 1,\r\n        \"locationCode\": \"8989-SC-88062000\",\r\n        \"locationId\": \"8989\",\r\n        \"name\": \"Loja Mágica\",\r\n        \"phone\": \"11988454352\",\r\n        \"pickupDeadline\": 0,\r\n        \"pickupEnabled\": true,\r\n        \"shipmentEnabled\": true,\r\n        \"type\": \"DISTRIBUTION CENTER\",\r\n        \"updatedAt\": \"2019-05-07T17:02:45.782Z\",\r\n        \"workingDays\": {\r\n            \"MON\": [\r\n                {\r\n                    \"from\": \"\",\r\n                    \"to\": \"\"\r\n                }\r\n            ],\r\n            \"TUE\": [\r\n                {\r\n                    \"from\": \"\",\r\n                    \"to\": \"\"\r\n                }\r\n            ],\r\n            \"WED\": [\r\n                {\r\n                    \"from\": \"\",\r\n                    \"to\": \"\"\r\n                }\r\n            ],\r\n            \"THU\": [\r\n                {\r\n                    \"from\": \"\",\r\n                    \"to\": \"\"\r\n                }\r\n            ],\r\n            \"FRI\": [\r\n                {\r\n                    \"from\": \"\",\r\n                    \"to\": \"\"\r\n                }\r\n            ],\r\n            \"SAT\": [\r\n                {\r\n                    \"from\": \"\",\r\n                    \"to\": \"\"\r\n                }\r\n            ],\r\n            \"SUN\": [\r\n                {\r\n                    \"from\": \"\",\r\n                    \"to\": \"\"\r\n                }\r\n            ]\r\n        }\r\n    },\r\n    \"orderId\": \"{{orderId}}\",\r\n    \"placedAt\": \"\",\r\n    \"shipment\": {\r\n        \"address\": {\r\n            \"addressId\": \"123\",\r\n            \"addressLine1\": \"av Algum Lugar\",\r\n            \"addressLine2\": \"ap 100\",\r\n            \"city\": \"São Paulo\",\r\n            \"contactName\": \"Fulano\",\r\n            \"contactPhone\": \"+551199999999\",\r\n            \"country\": \"BR\",\r\n            \"default\": true,\r\n            \"neighbourhood\": \"Pinheiros\",\r\n            \"number\": \"123\",\r\n            \"state\": \"SP\",\r\n            \"zipCode\": \"06190120\"\r\n        },\r\n        \"amount\": 7.50,\r\n        \"carrier\": \"{{carrier}}\",\r\n        \"method\": \"{{method}}\",\r\n        \"daysToDelivery\": 2,\r\n        \"trackingCode\": \"{{trackingCode}}\",\r\n        \"deliveryDate\": \"2022-02-10T00:00:00.000Z\",\r\n        \"volumes\": [\r\n            {\r\n                \"nature\": \"natureza delicada\",\r\n                \"totalQuantity\": 3,\r\n                \"type\": \"BAG\",\r\n                \"items\": [\r\n                    {\r\n                        \"price\": 26.0,\r\n                        \"quantity\": 2,\r\n                        \"skuId\": \"12\",\r\n                        \"title\": \"Camiseta 1\"\r\n                    },\r\n                    {\r\n                        \"price\": 15.0,\r\n                        \"quantity\": 1,\r\n                        \"skuId\": \"123\",\r\n                        \"title\": \"Camiseta 2\"\r\n                    },\r\n                    {\r\n                        \"price\": 25.0,\r\n                        \"quantity\": 1,\r\n                        \"skuId\": \"1234\",\r\n                        \"title\": \"Camiseta 3\"\r\n                    }\r\n                ],\r\n                \"volume\": {\r\n                    \"unit\": \"cm³\",\r\n                    \"value\": 124\r\n                },\r\n                \"weight\": {\r\n                    \"unit\": \"kg\",\r\n                    \"value\": 64\r\n                },\r\n                \"width\": {\r\n                    \"unit\": \"cm\",\r\n                    \"value\": 30\r\n                },\r\n                \"height\": {\r\n                    \"unit\": \"cm\",\r\n                    \"value\": 15\r\n                },\r\n                \"length\": {\r\n                    \"unit\": \"cm\",\r\n                    \"value\": 85\r\n                }\r\n            }\r\n        ]\r\n    },\r\n    \"updatedAt\": \"2022-01-14T17:02:45.782Z\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/carrier-order-notify/messages","description":"<h3 id=\"descrição-dos-campos-do-payload\">Descrição dos campos do payload</h3>\n<p>A publicação do Carrier Order Notify utiliza o payload abaixo, alguns arrays ou objetos do payload ficaram disponibilizados em outra seção para que a documentação não ficasse muito extensa, utilizar o link na descrição do array ou objeto para ser direcionado à seção correspondente e verificar seus campos e regras.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Campo</strong></th>\n<th><strong>Obrigatório</strong></th>\n<th><strong>Tipo de dado</strong></th>\n<th><strong>Descrição</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>orderId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código identificador do pedido associado ao fulfillment.</td>\n</tr>\n<tr>\n<td>fulfillmentId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código identificador do fulfillment que será notificado à transportadoras como pronto para ser coletado.</td>\n</tr>\n<tr>\n<td>updatedAt</td>\n<td>Sim</td>\n<td>string (date-time)</td>\n<td>Data e hora da atualização, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>placedAt</td>\n<td>Não</td>\n<td>string (date-time)</td>\n<td>Data e hora em que o pedido foi realizado, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>channelType</td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo de canal de vendas de origem, informe <strong>ECOMMERCE</strong>, <strong>MARKETPLACE</strong>, <strong>SHOWROOMING</strong>, <strong>OTHER</strong>.</td>\n</tr>\n<tr>\n<td>brandId</td>\n<td>Não</td>\n<td>string</td>\n<td>Código identificador da marca ou canal de vendas.</td>\n</tr>\n<tr>\n<td>customer</td>\n<td>Sim</td>\n<td>object</td>\n<td>Objeto com as informações referente ao cliente. Para maiores informações sobre as regras do cliente, favor verificar no tópico de <a href=\"#a72609a1-94de-498b-b0af-ee03d6aaad93\"><b>Customer</b></a>.</td>\n</tr>\n<tr>\n<td>location</td>\n<td>Sim</td>\n<td>object</td>\n<td>Objeto com informações referente ao endereço físico de onde se encontra o pacote para ser coletado pela transportadora, as regras e descrições dos campos do objeto estão disponíveis no tópico <a href=\"#f35fa030-dac3-4eda-8c8c-9f1e18a21ef8\"><b>Location</b></a> .</td>\n</tr>\n<tr>\n<td>invoices</td>\n<td>Sim</td>\n<td>array</td>\n<td>Lista de notas fiscais do pedido ou fulfillment.</td>\n</tr>\n<tr>\n<td>invoices[].createdAt</td>\n<td>Sim</td>\n<td>string(date-time)</td>\n<td>Data de criação da nota fiscal, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>invoices[].issuedAt</td>\n<td>Sim</td>\n<td>string(date-time)</td>\n<td>Data de emissão da nota fiscal, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>invoices[].processedAt</td>\n<td>Sim</td>\n<td>string(date-time)</td>\n<td>Data de processamento da nota fiscal, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>invoices[].type</td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo da nota fiscal, informe <strong>SALE</strong> para nota fiscal de venda; <strong>RETURN</strong> para nota fiscal de retorno, quando não houve entrega; <strong>DEVOLUTION</strong> para nota fiscal de devolução.</td>\n</tr>\n<tr>\n<td>invoices[].nfe</td>\n<td>Sim</td>\n<td>object</td>\n<td>Objeto referente as informações da nota fiscal do fulfillment.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.authorizationProtocol</td>\n<td>Não</td>\n<td>string</td>\n<td>Protocolo de autorização da nota fiscal.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.cfop</td>\n<td>Não</td>\n<td>string</td>\n<td>Código fiscal da operação.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.eletronicKey</td>\n<td>Sim</td>\n<td>string</td>\n<td>Chave da nota fiscal.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.events</td>\n<td>Não</td>\n<td>array</td>\n<td>Lista de eventos vinculados à nota fiscal.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.events[].createdAt</td>\n<td>Sim</td>\n<td>string(date-time)</td>\n<td>Lista de eventos vinculados à nota fiscal.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.events[].eventType</td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipos de eventos da nota fiscal, informe <strong>110110</strong> para carta de correção; <strong>110111</strong> para cancelamento normal; <strong>110112</strong> para cancelamento por substituição de nota; <strong>110130</strong> para comprovante de entrega; <strong>110140</strong> para emissão em contingência; <strong>110192</strong> para informar insucesso na entrega; <strong>210200</strong> para confirmação da operação; <strong>210210</strong> para ciência da operação; <strong>210220</strong> para desconhecimento da operação; <strong>210240</strong> para operação não realizada.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.events[].eventXml</td>\n<td>Não</td>\n<td>string</td>\n<td>URL para acesso ao XML do evento.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.events[].eventXmlContent</td>\n<td>Não</td>\n<td>string</td>\n<td>Conteúdo do XML do evento.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.invoicePdf</td>\n<td>Não</td>\n<td>string</td>\n<td>URL para acesso ao PDF da nota fiscal.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.invoiceXml</td>\n<td>Não</td>\n<td>string</td>\n<td>URL para acesso ao XML da nota fiscal.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.invoiceXmlContent</td>\n<td>Não</td>\n<td>string</td>\n<td>Conteúdo do XML da nota fiscal.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.operation</td>\n<td>Não</td>\n<td>string</td>\n<td>Descrição do CFOP da nota.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.serialNumber</td>\n<td>Sim</td>\n<td>string</td>\n<td>Série da nota fiscal.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.observation</td>\n<td>Não</td>\n<td>string</td>\n<td>Observação da nota fiscal.</td>\n</tr>\n<tr>\n<td>invoices[].number</td>\n<td>Sim</td>\n<td>string</td>\n<td>Número da nota fiscal.</td>\n</tr>\n<tr>\n<td>shipment</td>\n<td>Sim</td>\n<td>object</td>\n<td>Informações operacionais referente ao envio, frete e volumetria das embalagens, as regras e descrições dos campos do objeto estão disponíveis na seção <a href=\"#b18cfdd3-da48-489d-aa76-beee7be2430e\"><b>Shipment</b></a>.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","carrier-order-notify","messages"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"cbe7e3df-19cd-4ef6-bf60-d9b3b26d848c"},{"name":"order-carrier-notify Tracking By Volume - criar exemplo no POST Order Carrier Notify e apagar essa request","event":[{"listen":"prerequest","script":{"exec":["pm.environment.set(\"orderId\", \"v\"+(Math.floor(Math.random() * (99999999 - 00000000)) + 00000000)+\"jvro\");\r","pm.environment.set(\"invoiceNumber\", Math.floor(Math.random() * (99999999 - 00000000)) + 00000000);"],"type":"text/javascript","packages":{},"requests":{},"id":"ad9c5e5c-b6f7-4cba-a4db-d587fa0cc238"}}],"id":"fd999658-ea7b-4ffa-aaa7-b64d6367fbeb","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"OPTIONS","header":[],"body":{"mode":"raw","raw":"{\r\n    \"customer\": {\r\n        \"acceptsMarketing\": true,\r\n        \"createdAt\": \"2019-05-07T17:02:45.764Z\",\r\n        \"customerId\": \"1\",\r\n        \"dateOfBirth\": \"1980-01-01\",\r\n        \"documentNumber\": {\r\n            \"cpf\": \"44091165095\"\r\n        },\r\n        \"email\": \"cicero.sousa@linx.com.br\",\r\n        \"firstName\": \"Cícero\",\r\n        \"gender\": \"MALE\",\r\n        \"lastName\": \"Sousa\",\r\n        \"mobilePhone\": \"11988454352\",\r\n        \"notes\": \"notes\", \r\n        \"phone\": \"1138454352\", \r\n        \"tags\": [\r\n            {\r\n                \"id\": \"1\",\r\n                \"name\": \"customer\"\r\n            }\r\n        ],\r\n        \"type\": \"PERSON\",\r\n        \"updatedAt\": \"2019-05-07T17:02:45.764Z\"\r\n    },\r\n    \"channelType\": \"ECOMMERCE\",\r\n    \"orderId\": \"{{orderId}}\",\r\n    \"fulfillmentId\": \"F1\",\r\n    \"invoices\": [\r\n        {\r\n            \"createdAt\": \"2019-06-17T19:15:16.000Z\",\r\n            \"issuedAt\": \"2019-06-17T19:14:57.000Z\",\r\n            \"nfe\": {\r\n                \"authorizationProtocol\": \"135190432825913\",\r\n                \"cfop\": \"9035\",\r\n                \"eletronicKey\": \"90008550020012312512512523100102651042881435\",\r\n                \"invoicePdf\": \"https://host/invoicepdf-351906064.pdf\",\r\n                \"invoiceXml\": \"https://host/invoicexml-351906064.xml\",\r\n                \"observation\": \"Autorizado o uso da NFe\",\r\n                \"operation\": \"Venda merc.adq.receb.de terceiros\",\r\n                \"serialNumber\": \"1\"\r\n            },\r\n            \"number\": \"{{invoiceNumber}}\",\r\n            \"processedAt\": \"2019-06-17T19:15:11.000Z\",\r\n            \"type\": \"SALE\"\r\n        }\r\n    ],\r\n    \"location\": {\r\n        \"address\": {\r\n            \"addressId\": \"123\",\r\n            \"addressLine1\": \"Av. Afonso Delambert Neto\",\r\n            \"addressLine2\": \"ap 111\",\r\n            \"city\": \"Florianópolis\",\r\n            \"default\": true,\r\n            \"country\": \"BR\",\r\n            \"neighbourhood\": \"Lagoa da Conceição\",\r\n            \"number\": \"26\",\r\n            \"state\": \"SC\",\r\n            \"zipCode\": \"88062000\"\r\n        },\r\n        \"handlingDays\": 1,\r\n        \"pickupDeadline\": 0,\r\n        \"pickupEnabled\": true,\r\n        \"shipmentEnabled\": true,\r\n        \"createdAt\": \"2019-05-07T17:02:45.782Z\",\r\n        \"documentNumber\": {\r\n            \"cnpj\": \"49669856009795\",\r\n            \"ie\": \"ISENTO\"\r\n        },\r\n        \"email\": \"carborno@sender.com\",\r\n        \"enabled\": true,\r\n        \"locationCode\": \"8989-SC-88062000\",\r\n        \"locationId\": \"8989\",\r\n        \"name\": \"Loja Mágica\",\r\n        \"phone\": \"11988454352\",\r\n        \"type\": \"DISTRIBUTION CENTER\",\r\n        \"updatedAt\": \"2019-05-07T17:02:45.782Z\"\r\n    },\r\n    \"shipment\": {\r\n        \"address\": {\r\n            \"addressId\": \"123\",\r\n            \"addressLine1\": \"av Algum Lugar\",\r\n            \"addressLine2\": \"ap 100\",\r\n            \"city\": \"São Paulo\",\r\n            \"contactName\": \"Fulano\",\r\n            \"contactPhone\": \"+551199999999\",\r\n            \"country\": \"BR\",\r\n            \"default\": true,\r\n            \"neighbourhood\": \"Pinheiros\",\r\n            \"number\": \"123\",\r\n            \"state\": \"SP\",\r\n            \"zipCode\": \"06190120\"\r\n        },\r\n        \"amount\": 7.50,\r\n        \"carrier\": \"{{carrier}}\",\r\n        \"method\": \"{{method}}\",\r\n        \"daysToDelivery\": 2,\r\n        \"trackingCode\": \"{{trackingCode}}\",\r\n        \"deliveryDate\": \"2022-02-10T00:00:00.000Z\",\r\n        \"volumes\": [\r\n            {\r\n                \"trackingCode\": \"{{trackingCode}}\",\r\n                \"trackingUrl\": \"https://some-tracking-url-here?order={{trackingCode}}\",\r\n                \"invoiceEletronicKey\": \"90008550020012312512512523100102651042881435\",\r\n                \"type\": \"BOX\",\r\n                \"nature\": \"natureza delicada\",\r\n                \"totalQuantity\": 3,\r\n                \"items\": [\r\n                    {\r\n                        \"price\": 26.0,\r\n                        \"quantity\": 2,\r\n                        \"skuId\": \"12\",\r\n                        \"title\": \"Camiseta 1\"\r\n                    },\r\n                    {\r\n                        \"price\": 15.0,\r\n                        \"quantity\": 1,\r\n                        \"skuId\": \"123\",\r\n                        \"title\": \"Camiseta 2\"\r\n                    },\r\n                    {\r\n                        \"price\": 25.0,\r\n                        \"quantity\": 1,\r\n                        \"skuId\": \"1234\",\r\n                        \"title\": \"Camiseta 3\"\r\n                    }\r\n                ],\r\n                \"volume\": {\r\n                    \"unit\": \"cm³\",\r\n                    \"value\": 124\r\n                },\r\n                \"weight\": {\r\n                    \"unit\": \"kg\",\r\n                    \"value\": 64\r\n                },\r\n                \"width\": {\r\n                    \"unit\": \"cm\",\r\n                    \"value\": 30\r\n                },\r\n                \"height\": {\r\n                    \"unit\": \"cm\",\r\n                    \"value\": 15\r\n                },\r\n                \"length\": {\r\n                    \"unit\": \"cm\",\r\n                    \"value\": 85\r\n                }\r\n            }\r\n        ]\r\n    },\r\n    \"updatedAt\": \"2022-01-14T17:02:45.782Z\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/carrier-order-notify/messages","urlObject":{"path":["v2","applications","{{app-id}}","topics","carrier-order-notify","messages"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"fd999658-ea7b-4ffa-aaa7-b64d6367fbeb"}],"id":"731ac16c-f07b-486f-b65c-8fe2f1730490","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>O tópico <code>carrier-order-notify</code> é utilizado para notificar e enviar os dados completos de uma ordem de expedição para sistemas de TMS, plataformas de gestão de fretes (<em>Carrier Gateways</em>) ou diretamente para as transportadoras.</p>\n<p>Através deste tópico, os sistemas de expedição transmitem as informações necessárias para a coleta e transporte da mercadoria: dados do destinatário, nota fiscal com chave eletrônica, endereço de coleta (remetente), endereço de entrega (destinatário) e a volumetria detalhada dos pacotes (dimensões, peso e SKUs acomodados).</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>POST</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/carrier-order-notify/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{token}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n</ul>\n<h5 id=\"onde\">Onde:</h5>\n<ul>\n<li><p><code>app-id</code>: Identificador da sua aplicação no Maker IO.</p>\n</li>\n<li><p><code>token</code>: Bearer Token gerado pelo endpoint de <a href=\"#0be47a1e-bf5a-477f-9b0b-77009a952071\">Login</a>.</p>\n</li>\n</ul>\n","_postman_id":"731ac16c-f07b-486f-b65c-8fe2f1730490"},{"name":"Order Treatment","item":[{"name":"Order Treatment","id":"9fd1143c-a0a2-4fa5-bf1d-bbda339ffd51","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"fulfillmentId\": \"F1\",\r\n    \"orderId\": \"202305221332\",\r\n    \"type\": \"STOCKOUT\", //criar exemplos para os tipos de tratamento diferente e documentar os campos obrigatórios para cada um\r\n    \"processed\": true,\r\n    \"treatmentId\": \"202305221332-9823\",\r\n    \"items\": [\r\n        {\r\n            \"quantity\": 1,\r\n            \"skuId\": \"15133.522132\",\r\n            \"stockType\": \"PHYSICAL\",\r\n            \"reason\": \"out of stock\"\r\n        }\r\n    ],\r\n    \"createdAt\": \"2023-04-19T14:50:25.000Z\",\r\n    \"updatedAt\": \"2023-04-19T14:50:25.000Z\",\r\n    \"locationId\": \"126079710\",\r\n    \"operator\": {\r\n        \"id\": \"169071\",\r\n        \"name\": \"operador\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/order-treatment/messages","description":"<h3 id=\"descrição-dos-campos-do-payload\">Descrição dos campos do payload</h3>\n<p>A publicação de Order Treatment utiliza o payload abaixo:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Campo</strong></th>\n<th><strong>Obrigatório</strong></th>\n<th><strong>Tipo de dado</strong></th>\n<th><strong>Descrição</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>treatmentId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código identificador da tratativa.</td>\n</tr>\n<tr>\n<td>orderId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código identificador do pedido no sistema de origem.</td>\n</tr>\n<tr>\n<td>type</td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo de tratativa de exceção, informe <strong>STOCKOUT</strong> para indicar que houve uma quebra e estoque; <strong>DELIVERY_FAILED</strong> para informar que houve falha na entrega; <strong>DELIVERY_LOST</strong> para indicar que houve a perda do pacote na entrega; <strong>DELIVERY_NOT_COLLECTED</strong> para informar que a entrega não coletada (onde a transportadora não foi buscar o pedido na loja ou no CD); <strong>PICKUP_FAILED</strong> para informar que o cliente não retirou o pedido em loja ou CD; <strong>RETURN_REQUEST</strong> para indicar que houve solicitação para iniciar a devolução; <strong>EXCHANGE_REQUEST</strong> para indicar que houve a solicitação de troca de produto(s); <strong>CANCELLATION_REQUEST</strong> para informar que houve uma solicitação de cancelamento do fulfillment ou pedido; <strong>RELOCATION_REQUEST</strong> para informar uma solicitação de realocação de um pedido.</td>\n</tr>\n<tr>\n<td>processed</td>\n<td>Sim</td>\n<td>boolean</td>\n<td>Indica se a tratativa já foi processada e concluída, aceita valores <strong>true</strong> ou <strong>false</strong>.</td>\n</tr>\n<tr>\n<td>createdAt</td>\n<td>Sim</td>\n<td>string (date-time)</td>\n<td>Data e hora da criação da tratativa, formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>updatedAt</td>\n<td>Sim</td>\n<td>string (date-time)</td>\n<td>Data e hora da atualização da tratativa, formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>fulfillmentId</td>\n<td>Não</td>\n<td>string</td>\n<td>Identificador do fulfillment ou onda de separação associada ao pedido.</td>\n</tr>\n<tr>\n<td>locationId</td>\n<td>Não</td>\n<td>string</td>\n<td>Identificador da loja ou centro de distribuição onde ocorreu o problema ou tratativa.</td>\n</tr>\n<tr>\n<td>items</td>\n<td>Verificar regra</td>\n<td>array</td>\n<td>Lista dos itens do tratamento, o campo se torna obrigatório se o campo <strong>type</strong> for <strong>STOCKOUT</strong> ou <strong>EXCHANGE</strong>.</td>\n</tr>\n<tr>\n<td>items[].skuId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do SKU vinculado ao tratamento.</td>\n</tr>\n<tr>\n<td>items[].quantity</td>\n<td>Sim</td>\n<td>integer</td>\n<td>Quantidade do item vinculado ao tratamento.</td>\n</tr>\n<tr>\n<td>items[].stockType</td>\n<td>Não</td>\n<td>string</td>\n<td>Tipo de estoque em que a exceção ocorreu, informe <strong>PHYSICAL</strong>, <strong>VIRTUAL</strong>, <strong>PRESALE</strong> ou <strong>XDOCKING</strong>).</td>\n</tr>\n<tr>\n<td>items[].reason</td>\n<td>Não</td>\n<td>string</td>\n<td>Motivo da exceção no item.</td>\n</tr>\n<tr>\n<td>refundType</td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Tipo de reembolso solicitado pelo cliente, informe <strong>GIFTCARD</strong> para vale presente; <strong>CUSTOMERCREDIT</strong> para vale cliente; <strong>PAYMENT_VOID</strong> para estorno do pagamento; <strong>OFFLINE_REFUND</strong> para devolução do dinheiro.</td>\n</tr>\n<tr>\n<td>operator</td>\n<td>Não</td>\n<td>object</td>\n<td>Informações sobre o usuário ou operador logístico que registrou a tratativa.</td>\n</tr>\n<tr>\n<td>operator.id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do operador.</td>\n</tr>\n<tr>\n<td>operator.name</td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome do operador.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","order-treatment","messages"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"9fd1143c-a0a2-4fa5-bf1d-bbda339ffd51"}],"id":"d6cdb15f-3e45-4e96-9989-597f45e9598d","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>O tópico <code>order-treatment</code> é utilizado para registrar, notificar e sincronizar tratativas de exceção ocorridas durante o ciclo de atendimento (<em>fulfillment</em>) de um pedido. Através deste tópico, sistemas de WMS, ERPs ou hubs operacionais comunicam eventos extraordinários como rupturas de estoque, solicitações de cancelamento, trocas de itens ou atrasos operacionais.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>POST</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/order-treatment/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{token}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n</ul>\n<h5 id=\"onde\">Onde:</h5>\n<ul>\n<li><p><code>app-id</code>: Identificador da sua aplicação no Maker IO.</p>\n</li>\n<li><p><code>token</code>: Bearer Token gerado pelo endpoint de <a href=\"#0be47a1e-bf5a-477f-9b0b-77009a952071\">Login</a>.</p>\n</li>\n</ul>\n","_postman_id":"d6cdb15f-3e45-4e96-9989-597f45e9598d"},{"name":"Order Payment Status","item":[{"name":"Order Payment Status","id":"626446f6-8b7f-4140-9090-5df49f669dfa","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"orderId\": \"{{orderId}}\",\r\n    \"payments\": [\r\n        {\r\n            \"balance\": {\r\n                \"due\": {\r\n                    \"amount\": 199.99,\r\n                    \"applicationId\": \"commerce-surftrip\"\r\n                },\r\n                \"paid\": {\r\n                    \"amount\": 199.99,\r\n                    \"applicationId\": \"commerce-surftrip\",\r\n                    \"date\": \"2023-01-26T23:40:30.47+00:00\"\r\n                }\r\n            },\r\n            \"currency\": \"BRL\",\r\n            \"details\": {\r\n                \"custom\": {\r\n                    \"extensionAttributes\": {\r\n                        \"identifier\": \"f4556fb6016648d6aa61\"\r\n                    },\r\n                    \"installments\": 1,\r\n                    \"interestTotal\": 0\r\n                },\r\n                \"type\": \"CUSTOM\"\r\n            },\r\n            \"paymentId\": \"a84e0588-39ce-4784-b0d4-01d186b77ce1\",\r\n            \"status\": \"PAID\"\r\n        }\r\n    ],\r\n    \"status\": \"COMPLETE\",\r\n    \"updatedAt\": \"2023-01-27T13:10:53.307+00:00\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/order-payment-status/messages","description":"<h3 id=\"descrição-dos-campos-do-payload\">Descrição dos campos do payload</h3>\n<p>A publicação do Order Relocation utiliza o payload abaixo, alguns arrays ou objetos do payload ficaram disponibilizados em outra seção para que a documentação não ficasse muito extensa, utilizar o link na descrição do array ou objeto para ser direcionado à seção correspondente e verificar seus campos e regras.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Campo</strong></th>\n<th><strong>Obrigatório</strong></th>\n<th><strong>Tipo de dado</strong></th>\n<th><strong>Descrição</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>orderId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código identificador do pedido no sistema de origem.</td>\n</tr>\n<tr>\n<td>status</td>\n<td>Sim</td>\n<td>string</td>\n<td>Status do pagamento do pedido, <strong>PARTIAL</strong> para informar que o pedido possui transações pagas, mas ainda existem transações pendentes; <strong>COMPLETE</strong> para informar que o pedido possui todas transações de pagamento aprovadas. Esse estágio significa que o pedido poderá prosseguir para faturamento e expedição; <strong>CANCELED</strong> para informar que o pedido possui todas transações de pagamento canceladas. Esse estágio significa que o pedido deve ser cancelado e suas reservas de estoques devem ser desfeitas.</td>\n</tr>\n<tr>\n<td>updatedAt</td>\n<td>Sim</td>\n<td>string (date-time)</td>\n<td>Data e hora de atualização do status de pagamento, informar no formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>payments</td>\n<td>Sim</td>\n<td>array</td>\n<td>Lista informações referente ao pagamento. Para maiores informações sobre as regras do pagamento, favor verificar na seção <a href=\"#5f7d37c4-433f-475d-a512-586124fd0be2\"><b>Payments</b></a>.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","order-payment-status","messages"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"626446f6-8b7f-4140-9090-5df49f669dfa"}],"id":"ad532908-5149-4f13-8b56-cf1d29c64a44","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>O tópico <code>order-payment-status</code> é utilizado para a atualização e sincronização da situação de pagamentos dos pedidos.</p>\n<p>Através deste tópico, os sistemas de e-commerce, gateways de pagamento ou ERPs notificam o status global da cobrança de um pedido (ex.: aprovado, pendente, cancelado), detalhando os valores devidos e pagos, datas de liquidação, parcelamento, juros e identificadores das transações de pagamento.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>POST</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/order-payment-status/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{token}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n</ul>\n<h5 id=\"onde\">Onde:</h5>\n<ul>\n<li><p><code>app-id</code>: Identificador da sua aplicação no Maker IO.</p>\n</li>\n<li><p><code>token</code>: Bearer Token gerado pelo endpoint de <a href=\"#0be47a1e-bf5a-477f-9b0b-77009a952071\">Login</a>.</p>\n</li>\n</ul>\n","_postman_id":"ad532908-5149-4f13-8b56-cf1d29c64a44"},{"name":"Order Exception","item":[{"name":"Order Exception","id":"16b51398-d7e6-4c54-b7a7-9fbeaefc0066","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"cancelReason\": \"\",\r\n    \"createdAt\": \"2023-01-20T12:30:52.000Z\",\r\n    \"exceptionId\": \"241297870-1\",\r\n    \"fulfillmentId\": \"35\",\r\n    \"hasTreatment\": false,\r\n    \"invoice\": {\r\n        \"createdAt\": \"2023-01-20T12:21:00-03:00\",\r\n        \"nfe\": {\r\n            \"operation\": \"VENDA DE MERCADORIA.\",\r\n            \"authorizationProtocol\": \"342230000027101\",\r\n            \"cfop\": \"\",\r\n            \"eletronicKey\": \"42230175552133001141550030000005141000993794\",\r\n            \"events\": [\r\n                {\r\n                    \"createdAt\": \"\",\r\n                    \"eventType\": \"\",\r\n                    \"eventXml\": \"\",\r\n                    \"eventXmlContent\": \"\"\r\n                }\r\n            ],\r\n            \"invoicePdf\": \"\",\r\n            \"invoiceXml\": \"\",\r\n            \"invoiceXmlContent\": \"<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?><nfeProc versao=\\\"4.00\\\" xmlns=\\\"http://www.portalfiscal.inf.br/nfe\\\"><NFe xmlns=\\\"http://www.portalfiscal.inf.br/nfe\\\"><infNFe Id=\\\"NFe42230175552133001141550030000005141000993794\\\" versao=\\\"4.00\\\"><ide><cUF>42</cUF><cNF>00099379</cNF><natOp>VENDA DE MERCADORIA.</natOp><mod>55</mod><serie>3</serie><nNF>514</nNF><dhEmi>2023-01-20T09:21:44-03:00</dhEmi><tpNF>1</tpNF><idDest>2</idDest><cMunFG>4210605</cMunFG><tpImp>1</tpImp><tpEmis>1</tpEmis><cDV>4</cDV><tpAmb>2</tpAmb><finNFe>1</finNFe><indFinal>1</indFinal><indPres>1</indPres><procEmi>0</procEmi><verProc>M08</verProc></ide><emit><CNPJ>75552133001141</CNPJ><xNome>LUNELLI COMERCIO DO VESTUARIO LTDA</xNome><enderEmit><xLgr>RUA PAULO CARDOSO</xLgr><nro>450</nro><xCpl>SALA C</xCpl><xBairro>CENTRO</xBairro><cMun>4210605</cMun><xMun>MASSARANDUBA</xMun><UF>SC</UF><CEP>89108000</CEP><cPais>1058</cPais><xPais>BRASIL</xPais></enderEmit><IE>260876895</IE><IEST>824019117117</IEST><CRT>3</CRT></emit><dest><CPF>14015504011</CPF><xNome>NF-E EMITIDA EM AMBIENTE DE HOMOLOGACAO - SEM VALOR FISCAL</xNome><enderDest><xLgr>RUA VICENTE FERNANDES PINTO</xLgr><nro>159</nro><xCpl>APTO 82 B</xCpl><xBairro>AGUA FUNDA</xBairro><cMun>3550308</cMun><xMun>SAO PAULO</xMun><UF>SP</UF><CEP>04156000</CEP><cPais>1058</cPais><xPais>BRASIL</xPais><fone>11997972212</fone></enderDest><indIEDest>9</indIEDest><email>JESSICA.CAP.TESTS@GMAIL.COM</email></dest><det nItem=\\\"1\\\"><prod><cProd>1.3596LX5441S5</cProd><cEAN>7909683602019</cEAN><xProd>BODY MALHA MODELLI LIGHT</xProd><NCM>61143000</NCM><CEST>2805900</CEST><indEscala>S</indEscala><CFOP>6108</CFOP><uCom>PC</uCom><qCom>1</qCom><vUnCom>215.91</vUnCom><vProd>215.91</vProd><cEANTrib>7909683602019</cEANTrib><uTrib>PC</uTrib><qTrib>1</qTrib><vUnTrib>215.91</vUnTrib><vFrete>11.53</vFrete><indTot>1</indTot><xPed>SB4LEZ17107</xPed><nItemPed>02</nItemPed></prod><imposto><vTotTrib>65.74</vTotTrib><ICMS><ICMS00><orig>5</orig><CST>00</CST><modBC>3</modBC><vBC>227.44</vBC><pICMS>12.00</pICMS><vICMS>27.29</vICMS></ICMS00></ICMS><IPI><cEnq>999</cEnq><IPINT><CST>53</CST></IPINT></IPI><PIS><PISAliq><CST>01</CST><vBC>227.44</vBC><pPIS>1.65</pPIS><vPIS>3.75</vPIS></PISAliq></PIS><COFINS><COFINSAliq><CST>01</CST><vBC>227.44</vBC><pCOFINS>7.60</pCOFINS><vCOFINS>17.29</vCOFINS></COFINSAliq></COFINS><ICMSUFDest><vBCUFDest>227.44</vBCUFDest><vBCFCPUFDest>227.44</vBCFCPUFDest><pFCPUFDest>0.00</pFCPUFDest><pICMSUFDest>18.00</pICMSUFDest><pICMSInter>12.00</pICMSInter><pICMSInterPart>100.00</pICMSInterPart><vFCPUFDest>0.00</vFCPUFDest><vICMSUFDest>13.65</vICMSUFDest><vICMSUFRemet>0.00</vICMSUFRemet></ICMSUFDest></imposto><infAdProd>SB4LEZ17107|02</infAdProd></det><total><ICMSTot><vBC>227.44</vBC><vICMS>27.29</vICMS><vICMSDeson>0.00</vICMSDeson><vFCPUFDest>0.00</vFCPUFDest><vICMSUFDest>13.65</vICMSUFDest><vICMSUFRemet>0.00</vICMSUFRemet><vFCP>0.00</vFCP><vBCST>0.00</vBCST><vST>0.00</vST><vFCPST>0.00</vFCPST><vFCPSTRet>0.00</vFCPSTRet><vProd>215.91</vProd><vFrete>11.53</vFrete><vSeg>0.00</vSeg><vDesc>0.00</vDesc><vII>0.00</vII><vIPI>0.00</vIPI><vIPIDevol>0.00</vIPIDevol><vPIS>3.75</vPIS><vCOFINS>17.29</vCOFINS><vOutro>0.00</vOutro><vNF>227.44</vNF><vTotTrib>65.74</vTotTrib></ICMSTot></total><transp><modFrete>0</modFrete><transporta><CNPJ>04884082000305</CNPJ><xNome>JADLOG LOGISTICA S.A</xNome><xEnder>2357</xEnder></transporta><vol><qVol>1</qVol><esp>VOLUMES</esp><nVol>1</nVol><pesoL>0.090</pesoL><pesoB>0.090</pesoB></vol></transp><cobr><fat><nFat>514</nFat><vOrig>227.44</vOrig><vDesc>0.00</vDesc><vLiq>227.44</vLiq></fat><dup><nDup>001</nDup><dVenc>2023-01-20</dVenc><vDup>227.44</vDup></dup></cobr><pag><detPag><indPag>0</indPag><tPag>15</tPag><vPag>227.44</vPag></detPag></pag><infAdic><infCpl>PEDIDO DE VENDA SB4LEZ17107 . IMPOSTOS PAGOS (FEDERAL  R$ 29.04, ESTADUAL  R$ 36.70, TOTAL R$ 65.74)       FONTE: IBPT\\\\/EMPRESOMETRO.COM.BR  VERSAO: 22.2.G  CHAVE: BEA5CD|IE:  824019117117 ICMS DEVIDO AO ESTADO SERA RECOLHIDO MENSALMENTE.||TOTAL DO ICMS INTERESTADUAL PARA A UF DO DESTINATARIO: 13.65|TOTAL DO ICMS INTERESTADUAL PARA A UF DO REMETENTE: 0.00</infCpl></infAdic><infRespTec><CNPJ>54517628000198</CNPJ><xContato>SANDRO RICARDO SILVA</xContato><email>sandro.ricardo@linx.com.br</email><fone>1121031540</fone></infRespTec></infNFe><Signature xmlns=\\\"http://www.w3.org/2000/09/xmldsig#\\\"><SignedInfo><CanonicalizationMethod Algorithm=\\\"http://www.w3.org/TR/2001/REC-xml-c14n-20010315\\\"/><SignatureMethod Algorithm=\\\"http://www.w3.org/2000/09/xmldsig#rsa-sha1\\\"/><Reference URI=\\\"#NFe42230175552133001141550030000005141000993794\\\"><Transforms><Transform Algorithm=\\\"http://www.w3.org/2000/09/xmldsig#enveloped-signature\\\"/><Transform Algorithm=\\\"http://www.w3.org/TR/2001/REC-xml-c14n-20010315\\\"/></Transforms><DigestMethod Algorithm=\\\"http://www.w3.org/2000/09/xmldsig#sha1\\\"/><DigestValue>7M8ZX+HQqv7q7I28/5cOK8/605Y=</DigestValue></Reference></SignedInfo><SignatureValue>O7dNlUHdcv8x9vKhaMet4AX2FEN38vLkpbjkqxaOae3bS1l1KyEbEuoZX6dZLfLnOBr0ntGYMW5FeODnbjOQsyt1WRPBZTcMbiqT3tZqP/c6bGC6nRfZ8POD0w0lpXCexEzDEB7pLXFrTNwJUbsYxaT8SwK+Aas/JFuBL2RMKM9QeFIl6ObYzjjadNrTqBzxi7n9othJXh5CxoMtws3AjzfWunvc6IzmDKd+CdWc+J1D78MVXsM6bI0Agidld+HXVKyd6EZd7M9J54sy5zlSS/vDLZKaadjXuzvmKDw/GR7xm4yWQ7shpz6FP5pnjrmFZuUy+66IljDUm6o+L1VPkg==</SignatureValue><KeyInfo><X509Data><X509Certificate>MIIHozCCBYugAwIBAgILAIsEiHYxok/8WNQwDQYJKoZIhvcNAQELBQAwWzELMAkGA1UEBhMCQlIxFjAUBgNVBAsMDUFDIFN5bmd1bGFySUQxEzARBgNVBAoMCklDUC1CcmFzaWwxHzAdBgNVBAMMFkFDIFN5bmd1bGFySUQgTXVsdGlwbGEwHhcNMjIwOTA4MTcyMzExWhcNMjMwOTA4MjM1OTU5WjCBrTELMAkGA1UEBhMCQlIxEzARBgNVBAsMClByZXNlbmNpYWwxFzAVBgNVBAsMDjIwMTgxNzM1MDAwMTc2MR8wHQYDVQQLDBZBQyBTeW5ndWxhcklEIE11bHRpcGxhMRMwEQYDVQQKDApJQ1AtQnJhc2lsMTowOAYDVQQDDDFMVU5FTExJIENPTUVSQ0lPIERPIFZFU1RVQVJJTyBMVERBOjc1NTUyMTMzMDAxMTQxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzjcpn2mwl8QtUKXcEXPb1oPaleXSLVkEY5divOjm1uHJuMi/gZfjXBHe1DxYqQ1Qo0KY3Xe4XN268mGSyueZRzSNekpqCjYoqCkHoUEQdmXYyQYOAfuaYOjQ8/9WNspu0lm5wYDNWMHPBNWcMvaeGoxkiRxitjfaSbtBiKIa1rMcaWohTtZuENVXCKqX5y+aapW1Cc8079LxL5zsR+x8cZXyRmz61LddjWRiaNEV9yxCoGnDz9HcGZ8nYnb1WcKDlVEgQowDyLZ3qHjBR1OAI9sCLQ2RgOhpJaXOhrhkVioFS3yjGxM8mmDxY0ZuSXYIHIrUzEfgwYQcEiEMo6slBQIDAQABo4IDEzCCAw8wDgYDVR0PAQH/BAQDAgXgMB0GA1UdJQQWMBQGCCsGAQUFBwMEBggrBgEFBQcDAjAJBgNVHRMEAjAAMB8GA1UdIwQYMBaAFJPh/34d5fXkTeE5YoshaZXmr3IWMB0GA1UdDgQWBBRyi8xMCvr+13B1KxTDHNke8ple5zB/BggrBgEFBQcBAQRzMHEwbwYIKwYBBQUHMAKGY2h0dHA6Ly9zeW5ndWxhcmlkLmNvbS5ici9yZXBvc2l0b3Jpby9hYy1zeW5ndWxhcmlkLW11bHRpcGxhL2NlcnRpZmljYWRvcy9hYy1zeW5ndWxhcmlkLW11bHRpcGxhLnA3YjCBggYDVR0gBHsweTB3BgdgTAECAYEFMGwwagYIKwYBBQUHAgEWXmh0dHA6Ly9zeW5ndWxhcmlkLmNvbS5ici9yZXBvc2l0b3Jpby9hYy1zeW5ndWxhcmlkLW11bHRpcGxhL2RwYy9kcGMtYWMtc3luZ3VsYXJJRC1tdWx0aXBsYS5wZGYwgacGA1UdEQSBnzCBnKAiBgVgTAEDAqAZBBdWSVZJQU5FIENFQ0lMSUEgTFVORUxMSaAZBgVgTAEDA6AQBA43NTU1MjEzMzAwMTE0MaBCBgVgTAEDBKA5BDcxMjExMTk3NDkwMjgwNTU1OTIwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwoBcGBWBMAQMHoA4EDDAwMDAwMDAwMDAwMDCB4gYDVR0fBIHaMIHXMG+gbaBrhmlodHRwOi8vaWNwLWJyYXNpbC5zeW5ndWxhcmlkLmNvbS5ici9yZXBvc2l0b3Jpby9hYy1zeW5ndWxhcmlkLW11bHRpcGxhL2xjci9sY3ItYWMtc3luZ3VsYXJpZC1tdWx0aXBsYS5jcmwwZKBioGCGXmh0dHA6Ly9zeW5ndWxhcmlkLmNvbS5ici9yZXBvc2l0b3Jpby9hYy1zeW5ndWxhcmlkLW11bHRpcGxhL2xjci9sY3ItYWMtc3luZ3VsYXJpZC1tdWx0aXBsYS5jcmwwDQYJKoZIhvcNAQELBQADggIBAHSed7woJaj2eFdzxocXJFRnLA8KRFiYv/p17/LFXiXfr18YMNfP9jmdnTF1aoWlBP3DeQEu1jVSPfPEjy0/1c3fWR5sNd7nRT2F4s0DA1HVpA2QPEnrdfwmJlRP9/zWiuZ13SlRLSM2j5bvydOXZbNrzz7GyeQlMhnM/yGPopsGtnf7S45giWKsGyFEB0DQuNFNlOgOFOxi4OugW2qXLrRVv/l0MpPC1Jjz0AOUJzcLld5MicrIrnaaDuOHFClNh0PSwT+t+K4L+BJemE2HoJQbSCT23dkWFOwKTEG/u0M6crghwvUFLowLi4tNHyRJHUoYtJszBi3OWIfUqlRTDSRbgMxi9y9vJp+3cQUkHRuOnwkOQUY+wL7IQhbliYuR4OeIQR1dcqeUVzySTQMomNrrAy3XAa/v4ZVimppedm/mUNchTcVKwuEePKOGFabanaeELtHM/t3peIsxiQwtmx43Z3OeesxJniiExYebi3z7USMKYZ62IAUu2taS7R67SrHKcLT1sa6R8N0h+IAEYwQdc1iwrzwNd8UIXPSyjlSyph6GUhqtYcVef1SQj8sVKHdf3lJyDZT0zBfU3XFfIHsuGYxyQjb9T3qjn0MOwN19eduPeJ4DgvOlRSXIBS52y5lOicbrLf+c1PiWq5snW7Eik7f8G/a+V3AyMAszbW4L</X509Certificate></X509Data></KeyInfo></Signature></NFe><protNFe xmlns=\\\"http://www.portalfiscal.inf.br/nfe\\\" versao=\\\"4.00\\\"><infProt><tpAmb>2</tpAmb><verAplic>SVRS202301190912</verAplic><chNFe>42230175552133001141550030000005141000993794</chNFe><dhRecbto>2023-01-20T09:21:54-03:00</dhRecbto><nProt>342230000027101</nProt><digVal>7M8ZX+HQqv7q7I28/5cOK8/605Y=</digVal><cStat>100</cStat><xMotivo>Autorizado o uso da NF-e</xMotivo></infProt></protNFe></nfeProc>\\r\\n\",\r\n            \"observation\": \"Autorizado o uso da NFe\",\r\n            \"serialNumber\": \"003\"\r\n        },\r\n        \"type\": \"cancelation\",\r\n        \"issuedAt\": \"2023-01-20T12:21:00-03:00\",\r\n        \"number\": \"00000514\",\r\n        \"processedAt\": \"2023-01-20T12:21:00-03:00\"\r\n    },\r\n    \"items\": [\r\n        {\r\n            \"quantity\": 1,\r\n            \"skuId\": \"15133.5924\",\r\n            \"shippingPrice\": 0,\r\n            \"price\": 89.1\r\n        }\r\n    ],\r\n    \"locationId\": \"\",\r\n    \"orderId\": \"241297870\",\r\n    \"refund\": {\r\n        \"itemsRefundValue\": 89.1,\r\n        \"giftPackageRefundValue\": 0,\r\n        \"freightRefundValue\": 7.03,\r\n        \"refundValue\": 96.13,\r\n        \"refundType\": \"GIFTCARD\",\r\n        \"giftCard\": {\r\n            \"code\": \"1891062539357610JV\",\r\n            \"createdAt\": \"2022-11-14T12:50:25.000Z\",\r\n            \"expiresAt\": \"2022-11-14T12:50:25.000Z\",\r\n            \"source\": \"ERP\"\r\n        }\r\n    },\r\n    \"refundProcessed\": true,\r\n    \"returnProcessed\": true,\r\n    \"treatmentId\": \"\",\r\n    \"type\": \"EXCHANGE\",\r\n    \"updatedAt\": \"2023-01-20T12:30:52.000Z\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/order-exception/messages","description":"<h3 id=\"descrição-dos-campos-do-payload\">Descrição dos campos do payload</h3>\n<p>A publicação do Order Exception utiliza o payload abaixo.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Campo</strong></th>\n<th><strong>Obrigatório</strong></th>\n<th><strong>Tipo de dado</strong></th>\n<th><strong>Descrição</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>exceptionId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código identificador da exceção.</td>\n</tr>\n<tr>\n<td>orderId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código identificador do pedido vinculado à exceção.</td>\n</tr>\n<tr>\n<td>type</td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo de exceção registrada, informe <strong>CANCELLATION</strong> para cancelamento total ou parcial de um fulfillment; <strong>EXCHANGE</strong> para troca de itens de um fulfillment; <strong>RETURN</strong> para devolução de um ou mais itens de um fulfillment.</td>\n</tr>\n<tr>\n<td>hasTreatment</td>\n<td>Sim</td>\n<td>boolean</td>\n<td>Indica se a exceção possui uma tratativa vinculada no tópico <a href=\"#1700dc01-e507-40ae-84f6-e281804bf41c\"><b>order-treatment</b></a>, informe <strong>true</strong> ou <strong>false</strong>.</td>\n</tr>\n<tr>\n<td>refundProcessed</td>\n<td>Sim</td>\n<td>boolean</td>\n<td>Indica se o reembolso já foi processado, informe <strong>true</strong> ou <strong>false</strong>.</td>\n</tr>\n<tr>\n<td>returnProcessed</td>\n<td>Sim</td>\n<td>boolean</td>\n<td>Indica se a devolução da mercadoria ja foi processada, informe <strong>true</strong> ou <strong>false</strong>.</td>\n</tr>\n<tr>\n<td>createdAt</td>\n<td>Sim</td>\n<td>string (date-time)</td>\n<td>Data e hora de registro da exceção, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>updatedAt</td>\n<td>Sim</td>\n<td>string (date-time)</td>\n<td>Data e hora de alteração do registro, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>fulfillmentId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código identificador do fulfillment relacionado à exceção.</td>\n</tr>\n<tr>\n<td>locationId</td>\n<td>Não</td>\n<td>string</td>\n<td>Código identificador do CD ou loja que registrou a exceção.</td>\n</tr>\n<tr>\n<td>treatmentId</td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Código identificador do tratamento que gerou a exceção, tratamentos são gerados no tópico <a href=\"#1700dc01-e507-40ae-84f6-e281804bf41c\"><b>Order-treatment</b></a>, se torna obrigatório se o campo <strong>hasTreatment</strong> for <strong>true</strong>.</td>\n</tr>\n<tr>\n<td>cancelReason</td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Motivo do cancelamento, se torna obrigatório se o campo <strong>type</strong> for <strong>CANCELLATION</strong>.</td>\n</tr>\n<tr>\n<td>items</td>\n<td>Sim</td>\n<td>array</td>\n<td>Lista de itens envolvidos na exceção.</td>\n</tr>\n<tr>\n<td>items[].skuId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código identificador do SKU.</td>\n</tr>\n<tr>\n<td>items[].quantity</td>\n<td>Sim</td>\n<td>integer</td>\n<td>Quantidade afetada do SKU na exceção.</td>\n</tr>\n<tr>\n<td>items[].price</td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor unitário do item no momento da exceção.</td>\n</tr>\n<tr>\n<td>items[].shippingPrice</td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor do frete rateado para este item.</td>\n</tr>\n<tr>\n<td>refund</td>\n<td>Não</td>\n<td>object</td>\n<td>Detalhes financeiros sobre o estorno/reembolso concedido ao cliente.</td>\n</tr>\n<tr>\n<td>refund.refundValue</td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor total devolvido ao cliente.</td>\n</tr>\n<tr>\n<td>refund.itemsRefundValue</td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor dos itens que será reembolsado ao cliente.</td>\n</tr>\n<tr>\n<td>refund.refundItemStatus</td>\n<td>Não</td>\n<td>array</td>\n<td>Status de reembolso dos itens.</td>\n</tr>\n<tr>\n<td>refund.refundItemStatus.refundAcceptedQuantity</td>\n<td>Sim</td>\n<td>integer</td>\n<td>Quantidade de itens que foram aceitos no processo de reembolso.</td>\n</tr>\n<tr>\n<td>refund.refundItemStatus.refundCollectedQuantity</td>\n<td>Sim</td>\n<td>integer</td>\n<td>Quantidade de itens que foram coletados para o processo de reembolso.</td>\n</tr>\n<tr>\n<td>refund.refundItemStatus.refundNotAcceptedQuantity</td>\n<td>Sim</td>\n<td>integer</td>\n<td>Quantidade de itens que não foram aceitos para o processo de reembolso.</td>\n</tr>\n<tr>\n<td>refund.refundItemStatus.refundRestrictedQuantity</td>\n<td>Sim</td>\n<td>integer</td>\n<td>Quantidade de itens registrados com avaria ou restrição no processo.</td>\n</tr>\n<tr>\n<td>refund.refundItemStatus.skuId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código identificador do SKU vinculado ao processo.</td>\n</tr>\n<tr>\n<td>refund.refundType</td>\n<td>Sim</td>\n<td>string</td>\n<td>Modalidade de reembolso solicidado pelo cliente, informe <strong>GIFTCARD</strong> para vale presente; <strong>CUSTOMERCREDIT</strong> para vale cliente; <strong>PAYMENT_VOID</strong> para estorno do pagamento; <strong>OFFLINE_REFUND</strong> para devolução do dinheiro.</td>\n</tr>\n<tr>\n<td>refund.freightRefundValue</td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor do frete que será reembolsado ao cliente.</td>\n</tr>\n<tr>\n<td>refund.giftPackageRefundValue</td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor da embalagem de presente que será reembolsado ao cliente.</td>\n</tr>\n<tr>\n<td>refund.giftCard</td>\n<td>Não</td>\n<td>object</td>\n<td>Informações do vale-compras ou cartão presente gerado para o ressarcimento.</td>\n</tr>\n<tr>\n<td>refund.giftCard.code</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código do vale-compras gerado.</td>\n</tr>\n<tr>\n<td>refund.giftCard.createdAt</td>\n<td>Sim</td>\n<td>string (date-time)</td>\n<td>Data de criação do vale-compras, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>refund.giftCard.expiresAt</td>\n<td>Não</td>\n<td>string (date-time)</td>\n<td>Data de expiração do vale-compras, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>refund.giftCard.documentNumber</td>\n<td>Não</td>\n<td>object</td>\n<td>Informações sobre o documento da pessoa vinculada ao vale-compras.</td>\n</tr>\n<tr>\n<td>refund.giftCard.documentNumber.cnpj</td>\n<td>Não</td>\n<td>string</td>\n<td>CNPJ da pessoa que será vinculada ao vale-compras.</td>\n</tr>\n<tr>\n<td>refund.giftCard.documentNumber.ie</td>\n<td>Não</td>\n<td>string</td>\n<td>Inscrição Estadual da pessoa que será vinculada ao vale-compras.</td>\n</tr>\n<tr>\n<td>refund.giftCard.documentNumber.cpf</td>\n<td>Não</td>\n<td>string</td>\n<td>CPF da pessoa que será vinculada ao vale-compras.</td>\n</tr>\n<tr>\n<td>refund.giftCard.documentNumber.rg</td>\n<td>Não</td>\n<td>string</td>\n<td>RG da pessoa que será vinculada ao vale-compras</td>\n</tr>\n<tr>\n<td>refund.giftCard.source</td>\n<td>Sim</td>\n<td>string</td>\n<td>Sistema de origem do vale-compras, informe <strong>COMMERCE</strong>, <strong>EPR</strong>, <strong>OMS</strong>, <strong>PDV</strong>.</td>\n</tr>\n<tr>\n<td>refund.transaction</td>\n<td>Não</td>\n<td>array</td>\n<td>Lista com as transações ocorridas no processo de reembolso.</td>\n</tr>\n<tr>\n<td>refund.transaction.additionalInfo</td>\n<td>Não</td>\n<td>string</td>\n<td>Informação adicional referente ao processo de reembolso.</td>\n</tr>\n<tr>\n<td>refund.transaction.amount</td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor do reembolso.</td>\n</tr>\n<tr>\n<td>refund.transaction.transactionId</td>\n<td>Não</td>\n<td>string</td>\n<td>Código identificador da transação.</td>\n</tr>\n<tr>\n<td>refund.transaction.type</td>\n<td>Não</td>\n<td>string</td>\n<td>Campo aberto para digitação para identificar o tipo da transação.</td>\n</tr>\n<tr>\n<td>invoice</td>\n<td>Verificar regra</td>\n<td>array</td>\n<td>Lista de notas fiscais do pedido, esse objeto é obrigatório se o status estiver como DELIVERED, INVOICED ou SHIPPED.</td>\n</tr>\n<tr>\n<td>invoice[].createdAt</td>\n<td>Sim</td>\n<td>string(date-time)</td>\n<td>Data de criação da nota fiscal, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>invoice[].issuedAt</td>\n<td>Sim</td>\n<td>string(date-time)</td>\n<td>Data de emissão da nota fiscal, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>invoice[].processedAt</td>\n<td>Sim</td>\n<td>string(date-time)</td>\n<td>Data de processamento da nota fiscal, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>invoice[].type</td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo da nota fiscal, informe <strong>SALE</strong> para nota fiscal de venda; <strong>RETURN</strong> para nota fiscal de retorno, quando não houve entrega; <strong>DEVOLUTION</strong> para nota fiscal de devolução.</td>\n</tr>\n<tr>\n<td>invoice[].nfe</td>\n<td>Sim</td>\n<td>object</td>\n<td>Objeto referente as informações da nota fiscal do fulfillment.</td>\n</tr>\n<tr>\n<td>invoice[].nfe.authorizationProtocol</td>\n<td>Não</td>\n<td>string</td>\n<td>Protocolo de autorização da nota fiscal.</td>\n</tr>\n<tr>\n<td>invoice[].nfe.cfop</td>\n<td>Não</td>\n<td>string</td>\n<td>Código fiscal da operação.</td>\n</tr>\n<tr>\n<td>invoice[].nfe.eletronicKey</td>\n<td>Sim</td>\n<td>string</td>\n<td>Chave da nota fiscal.</td>\n</tr>\n<tr>\n<td>invoice[].nfe.events</td>\n<td>Não</td>\n<td>array</td>\n<td>Lista de eventos vinculados à nota fiscal.</td>\n</tr>\n<tr>\n<td>invoice[].nfe.events[].createdAt</td>\n<td>Sim</td>\n<td>string(date-time)</td>\n<td>Data de criação de eventos vinculados à nota fiscal, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>invoice[].nfe.events[].eventType</td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipos de eventos da nota fiscal, informe <strong>110110</strong> para carta de correção; <strong>110111</strong> para cancelamento normal; <strong>110112</strong> para cancelamento por substituição de nota; <strong>110130</strong> para comprovante de entrega; <strong>110140</strong> para emissão em contingência; <strong>110192</strong> para informar insucesso na entrega; <strong>210200</strong> para confirmação da operação; <strong>210210</strong> para ciência da operação; <strong>210220</strong> para desconhecimento da operação; <strong>210240</strong> para operação não realizada.</td>\n</tr>\n<tr>\n<td>invoice[].nfe.events[].eventXml</td>\n<td>Não</td>\n<td>string</td>\n<td>URL para acesso ao XML do evento.</td>\n</tr>\n<tr>\n<td>invoice[].nfe.events[].eventXmlContent</td>\n<td>Não</td>\n<td>string</td>\n<td>Conteúdo do XML do evento.</td>\n</tr>\n<tr>\n<td>invoice[].nfe.invoicePdf</td>\n<td>Não</td>\n<td>string</td>\n<td>URL para acesso ao PDF da nota fiscal.</td>\n</tr>\n<tr>\n<td>invoice[].nfe.invoiceXml</td>\n<td>Não</td>\n<td>string</td>\n<td>URL para acesso ao XML da nota fiscal.</td>\n</tr>\n<tr>\n<td>invoice[].nfe.invoiceXmlContent</td>\n<td>Não</td>\n<td>string</td>\n<td>Conteúdo do XML da nota fiscal.</td>\n</tr>\n<tr>\n<td>invoice[].nfe.operation</td>\n<td>Não</td>\n<td>string</td>\n<td>Descrição do CFOP da nota.</td>\n</tr>\n<tr>\n<td>invoice[].nfe.serialNumber</td>\n<td>Sim</td>\n<td>string</td>\n<td>Série da nota fiscal.</td>\n</tr>\n<tr>\n<td>invoice[].nfe.observation</td>\n<td>Não</td>\n<td>string</td>\n<td>Observação da nota fiscal.</td>\n</tr>\n<tr>\n<td>invoice[].number</td>\n<td>Sim</td>\n<td>string</td>\n<td>Número da nota fiscal.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","order-exception","messages"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"16b51398-d7e6-4c54-b7a7-9fbeaefc0066"},{"name":"Freight Refund Create - criar exemplo no POST Order e apagar essa request","id":"3694fbd1-50ff-4059-91ac-06119e1249ec","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"OPTIONS","header":[],"body":{"mode":"raw","raw":"{\r\n    \"createdAt\": \"2023-05-22T12:30:52.000Z\",\r\n    \"exceptionId\": \"202305230957-2\",\r\n    \"hasTreatment\": false,\r\n    \"orderId\": \"202305230957\",\r\n    \"refund\": {\r\n        \"itemsRefundValue\": 0,\r\n        \"giftPackageRefundValue\": 0,\r\n        \"freightRefundValue\": 2.03,\r\n        \"refundValue\": 2.03,\r\n        \"refundType\": \"GIFTCARD\"\r\n    },\r\n    \"refundProcessed\": false,\r\n    \"items\": [],\r\n    \"updatedAt\": \"2023-05-22T12:30:52.000Z\",\r\n    \"fulfillmentId\": \"35\",\r\n    \"returnProcessed\": true,\r\n    \"type\": \"RETURN\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/order-exception/messages","urlObject":{"path":["v2","applications","{{app-id}}","topics","order-exception","messages"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"3694fbd1-50ff-4059-91ac-06119e1249ec"},{"name":"Freight Refund Update - criar exemplo no POST Order e apagar essa request","id":"302c49ec-98f2-4286-975a-7b7e463245ac","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"OPTIONS","header":[],"body":{"mode":"raw","raw":"{\r\n    \"createdAt\": \"2023-05-22T12:30:52.000Z\",\r\n    \"exceptionId\": \"202305230955-3\",\r\n    \"hasTreatment\": false,\r\n    \"orderId\": \"202305230955\",\r\n    \"refund\": {\r\n        \"itemsRefundValue\": 0,\r\n        \"giftPackageRefundValue\": 0,\r\n        \"freightRefundValue\": 2.03,\r\n        \"refundValue\": 2.03,\r\n        \"refundType\": \"GIFTCARD\",\r\n        \"giftCard\": {\r\n            \"code\": \"1891062539357610JV\",\r\n            \"createdAt\": \"2023-05-22T12:30:52.000Z\",\r\n            \"expiresAt\": \"2024-05-22T12:30:52.000Z\",\r\n            \"source\": \"ERP\"\r\n        }\r\n    },\r\n    \"refundProcessed\": true,\r\n    \"items\": [],\r\n    \"updatedAt\": \"2023-05-22T12:30:52.000Z\",\r\n    \"fulfillmentId\": \"35\",\r\n    \"returnProcessed\": true,\r\n    \"type\": \"RETURN\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/order-exception/messages","urlObject":{"path":["v2","applications","{{app-id}}","topics","order-exception","messages"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"302c49ec-98f2-4286-975a-7b7e463245ac"},{"name":"Return Invoice - criar exemplo no POST Order e apagar essa request","id":"37c8f621-55f8-4a84-b59f-a063fbb5839e","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"OPTIONS","header":[],"body":{"mode":"raw","raw":"{\r\n    \"fulfillmentId\": \"F1\",\r\n    \"createdAt\": \"2022-11-14T12:50:25.000Z\",\r\n    \"updatedAt\": \"2022-11-14T12:50:25.000Z\",\r\n    \"orderId\": \"00534\",\r\n    \"exceptionId\": \"E-20220401160003-1\",\r\n    \"hasTreatment\": false,\r\n    \"type\": \"RETURN\",\r\n    \"items\": [\r\n        {\r\n            \"quantity\": 1,\r\n            \"skuId\": \"16239.522109\",\r\n            \"shippingPrice\": 0,\r\n            \"price\": 54.9\r\n        }\r\n    ],\r\n    \"refund\": {\r\n        \"freightRefundValue\": 0,\r\n        \"giftPackageRefundValue\": 0,\r\n        \"itemsRefundValue\": 54.9,\r\n        \"refundType\": \"GIFTCARD\",\r\n        \"refundValue\": 54.9,\r\n        \"refundItemStatus\": [\r\n            {\r\n                \"refundAcceptedQuantity\": 1,\r\n                \"refundCollectedQuantity\": 1,\r\n                \"refundRestrictedQuantity\": 0,\r\n                \"refundNotAcceptedQuantity\": 0,\r\n                \"skuId\": \"16239.522109\"\r\n            }\r\n        ],\r\n        \"giftCard\": {\r\n            \"code\": \"1891062539357619JV\",\r\n            \"createdAt\": \"2022-11-14T12:50:25.000Z\",\r\n            \"expiresAt\": \"2022-11-14T12:50:25.000Z\",\r\n            \"source\": \"ERP\"\r\n        }\r\n    },\r\n    \"refundProcessed\": true,\r\n    \"returnProcessed\": true,\r\n     \"invoice\": {\r\n        \"createdAt\": \"2023-01-20T12:21:00-03:00\",\r\n        \"nfe\": {\r\n            \"operation\": \"VENDA DE MERCADORIA.\",\r\n            \"authorizationProtocol\": \"342230000027101\",\r\n            \"eletronicKey\": \"42230175552133001141550030000005141000993794\",\r\n            \"serialNumber\": \"003\",\r\n            \"observation\": \"Autorizado o uso da NFe\"\r\n        },\r\n        \"type\": \"RETURN\",\r\n        \"issuedAt\": \"2023-01-20T12:21:00-03:00\",\r\n        \"number\": \"00000514\",\r\n        \"processedAt\": \"2023-01-20T12:21:00-03:00\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/order-exception/messages","urlObject":{"path":["v2","applications","{{app-id}}","topics","order-exception","messages"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"37c8f621-55f8-4a84-b59f-a063fbb5839e"},{"name":"ReturnCreate - criar exemplo no POST Order e apagar essa request","id":"45cff5c3-0ea4-4b55-901b-4a63b1b35e57","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"OPTIONS","header":[],"body":{"mode":"raw","raw":"{\r\n    \"createdAt\": \"2023-01-20T12:30:52.000Z\",\r\n    \"exceptionId\": \"202305230956-5\",\r\n    \"hasTreatment\": false,\r\n    \"orderId\": \"202305230956\",\r\n    \"refund\": {\r\n        \"itemsRefundValue\": 89.1,\r\n        \"giftPackageRefundValue\": 0,\r\n        \"freightRefundValue\": 0,\r\n        \"refundValue\": 89.1,\r\n        \"refundType\": \"GIFTCARD\"\r\n    },\r\n    \"refundProcessed\": false,\r\n    \"items\": [\r\n        {\r\n            \"quantity\": 1,\r\n            \"skuId\": \"15133.5924\",\r\n            \"shippingPrice\": 0,\r\n            \"price\": 89.1\r\n        }\r\n    ],\r\n    \"updatedAt\": \"2023-01-20T12:30:52.000Z\",\r\n    \"fulfillmentId\": \"35\",\r\n    \"returnProcessed\": false,\r\n    \"type\": \"EXCHANGE\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/order-exception/messages","urlObject":{"path":["v2","applications","{{app-id}}","topics","order-exception","messages"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"45cff5c3-0ea4-4b55-901b-4a63b1b35e57"},{"name":"Cancel Create - criar exemplo no POST Order e apagar essa request","id":"6305e44f-a9d1-4c4d-b506-a32a7939cef8","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"OPTIONS","header":[],"body":{"mode":"raw","raw":"{\r\n    \"createdAt\": \"2023-01-20T12:30:52.000Z\",\r\n    \"exceptionId\": \"202305230955-4\",\r\n    \"hasTreatment\": true,\r\n    \"orderId\": \"202305230955\",\r\n    \"refund\": {\r\n        \"itemsRefundValue\": 89.1,\r\n        \"giftPackageRefundValue\": 0,\r\n        \"freightRefundValue\": 0,\r\n        \"refundValue\": 89.1,\r\n        \"refundType\": \"GIFTCARD\"\r\n    },\r\n    \"refundProcessed\": false,\r\n    \"items\": [\r\n        {\r\n            \"quantity\": 1,\r\n            \"skuId\": \"15133.5924\",\r\n            \"shippingPrice\": 0,\r\n            \"price\": 89.1\r\n        }\r\n    ],\r\n    \"updatedAt\": \"2023-04-20T12:30:52.000Z\",\r\n    \"fulfillmentId\": \"35\",\r\n    \"returnProcessed\": true,\r\n    \"type\": \"CANCELLATION\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/order-exception/messages","urlObject":{"path":["v2","applications","{{app-id}}","topics","order-exception","messages"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"6305e44f-a9d1-4c4d-b506-a32a7939cef8"},{"name":"Cancel Update - criar exemplo no POST Order e apagar essa request","id":"96ad2b06-d446-4274-968b-509a7d7c1909","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"OPTIONS","header":[],"body":{"mode":"raw","raw":"{\r\n    \"createdAt\": \"2023-01-20T12:30:52.000Z\",\r\n    \"exceptionId\": \"202305230955-4\",\r\n    \"hasTreatment\": true,\r\n    \"orderId\": \"202305230955\",\r\n    \"refund\": {\r\n        \"itemsRefundValue\": 89.1,\r\n        \"giftPackageRefundValue\": 0,\r\n        \"freightRefundValue\": 0,\r\n        \"refundValue\": 89.1,\r\n        \"refundType\": \"GIFTCARD\",\r\n        //\"giftCard\": {\r\n        //    \"code\": \"1891062539357610JV\",\r\n        //    \"createdAt\": \"2023-05-22T12:30:52.000Z\",\r\n        //    \"expiresAt\": \"2024-05-22T12:30:52.000Z\",\r\n        //    \"source\": \"OMS\",\r\n        //    \"documentNumber\": {\r\n        //        \"cpf\": \"12345678901\",\r\n        //        \"rg\": \"2607971-2\"\r\n        //    }\r\n        //},\r\n        \"refundItemStatus\": [\r\n            {\r\n                \"refundAcceptedQuantity\": 1,\r\n                \"refundCollectedQuantity\": 1,\r\n                \"refundNotAcceptedQuantity\": 2,\r\n                \"refundRestrictedQuantity\": 1,\r\n                \"skuId\": \"630197.29071\"\r\n            }\r\n        ],\r\n        \"transactions\": [\r\n            {\r\n                \"additionalInfo\": \"informação adicional\",\r\n                \"amount\": 2,\r\n                \"transactionId\": \"3609\",\r\n                \"type\": \"\"\r\n            }\r\n        ]\r\n    },\r\n    \"invoice\": {\r\n        \"createdAt\": \"2025-03-10T10:40:22.322Z\",\r\n        \"issuedAt\": \"2025-03-11T10:45:23.093Z\",\r\n        \"number\": \"1251\",\r\n        \"processedAt\": \"2025-03-15T10:55:32.601Z\",\r\n        \"type\": \"RETURN\",\r\n        \"nfe\": {\r\n            \"eletronicKey\": \"1601971ZXB\",\r\n            \"serialNumber\": \"2\",\r\n            \"cfop\": \"9902\",\r\n            \"invoicePdf\": \"http://www.nfe.com.br/nfe.pdf\",\r\n            \"invoiceXml\": \"http://www.nfe.com.br/nfe.xml\",\r\n            \"invoiceXmlContent\": \"19019ae vdafe\",\r\n            \"observation\": \"1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890\",\r\n            \"operation\": \"VENDA DE MERCADORIAS\"\r\n        }\r\n    },\r\n    \"refundProcessed\": false,\r\n    \"items\": [\r\n        {\r\n            \"quantity\": 1,\r\n            \"skuId\": \"15133.5924\",\r\n            \"shippingPrice\": 0,\r\n            \"price\": 100.00\r\n        }\r\n    ],\r\n    \"locationId\": \"adfe1950\",\r\n    \"updatedAt\": \"2023-04-20T12:30:52.000Z\",\r\n    \"fulfillmentId\": \"35\",\r\n    \"returnProcessed\": true,\r\n    \"type\": \"EXCHANGE\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/order-exception/messages","urlObject":{"path":["v2","applications","{{app-id}}","topics","order-exception","messages"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"96ad2b06-d446-4274-968b-509a7d7c1909"}],"id":"72607ffa-6b7f-49b7-b4f6-49e91a3f4dd3","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>O tópico <code>order-exception</code> é utilizado para registrar, gerenciar e notificar eventos de exceção no fluxo dos pedidos, como trocas, devoluções parciais/totais e cancelamentos fiscais ou operacionais.</p>\n<p>Através deste tópico, os sistemas de ERP, SAC ou WMS comunicam o encerramento ou andamento de divergências do pedido, contemplando detalhes da devolução física, processamento de reembolsos (vales-compra ou estornos) e emissão de notas fiscais de devolução/cancelamento com seus respectivos dados de integração SEFAZ.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>POST</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/order-exception/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{token}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n</ul>\n<h5 id=\"onde\">Onde:</h5>\n<ul>\n<li><p><code>app-id</code>: Identificador da sua aplicação no Maker IO.</p>\n</li>\n<li><p><code>token</code>: Bearer Token gerado pelo endpoint de <a href=\"#0be47a1e-bf5a-477f-9b0b-77009a952071\">Login</a>.</p>\n</li>\n</ul>\n","_postman_id":"72607ffa-6b7f-49b7-b4f6-49e91a3f4dd3"},{"name":"Order Relocation","item":[{"name":"Order Relocation","event":[{"listen":"prerequest","script":{"type":"text/javascript","exec":["pm.environment.set(\"orderId\", \"v\"+(Math.floor(Math.random() * (99999999 - 00000000)) + 00000000)+\"jvro\");"],"id":"7241f129-0c9f-44b8-ba23-0812b9242492"}}],"id":"cf037f97-8c31-4e52-8daf-c6e9dc0e9028","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"operations\": [\r\n        {\r\n            \"changes\": {\r\n                \"carrier\": \"Correios\",\r\n                \"locationId\": \"998\"\r\n            },\r\n            \"fulfillmentId\": \"F1\",\r\n            \"targetFulfillmentId\":\"\",\r\n            \"type\": \"LOCATION_CHANGE\"\r\n        }\r\n    ],\r\n    \"treatmentId\": \"123\",\r\n    \"updatedAt\": \"2022-08-31T00:00:00.000Z\",\r\n    \"order\": {\r\n        \"billingAddress\": {\r\n            \"addressId\": \"billing\",\r\n            \"addressLine1\": \"Rua Benjamin de Tudela\",\r\n            \"city\": \"São Paulo\",\r\n            \"contactName\": \"Teste\",\r\n            \"contactPhone\": \"11910000000\",\r\n            \"country\": \"BR\",\r\n            \"neighbourhood\": \"Fazenda da Juta\",\r\n            \"number\": \"723\",\r\n            \"state\": \"SP\",\r\n            \"zipCode\": \"03977408\",\r\n            \"default\": false\r\n        },\r\n        \"brandId\": \"site\",\r\n        \"channelType\": \"ECOMMERCE\",\r\n        \"companyId\": \"millenium\",\r\n        \"customer\": {\r\n            \"acceptsMarketing\": false,\r\n            \"createdAt\": \"2022-08-24T15:05:41.000Z\",\r\n            \"customerId\": \"14\",\r\n            \"dateOfBirth\": \"1991-01-16\",\r\n            \"documentNumber\": {\r\n                \"cpf\": \"47761840016\"\r\n            },\r\n            \"email\": \"teste.teste@linx3.com\",\r\n            \"firstName\": \"Teste\",\r\n            \"gender\": \"MALE\",\r\n            \"lastName\": \"Teste\",\r\n            \"type\": \"PERSON\",\r\n            \"updatedAt\": \"2022-08-24T15:05:41.000Z\"\r\n        },\r\n        \"discount\": 0.0,\r\n        \"fulfillments\": [\r\n            {\r\n                \"fulfillmentId\": \"F1\",\r\n                \"items\": [\r\n                    {\r\n                        \"name\": \"CL.01.04131\",\r\n                        \"quantity\": 1,\r\n                        \"skuId\": \"CL.01.04131\"\r\n                    }\r\n                ],\r\n                \"locationId\": \"2\",\r\n                \"shipment\": {\r\n                    \"address\": {\r\n                        \"addressId\": \"shipmentF1\",\r\n                        \"addressLine1\": \"Rua Benjamin de Tudela\",\r\n                        \"city\": \"São Paulo\",\r\n                        \"contactName\": \"Teste\",\r\n                        \"contactPhone\": \"11910000000\",\r\n                        \"country\": \"BR\",\r\n                        \"neighbourhood\": \"Fazenda da Juta\",\r\n                        \"number\": \"723\",\r\n                        \"state\": \"SP\",\r\n                        \"zipCode\": \"03977408\",\r\n                        \"default\": true\r\n                    },\r\n                    \"amount\": 17.8,\r\n                    \"carrier\": \"Correios\",\r\n                    \"cost\": 17.795454545454547,\r\n                    \"daysToDelivery\": 8,\r\n                    \"deliveryDate\": \"2022-08-31T00:00:00.000Z\",\r\n                    \"discount\": 0.0,\r\n                    \"method\": \"Expressa\",\r\n                    \"type\": \"SHIPMENT_BY_CARRIER\",\r\n                    \"volumes\": [\r\n                        {\r\n                            \"width\": {\r\n                                \"value\": 20,\r\n                                \"unit\": \"cm\"\r\n                            },\r\n                            \"weight\": {\r\n                                \"value\": 0.325,\r\n                                \"unit\": \"kg\"\r\n                            },\r\n                            \"height\": {\r\n                                \"value\": 20,\r\n                                \"unit\": \"cm\"\r\n                            },\r\n                            \"length\": {\r\n                                \"value\": 20,\r\n                                \"unit\": \"cm\"\r\n                            },\r\n                            \"items\": [\r\n                                {\r\n                                    \"quantity\": 1,\r\n                                    \"skuId\": \"CL.01.04131\"\r\n                                }\r\n                            ]\r\n                        }\r\n                    ]\r\n                },\r\n                \"status\": \"WAITING\",\r\n                \"type\": \"SHIPMENT\"\r\n            }\r\n        ],\r\n        \"items\": [\r\n            {\r\n                \"discount\": 0.0,\r\n                \"giftPackage\": false,\r\n                \"giftPackagePrice\": 0.0,\r\n                \"giftProduct\": false,\r\n                \"price\": 190.0,\r\n                \"quantity\": 1,\r\n                \"sku\": {\r\n                    \"height\": {\r\n                        \"unit\": \"cm\",\r\n                        \"value\": 1.0\r\n                    },\r\n                    \"identifiers\": {\r\n                        \"defaultGtin\": \"7891234227768\",\r\n                        \"gtins\": [\r\n                            \"7891234227768\"\r\n                        ]\r\n                    },\r\n                    \"length\": {\r\n                        \"unit\": \"cm\",\r\n                        \"value\": 1.0\r\n                    },\r\n                    \"sku\": \"7891234227768\",\r\n                    \"skuId\": \"CL.01.04131\",\r\n                    \"weight\": {\r\n                        \"unit\": \"kg\",\r\n                        \"value\": 0.3\r\n                    },\r\n                    \"width\": {\r\n                        \"unit\": \"cm\",\r\n                        \"value\": 1.0\r\n                    }\r\n                },\r\n                \"subTotal\": 190.0,\r\n                \"taxAmount\": 0.0\r\n            }\r\n        ],\r\n        \"orderId\": \"{{orderId}}\",\r\n        \"paymentStatus\": \"COMPLETE\",\r\n        \"payments\": [\r\n            {\r\n                \"balance\": {\r\n                    \"due\": {\r\n                        \"amount\": 0.0,\r\n                        \"applicationId\": \"Commerce\"\r\n                    },\r\n                    \"paid\": {\r\n                        \"amount\": 207.8,\r\n                        \"applicationId\": \"Commerce\",\r\n                        \"date\": \"2022-08-24T15:00:46.046Z\"\r\n                    }\r\n                },\r\n                \"currency\": \"BRL\",\r\n                \"details\": {\r\n                    \"creditCard\": {\r\n                        \"authorizationDate\": \"2022-08-24T14:47:33.33Z\",\r\n                        \"authorizationNumber\": \"18132859\",\r\n                        \"capturedDate\": \"2022-08-24T15:00:46.46Z\",\r\n                        \"installments\": 1,\r\n                        \"issuer\": {\r\n                            \"standard\": \"VISA\"\r\n                        },\r\n                        \"nsu\": \"899325\"\r\n                    },\r\n                    \"type\": \"CREDITCARD\"\r\n                },\r\n                \"paymentId\": \"1\",\r\n                \"status\": \"PAID\"\r\n            }\r\n        ],\r\n        \"placedAt\": \"2022-08-24T14:47:33.000Z\",\r\n        \"pointOfSaleId\": \"1248\",\r\n        \"status\": \"PROCESSING\",\r\n        \"total\": 207.8\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/order-relocation/messages","description":"<h3 id=\"descrição-dos-campos-do-payload\">Descrição dos campos do payload</h3>\n<p>A publicação do Order Relocation utiliza o payload abaixo, alguns arrays ou objetos do payload ficaram disponibilizados em outra seção para que a documentação não ficasse muito extensa, utilizar o link na descrição do array ou objeto para ser direcionado à seção correspondente e verificar seus campos e regras.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Campo</strong></th>\n<th><strong>Obrigatório</strong></th>\n<th><strong>Tipo de dado</strong></th>\n<th><strong>Descrição</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>treatmentId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador único da tratativa ou solicitação de realocação.</td>\n</tr>\n<tr>\n<td>updatedAt</td>\n<td>Sim</td>\n<td>string (date-time)</td>\n<td>Data e hora da atualização da realocação no formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>operations</td>\n<td>Sim</td>\n<td>array</td>\n<td>Lista com as operações de alteração e redirecionamento de pedido a serem executadas.</td>\n</tr>\n<tr>\n<td>operations[].type</td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo de operação de realocação, informe <strong>SPLIT</strong> para indicar uma divisão de um ou mais fulfillments, isso acontece quando não é possível redirecionar todos os items para uma nova Location; <strong>LOCATION_CHANGE</strong> para indicar que todo o fulfillment foi redirecionado para uma nova Location, para que seja atendido integralmente.</td>\n</tr>\n<tr>\n<td>operations[].fulfillmentId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do fulfillment/onda de origem que sofrerá a alteração. (Obrigatório em operations).</td>\n</tr>\n<tr>\n<td>operations[].targetFulfillmentId</td>\n<td>Não</td>\n<td>string</td>\n<td>Identificador do fulfillment de destino (caso a operação transfira ou divida para um fulfillment existente).</td>\n</tr>\n<tr>\n<td>operations[].changes</td>\n<td>Sim</td>\n<td>object</td>\n<td>Objeto contendo os dados e propriedades alteradas na realocação.</td>\n</tr>\n<tr>\n<td>operations[].changes.locationId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Código identificador da nova location que irá atender o fulfillment ou pedido.</td>\n</tr>\n<tr>\n<td>operations[].changes.carrier</td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome da nova transportadora responsável pela entrega, informe <strong>Abbiamo</strong>, <strong>AmericanasEntrega</strong>, <strong>Angels</strong>, <strong>Axado</strong>, <strong>Azul</strong>, <strong>BeeDelivery</strong>, <strong>Bielog</strong>, <strong>Braspress</strong>, <strong>CarbonoZero</strong>, <strong>Carriers</strong>, <strong>CliqueRetire</strong>, <strong>Complog</strong>, <strong>Correios</strong>, <strong>DHL</strong>, <strong>DataFrete</strong>, <strong>DeliveryCenter</strong>, <strong>EuEntrego</strong>, <strong>FastCourier</strong>, <strong>Fedex</strong>, <strong>Focco</strong>, <strong>FreteRapido</strong>, <strong>GreensLogExpress</strong>, <strong>IFood</strong>, <strong>Intelipost</strong>, <strong>JJSUL</strong>, <strong>JTT</strong>, <strong>JadLog</strong>, <strong>Jamef</strong>, <strong>LDL</strong>, <strong>LSTranslog</strong>, <strong>Loggi</strong>, <strong>LogManager</strong>, <strong>Lupeon</strong>, <strong>Mandae</strong>, <strong>MandaBem</strong>, <strong>MagaluEntregas</strong>, <strong>MercadoEnvios</strong>, <strong>Movvi</strong>, <strong>NossoCarro</strong>, <strong>NowLogistics</strong>, <strong>Ontime</strong>, <strong>Pedala</strong>, <strong>Personalizado</strong>, <strong>Rapiddo</strong>, <strong>Rappi</strong>, <strong>RedeSul</strong>, <strong>Rodoe</strong>, <strong>RodoWeb</strong>, <strong>Sequoia</strong>, <strong>SimFrete</strong>, <strong>Sislogica</strong>, <strong>StoneLog</strong>, <strong>SmartLog</strong>, <strong>TRB</strong>, <strong>TotalExpress</strong>, <strong>Transfolha</strong>, <strong>Uber</strong>, <strong>Uello</strong>, <strong>Vblog</strong>, <strong>Veloo</strong>, <strong>Venuxx</strong>, <strong>Vipp</strong>, <strong>YellowLog</strong>.</td>\n</tr>\n<tr>\n<td>order</td>\n<td>Sim</td>\n<td>object</td>\n<td>Objeto com as informações referente ao cliente. Para maiores informações sobre as regras do cliente, favor verificar na seção <a href=\"#23f06302-8132-4eba-b646-278893771db2\"><b>Order</b></a>.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","order-relocation","messages"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"cf037f97-8c31-4e52-8daf-c6e9dc0e9028"},{"name":"Order Relocation Tracking By Volume - criar exemplo no POST Order Relocation e apagar essa request","event":[{"listen":"prerequest","script":{"exec":["pm.environment.set(\"orderId\", \"v\"+(Math.floor(Math.random() * (99999999 - 00000000)) + 00000000)+\"jvro\");"],"type":"text/javascript","packages":{},"requests":{},"id":"28020be4-bc1d-4835-9862-e7c5b4c53255"}}],"id":"1bc97dba-798c-4123-806f-de7a59552144","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"OPTIONS","header":[],"body":{"mode":"raw","raw":"{\r\n    \"operations\": [\r\n        {\r\n            \"changes\": {\r\n                \"carrier\": \"Correios\",\r\n                \"locationId\": \"998\"\r\n            },\r\n            \"fulfillmentId\": \"F1\",\r\n            \"type\": \"LOCATION_CHANGE\"\r\n        }\r\n    ],\r\n    \"treatmentId\": \"123\",\r\n    \"updatedAt\": \"2022-08-31T00:00:00.000Z\",\r\n    \"order\": {\r\n        \"billingAddress\": {\r\n            \"addressId\": \"billing\",\r\n            \"addressLine1\": \"Rua Benjamin de Tudela\",\r\n            \"city\": \"São Paulo\",\r\n            \"contactName\": \"Teste\",\r\n            \"contactPhone\": \"11910000000\",\r\n            \"country\": \"BR\",\r\n            \"neighbourhood\": \"Fazenda da Juta\",\r\n            \"number\": \"723\",\r\n            \"state\": \"SP\",\r\n            \"zipCode\": \"03977408\",\r\n            \"default\": false\r\n        },\r\n        \"brandId\": \"site\",\r\n        \"channelType\": \"ECOMMERCE\",\r\n        \"companyId\": \"millenium\",\r\n        \"customer\": {\r\n            \"acceptsMarketing\": false,\r\n            \"createdAt\": \"2022-08-24T15:05:41.000Z\",\r\n            \"customerId\": \"14\",\r\n            \"dateOfBirth\": \"1991-01-16\",\r\n            \"documentNumber\": {\r\n                \"cpf\": \"47761840016\"\r\n            },\r\n            \"email\": \"teste.teste@linx3.com\",\r\n            \"firstName\": \"Teste\",\r\n            \"gender\": \"MALE\",\r\n            \"lastName\": \"Teste\",\r\n            \"type\": \"PERSON\",\r\n            \"updatedAt\": \"2022-08-24T15:05:41.000Z\"\r\n        },\r\n        \"discount\": 0.0,\r\n        \"fulfillments\": [\r\n            {\r\n                \"fulfillmentId\": \"F1\",\r\n                \"items\": [\r\n                    {\r\n                        \"name\": \"CL.01.04131\",\r\n                        \"quantity\": 1,\r\n                        \"skuId\": \"CL.01.04131\"\r\n                    }\r\n                ],\r\n                \"locationId\": \"2\",\r\n                \"shipment\": {\r\n                    \"address\": {\r\n                        \"addressId\": \"shipmentF1\",\r\n                        \"addressLine1\": \"Rua Benjamin de Tudela\",\r\n                        \"city\": \"São Paulo\",\r\n                        \"contactName\": \"Teste\",\r\n                        \"contactPhone\": \"11910000000\",\r\n                        \"country\": \"BR\",\r\n                        \"neighbourhood\": \"Fazenda da Juta\",\r\n                        \"number\": \"723\",\r\n                        \"state\": \"SP\",\r\n                        \"zipCode\": \"03977408\",\r\n                        \"default\": true\r\n                    },\r\n                    \"amount\": 17.8,\r\n                    \"carrier\": \"Correios\",\r\n                    \"cost\": 17.795454545454547,\r\n                    \"daysToDelivery\": 8,\r\n                    \"deliveryDate\": \"2022-08-31T00:00:00.000Z\",\r\n                    \"discount\": 0.0,\r\n                    \"method\": \"Expressa\",\r\n                    \"type\": \"SHIPMENT_BY_CARRIER\",\r\n                    \"volumes\": [\r\n                        {\r\n                            \"trackingCode\": \"{{trackingCode}}\",\r\n                            \"trackingUrl\": \"https://some-tracking-url-here?order={{trackingCode}}\",\r\n                            \"invoiceEletronicKey\": \"90008550020012312512512523100102651042881435\",\r\n                            \"type\": \"TUBE\",\r\n                            \"width\": {\r\n                                \"value\": 20,\r\n                                \"unit\": \"cm\"\r\n                            },\r\n                            \"weight\": {\r\n                                \"value\": 0.325,\r\n                                \"unit\": \"kg\"\r\n                            },\r\n                            \"height\": {\r\n                                \"value\": 20,\r\n                                \"unit\": \"cm\"\r\n                            },\r\n                            \"length\": {\r\n                                \"value\": 20,\r\n                                \"unit\": \"cm\"\r\n                            },\r\n                            \"items\": [\r\n                                {\r\n                                    \"quantity\": 1,\r\n                                    \"skuId\": \"CL.01.04131\"\r\n                                }\r\n                            ]\r\n                        }\r\n                    ]\r\n                },\r\n                \"status\": \"WAITING\",\r\n                \"type\": \"SHIPMENT\"\r\n            }\r\n        ],\r\n        \"items\": [\r\n            {\r\n                \"discount\": 0.0,\r\n                \"giftPackage\": false,\r\n                \"giftPackagePrice\": 0.0,\r\n                \"giftProduct\": false,\r\n                \"price\": 190.0,\r\n                \"quantity\": 1,\r\n                \"sku\": {\r\n                    \"height\": {\r\n                        \"unit\": \"cm\",\r\n                        \"value\": 1.0\r\n                    },\r\n                    \"identifiers\": {\r\n                        \"defaultGtin\": \"7891234227768\",\r\n                        \"gtins\": [\r\n                            \"7891234227768\"\r\n                        ]\r\n                    },\r\n                    \"length\": {\r\n                        \"unit\": \"cm\",\r\n                        \"value\": 1.0\r\n                    },\r\n                    \"sku\": \"7891234227768\",\r\n                    \"skuId\": \"CL.01.04131\",\r\n                    \"weight\": {\r\n                        \"unit\": \"kg\",\r\n                        \"value\": 0.3\r\n                    },\r\n                    \"width\": {\r\n                        \"unit\": \"cm\",\r\n                        \"value\": 1.0\r\n                    }\r\n                },\r\n                \"subTotal\": 190.0,\r\n                \"taxAmount\": 0.0\r\n            }\r\n        ],\r\n        \"orderId\": \"{{orderId}}\",\r\n        \"paymentStatus\": \"COMPLETE\",\r\n        \"payments\": [\r\n            {\r\n                \"balance\": {\r\n                    \"due\": {\r\n                        \"amount\": 0.0,\r\n                        \"applicationId\": \"Commerce\"\r\n                    },\r\n                    \"paid\": {\r\n                        \"amount\": 207.8,\r\n                        \"applicationId\": \"Commerce\",\r\n                        \"date\": \"2022-08-24T15:00:46.046Z\"\r\n                    }\r\n                },\r\n                \"currency\": \"BRL\",\r\n                \"details\": {\r\n                    \"creditCard\": {\r\n                        \"authorizationDate\": \"2022-08-24T14:47:33.33Z\",\r\n                        \"authorizationNumber\": \"18132859\",\r\n                        \"capturedDate\": \"2022-08-24T15:00:46.46Z\",\r\n                        \"installments\": 1,\r\n                        \"issuer\": {\r\n                            \"standard\": \"VISA\"\r\n                        },\r\n                        \"nsu\": \"899325\"\r\n                    },\r\n                    \"type\": \"CREDITCARD\"\r\n                },\r\n                \"paymentId\": \"1\",\r\n                \"status\": \"PAID\"\r\n            }\r\n        ],\r\n        \"placedAt\": \"2022-08-24T14:47:33.000Z\",\r\n        \"pointOfSaleId\": \"1248\",\r\n        \"status\": \"PROCESSING\",\r\n        \"total\": 207.8\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/order-relocation/messages","urlObject":{"path":["v2","applications","{{app-id}}","topics","order-relocation","messages"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"1bc97dba-798c-4123-806f-de7a59552144"},{"name":"Order Relocation With CarrierInfo - criar exemplo no POST Order Relocation e apagar essa request","event":[{"listen":"prerequest","script":{"exec":["pm.environment.set(\"orderId\", \"v\"+(Math.floor(Math.random() * (99999999 - 00000000)) + 00000000)+\"jvro\");"],"type":"text/javascript","packages":{},"requests":{},"id":"4315c869-8edf-4298-88ec-3919db97d383"}}],"id":"fb0f8ae2-ad56-458c-9f48-e7212f0d905b","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"OPTIONS","header":[],"body":{"mode":"raw","raw":"{\r\n    \"operations\": [\r\n        {\r\n            \"changes\": {\r\n                \"carrier\": \"Correios\",\r\n                \"locationId\": \"998\"\r\n            },\r\n            \"fulfillmentId\": \"F1\",\r\n            \"type\": \"LOCATION_CHANGE\"\r\n        }\r\n    ],\r\n    \"treatmentId\": \"123\",\r\n    \"updatedAt\": \"2022-08-31T00:00:00.000Z\",\r\n    \"order\": {\r\n        \"billingAddress\": {\r\n            \"addressId\": \"billing\",\r\n            \"addressLine1\": \"Rua Benjamin de Tudela\",\r\n            \"city\": \"São Paulo\",\r\n            \"contactName\": \"Teste\",\r\n            \"contactPhone\": \"11910000000\",\r\n            \"country\": \"BR\",\r\n            \"neighbourhood\": \"Fazenda da Juta\",\r\n            \"number\": \"723\",\r\n            \"state\": \"SP\",\r\n            \"zipCode\": \"03977408\",\r\n            \"default\": false\r\n        },\r\n        \"brandId\": \"site\",\r\n        \"channelType\": \"ECOMMERCE\",\r\n        \"companyId\": \"millenium\",\r\n        \"customer\": {\r\n            \"acceptsMarketing\": false,\r\n            \"createdAt\": \"2022-08-24T15:05:41.000Z\",\r\n            \"customerId\": \"14\",\r\n            \"dateOfBirth\": \"1991-01-16\",\r\n            \"documentNumber\": {\r\n                \"cpf\": \"47761840016\"\r\n            },\r\n            \"email\": \"teste.teste@linx3.com\",\r\n            \"firstName\": \"Teste\",\r\n            \"gender\": \"MALE\",\r\n            \"lastName\": \"Teste\",\r\n            \"type\": \"PERSON\",\r\n            \"updatedAt\": \"2022-08-24T15:05:41.000Z\"\r\n        },\r\n        \"discount\": 0.0,\r\n        \"fulfillments\": [\r\n            {\r\n                \"fulfillmentId\": \"F1\",\r\n                \"items\": [\r\n                    {\r\n                        \"name\": \"CL.01.04131\",\r\n                        \"quantity\": 1,\r\n                        \"skuId\": \"CL.01.04131\"\r\n                    }\r\n                ],\r\n                \"locationId\": \"2\",\r\n                \"shipment\": {\r\n                    \"address\": {\r\n                        \"addressId\": \"shipmentF1\",\r\n                        \"addressLine1\": \"Rua Benjamin de Tudela\",\r\n                        \"city\": \"São Paulo\",\r\n                        \"contactName\": \"Teste\",\r\n                        \"contactPhone\": \"11910000000\",\r\n                        \"country\": \"BR\",\r\n                        \"neighbourhood\": \"Fazenda da Juta\",\r\n                        \"number\": \"723\",\r\n                        \"state\": \"SP\",\r\n                        \"zipCode\": \"03977408\",\r\n                        \"default\": true\r\n                    },\r\n                    \"amount\": 17.8,\r\n                    \"carrier\": \"Correios\",\r\n                    \"carrierInfo\": {\r\n                        \"alias\": \"Correios\",\r\n                        \"name\": \"Correios LTDA\",\r\n                        \"id\": \"843189181\"\r\n                    },\r\n                    \"cost\": 17.795454545454547,\r\n                    \"daysToDelivery\": 8,\r\n                    \"deliveryDate\": \"2022-08-31T00:00:00.000Z\",\r\n                    \"discount\": 0.0,\r\n                    \"method\": \"Expressa\",\r\n                    \"type\": \"SHIPMENT_BY_CARRIER\",\r\n                    \"volumes\": [\r\n                        {\r\n                            \"width\": {\r\n                                \"value\": 20,\r\n                                \"unit\": \"cm\"\r\n                            },\r\n                            \"weight\": {\r\n                                \"value\": 0.325,\r\n                                \"unit\": \"kg\"\r\n                            },\r\n                            \"height\": {\r\n                                \"value\": 20,\r\n                                \"unit\": \"cm\"\r\n                            },\r\n                            \"length\": {\r\n                                \"value\": 20,\r\n                                \"unit\": \"cm\"\r\n                            },\r\n                            \"items\": [\r\n                                {\r\n                                    \"quantity\": 2,\r\n                                    \"skuId\": \"12\"\r\n                                },\r\n                                {\r\n                                    \"quantity\": 1,\r\n                                    \"skuId\": \"123\"\r\n                                },\r\n                                {\r\n                                    \"quantity\": 1,\r\n                                    \"skuId\": \"1234\"\r\n                                }\r\n                            ]\r\n                        }\r\n                    ]\r\n                },\r\n                \"status\": \"WAITING\",\r\n                \"type\": \"SHIPMENT\"\r\n            }\r\n        ],\r\n        \"items\": [\r\n            {\r\n                \"discount\": 0.0,\r\n                \"giftPackage\": false,\r\n                \"giftPackagePrice\": 0.0,\r\n                \"giftProduct\": false,\r\n                \"price\": 190.0,\r\n                \"quantity\": 1,\r\n                \"sku\": {\r\n                    \"height\": {\r\n                        \"unit\": \"cm\",\r\n                        \"value\": 1.0\r\n                    },\r\n                    \"identifiers\": {\r\n                        \"defaultGtin\": \"7891234227768\",\r\n                        \"gtins\": [\r\n                            \"7891234227768\"\r\n                        ]\r\n                    },\r\n                    \"length\": {\r\n                        \"unit\": \"cm\",\r\n                        \"value\": 1.0\r\n                    },\r\n                    \"sku\": \"7891234227768\",\r\n                    \"skuId\": \"CL.01.04131\",\r\n                    \"weight\": {\r\n                        \"unit\": \"kg\",\r\n                        \"value\": 0.3\r\n                    },\r\n                    \"width\": {\r\n                        \"unit\": \"cm\",\r\n                        \"value\": 1.0\r\n                    }\r\n                },\r\n                \"subTotal\": 190.0,\r\n                \"taxAmount\": 0.0\r\n            }\r\n        ],\r\n        \"orderId\": \"{{orderId}}\",\r\n        \"paymentStatus\": \"COMPLETE\",\r\n        \"payments\": [\r\n            {\r\n                \"balance\": {\r\n                    \"due\": {\r\n                        \"amount\": 0.0,\r\n                        \"applicationId\": \"Commerce\"\r\n                    },\r\n                    \"paid\": {\r\n                        \"amount\": 207.8,\r\n                        \"applicationId\": \"Commerce\",\r\n                        \"date\": \"2022-08-24T15:00:46.046Z\"\r\n                    }\r\n                },\r\n                \"currency\": \"BRL\",\r\n                \"details\": {\r\n                    \"creditCard\": {\r\n                        \"authorizationDate\": \"2022-08-24T14:47:33.33Z\",\r\n                        \"authorizationNumber\": \"18132859\",\r\n                        \"capturedDate\": \"2022-08-24T15:00:46.46Z\",\r\n                        \"installments\": 1,\r\n                        \"issuer\": {\r\n                            \"standard\": \"VISA\"\r\n                        },\r\n                        \"nsu\": \"899325\"\r\n                    },\r\n                    \"type\": \"CREDITCARD\"\r\n                },\r\n                \"paymentId\": \"1\",\r\n                \"status\": \"PAID\"\r\n            }\r\n        ],\r\n        \"placedAt\": \"2022-08-24T14:47:33.000Z\",\r\n        \"pointOfSaleId\": \"1248\",\r\n        \"status\": \"PROCESSING\",\r\n        \"total\": 207.8\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/order-relocation/messages","urlObject":{"path":["v2","applications","{{app-id}}","topics","order-relocation","messages"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"fb0f8ae2-ad56-458c-9f48-e7212f0d905b"}],"id":"bd904874-38e6-4138-88ce-5ab1e4e91da0","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>O tópico <code>order-realocation</code> é utilizado para notificar e registrar a transferência/realocação de ordens de atendimento (<em>fulfillment</em>) entre diferentes origens de estoque (lojas/CDs) ou a alteração de transportadoras no fluxo logístico de um pedido.</p>\n<p>Através deste tópico, os sistemas de OMS, ERP ou roteamento logístico comunicam a alteração de local de separação/expedição, atualizando a estrutura completa do pedido e informando o pacote (<em>fulfillment</em>) afetado com suas novas configurações.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>POST</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/order-relocation/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{token}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n</ul>\n<h5 id=\"onde\">Onde:</h5>\n<ul>\n<li><p><code>app-id</code>: Identificador da sua aplicação no Maker IO.</p>\n</li>\n<li><p><code>token</code>: Bearer Token gerado pelo endpoint de <a href=\"#0be47a1e-bf5a-477f-9b0b-77009a952071\">Login</a>.</p>\n</li>\n</ul>\n","_postman_id":"bd904874-38e6-4138-88ce-5ab1e4e91da0"},{"name":"Fulfillment Status","item":[{"name":"Fulfillment Status","id":"2ffb03a7-6a5e-43cb-bc2c-643a331f2e86","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"attributes\": [\r\n        {\r\n            \"id\": \"190197201\",\r\n            \"value\": \"361\",\r\n            \"description\": \"\"\r\n        }\r\n    ],\r\n    \"deliveredAt\": \"2025-10-06T15:59:36.613+00:00\",\r\n    \"fulfillmentId\": \"578\",\r\n    \"giftMessage\": {\r\n        \"format\": \"HTML\",\r\n        \"value\": \"\"\r\n    },\r\n    \"invoices\": [\r\n        {\r\n            \"createdAt\": \"2025-10-06T15:59:36.613+00:00\",\r\n            \"issuedAt\": \"2025-10-06T15:59:36.613+00:00\",\r\n            \"nfe\": {\r\n                \"authorizationProtocol\": \"123456\",\r\n                \"cfop\": \"5102\",\r\n                \"eletronicKey\": \"0123456789012345678901234567890123456789012345678912345\",\r\n                \"events\": [\r\n                    {\r\n                        \"createdAt\": \"2025-10-06T15:59:36.613+00:00\",\r\n                        \"eventType\": \"210200\",\r\n                        \"eventXml\": \"//www.portal.fazenda.gov.br/nfe.xml\",\r\n                        \"eventXmlContent\": \"xml nota\"\r\n                    }\r\n                ],\r\n                \"invoicePdf\": \"//www.portal.fazenda.gov.br/nfe.pdf\",\r\n                \"invoiceXml\": \"//www.portal.fazenda.gov.br/nfe.xml\",\r\n                \"observation\": \"observação nota\",\r\n                \"serialNumber\": \"1\"\r\n            },\r\n            \"number\": \"123456\",\r\n            \"processedAt\": \"2025-10-06T15:59:36.613+00:00\",\r\n            \"type\": \"SALE\"\r\n        }\r\n    ],\r\n    \"isTransfer\": false,\r\n    \"locationId\": \"1.1\",\r\n    \"orderId\": \"18-000692027\",\r\n    \"pickup\": {\r\n        \"address\": {\r\n            \"addressId\": \"1234\",\r\n            \"addressLine1\": \"Rua Vitória\",\r\n            \"addressLine2\": \"sala 2\",\r\n            \"addressName\": \"trabalho\",\r\n            \"number\": \"2296\",\r\n            \"zipCode\": \"85802229\",\r\n            \"neighbourhood\": \"Neva\",\r\n            \"city\": \"Cascavel\",\r\n            \"state\": \"Paraná\",\r\n            \"country\": \"Brasil\",\r\n            \"latitude\": -24.96315,\r\n            \"longitude\": -53.48034,\r\n            \"contactName\": \"Marta\",\r\n            \"contactPhone\": \"4599999999\",\r\n            \"default\": false,\r\n            \"notes\": \"\"\r\n        },\r\n        \"amount\": 0.00,\r\n        \"daysToPickup\": 2,\r\n        \"lockerId\": \"126097151\",\r\n        \"personToPickup\": {\r\n            \"documentNumber\": \"909871201\",\r\n            \"documentType\": \"RG\",\r\n            \"name\": \"Zacarias\"\r\n        },\r\n        \"type\": \"STANDARD\"\r\n    },\r\n    \"relatedFulfillmentIds\": [\r\n        \"123456\",\r\n        \"1234901\"\r\n    ],\r\n    \"scheduledDeliveryDate\": \"2025-10-06T15:59:36.613+00:00\",\r\n    \"scheduledDeliveryHours\": {\r\n        \"from\": \"09:30\",\r\n        \"to\": \"11:50\"\r\n    },\r\n    \"scheduledDeliveryPeriod\": \"manhã\",\r\n    \"shipment\": {\r\n        \"address\": {\r\n            \"addressId\": \"117665\",\r\n            \"addressName\": \"res\",\r\n            \"contactName\": \"Eric\",\r\n            \"contactPhone\": \"9999999999\",\r\n            \"addressLine1\": \"Rua Ismênia\",\r\n            \"addressLine2\": \"Próximo Ao Ponto Final De Ônibus\",\r\n            \"number\": \"314\",\r\n            \"zipCode\": \"06719075\",\r\n            \"neighbourhood\": \"Jardim Panorama\",\r\n            \"city\": \"Cotia\",\r\n            \"state\": \"SP\",\r\n            \"country\": \"BR\",\r\n            \"latitude\": -56.00961,\r\n            \"longitude\": -54.33012,\r\n            \"default\": false,\r\n            \"notes\": \"\"\r\n        },\r\n        \"amount\": 0.0,\r\n        \"carrier\": \"Personalizado\",\r\n        \"carrierInfo\": {\r\n            \"alias\": \"Personalizado\",\r\n            \"carrierHub\": \"Intelipost\",\r\n            \"id\": \"23\",\r\n            \"name\": \"transportadora\"\r\n        },\r\n        \"cost\": 17.85,\r\n        \"daysToDelivery\": 9.0,\r\n        \"deliveryDate\": \"2025-01-12T00:00:00+00:00\",\r\n        \"discount\": 0.0,\r\n        \"trackingCode\": \"BR2500975216RA\",\r\n        \"trackingUrl\": \"meupedido.com.br/BR2500975216RA\",\r\n        \"transportDocuments\": [\r\n            {\r\n                \"createdAt\": \"2025-10-06T15:59:36.613+00:00\",\r\n                \"cte\": {\r\n                    \"authorizationProtocol\": \"\",\r\n                    \"cfop\": \"\",\r\n                    \"ctePdf\": \"\",\r\n                    \"cteXml\": \"\",\r\n                    \"cteXmlContent\": \"\",\r\n                    \"eletronicKey\": \"\",\r\n                    \"events\": [\r\n                        {\r\n                            \"createdAt\": \"\",\r\n                            \"eventType\": \"\",\r\n                            \"eventXml\": \"\",\r\n                            \"eventXmlContent\": \"\"\r\n                        }\r\n                    ],\r\n                    \"observation\": \"\",\r\n                    \"operation\": \"\",\r\n                    \"serialNumber\": \"\"\r\n                },\r\n                \"issuedAt\": \"\",\r\n                \"number\": \"\",\r\n                \"processedAt\": \"\",\r\n                \"type\": \"SALE\"\r\n            }\r\n        ],\r\n        \"method\": \"PluggTo - Entrega Hub\",\r\n        \"volumes\":\"\",\r\n        \"type\": \"SHIPMENT_BY_CARRIER\"\r\n    },\r\n    \"status\": \"DELIVERED\", //criar um exemplo com todos os status pq cada um deles tem campos obrigatórios diferentes\r\n    \"type\": \"SHIPMENT\",\r\n    \"updatedAt\": \"0001-01-01T00:00:00+00:00\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/order-exception/messages","description":"<h3 id=\"descrição-dos-campos-do-payload\">Descrição dos campos do payload</h3>\n<p>A publicação do Fulfillment Status utiliza o payload abaixo, alguns arrays ou objetos do payload ficaram disponibilizados em outra seção para que a documentação não ficasse muito extensa, utilizar o link na descrição do array ou objeto para ser direcionado à seção correspondente e verificar seus campos e regras..</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Obrigatório</th>\n<th>Tipo de dado</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>fulfillmentId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do fulfillment.</td>\n</tr>\n<tr>\n<td>attributes</td>\n<td>Não</td>\n<td>array</td>\n<td>Lista de atributos do fulfillment.</td>\n</tr>\n<tr>\n<td>attributes.description</td>\n<td>Não</td>\n<td>string</td>\n<td>Descrição do atributo.</td>\n</tr>\n<tr>\n<td>attributes.id</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do atributo.</td>\n</tr>\n<tr>\n<td>attributes.value</td>\n<td>Sim</td>\n<td>string</td>\n<td>Valor do atributo.</td>\n</tr>\n<tr>\n<td>cancelReason</td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Motivo do cancelamento do fulfillment, o campo é obrigatório quando o campo <strong>status</strong> for <strong>CANCELED</strong>.</td>\n</tr>\n<tr>\n<td>deliveredAt</td>\n<td>Verificar regra</td>\n<td>string(date-time)</td>\n<td>Data de entrega do fulfillment, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>, o campo é obrigatório quando o campo <strong>status</strong> for <strong>DELIVERED</strong>.</td>\n</tr>\n<tr>\n<td>giftMessage</td>\n<td>Não</td>\n<td>object</td>\n<td>Informação sobre a mensagem de presente para o produto.</td>\n</tr>\n<tr>\n<td>giftMessage.format</td>\n<td>Sim</td>\n<td>string</td>\n<td>Formato da mensagem de presente, informe <strong>TEXT</strong>, <strong>HTML</strong> ou <strong>URL</strong>.</td>\n</tr>\n<tr>\n<td>giftMessage.value</td>\n<td>Sim</td>\n<td>string</td>\n<td>Mensagem de presente que irá acompanhar o produto.</td>\n</tr>\n<tr>\n<td>invoices</td>\n<td>Verificar regra</td>\n<td>array</td>\n<td>Lista de notas fiscais do pedido, esse objeto é obrigatório se o <strong>status</strong> estiver como <strong>DELIVERED</strong>, <strong>INVOICED</strong> ou <strong>SHIPPED</strong>.</td>\n</tr>\n<tr>\n<td>invoices[].createdAt</td>\n<td>Sim</td>\n<td>string(date-time)</td>\n<td>Data de criação da nota fiscal, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>invoices[].issuedAt</td>\n<td>Sim</td>\n<td>string(date-time)</td>\n<td>Data de emissão da nota fiscal, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>invoices[].processedAt</td>\n<td>Sim</td>\n<td>string(date-time)</td>\n<td>Data de processamento da nota fiscal, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>invoices[].type</td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo da nota fiscal, informe <strong>SALE</strong> para nota fiscal de venda; <strong>RETURN</strong> para nota fiscal de retorno, quando não houve entrega; <strong>DEVOLUTION</strong> para nota fiscal de devolução.</td>\n</tr>\n<tr>\n<td>invoices[].nfe</td>\n<td>Sim</td>\n<td>object</td>\n<td>Objeto referente as informações da nota fiscal do fulfillment.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.authorizationProtocol</td>\n<td>Não</td>\n<td>string</td>\n<td>Protocolo de autorização da nota fiscal.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.cfop</td>\n<td>Não</td>\n<td>string</td>\n<td>Código fiscal da operação.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.eletronicKey</td>\n<td>Sim</td>\n<td>string</td>\n<td>Chave da nota fiscal.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.events</td>\n<td>Não</td>\n<td>array</td>\n<td>Lista de eventos vinculados à nota fiscal.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.events[].createdAt</td>\n<td>Sim</td>\n<td>string(date-time)</td>\n<td>Data de criação de eventos vinculados à nota fiscal, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.events[].eventType</td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipos de eventos da nota fiscal, informe <strong>110110</strong> para carta de correção; <strong>110111</strong> para cancelamento normal; <strong>110112</strong> para cancelamento por substituição de nota; <strong>110130</strong> para comprovante de entrega; <strong>110140</strong> para emissão em contingência; <strong>110192</strong> para informar insucesso na entrega; <strong>210200</strong> para confirmação da operação; <strong>210210</strong> para ciência da operação; <strong>210220</strong> para desconhecimento da operação; <strong>210240</strong> para operação não realizada.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.events[].eventXml</td>\n<td>Não</td>\n<td>string</td>\n<td>URL para acesso ao XML do evento.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.events[].eventXmlContent</td>\n<td>Não</td>\n<td>string</td>\n<td>Conteúdo do XML do evento.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.invoicePdf</td>\n<td>Não</td>\n<td>string</td>\n<td>URL para acesso ao PDF da nota fiscal.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.invoiceXml</td>\n<td>Não</td>\n<td>string</td>\n<td>URL para acesso ao XML da nota fiscal.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.invoiceXmlContent</td>\n<td>Não</td>\n<td>string</td>\n<td>Conteúdo do XML da nota fiscal.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.operation</td>\n<td>Não</td>\n<td>string</td>\n<td>Descrição do CFOP da nota.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.serialNumber</td>\n<td>Sim</td>\n<td>string</td>\n<td>Série da nota fiscal.</td>\n</tr>\n<tr>\n<td>invoices[].nfe.observation</td>\n<td>Não</td>\n<td>string</td>\n<td>Observação da nota fiscal.</td>\n</tr>\n<tr>\n<td>invoices[].number</td>\n<td>Sim</td>\n<td>string</td>\n<td>Número da nota fiscal.</td>\n</tr>\n<tr>\n<td>isTransfer</td>\n<td>Não</td>\n<td>boolean</td>\n<td>Indica que este fulfillment é uma transferência dos produtos para outra location. Neste caso o endereço de entrega deste fulfillment será o da location de destino.</td>\n</tr>\n<tr>\n<td>locationId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador da filial de expedição.</td>\n</tr>\n<tr>\n<td>orderId</td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador da filial de expedição.</td>\n</tr>\n<tr>\n<td>type</td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo de entrega do fulfillment, informe <strong>SHIPMENT</strong> para informar que o fulfillment será enviado por meio de transportadora e <strong>PICKUP</strong> para informar que o fulfillment será retirado em loja ou CD.</td>\n</tr>\n<tr>\n<td>shipment</td>\n<td>Verificar regra</td>\n<td>object</td>\n<td>Informação referente ao envio da mercadoria, é obrigatório quando o campo <strong>fulfillment.type</strong> for <strong>SHIPMENT</strong>, as regras e descrições dos campos do objeto estão disponíveis na seção <a href=\"#b18cfdd3-da48-489d-aa76-beee7be2430e\"><b>Shipment</b></a>.</td>\n</tr>\n<tr>\n<td>pickup</td>\n<td>Não</td>\n<td>object</td>\n<td>Informação referente à retirada da mercadoria em loja ou CD, é obrigatório quando o campo <strong>fulfillment.type</strong> for <strong>PICKUP</strong>, as regras e descrições dos campos do objeto estão disponíveis na seção <a href=\"#5b57dcbc-f1e5-498a-a1e3-7288f8c76da2\"><b>Pickup</b></a>.</td>\n</tr>\n<tr>\n<td>status</td>\n<td>Sim</td>\n<td>string</td>\n<td>Status da entrega, informe <strong>PENDING</strong> para aguardando pagamento; <strong>WAITING</strong> para aguardando início da separação; <strong>PICKING</strong> para informar que o fulfillment está em processo de separação; <strong>CHECKED</strong> para informar que o fulfillment foi conferido e separado; <strong>BILLING</strong> para informar que o fulfillment está liberado para o faturamento; <strong>BILLING_CONFIRMATION</strong> para informar que o fulfillment foi confirmado no PDV e está pronto para faturamento; <strong>INVOICED</strong> para informar que o fulfillment está faturado; <strong>SHIPPED</strong> para informar que o fulfillment foi enviado para o destinatário; <strong>PICKUP_READY</strong> pronto para informar que o produto está pronto para retirada em loja; <strong>DELIVERED</strong> para informar que o fulfillment foi entregue; <strong>CANCELED</strong>: para informar que o fulfillment foi cancelado.</td>\n</tr>\n<tr>\n<td>relatedFulfillmentIds</td>\n<td>Não</td>\n<td>array(string)</td>\n<td>Lista de identificadores de fulfillments que esse fulfillment é dependente.</td>\n</tr>\n<tr>\n<td>scheduledDeliveryDate</td>\n<td>Não</td>\n<td>string(date-time)</td>\n<td>Data e hora de agendamento da entrega, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td>scheduledDeliveryHours</td>\n<td>Não</td>\n<td>object</td>\n<td>Intervalo de tempo agendado para entrega.</td>\n</tr>\n<tr>\n<td>scheduledDeliveryHours.from</td>\n<td>Sim</td>\n<td>string</td>\n<td>Horário inicial agendado para entrega, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a> para horário.</td>\n</tr>\n<tr>\n<td>scheduledDeliveryHours.to</td>\n<td>Sim</td>\n<td>string</td>\n<td>Horário final agendado para entrega, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a> para horário.</td>\n</tr>\n<tr>\n<td>scheduledDeliveryPeriod</td>\n<td>Não</td>\n<td>string</td>\n<td>Período do dia agendado para a entrega.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","order-exception","messages"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"2ffb03a7-6a5e-43cb-bc2c-643a331f2e86"}],"id":"06de84c5-b297-4bfc-8cc4-1eef290f8617","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>O tópico <code>fulfillment-status</code> é utilizado para atualizar o ciclo de vida logístico e a alteração de status das ordens de expedição e entrega (<em>fulfillments</em>).</p>\n<p>Através deste tópico, sistemas de ERP, WMS, TMS ou Hubs Logísticos notificam o avanço de etapas como faturamento, envio para transportadora, disponibilidade para retirada, tentativas de entrega e confirmação de entrega final ao cliente.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>POST</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/fulfillment-status/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{token}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n</ul>\n<h5 id=\"onde\">Onde:</h5>\n<ul>\n<li><p><code>app-id</code>: Identificador da sua aplicação no Maker IO.</p>\n</li>\n<li><p><code>token</code>: Bearer Token gerado pelo endpoint de <a href=\"#0be47a1e-bf5a-477f-9b0b-77009a952071\">Login</a>.</p>\n</li>\n</ul>\n","_postman_id":"06de84c5-b297-4bfc-8cc4-1eef290f8617"},{"name":"Apêndice: Schemas e Payloads Detalhados","item":[{"name":"Items","item":[],"id":"1247443b-bbea-4f75-8445-95adbe35c434","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Payload com informações e regras para o envio do Array de Items, essa informação é utilizada em algumas publicações de mensagens do Maker IO.</p>\n<p><strong>Atenção</strong>: para saber se esse payload é utilizado no tópico que está tentando publicar, verifique na documentação do tópico, na tabela contendo os campos do payload, a coluna <strong>Descrição</strong> contém um link direcionando para os Arrays e Objects necessários para a publicação da mensagem.</p>\n<h3 id=\"descrição-dos-campos-do-payload\">Descrição dos campos do payload</h3>\n<p>O payload de <code>items</code> possui os seguintes campos e regras:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Obrigatório</th>\n<th>Tipo de dado</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>attributes</code></td>\n<td>Não</td>\n<td>array</td>\n<td>Lista com os atributos do item.</td>\n</tr>\n<tr>\n<td><code>attributes.description</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Descrição do atributo do item.</td>\n</tr>\n<tr>\n<td><code>attributes.id</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do atributo do item.</td>\n</tr>\n<tr>\n<td><code>attributes.value</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Valor do atributo do item.</td>\n</tr>\n<tr>\n<td><code>quantity</code></td>\n<td>Sim</td>\n<td>number</td>\n<td>Quantidade do item no pedido.</td>\n</tr>\n<tr>\n<td><code>price</code></td>\n<td>Sim</td>\n<td>number</td>\n<td>Preço unitário.</td>\n</tr>\n<tr>\n<td><code>discount</code></td>\n<td>Sim</td>\n<td>number</td>\n<td>Desconto aplicado ao item.</td>\n</tr>\n<tr>\n<td><code>giftProduct</code></td>\n<td>Sim</td>\n<td>boolean</td>\n<td>Indica se o item é um brinde.</td>\n</tr>\n<tr>\n<td><code>giftPackage</code></td>\n<td>Sim</td>\n<td>boolean</td>\n<td>Indica se possui embalagem para presente, aceita valores <strong>true</strong> ou <strong>false</strong>.</td>\n</tr>\n<tr>\n<td><code>giftPackagePrice</code></td>\n<td>Verificar regra</td>\n<td>number</td>\n<td>Preço da embalagem para presente, o campo é obrigatório se o <strong><code>items.giftPackage</code></strong> for <strong>true</strong>.</td>\n</tr>\n<tr>\n<td><code>giftPackageSkuId</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Identificador do SKU correspondente à embalagem de presente, o campo é obrigatório se o <strong><code>items.giftPackage</code></strong> for <strong>true</strong>.</td>\n</tr>\n<tr>\n<td><code>relatedSkuId</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Identificador do SKU relacionado ao item.</td>\n</tr>\n<tr>\n<td><code>subTotal</code></td>\n<td>Sim</td>\n<td>number</td>\n<td>Subtotal do item.</td>\n</tr>\n<tr>\n<td><code>sku</code></td>\n<td>Sim</td>\n<td>object</td>\n<td>Lista de informações detalhadas do SKU.</td>\n</tr>\n<tr>\n<td><code>sku.height</code></td>\n<td>Sim</td>\n<td>object</td>\n<td>Informações sobre a altura do SKU.</td>\n</tr>\n<tr>\n<td><code>sku.height.unit</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Unidade de medida utilizada para a altura do produto, o padrão é <strong>cm</strong>.</td>\n</tr>\n<tr>\n<td><code>sku.height.value</code></td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor da altura do produto, em centímetros.</td>\n</tr>\n<tr>\n<td><code>sku.lenght</code></td>\n<td>Sim</td>\n<td>object</td>\n<td>Informações sobre o comprimento do SKU.</td>\n</tr>\n<tr>\n<td><code>sku.lenght.unit</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Unidade de medida utilizada para o comprimento do produto, o padrão é <strong>cm</strong>.</td>\n</tr>\n<tr>\n<td><code>sku.lenght.value</code></td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor do comprimento do produto, em centímetros.</td>\n</tr>\n<tr>\n<td><code>sku.width</code></td>\n<td>Sim</td>\n<td>object</td>\n<td>Informações sobre a largura do SKU.</td>\n</tr>\n<tr>\n<td><code>sku.width.unit</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Unidade de medida utilizada para a largura do produto, o padrão é <strong>cm</strong>.</td>\n</tr>\n<tr>\n<td><code>sku.width.value</code></td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor da largura do produto, em centímetros.</td>\n</tr>\n<tr>\n<td><code>sku.weight</code></td>\n<td>Sim</td>\n<td>object</td>\n<td>Informações sobre o peso do SKU.</td>\n</tr>\n<tr>\n<td><code>sku.weight.unit</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Unidade de medida utilizada para o peso do produto, o padrão é <strong>kg</strong>.</td>\n</tr>\n<tr>\n<td><code>sku.weight.value</code></td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor do peso do item do produto, em quilos.</td>\n</tr>\n<tr>\n<td><code>sku.skuId</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do SKU.</td>\n</tr>\n<tr>\n<td><code>sku.title</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Nome do SKU.</td>\n</tr>\n<tr>\n<td><code>sku.sku</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Código externo do SKU.</td>\n</tr>\n<tr>\n<td><code>taxAmount</code></td>\n<td>Não</td>\n<td>number</td>\n<td>Valor de impostos.</td>\n</tr>\n<tr>\n<td><code>notes</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Observações referente ao item.</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"1247443b-bbea-4f75-8445-95adbe35c434"},{"name":"Address","item":[],"id":"94699fb0-3088-4b84-92af-ba015db698e7","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Payload com informações e regras para o envio do Object de Address, essa informação é utilizada em algumas publicações de mensagens do Maker IO.</p>\n<p><strong>Atenção</strong>: para saber se esse payload é utilizado no tópico que está tentando publicar, verifique na documentação do tópico, na tabela contendo os campos do payload, a coluna <strong>Descrição</strong> contém um link direcionando para os Arrays e Objects necessários para a publicação da mensagem.</p>\n<h3 id=\"descrição-dos-campos-do-payload\">Descrição dos campos do payload</h3>\n<p>O payload de <code>address</code> possui os seguintes campos e regras:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Obrigatório</th>\n<th>Tipo de dado</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>addressId</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Código identificador do endereço.</td>\n</tr>\n<tr>\n<td><code>addressLine1</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Endereço (rua, avenida).</td>\n</tr>\n<tr>\n<td><code>addressLine2</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Complemento.</td>\n</tr>\n<tr>\n<td><code>addressName</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Nome identificador do endereço.</td>\n</tr>\n<tr>\n<td><code>number</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Número.</td>\n</tr>\n<tr>\n<td><code>neighbourhood</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Bairro.</td>\n</tr>\n<tr>\n<td><code>city</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Cidade.</td>\n</tr>\n<tr>\n<td><code>state</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Estado (UF).</td>\n</tr>\n<tr>\n<td><code>zipCode</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>CEP.</td>\n</tr>\n<tr>\n<td><code>country</code></td>\n<td>Não</td>\n<td>string</td>\n<td>País (ex: BR).</td>\n</tr>\n<tr>\n<td><code>default</code></td>\n<td>Sim</td>\n<td>boolean</td>\n<td>Indica se é o padrão.</td>\n</tr>\n<tr>\n<td><code>contactName</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Nome de contato no endereço.</td>\n</tr>\n<tr>\n<td><code>contactPhone</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Telefone de contato.</td>\n</tr>\n<tr>\n<td><code>latitude</code></td>\n<td>Não</td>\n<td>number</td>\n<td>Latitude do endereço.</td>\n</tr>\n<tr>\n<td><code>longitude</code></td>\n<td>Não</td>\n<td>number</td>\n<td>Longitude do endereço.</td>\n</tr>\n<tr>\n<td><code>notes</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Observação referente ao endereço.</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"94699fb0-3088-4b84-92af-ba015db698e7"},{"name":"Payments","item":[],"id":"ede56d74-2362-47aa-bacb-adfba0dc60bf","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Payload com informações e regras para o envio do Object de Payment, essa informação é utilizada em algumas publicações de mensagens do Maker IO.</p>\n<p><strong>Atenção</strong>: para saber se esse payload é utilizado no tópico que está tentando publicar, verifique na documentação do tópico, na tabela contendo os campos do payload, a coluna <strong>Descrição</strong> contém um link direcionando para os Arrays e Objects necessários para a publicação da mensagem.</p>\n<h3 id=\"descrição-dos-campos-do-payload\">Descrição dos campos do payload</h3>\n<p>O payload de <code>payments</code> possui os seguintes campos e regras:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Obrigatório</th>\n<th>Tipo de dado</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>balance</code></td>\n<td>Sim</td>\n<td>object</td>\n<td>Lista com informações complementares ao status do pagamento, as regras de validação e obrigatoriedade dependem do que foi informado no campo <code>status</code>.</td>\n</tr>\n<tr>\n<td><code>balance.canceled</code></td>\n<td>Verificar regra</td>\n<td>object</td>\n<td>Informações complementares ao pagamento cancelado, o objeto é obrigatório caso o campo <code>status</code> seja <strong>CANCELED</strong>.</td>\n</tr>\n<tr>\n<td><code>balance.canceled.amount</code></td>\n<td>Verificar regra</td>\n<td>number</td>\n<td>Valor de pagamento cancelado, o campo se torna obrigatório se o objeto <code>balance.canceled</code> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>balance.canceled.applicationId</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Identificador da aplicação que gerou a informação, o campo se torna obrigatório se o objeto <strong><code>balance.canceled</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>balance.canceled.date</code></td>\n<td>Verificar regra</td>\n<td>string(date-time)</td>\n<td>Data de cancelamento do pagamento, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>, o campo se torna obrigatório se o <strong>status</strong> for <strong>CANCELED</strong>.</td>\n</tr>\n<tr>\n<td><code>balance.canceled.reason</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Motivo de cancelamento do pagamento, informe <strong>EXPIRED</strong> ou <strong>REFUNDED</strong>, o campo se torna obrigatório se o <strong><code>status</code></strong> for <strong>CANCELED</strong>.</td>\n</tr>\n<tr>\n<td><code>balance.due</code></td>\n<td>Verificar regra</td>\n<td>object</td>\n<td>Informações complementares ao pagamento pendente, o objeto é obrigatório caso o campo <strong><code>status</code></strong> seja <strong>DUE</strong>.</td>\n</tr>\n<tr>\n<td><code>balance.due.amount</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Valor pendente de pagamento, o campo se torna obrigatório se o objeto <strong><code>balance.due</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>balance.due.applicationId</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Identificador da aplicação que gerou a informação, o campo se torna obrigatório se o objeto <strong><code>balance.due</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>balance.due</code></td>\n<td>Verificar regra</td>\n<td>object</td>\n<td>Informações complementares ao pagamento quando estiver pago, o objeto é obrigatório caso o campo <strong><code>status</code></strong> seja <strong>PAID</strong>.</td>\n</tr>\n<tr>\n<td><code>balance.paid.amount</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Valor pago, o campo se torna obrigatório se o objeto <strong><code>balance.paid</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>balance.paid.applicationId</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Identificador da aplicação que gerou a informação, o campo se torna obrigatório se o objeto <strong><code>balance.paid</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>balance.paid.date</code></td>\n<td>Verificar regra</td>\n<td>string(date-time)</td>\n<td>Data de pagamento, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>, o campo se torna obrigatório se o objeto <strong>balance.paid</strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>paymentId</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do pagamento.</td>\n</tr>\n<tr>\n<td><code>currency</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Moeda utilizada (ex: BRL).</td>\n</tr>\n<tr>\n<td><code>isOnSitePayment</code></td>\n<td>Sim</td>\n<td>boolean</td>\n<td>Indica se o pagamento foi feito no local.</td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Status do pagamento, informe <strong>DUE</strong> para pagamento pendente, <strong>PAID</strong> para pago e <strong>CANCELED</strong> para pagamento cancelado.</td>\n</tr>\n<tr>\n<td><code>details</code></td>\n<td>Sim</td>\n<td>object</td>\n<td>Objeto com os detalhes do pagamento.</td>\n</tr>\n<tr>\n<td><code>details.provider</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Fornecedor do pagamento, informe <strong>ADDI</strong>, <strong>ADYEN</strong>, <strong>AMEX</strong>, <strong>BANRISUL</strong>, <strong>BB</strong>, <strong>BCASH</strong>, <strong>BRADESCO</strong>, <strong>BRASPAG</strong>, <strong>CIELO</strong>, <strong>GOPAGUE</strong>, <strong>ITAU</strong>, <strong>KOIN</strong>, <strong>LINXPROMO</strong>, <strong>MERCADOPAGO</strong>, <strong>MOIP</strong>, <strong>MUNDIPAGG</strong>, <strong>PAGALEVE</strong>, <strong>PAGARME</strong>, <strong>PAGSEGURO</strong>, <strong>PARCELEX</strong>, <strong>PAYHUB</strong>, <strong>PAYPAL</strong>, <strong>PAYU</strong>, <strong>PROVU</strong>, <strong>QRLINX</strong>, <strong>REDE</strong>, <strong>REDEKOMERCI</strong>, <strong>REDEPAY</strong>, <strong>RESHOP</strong>, <strong>SAFE2PAY</strong>, <strong>STELO</strong>, <strong>UNIBANCO</strong>, <strong>VIAVAREJO</strong> ou <strong>YAMI</strong></td>\n</tr>\n<tr>\n<td><code>details.type</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo do pagamento, informe <strong>CREDITCARD</strong> para cartão de crédito; <strong>DEBITCARD</strong> para cartão de débito; <strong>SLIP</strong> para boleto; <strong>TRANSFER</strong> para transferência bancária; <strong>CASH</strong> para dinheiro; <strong>GIFTCARD</strong> para vale presente; <strong>CUSTOMERCREDIT</strong> para crédito em loja; <strong>CUSTOM</strong> para meio de pagamento customizado. Hoje apenas pedidos de Marketplace utilizam este tipo; <strong>DEPOSIT</strong> para Depósito; <strong>PIX</strong> para pagamento via PIX; <strong>WALLET</strong> para pagamento utilizando <strong>carteira digital</strong>. Paypal por exemplo tem esta opção; <strong>LOYALTYCARD</strong> para cartão fidelidade (comportamento de vale compras, porém, promovido por um bônus ou campanha promocional).</td>\n</tr>\n<tr>\n<td><code>details.cash</code></td>\n<td>Verificar regra</td>\n<td>object</td>\n<td>Informações detalhadas para o pagamento feito em dinheiro, o objeto é obrigatório se o campo <strong><code>details.type</code></strong> for <strong>CASH</strong>.</td>\n</tr>\n<tr>\n<td><code>details.cash.acquirer</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>CNPJ da instituição de pagamento, Adquirente ou Sub adquirente, o campo é obrigatório se o objeto <strong><code>details.cash</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.cash.acquirerState</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Sigla da UF da Instituição de pagamento, Adquirente ou Sub adquirente, o campo é obrigatório se o objeto <strong><code>details.cash</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.cash.beneficiary</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>CNPJ do beneficiário do pagamento, o campo é obrigatório se o objeto <strong><code>details.cash</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.cash.capturedDate</code></td>\n<td>Verificar regra</td>\n<td>string(date-time)</td>\n<td>Data de captura do pagamento, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>, o campo é obrigatório se o objeto <strong><code>details.cash</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.cash.moneyChange</code></td>\n<td>Verificar regra</td>\n<td>number</td>\n<td>Valor de troco do pagamento, o campo é obrigatório se o objeto <strong><code>details.cash</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.cash.paymentDate</code></td>\n<td>Verificar regra</td>\n<td>string(date-time)</td>\n<td>Data de pagamento, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>, o campo é obrigatório se o objeto <strong><code>details.cash</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.creditCard</code></td>\n<td>Verificar regra</td>\n<td>object</td>\n<td>Informações detalhadas para o pagamento feito em cartão de crédito, o objeto é obrigatório se o campo <strong><code>details.type</code></strong> for <strong>CREDITCARD</strong>.</td>\n</tr>\n<tr>\n<td><code>details.creditCard.acquirer</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>CNPJ da instituição de pagamento, Adquirente ou Sub adquirente, o campo é obrigatório se o objeto <strong><code>details.creditCard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.creditCard.acquirerState</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Sigla da UF da Instituição de pagamento, Adquirente ou Sub adquirente, o campo é obrigatório se o objeto <strong><code>details.creditCard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.creditCard.authorizationDate</code></td>\n<td>Verificar regra</td>\n<td>string(date-time)</td>\n<td>Data de autorização do pagamento, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>, o campo é obrigatório se o objeto <strong><code>details.creditCard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.creditCard.authorizationNumber</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Número de autorização do pagamento, o campo é obrigatório se o objeto <strong><code>details.creditCard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.creditCard.beneficiary</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>CNPJ do beneficiário do pagamento, o campo é obrigatório se o objeto <strong><code>details.creditCard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.creditCard.capturedDate</code></td>\n<td>Verificar regra</td>\n<td>string(date-time)</td>\n<td>Data de captura do pagamento, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>, o campo é obrigatório se o objeto <strong><code>details.creditCard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.creditCard.installmentAmount</code></td>\n<td>Verificar regra</td>\n<td>number</td>\n<td>Valor da parcela do pagamento, o campo é obrigatório se o objeto <strong><code>details.creditCard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.creditCard.installments</code></td>\n<td>Verificar regra</td>\n<td>integer</td>\n<td>Quantidade de parcelas, o campo é obrigatório se o objeto <strong><code>details.creditCard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.creditCard.interestTotal</code></td>\n<td>Verificar regra</td>\n<td>number</td>\n<td>Total de juros, o campo é obrigatório se o objeto <strong><code>details.creditCard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.creditCard.issuer.custom</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Bandeira de cartão customizada, o campo é obrigatório se o objeto <strong><code>details.creditCard</code></strong> for obrigatório, e se não foi enviado o campo <strong><code>details.creditCard.issuer.standard</code></strong>.</td>\n</tr>\n<tr>\n<td><code>details.creditCard.issuer.standard</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Bandeira de cartão, informe <strong>AMEX</strong>, <strong>AURA</strong>, <strong>BANESCARD</strong>, <strong>CABAL</strong>, <strong>CREDZ</strong>, <strong>DINERS</strong>, <strong>DISCOVER</strong>, <strong>ELO</strong>, <strong>HIPER</strong>, <strong>HIPERCARD</strong>, <strong>JCB</strong>, <strong>MAIS</strong>, <strong>MASTER</strong>, <strong>OIPAGGO</strong>, <strong>SOROCRED</strong>, <strong>VISA</strong>, o campo é obrigatório se o objeto <strong><code>details.creditCard</code></strong> for obrigatório, e se não foi enviado o campo <strong><code>details.creditCard.issuer.custom</code></strong>.</td>\n</tr>\n<tr>\n<td><code>details.creditCard.nsu</code></td>\n<td>Verificar regra</td>\n<td>number</td>\n<td>Número sequencial gerado na transação financeira, o campo é obrigatório se o objeto <strong><code>details.creditCard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.creditCard.numberBin</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>6 primeiros dígitos do cartão de crédito, o campo é obrigatório se o objeto <strong><code>details.creditCard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.creditCard.paymentDate</code></td>\n<td>Verificar regra</td>\n<td>string(date-time)</td>\n<td>Data do pagamento, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>, o campo é obrigatório se o objeto <strong><code>details.creditCard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.custom</code></td>\n<td>Verificar regra</td>\n<td>object</td>\n<td>Informações detalhadas para o pagamento personalizados, esse tipo de pagamento deve ser acertado e configurado entre os sistemas que farão parte da integração, o objeto é obrigatório se o campo <strong><code>details.type</code></strong> for <strong>CUSTOM</strong>.</td>\n</tr>\n<tr>\n<td><code>details.custom.acquirer</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>CNPJ da instituição de pagamento, Adquirente ou Sub adquirente, o campo é obrigatório se o objeto <strong><code>details.custom</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.custom.acquirerState</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Sigla da UF da Instituição de pagamento, Adquirente ou Sub adquirente, o campo é obrigatório se o objeto <strong><code>details.custom</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.custom.beneficiary</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>CNPJ do beneficiário do pagamento, o campo é obrigatório se o objeto <strong><code>details.custom</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.custom.extensionAttributes</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Valor de metadados referente ao pagamento, o campo é obrigatório se o objeto <strong><code>details.custom</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.custom.installments</code></td>\n<td>Verificar regra</td>\n<td>integer</td>\n<td>Quantidade de parcelas, o campo é obrigatório se o objeto <strong><code>details.custom</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.custom.interestTotal</code></td>\n<td>Verificar regra</td>\n<td>number</td>\n<td>Total de juros, o campo é obrigatório se o objeto <strong><code>details.custom</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.custom.paymentDate</code></td>\n<td>Verificar regra</td>\n<td>string(date-time)</td>\n<td>Data do pagamento, o campo é obrigatório se o objeto <strong><code>details.custom</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.customerCredit</code></td>\n<td>Verificar regra</td>\n<td>object</td>\n<td>Informações detalhadas para o pagamento feito utilizando crédito em loja do cliente, o objeto é obrigatório se o campo <strong><code>details.type</code></strong> for <strong>CUSTOMERCREDIT</strong>.</td>\n</tr>\n<tr>\n<td><code>details.customerCredit.acquirer</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>CNPJ da instituição de pagamento, Adquirente ou Sub adquirente, o campo é obrigatório se o objeto <strong><code>details.customerCredit</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.customerCredit.acquirerState</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Sigla da UF da Instituição de pagamento, Adquirente ou Sub adquirente, o campo é obrigatório se o objeto <strong><code>details.customerCredit</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.customerCredit.beneficiary</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>CNPJ do beneficiário do pagamento, o campo é obrigatório se o objeto <strong><code>details.customerCredit</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.customerCredit.billingPlan</code></td>\n<td>Verificar regra</td>\n<td>number</td>\n<td>Identificador do pagamento, o campo é obrigatório se o objeto <strong><code>details.customerCredit</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.customerCredit.code</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Numero do vale, o campo é obrigatório se o objeto <strong><code>details.customerCredit</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.customerCredit.paymentDate</code></td>\n<td>Verificar regra</td>\n<td>string(date-time</td>\n<td>Data de pagamento, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>, o campo é obrigatório se o objeto <strong><code>details.customerCredit</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.debitCard</code></td>\n<td>Verificar regra</td>\n<td>object</td>\n<td>Informações detalhadas para o pagamento feito em cartão de débito, o objeto é obrigatório se o campo <strong><code>details.type</code></strong> for <strong>DEBITCARD</strong>.</td>\n</tr>\n<tr>\n<td><code>details.debitCard.acquirer</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>CNPJ da instituição de pagamento, Adquirente ou Sub adquirente, o campo é obrigatório se o objeto <strong><code>details.debitCard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.debitCard.acquirerState</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Sigla da UF da Instituição de pagamento, Adquirente ou Sub adquirente, o campo é obrigatório se o objeto <strong><code>details.debitCard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.debitCard.authorizationNumber</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Número de autorização do pagamento, o campo é obrigatório se o objeto <strong><code>details.debitCard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.debitCard.beneficiary</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>CNPJ do beneficiário do pagamento, o campo é obrigatório se o objeto <strong><code>details.debitCard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.debitCard.issuer.custom</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Bandeira de cartão customizada, o campo é obrigatório se o objeto <strong><code>details.debitCard</code></strong> for obrigatório, e se não foi enviado o campo <strong><code>details.debitCard.issuer.standard</code></strong>.</td>\n</tr>\n<tr>\n<td><code>details.debitCard.issuer.standard</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Bandeira de cartão, informe <strong>AMEX</strong>, <strong>AURA</strong>, <strong>BANESCARD</strong>, <strong>CABAL</strong>, <strong>CREDZ</strong>, <strong>DINERS</strong>, <strong>DISCOVER</strong>, <strong>ELO</strong>, <strong>HIPER</strong>, <strong>HIPERCARD</strong>, <strong>JCB</strong>, <strong>MAIS</strong>, <strong>MASTER</strong>, <strong>OIPAGGO</strong>, <strong>SOROCRED</strong>, <strong>VISA</strong>, o campo é obrigatório se o objeto <strong>details.debitCard</strong> for obrigatório, e se não foi enviado o campo <strong><code>details.debitCard.issuer.custom</code></strong>.</td>\n</tr>\n<tr>\n<td><code>details.debitCard.nsu</code></td>\n<td>Verificar regra</td>\n<td>number</td>\n<td>Número sequencial gerado na transação financeira, o campo é obrigatório se o objeto <strong><code>details.debitCard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.debitCard.paymentDate</code></td>\n<td>Verificar regra</td>\n<td>string(date-time)</td>\n<td>Data do pagamento, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>, o campo é obrigatório se o objeto <strong><code>details.debitCard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.deposit</code></td>\n<td>Verificar regra</td>\n<td>object</td>\n<td>Informações detalhadas para o pagamento feito via depósito bancário, o objeto é obrigatório se o campo <strong><code>details.type</code></strong> for <strong>DEPOSIT</strong>.</td>\n</tr>\n<tr>\n<td><code>details.deposit.acquirer</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>CNPJ da instituição de pagamento, Adquirente ou Sub adquirente, o campo é obrigatório se o objeto <strong><code>details.deposit</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.deposit.acquirerState</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Sigla da UF da Instituição de pagamento, Adquirente ou Sub adquirente, o campo é obrigatório se o objeto <strong><code>details.deposit</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.deposit.beneficiary</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>CNPJ do beneficiário do pagamento, o campo é obrigatório se o objeto <strong><code>details.deposit</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.deposit.number</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Número de identificação do depósito, o campo é obrigatório se o objeto <strong><code>details.deposit</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.deposit.paymentDate</code></td>\n<td>Verificar regra</td>\n<td>string(date-time)</td>\n<td>Data do pagamento, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>, o campo é obrigatório se o objeto <strong><code>details.deposit</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.loyaltyCard</code></td>\n<td>Verificar regra</td>\n<td>object</td>\n<td>Informações detalhadas para o pagamento feito em cartão de fidelidade, o objeto é obrigatório se o campo <strong><code>details.type</code></strong> for <strong>LOYALTYCARD</strong>.</td>\n</tr>\n<tr>\n<td><code>details.loyaltyCard.acquirer</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>CNPJ da instituição de pagamento, Adquirente ou Sub adquirente, o campo é obrigatório se o objeto <strong><code>details.loyaltyCard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.loyaltyCard.acquirerState</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Sigla da UF da Instituição de pagamento, Adquirente ou Sub adquirente, o campo é obrigatório se o objeto <strong><code>details.loyaltyCard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.loyaltyCard.beneficiary</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>CNPJ do beneficiário do pagamento, o campo é obrigatório se o objeto <strong><code>details.loyaltyCard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.loyaltyCard.paymentDate</code></td>\n<td>Verificar regra</td>\n<td>string(date-time)</td>\n<td>Data do pagamento, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>, o campo é obrigatório se o objeto <strong><code>details.loyaltyCard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.loyaltyCard.transactionId</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Identificador da transação, o campo é obrigatório se o objeto <strong><code>details.loyaltyCard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.pix</code></td>\n<td>Verificar regra</td>\n<td>object</td>\n<td>Informações detalhadas para o pagamento feito via PIX, o objeto é obrigatório se o campo <strong><code>details.type</code></strong> for <strong>PIX</strong>.</td>\n</tr>\n<tr>\n<td><code>details.pix.acquirer</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>CNPJ da instituição de pagamento, Adquirente ou Sub adquirente, o campo é obrigatório se o objeto <strong><code>details.pix</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.pix.acquirerState</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Sigla da UF da Instituição de pagamento, Adquirente ou Sub adquirente, o campo é obrigatório se o objeto <strong><code>details.pix</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.pix.bankCode</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Código do banco do cliente, o campo é obrigatório se o objeto <strong><code>details.pix</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.pix.beneficiary</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>CNPJ do beneficiário do pagamento, o campo é obrigatório se o objeto <strong><code>details.pix</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.pix.installmentAmount</code></td>\n<td>Verificar regra</td>\n<td>number</td>\n<td>Valor da parcela do pagamento, o campo é obrigatório se o objeto <strong><code>details.pix</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.pix.installments</code></td>\n<td>Verificar regra</td>\n<td>integer</td>\n<td>Quantidade de parcelas, o campo é obrigatório se o objeto <strong><code>details.pix</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.pix.paymentDate</code></td>\n<td>Verificar regra</td>\n<td>string(date-time)</td>\n<td>Data do pagamento, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>, o campo é obrigatório se o objeto <strong><code>details.pix</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.pix.transactionId</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Identificador da transação, o campo se torna obrigatório se o <strong><code>type</code></strong> for <strong>PIX</strong>.</td>\n</tr>\n<tr>\n<td><code>details.split</code></td>\n<td>Verificar regra</td>\n<td>object</td>\n<td>Informações detalhadas para o pagamento feito em boleto bancário, o campo é obrigatório se o objeto <strong><code>details.split</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.split.acquirer</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>CNPJ da instituição de pagamento, Adquirente ou Sub adquirente, o campo é obrigatório se o objeto <strong><code>details.split</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.split.acquirerState</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Sigla da UF da Instituição de pagamento, Adquirente ou Sub adquirente, o campo é obrigatório se o objeto <strong><code>details.split</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.split.beneficiary</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>CNPJ do beneficiário do pagamento, o campo é obrigatório se o objeto <strong><code>details.split</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.split.expirationDate</code></td>\n<td>Verificar regra</td>\n<td>string(date-time)</td>\n<td>Data de vencimento do boleto, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>, o campo é obrigatório se o objeto <strong><code>details.split</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.split.paymentDate</code></td>\n<td>Verificar regra</td>\n<td>string(date-time)</td>\n<td>Data do pagamento, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>, o campo é obrigatório se o objeto <strong><code>details.split</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.split.reconciliationNumber</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Código <strong>NossoNumero</strong> do boleto, o campo é obrigatório se o objeto <strong><code>details.split</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.transfer</code></td>\n<td>Verificar regra</td>\n<td>object</td>\n<td>Informações detalhadas para o pagamento feito via transferência bancária, o objeto é obrigatório se o campo <strong><code>details.type</code></strong> for <strong>TRANSFER</strong>.</td>\n</tr>\n<tr>\n<td><code>details.transfer.account</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Número da conta do clinte, o campo é obrigatório se o objeto <strong><code>details.transfer</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.transfer.acquirer</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>CNPJ da instituição de pagamento, Adquirente ou Sub adquirente, o campo é obrigatório se o objeto <strong><code>details.transfer</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.transfer.acquirerState</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Sigla da UF da Instituição de pagamento, Adquirente ou Sub adquirente, o campo é obrigatório se o objeto <strong><code>details.transfer</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.transfer.agency</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Número da agência bancária do cliente, o campo é obrigatório se o objeto <strong><code>details.transfer</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.transfer.bankCode</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Código do banco do cliente, o campo é obrigatório se o objeto <strong><code>details.transfer</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.transfer.beneficiary</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>CNPJ do beneficiário do pagamento, o campo é obrigatório se o objeto <strong><code>details.transfer</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.transfer.paymentDate</code></td>\n<td>Verificar regra</td>\n<td>string(date-time)</td>\n<td>Data do pagamento, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>, o campo é obrigatório se o objeto <strong><code>details.transfer</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.wallet</code></td>\n<td>Verificar regra</td>\n<td>object</td>\n<td>Informações detalhadas para o pagamento feito via carteiras eletrônicas, o objeto é obrigatório se o campo <strong><code>details.type</code></strong> for <strong>WALLET</strong>.</td>\n</tr>\n<tr>\n<td><code>details.wallet.acquirer</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>CNPJ da instituição de pagamento, Adquirente ou Sub adquirente, o campo é obrigatório se o objeto <strong><code>details.wallet</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.wallet.acquirerState</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Sigla da UF da Instituição de pagamento, Adquirente ou Sub adquirente, o campo é obrigatório se o objeto <strong><code>details.wallet</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.wallet.alias</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Identificação da carteira digital, informe <strong>AME</strong>, <strong>BANQI</strong>, <strong>MERCADOPAGO</strong>, <strong>PICPAY</strong>, o campo é obrigatório se o objeto <strong><code>details.wallet</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.wallet.bankCode</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Código do banco do cliente, o campo é obrigatório se o objeto <strong><code>details.wallet</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.wallet.beneficiary</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>CNPJ do beneficiário do pagamento, o campo é obrigatório se o objeto <strong><code>details.wallet</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.wallet.paymentDate</code></td>\n<td>Verificar regra</td>\n<td>string(date-time)</td>\n<td>Data do pagamento, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>, o campo é obrigatório se o objeto <strong><code>details.wallet</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.wallet.transactionId</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Identificador da transação, o campo é obrigatório se o objeto <strong><code>details.wallet</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>details.giftCard</code></td>\n<td>Verificar regra</td>\n<td>object</td>\n<td>Informações detalhadas para o pagamento feito com cartão de presente, o objeto é obrigatório se o campo <strong><code>details.type</code></strong> for <strong>GIFTCARD</strong>.</td>\n</tr>\n<tr>\n<td><code>details.giftCard.code</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Identificador do cartão de presente, o campo é obrigatório se o objeto <strong><code>details.giftcard</code></strong> for obrigatório.</td>\n</tr>\n<tr>\n<td><code>fraud</code></td>\n<td>Não</td>\n<td>object</td>\n<td>Informações referente à análise de risco de fraude do pagamento.</td>\n</tr>\n<tr>\n<td><code>fraud.analysisDate</code></td>\n<td>Não</td>\n<td>string(date-time)</td>\n<td>Data de realização da análise de fraude.</td>\n</tr>\n<tr>\n<td><code>fraud.score</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Pontuação relativa à análise de fruade.</td>\n</tr>\n<tr>\n<td><code>fraud.status</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Status da análise de pagamento, informe <strong>InAnalisys</strong> para informar que o pagamento está em análise de risco de fraude; <strong>Approved</strong> para informar que pagamento passou na análise de fraude; <strong>Refused</strong> para informar que o pagamento foi recusado na análise.</td>\n</tr>\n<tr>\n<td><code>fraud.vendor</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Identificação do responsável pela análise de risco de fraude.</td>\n</tr>\n<tr>\n<td><code>fraud.vendorStatus</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Status da análise de risco de fraude.</td>\n</tr>\n<tr>\n<td><code>isOnSitePayment</code></td>\n<td>Não</td>\n<td>boolean</td>\n<td>Indica que o pagamento será feito na retirada do produto na loja, aceita valores <strong>true</strong> ou <strong>false</strong>.</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"ede56d74-2362-47aa-bacb-adfba0dc60bf"},{"name":"Fulfillments","item":[],"id":"2dcb78fd-0576-4e41-adb8-29ce6ca6a177","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Payload com informações e regras para o envio do Object de Fulfillments, essa informação é utilizada em algumas publicações de mensagens do Maker IO.</p>\n<p><strong>Atenção</strong>: para saber se esse payload é utilizado no tópico que está tentando publicar, verifique na documentação do tópico, na tabela contendo os campos do payload, a coluna <strong>Descrição</strong> contém um link direcionando para os Arrays e Objects necessários para a publicação da mensagem.</p>\n<h3 id=\"descrição-dos-campos-do-payload\">Descrição dos campos do payload</h3>\n<p>O payload de <code>fulfillments</code> possui os seguintes campos e regras:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Obrigatório</th>\n<th>Tipo de dado</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>fulfillmentId</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do fulfillment.</td>\n</tr>\n<tr>\n<td><code>attributes</code></td>\n<td>Não</td>\n<td>array</td>\n<td>Informações referente aos atributos do fulfillment.</td>\n</tr>\n<tr>\n<td><code>attributes.description</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Descrição do atributo.</td>\n</tr>\n<tr>\n<td><code>attributes.id</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do atributo.</td>\n</tr>\n<tr>\n<td><code>attributes.value</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Valor do atributo.</td>\n</tr>\n<tr>\n<td><code>cancelReason</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Motivo de cancelamento do fulfillment, esse campo é obrigatório se o campo <code>status</code> for <strong>CANCELED</strong>.</td>\n</tr>\n<tr>\n<td><code>deliveredAt</code></td>\n<td>Verificar regra</td>\n<td>string(date-time)</td>\n<td>Data e hora de entrega do item do fulfillment, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td><code>items</code></td>\n<td>Sim</td>\n<td>array</td>\n<td>Lista de itens do fulfillment.</td>\n</tr>\n<tr>\n<td><code>items.name</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Título do SKU.</td>\n</tr>\n<tr>\n<td><code>items.quantity</code></td>\n<td>Sim</td>\n<td>integer</td>\n<td>Quantidade do SKU para o fulfillment.</td>\n</tr>\n<tr>\n<td><code>items.skuId</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do SKU.</td>\n</tr>\n<tr>\n<td><code>giftMessage</code></td>\n<td>Não</td>\n<td>object</td>\n<td>Informação referente à mensagem de presente entregue junto com o item.</td>\n</tr>\n<tr>\n<td><code>giftMessage.format</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Formato da mensagem de presente, informe <strong>TEXT</strong>, <strong>HTML</strong>, <strong>URL</strong>.</td>\n</tr>\n<tr>\n<td><code>giftMessage.value</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Mensagem de presente que será entregue junto com o item do fulfillment.</td>\n</tr>\n<tr>\n<td><code>invoices</code></td>\n<td>Verificar regra</td>\n<td>array</td>\n<td>Lista de notas fiscais do pedido, esse objeto é obrigatório se o <code>status</code> estiver como <strong>DELIVERED</strong>, <strong>INVOICED</strong> ou <strong>SHIPPED</strong>.</td>\n</tr>\n<tr>\n<td><code>invoices\\[\\].createdAt</code></td>\n<td>Sim</td>\n<td>string(date-time)</td>\n<td>Data de criação da nota fiscal, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td><code>invoices\\[\\].issuedAt</code></td>\n<td>Sim</td>\n<td>string(date-time)</td>\n<td>Data de emissão da nota fiscal, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td><code>invoices\\[\\].processedAt</code></td>\n<td>Sim</td>\n<td>string(date-time)</td>\n<td>Data de processamento da nota fiscal, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td><code>invoices\\[\\].type</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo da nota fiscal, informe <strong>SALE</strong> para nota fiscal de venda; <strong>RETURN</strong> para nota fiscal de retorno, quando não houve entrega; <strong>DEVOLUTION</strong> para nota fiscal de devolução.</td>\n</tr>\n<tr>\n<td><code>invoices\\[\\].nfe</code></td>\n<td>Sim</td>\n<td>object</td>\n<td>Objeto referente as informações da nota fiscal do fulfillment.</td>\n</tr>\n<tr>\n<td><code>invoices\\[\\].nfe.authorizationProtocol</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Protocolo de autorização da nota fiscal.</td>\n</tr>\n<tr>\n<td><code>invoices\\[\\].nfe.cfop</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Código fiscal da operação.</td>\n</tr>\n<tr>\n<td><code>invoices\\[\\].nfe.eletronicKey</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Chave da nota fiscal.</td>\n</tr>\n<tr>\n<td><code>invoices\\[\\].nfe.events</code></td>\n<td>Não</td>\n<td>array</td>\n<td>Lista de eventos vinculados à nota fiscal.</td>\n</tr>\n<tr>\n<td><code>invoices\\[\\].nfe.events\\[\\].createdAt</code></td>\n<td>Sim</td>\n<td>string(date-time)</td>\n<td>Lista de eventos vinculados à nota fiscal.</td>\n</tr>\n<tr>\n<td><code>invoices\\[\\].nfe.events\\[\\].eventType</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipos de eventos da nota fiscal, informe <strong>110110</strong> para carta de correção; <strong>110111</strong> para cancelamento normal; <strong>110112</strong> para cancelamento por substituição de nota; <strong>110130</strong> para comprovante de entrega; <strong>110140</strong> para emissão em contingência; <strong>110192</strong> para informar insucesso na entrega; <strong>210200</strong> para confirmação da operação; <strong>210210</strong> para ciência da operação; <strong>210220</strong> para desconhecimento da operação; <strong>210240</strong> para operação não realizada.</td>\n</tr>\n<tr>\n<td><code>invoices\\[\\].nfe.events\\[\\].eventXml</code></td>\n<td>Não</td>\n<td>string</td>\n<td>URL para acesso ao XML do evento.</td>\n</tr>\n<tr>\n<td><code>invoices\\[\\].nfe.events\\[\\].eventXmlContent</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Conteúdo do XML do evento.</td>\n</tr>\n<tr>\n<td><code>invoices\\[\\].nfe.invoicePdf</code></td>\n<td>Não</td>\n<td>string</td>\n<td>URL para acesso ao PDF da nota fiscal.</td>\n</tr>\n<tr>\n<td><code>invoices\\[\\].nfe.invoiceXml</code></td>\n<td>Não</td>\n<td>string</td>\n<td>URL para acesso ao XML da nota fiscal.</td>\n</tr>\n<tr>\n<td><code>invoices\\[\\].nfe.invoiceXmlContent</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Conteúdo do XML da nota fiscal.</td>\n</tr>\n<tr>\n<td><code>invoices\\[\\].nfe.operation</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Descrição do CFOP da nota.</td>\n</tr>\n<tr>\n<td><code>invoices\\[\\].nfe.serialNumber</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Série da nota fiscal.</td>\n</tr>\n<tr>\n<td><code>invoices\\[\\].nfe.observation</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Observação da nota fiscal.</td>\n</tr>\n<tr>\n<td><code>invoices\\[\\].number</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Número da nota fiscal.</td>\n</tr>\n<tr>\n<td><code>isTransfer</code></td>\n<td>Não</td>\n<td>boolean</td>\n<td>Indica que este fulfillment é uma transferência dos produtos para outra location. Neste caso o endereço de entrega deste fulfillment será o da location de destino, aceita valores <strong>true</strong> ou <strong>false</strong>.</td>\n</tr>\n<tr>\n<td><code>locationId</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do local de expedição.</td>\n</tr>\n<tr>\n<td><code>type</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo de entrega do fulfillment, informe <strong>SHIPMENT</strong> para informar que o fulfillment será enviado por meio de transportadora e <strong>PICKUP</strong> para informar que o fulfillment será retirado em loja ou CD.</td>\n</tr>\n<tr>\n<td><code>shipment</code></td>\n<td>Verificar regra</td>\n<td>object</td>\n<td>Informação referente ao envio da mercadoria, é obrigatório quando o campo <code>fulfillment.type</code> for <strong>SHIPMENT</strong>, as regras e descrições dos campos do objeto estão disponíveis na seção <a href=\"#b18cfdd3-da48-489d-aa76-beee7be2430e\"><b>Shipment</b></a>.</td>\n</tr>\n<tr>\n<td><code>pickup</code></td>\n<td>Não</td>\n<td>object</td>\n<td>Informação referente à retirada da mercadoria em loja ou CD, é obrigatório quando o campo <code>fulfillment.type</code> for <strong>PICKUP</strong>, as regras e descrições dos campos do objeto estão disponíveis na seção <a href=\"#5b57dcbc-f1e5-498a-a1e3-7288f8c76da2\"><b>Pickup</b></a>.</td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Status da entrega, informe <strong>PENDING</strong> para aguardando pagamento; <strong>WAITING</strong> para aguardando início da separação; <strong>PICKING</strong> para informar que o fulfillment está em processo de separação; <strong>CHECKED</strong> para informar que o fulfillment foi conferido e separado; <strong>BILLING</strong> para informar que o fulfillment está liberado para o faturamento; <strong>BILLING_CONFIRMATION</strong> para informar que o fulfillment foi confirmado no PDV e está pronto para faturamento; <strong>INVOICED</strong> para informar que o fulfillment está faturado; <strong>SHIPPED</strong> para informar que o fulfillment foi enviado para o destinatário; <strong>PICKUP_READY</strong> pronto para informar que o produto está pronto para retirada em loja; <strong>DELIVERED</strong> para informar que o fulfillment foi entregue; <strong>CANCELED</strong>: para informar que o fulfillment foi cancelado.</td>\n</tr>\n<tr>\n<td><code>relatedFulfillmentIds</code></td>\n<td>Não</td>\n<td>array(string)</td>\n<td>Lista de identificadores de fulfillments que esse fulfillment é dependente.</td>\n</tr>\n<tr>\n<td><code>scheduledDeliveryDate</code></td>\n<td>Não</td>\n<td>string(date-time)</td>\n<td>Data e hora de agendamento da entrega, aceita formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td><code>scheduledDeliveryHours</code></td>\n<td>Não</td>\n<td>object</td>\n<td>Lista com os horários agendados para entrega.</td>\n</tr>\n<tr>\n<td><code>scheduledDeliveryHours.from</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Horário inicial agendado para entrega, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a> para horário.</td>\n</tr>\n<tr>\n<td><code>scheduledDeliveryHours.to</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Horário final agendado para entrega, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a> para horário.</td>\n</tr>\n<tr>\n<td><code>scheduledDeliveryPeriod</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Período do dia agendado para a entrega.</td>\n</tr>\n<tr>\n<td><code>sellerBroker.documentNumber</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Número do CNPJ do intermediador da transação(agenciador, plataforma de delivery, marketplace e similar).</td>\n</tr>\n<tr>\n<td><code>sellerBroker.sellerId</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Identificador do cadastro do intermediador.</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"2dcb78fd-0576-4e41-adb8-29ce6ca6a177"},{"name":"Shipment","item":[],"id":"16ed1771-37c4-41fb-a6a1-17819183251a","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Payload com informações e regras para o envio do Object de Shipment, aqui são enviados os dados referente ao transporte da mercadoria, informações sobre a transportadora e documentos fiscais do transporte. Essa informação é utilizada em algumas publicações de mensagens do Maker IO.</p>\n<p><strong>Atenção</strong>: para saber se esse payload é utilizado no tópico que está tentando publicar, verifique na documentação do tópico, na tabela contendo os campos do payload, a coluna <strong>Descrição</strong> contém um link direcionando para os Arrays e Objects necessários para a publicação da mensagem.</p>\n<h3 id=\"descrição-dos-campos-do-payload\">Descrição dos campos do payload</h3>\n<p>O payload de <code>shipment</code> possui os seguintes campos e regras:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Obrigatório</th>\n<th>Tipo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>shipment.address</code></td>\n<td>Verificar regra</td>\n<td>object</td>\n<td>Informações referente ao endereço de entrega do pedido, para verificar as regras do objeto favor verificar na seção <a href=\"#6a0bd1da-969e-4b17-a219-9d0de72591ec\"><b>Address</b></a>, na tabela estão especificados os campos obrigatórios e as suas regras. O objeto é obrigatório se o <code>fulfillment.type</code> <strong>for</strong> <strong>SHIPMENT.</strong></td>\n</tr>\n<tr>\n<td><code>shipment.amount</code></td>\n<td>Verificar regra</td>\n<td>number</td>\n<td>Valor do frete, o campo é obrigatório se o <code>fulfillment.type</code> for <strong>SHIPMENT</strong>.</td>\n</tr>\n<tr>\n<td><code>shipment.carrier</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Transportadora responsável pelo envio do produto no fulfillment, informe <strong>Abbiamo</strong>, <strong>AmericanasEntrega</strong>, <strong>Angels</strong>, <strong>Axado</strong>, <strong>Azul</strong>, <strong>BeeDelivery</strong>, <strong>Bielog</strong>, <strong>Braspress</strong>, <strong>CarbonoZero</strong>, <strong>Carriers</strong>, <strong>CliqueRetire</strong>, <strong>Complog</strong>, <strong>Correios</strong>, <strong>DHL</strong>, <strong>DataFrete</strong>, <strong>DeliveryCenter</strong>, <strong>EuEntrego</strong>, <strong>FastCourier</strong>, <strong>Fedex</strong>, <strong>Focco</strong>, <strong>FreteRapido</strong>, <strong>GreensLogExpress</strong>, <strong>IFood</strong>, <strong>Intelipost</strong>, <strong>JJSUL</strong>, <strong>JTT</strong>, <strong>JadLog</strong>, <strong>Jamef</strong>, <strong>LDL</strong>, <strong>LSTranslog</strong>, <strong>Loggi</strong>, <strong>LogManager</strong>, <strong>Lupeon</strong>, <strong>Mandae</strong>, <strong>MandaBem</strong>, <strong>MagaluEntregas</strong>, <strong>MercadoEnvios</strong>, <strong>Movvi</strong>, <strong>NossoCarro</strong>, <strong>NowLogistics</strong>, <strong>Ontime</strong>, <strong>Pedala</strong>, <strong>Personalizado</strong>, <strong>Rapiddo</strong>, <strong>Rappi</strong>, <strong>RedeSul</strong>, <strong>Rodoe</strong>, <strong>RodoWeb</strong>, <strong>Sequoia</strong>, <strong>SimFrete</strong>, <strong>Sislogica</strong>, <strong>StoneLog</strong>, <strong>SmartLog</strong>, <strong>TRB</strong>, <strong>TotalExpress</strong>, <strong>Transfolha</strong>, <strong>Uber</strong>, <strong>Uello</strong>, <strong>Vblog</strong>, <strong>Veloo</strong>, <strong>Venuxx</strong>, <strong>Vipp</strong> ou <strong>YellowLog</strong>.</td>\n</tr>\n<tr>\n<td><code>shipment.carrierInfo</code></td>\n<td>Não</td>\n<td>object</td>\n<td>Informações para identificação da transportadora.</td>\n</tr>\n<tr>\n<td><code>shipment.carrierInfo.alias</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Descrição da transportadora, informe <strong>Abbiamo</strong>, <strong>AmericanasEntrega</strong>, <strong>Angels</strong>, <strong>Axado</strong>, <strong>Azul</strong>, <strong>BeeDelivery</strong>, <strong>Bielog</strong>, <strong>Braspress</strong>, <strong>CarbonoZero</strong>, <strong>Carriers</strong>, <strong>CliqueRetire</strong>, <strong>Complog</strong>, <strong>Correios</strong>, <strong>DHL</strong>, <strong>DataFrete</strong>, <strong>DeliveryCenter</strong>, <strong>EuEntrego</strong>, <strong>FastCourier</strong>, <strong>Fedex</strong>, <strong>Focco</strong>, <strong>FreteRapido</strong>, <strong>GreensLogExpress</strong>, <strong>IFood</strong>, <strong>Intelipost</strong>, <strong>JJSUL</strong>, <strong>JTT</strong>, <strong>JadLog</strong>, <strong>Jamef</strong>, <strong>LDL</strong>, <strong>LSTranslog</strong>, <strong>Loggi</strong>, <strong>LogManager</strong>, <strong>Lupeon</strong>, <strong>Mandae</strong>, <strong>MandaBem</strong>, <strong>MagaluEntregas</strong>, <strong>MercadoEnvios</strong>, <strong>Movvi</strong>, <strong>NossoCarro</strong>, <strong>NowLogistics</strong>, <strong>Ontime</strong>, <strong>Pedala</strong>, <strong>Personalizado</strong>, <strong>Rapiddo</strong>, <strong>Rappi</strong>, <strong>RedeSul</strong>, <strong>Rodoe</strong>, <strong>RodoWeb</strong>, <strong>Sequoia</strong>, <strong>SimFrete</strong>, <strong>Sislogica</strong>, <strong>SmartLog</strong>, <strong>StoneLog</strong>, <strong>TRB</strong>, <strong>TotalExpress</strong>, <strong>Transfolha</strong>, <strong>Uber</strong>, <strong>Uello</strong>, <strong>Vblog</strong>, <strong>Veloo</strong>, <strong>Venuxx</strong>, <strong>Vipp</strong>, <strong>YellowLog</strong>, o campo é obrigatório se o <code>fulfillment.type</code> for <strong>SHIPMENT</strong>.</td>\n</tr>\n<tr>\n<td><code>shipment.carrierInfo.id</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Identificador do contrato de frete, transportadora ou id de integração.</td>\n</tr>\n<tr>\n<td><code>shipment.carrierInfo.name</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Nome da transportadora.</td>\n</tr>\n<tr>\n<td><code>shipment.cost</code></td>\n<td>Não</td>\n<td>number</td>\n<td>Valor de custo do frete.</td>\n</tr>\n<tr>\n<td><code>shipment.daysToDelivery</code></td>\n<td>Verificar regra</td>\n<td>string(date-time)</td>\n<td>Quantidade de dias estimada para a entrega, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>, o campo é obrigatório se o <code>fulfillment.type</code> for <strong>SHIPMENT</strong>.</td>\n</tr>\n<tr>\n<td><code>shipment.deliveryDate</code></td>\n<td>Verificar regra</td>\n<td>string(date-time)</td>\n<td>Data estimada para a entrega, o campo é obrigatório se o <code>fulfillment.type</code> for <strong>SHIPMENT</strong>.</td>\n</tr>\n<tr>\n<td><code>shipment.discount</code></td>\n<td>Não</td>\n<td>number</td>\n<td>Valor de desconto do frete.</td>\n</tr>\n<tr>\n<td><code>shipment.method</code></td>\n<td>Verificar regra</td>\n<td>string</td>\n<td>Nome do meio de entrega, o campo é obrigatório se o <code>fulfillment.type</code> for <strong>SHIPMENT</strong>.</td>\n</tr>\n<tr>\n<td><code>shipment.trackingCode</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Código de rastreio para o fulfillment.</td>\n</tr>\n<tr>\n<td><code>shipment.trackingUrl</code></td>\n<td>Não</td>\n<td>string</td>\n<td>URL de rastreio para o fulfillment.</td>\n</tr>\n<tr>\n<td><code>shipment.transportDocuments</code></td>\n<td>Não</td>\n<td>array</td>\n<td>Lista referente aos documentos do transporte.</td>\n</tr>\n<tr>\n<td><code>shipment.transportDocuments\\[\\].createdAt</code></td>\n<td>Sim</td>\n<td>string(date-time)</td>\n<td>Data de criação do documento de transporte.</td>\n</tr>\n<tr>\n<td><code>shipment.transportDocuments\\[\\].cte.authorizationProtocol</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Protocolo de autorização do documento de transporte.</td>\n</tr>\n<tr>\n<td><code>shipment.transportDocuments\\[\\].cte.cfop</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Código fiscal da operação do documento de transporte.</td>\n</tr>\n<tr>\n<td><code>shipment.transportDocuments\\[\\].cte.ctePdf</code></td>\n<td>Não</td>\n<td>string</td>\n<td>URL de acesso ao PDF do documento de transporte.</td>\n</tr>\n<tr>\n<td><code>shipment.transportDocuments\\[\\].cte.cteXml</code></td>\n<td>Não</td>\n<td>string</td>\n<td>URL de acesso ao XML do documento de transporte.</td>\n</tr>\n<tr>\n<td><code>shipment.transportDocuments\\[\\].cte.cteXmlContent</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Conteúdo do XML do documento de transporte.</td>\n</tr>\n<tr>\n<td><code>shipment.transportDocuments\\[\\].cte.eletronicKey</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Chave do documento de transporte.</td>\n</tr>\n<tr>\n<td><code>shipment.transportDocuments\\[\\].cte.events</code></td>\n<td>Não</td>\n<td>array</td>\n<td>Lista de eventos do CTe.</td>\n</tr>\n<tr>\n<td><code>shipment.transportDocuments\\[\\].cte.events\\[\\].createdAt</code></td>\n<td>Sim</td>\n<td>string(date-time)</td>\n<td>Data e hora de criação do evento.</td>\n</tr>\n<tr>\n<td><code>shipment.transportDocuments\\[\\].cte.events\\[\\].eventType</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo do evento, informe <strong>110110</strong> para carta de correção; <strong>110111</strong> para cancelamento normal; <strong>110113</strong> para evento prévio de emissão em contingência; <strong>110180</strong> para insucesso na entrega; <strong>610110</strong> para prestação de serviço em desacordo.</td>\n</tr>\n<tr>\n<td><code>shipment.transportDocuments\\[\\].cte.events\\[\\].eventXml</code></td>\n<td>Não</td>\n<td>string</td>\n<td>URL de acesso ao XML do evento.</td>\n</tr>\n<tr>\n<td><code>shipment.transportDocuments\\[\\].cte.events\\[\\].eventXmlContent</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Conteúdo do XML do evento.</td>\n</tr>\n<tr>\n<td><code>shipment.transportDocuments\\[\\].cte.events\\[\\].eventXml</code></td>\n<td>Não</td>\n<td>string</td>\n<td>URL de acesso ao XML do evento.</td>\n</tr>\n<tr>\n<td><code>shipment.transportDocuments\\[\\].cte.observation</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Observação do documento de transporte eletrônico.</td>\n</tr>\n<tr>\n<td><code>shipment.transportDocuments\\[\\].cte.operation</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Descrição do CFOP.</td>\n</tr>\n<tr>\n<td><code>shipment.transportDocuments\\[\\].cte.serialNumber</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Série do documento de transporte eletrônico.</td>\n</tr>\n<tr>\n<td><code>shipment.transportDocuments\\[\\].issuedAt</code></td>\n<td>Sim</td>\n<td>string(date-time)</td>\n<td>Data e hora da emissão do documento de transporte, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td><code>shipment.transportDocuments\\[\\].number</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Número do Documento de Transporte.</td>\n</tr>\n<tr>\n<td><code>shipment.transportDocuments\\[\\].processedAt</code></td>\n<td>Sim</td>\n<td>string(date-time)</td>\n<td>Data e hora de processamento do documento de transporte, aceita o formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td><code>shipment.transportDocuments\\[\\].type</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo do documento de transporte, informe <strong>SALE</strong> para documento de transporte de venda; <strong>RETURN</strong> para documento de transporte de retorno de mercadoria; <strong>DEVOLUTION</strong> para documento de transporte de devolução de mercadoria.</td>\n</tr>\n<tr>\n<td><code>shipment.type</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo do envio, informe <strong>SHIPMENT_BY_CARRIER</strong> para envio feito por uma transportadora; <strong>SHIPMENT_BY_STORE</strong> para envio feito diretamente pela loja; <strong>SHIPMENT_BY_MARKETPLACE</strong> para envio realizado pelo Marketplace.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes</code></td>\n<td>Não</td>\n<td>array</td>\n<td>Informação referente aos volumes utilizados pela logística para o envio dos ítens.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes\\[\\].height</code></td>\n<td>Sim</td>\n<td>object</td>\n<td>Informação referente à altura da mercadoria com a embalagem de transporte.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes\\[\\].height.unit</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Unidade de medida para a altura da mercadoria, o padrão é <strong>cm</strong>.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes\\[\\].height.value</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Valor da altura da mercadoria considernado a embalagem de transporte.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes\\[\\].lenght</code></td>\n<td>Sim</td>\n<td>object</td>\n<td>Informação referente ao comprimento da mercadoria com a embalagem de transporte.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes\\[\\].lenght.unit</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Unidade de medida para ao comprimento da mercadoria, o padrão é <strong>cm</strong>.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes\\[\\].lenght.value</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Valor do comprimento da mercadoria considernado a embalagem de transporte.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes\\[\\].width</code></td>\n<td>Sim</td>\n<td>object</td>\n<td>Informação referente à largura da mercadoria com a embalagem de transporte.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes\\[\\].width.unit</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Unidade de medida para a largura da mercadoria, o padrão é <strong>cm</strong>.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes\\[\\].width.value</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Valor da largura da mercadoria considernado a embalagem de transporte.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes\\[\\].weigth</code></td>\n<td>Sim</td>\n<td>object</td>\n<td>Informação referente ao peso da mercadoria com a embalagem de transporte.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes\\[\\].weigth.unit</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Unidade de medida para o peso da mercadoria, o padrão é <strong>cm</strong>.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes\\[\\].weigth.value</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Valor do peso da mercadoria considernado a embalagem de transporte.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes\\[\\].volume</code></td>\n<td>Não</td>\n<td>object</td>\n<td>Informação referente ao peso da mercadoria com a embalagem de transporte.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes\\[\\].volume.unit</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Unidade de medida para o volume da mercadoria, o padrão é <strong>cm³</strong>.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes\\[\\].volume.value</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Valor do volume da mercadoria considernado a embalagem de transporte.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes\\[\\].items</code></td>\n<td>Sim</td>\n<td>array</td>\n<td>Informação referente aos itens do envio.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes\\[\\].items\\[\\].quantity</code></td>\n<td>Sim</td>\n<td>integer</td>\n<td>Quantidade do SKU que será enviado no volume.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes\\[\\].items\\[\\].skuId</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do SKU que será enviado no volume.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes\\[\\].totalQuantity</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Quantitade total de SKUs serão enviados no volume.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes\\[\\].invoiceEletronicKey</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Chave da nota fiscal gerada no faturamento do fulfillment ou pedido.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes\\[\\].trackingCode</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Código de rastreio vinculado ao volume.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes\\[\\].trackingUrl</code></td>\n<td>Não</td>\n<td>string</td>\n<td>URL de rastreio gerada para o volume.</td>\n</tr>\n<tr>\n<td><code>shipment.volumes\\[\\].type</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Tipo do volume, informe <strong>BOX</strong> para embalagem do tipo caixa; <strong>BAG</strong> para embalagem do tipo sacola; <strong>PACKAGE</strong> para embalagem do tipo pacote; <strong>ENVELOPE</strong> para embalagem do tipo carta; <strong>PALLET</strong> para suporte para empilhamento de carga; <strong>TUBE</strong> para embalagens cilíndricas.</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"16ed1771-37c4-41fb-a6a1-17819183251a"},{"name":"Pickup","item":[],"id":"124673d1-354b-4f46-a787-802caf25ca1b","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Payload com informações e regras para o envio do Object de Pickup, aqui são enviados os dados referente à retirada da mercadoria em loja ou em local determinado. Essa informação é utilizada em algumas publicações de mensagens do Maker IO.</p>\n<p><strong>Atenção</strong>: para saber se esse payload é utilizado no tópico que está tentando publicar, verifique na documentação do tópico, na tabela contendo os campos do payload, a coluna <strong>Descrição</strong> contém um link direcionando para os Arrays e Objects necessários para a publicação da mensagem.</p>\n<h3 id=\"descrição-dos-campos-do-payload\">Descrição dos campos do payload</h3>\n<p>O payload de <code>pickup</code> possui os seguintes campos e regras:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Obrigatório</th>\n<th>Tipo de dado</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>type</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo da operação do pickup, informe <strong>SHIPTO_INLOCKER</strong> para retirada em uma loja diferente da loja que fez o faturamento do pedido ou retirada em loja diferente da loja que tem o estoque do produto; <strong>STANDARD</strong> para retirada na loja com faturamento pela própria filial onde será feita a retirada.</td>\n</tr>\n<tr>\n<td><code>lockerId</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador do ponto de retirada.</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>Sim</td>\n<td>number</td>\n<td>Valor cobrado do cliente para retirada, informar 0.00 se não tiver taxa de retirada.</td>\n</tr>\n<tr>\n<td><code>daysToPickup</code></td>\n<td>Sim</td>\n<td>number</td>\n<td>Quantidade de dias até a retirada da mercadoria ficar disponível.</td>\n</tr>\n<tr>\n<td><code>personToPickup</code></td>\n<td>Não</td>\n<td>object</td>\n<td>Identificação da pessoa autorizada a retirar a mercadoria no lugar do cliente do pedido.</td>\n</tr>\n<tr>\n<td><code>personToPickup.name</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Nome da pessoa que irá retirar a mercadoria no lugar do cliente.</td>\n</tr>\n<tr>\n<td><code>personToPickup.documentType</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo do documento da pessoa que irá retirar a mercadoria, informe <strong>RG</strong>, <strong>CPF</strong>, <strong>NOT INFORMED</strong>.</td>\n</tr>\n<tr>\n<td><code>personToPickup.documentNumber</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Número do documento da pessoa que irá retirar a mercadoria.</td>\n</tr>\n<tr>\n<td><code>address</code></td>\n<td>Sim</td>\n<td>object</td>\n<td>Informação referente ao endereço de retirada da mercadoria, as regras e descrições dos campos do objeto estão disponíveis na seção <a href=\"#6a0bd1da-969e-4b17-a219-9d0de72591ec\"><b>Address</b></a>.</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"124673d1-354b-4f46-a787-802caf25ca1b"}],"id":"e5dc2538-5550-449a-9cc6-c68cfa5f830d","description":"<p>Nessa seção são disponibilizados os payloads que complementam a informação necessária para a publicação de mensagens. Eles foram deixados separados para que a documentação no tópico não ficasse muito extensa. Esses payloads devem ser enviados junto com o payload de publicação do tópico correspondente, conforme a obrigatoriedade de cada campo. As regras de funcionamento, quando tiver, estão disponibilizadas na coluna <strong>Descrição</strong>.</p>\n","_postman_id":"e5dc2538-5550-449a-9cc6-c68cfa5f830d"}],"id":"1deb6f21-f1e5-4e43-a634-072bf119aa5c","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Este grupo reúne os endpoints responsáveis pela publicação de eventos na plataforma Maker IO.</p>\n<p>Os eventos publicados representam alterações de negócio ocorridas nos sistemas integrados, como criação de pedidos, atualização de estoque, alteração de preços, cadastro de produtos, mudanças no processo logístico e demais informações necessárias para sincronização entre aplicações.</p>\n<p>Cada endpoint é responsável pela publicação de um tipo específico de evento (Topic). Após o recebimento da mensagem, a plataforma Maker IO irá fazer o roteamento para todas as aplicações que possuam assinatura ativa para o respectivo tópico e aplicação de origem.</p>\n<p>Para realizar a publicação de mensagens, é necessário que a aplicação possua permissão para publicar no tópico desejado e utilize um token de autenticação válido.</p>\n<h3 id=\"boas-práticas-e-diretrizes-de-governança\">Boas Práticas e Diretrizes de Governança</h3>\n<ul>\n<li><p><strong>Chaves de Idempotência:</strong> Todo payload deve conter uma chave primária de identificação do recurso de origem, ou <code>entityId</code> (ex.: <code>orderId</code>, <code>skuId</code>, <code>customerId</code>). Sistemas consumidores usam essa chave para evitar o reprocessamento de eventos duplicados.</p>\n</li>\n<li><p><strong>Padronização de Datas:</strong> Todas as propriedades de data e hora no payload devem utilizar a norma <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a> com fuso horário (ex.: <code>2026-09-24T17:00:00Z</code> ou <code>2026-09-24T14:00:00-03:00</code>).</p>\n</li>\n<li><p><strong>Granularidade dos Tópicos:</strong> Publique apenas informações pertinentes ao escopo do tópico. Se o evento é uma atualização exclusiva de preço, utilize o tópico <code>price</code> em vez de publicar um cadastro completo no tópico <code>product</code>.</p>\n</li>\n<li><p><strong>Tratamento de Erros HTTP na Publicação:</strong></p>\n<ul>\n<li><p><code>401 Unauthorized</code>: Token de autenticação expirado ou inválido.</p>\n</li>\n<li><p><code>403 Forbidden</code>: A aplicação não possui permissão de <code>PUBLISH</code> para o tópico indicado.</p>\n</li>\n<li><p><code>400 Bad Request</code>: Payload JSON malformado ou violando a estrutura exigida pelo tópico.</p>\n</li>\n<li><p><code>429 Too Many Requests</code>: Limite de taxa de publicação (<em>rate limit</em>) atingido pela aplicação.</p>\n</li>\n</ul>\n</li>\n</ul>\n","_postman_id":"1deb6f21-f1e5-4e43-a634-072bf119aa5c"},{"name":"Consume Message","item":[{"name":"Location","item":[{"name":"Location","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if(Math.trunc(pm.response.code / 100) === 2){\r\n    var jsonData = pm.response.json();\r\n\r\n    if(jsonData.messages.length > 0){\r\n        var message = jsonData.messages[0];\r\n        pm.environment.set(\"receiptId\", message.receiptId);\r\n        pm.environment.set(\"messageId\", message.messageId);\r\n        pm.environment.set(\"entityId\",  getEntityId(pm.environment.get(\"consume-topicId\"), message[\"body\"]));\r\n\r\n        if(pm.environment.get(\"consume-topicId\") === \"carrier-order-notify\"){\r\n            \r\n            pm.environment.set(\"orderId\",  message.body.orderId);\r\n            pm.environment.set(\"invoiceNumber\",  message.body.invoices[0].number);\r\n            pm.environment.set(\"carrier\",  message.body.shipment.carrier);\r\n            pm.environment.set(\"method\",  message.body.shipment.method);\r\n            pm.environment.set(\"trackingCode\",  message.body.shipment.trackingCode);\r\n\r\n        }\r\n\r\n    }\r\n\r\n}\r\n\r\nfunction getEntityId(topicId, message){\r\n    switch(topicId){\r\n        case \"carrier\":\r\n            return message[\"carrierId\"];\r\n        case \"location\":\r\n            return message[\"locationId\"];\r\n        case \"product\":\r\n            return message[\"productId\"];\r\n        case \"order\":\r\n        case \"order-treatment\":\r\n        case \"order-exception\":\r\n        case \"order-payment-status\":\r\n        case \"carrier-order-notify\":\r\n        case \"fulfillment-status\":\r\n            return message[\"orderId\"]\r\n        case \"price\":\r\n        case \"sku\":\r\n        case \"stock\":\r\n            return message[\"skuId\"]\r\n        case \"feedback\":\r\n                return message[\"entityId\"]\r\n        default:\r\n            return null;\r\n    }\r\n}\r\n"],"id":"b72b1727-5223-48bd-bce9-5b4fc393acb8"}}],"id":"08dd6130-f1dc-4349-9bfd-d2a2e0bcbbb1","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"GET","header":[],"url":"{{api-host}}/v2/applications/{{app-id}}/topics/location/queues/{{queueId}}/messages","description":"<p>Para que os campos possam retornar no endpoint de <code>GET Location</code>, eles precisam ser publicados pela Aplicação Origem na mensagem, já que somente alguns campos são obrigatórios na publicação da mensagem, o retorno também pode variar. O endpoint pode retornar os campos abaixo:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>messages[].messageId</code></td>\n<td>Código Identificador da mensagem que está sendo consumida, esse código é um UUID.</td>\n</tr>\n<tr>\n<td><code>messages[].body</code></td>\n<td>Objeto com as informações da mensagem publicada, os campos que retornam aqui variam conforme o tópico da mensagem.</td>\n</tr>\n<tr>\n<td><code>messages[].body.locationId</code></td>\n<td>Código identificador da location.</td>\n</tr>\n<tr>\n<td><code>messages[].body.locationCode</code></td>\n<td>Código de referência ou sigla operacional da localização.</td>\n</tr>\n<tr>\n<td><code>messages[].body.name</code></td>\n<td>Nome de exibição da localização.</td>\n</tr>\n<tr>\n<td><code>messages[].body.enabled</code></td>\n<td>Informa se a localização está ativa, informe <strong>true</strong> ou <strong>false</strong>.</td>\n</tr>\n<tr>\n<td><code>messages[].body.type</code></td>\n<td>Tipo da localização, apresenta <strong>DISTRIBUTION CENTER</strong> para centro de distribuição; <strong>STORE</strong> para loja; <strong>FRINCHISE</strong> para franquia.</td>\n</tr>\n<tr>\n<td><code>messages[].body.updatedAt</code></td>\n<td>Data e hora de atualização no formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td><code>messages[].body.companyName</code></td>\n<td>Razão Social da empresa ou filial associada.</td>\n</tr>\n<tr>\n<td><code>messages[].body.email</code></td>\n<td>E-mail de contato principal da location.</td>\n</tr>\n<tr>\n<td><code>messages[].body.phone</code></td>\n<td>Telefone principal de contato da location.</td>\n</tr>\n<tr>\n<td><code>messages[].body.pickupEnabled</code></td>\n<td>Indica se a location permite a retirada de produtos em loja, aceita valores <strong>true</strong> ou <strong>false</strong>, o padrão é <strong>false</strong>.</td>\n</tr>\n<tr>\n<td><code>messages[].body.shipmentEnabled</code></td>\n<td>Indica se a location permite o envio de produtos aos clientes, aceita valores <strong>true</strong> ou <strong>false</strong>, o padrão é <strong>false</strong>.</td>\n</tr>\n<tr>\n<td><code>messages[].body.handlingDays</code></td>\n<td>Quantidade de dias necessários para manuseio ou preparação de produtos.</td>\n</tr>\n<tr>\n<td><code>messages[].body.pickupDeadline</code></td>\n<td>Prazo limite em dias para o cliente retirar o pedido na loja após ser notificado.</td>\n</tr>\n<tr>\n<td><code>messages[].body.createdAt</code></td>\n<td>Data e hora de criação do registro no sistema de origem no formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td><code>messages[].body.address</code></td>\n<td>Objeto contendo os dados de endereço da location, para verificar os campos do objeto favor verificar na seção <a href=\"#6a0bd1da-969e-4b17-a219-9d0de72591ec\"><b>Address</b></a>, por se tratar de um retorno do <code>GET location</code> as obrigatoriedades descritas lá podem ser desconsideradas.</td>\n</tr>\n<tr>\n<td><code>messages[].body.documentNumber</code></td>\n<td>Objeto com a documentação fiscal da location.</td>\n</tr>\n<tr>\n<td><code>messages[].body.documentNumber.cnpj</code></td>\n<td>Número do CNPJ da location, informar sem pontuação ou caracteres especiais.</td>\n</tr>\n<tr>\n<td><code>messages[].body.documentNumber.ie</code></td>\n<td>Número da Inscrição Estadual da location.</td>\n</tr>\n<tr>\n<td><code>messages[].body.workingDays</code></td>\n<td>Objeto com as informações de dias e horário de funcionamento da location, informar o horário no formato <a href=\"https://pt.wikipedia.org/wiki/ISO_8601\">ISO 8601</a>.</td>\n</tr>\n<tr>\n<td><code>messages[].body.workingDays.MON</code></td>\n<td>Horário de funcionamento da location para segunda-feira.</td>\n</tr>\n<tr>\n<td><code>messages[].body.workingDays.MON[].from</code></td>\n<td>Horário inicial do funcionamento da location para segunda-feira.</td>\n</tr>\n<tr>\n<td><code>messages[].body.workingDays.MON[].to</code></td>\n<td>Horário final do funcionamento da location para segunda-feira.</td>\n</tr>\n<tr>\n<td><code>messages[].body.workingDays.TUE</code></td>\n<td>Horário de funcionamento da location para terça-feira.</td>\n</tr>\n<tr>\n<td><code>messages[].body.workingDays.TUE[].from</code></td>\n<td>Horário inicial do funcionamento da location para terça-feira.</td>\n</tr>\n<tr>\n<td><code>messages[].body.workingDays.TUE[].to</code></td>\n<td>Horário final do funcionamento da location para terça-feira.</td>\n</tr>\n<tr>\n<td><code>messages[].body.workingDays.WED</code></td>\n<td>Horário de funcionamento da location para quarta-feira.</td>\n</tr>\n<tr>\n<td><code>messages[].body.workingDays.WED[].from</code></td>\n<td>Horário inicial do funcionamento da location para quarta-feira.</td>\n</tr>\n<tr>\n<td><code>messages[].body.workingDays.WED[].to</code></td>\n<td>Horário final do funcionamento da location para quarta-feira.</td>\n</tr>\n<tr>\n<td><code>messages[].body.workingDays.THU</code></td>\n<td>Horário de funcionamento da location para quinta-feira.</td>\n</tr>\n<tr>\n<td><code>messages[].body.workingDays.THU[].from</code></td>\n<td>Horário inicial do funcionamento da location para quinta-feira.</td>\n</tr>\n<tr>\n<td><code>messages[].body.workingDays.THU[].to</code></td>\n<td>Horário final do funcionamento da location para quinta-feira.</td>\n</tr>\n<tr>\n<td><code>messages[].body.workingDays.FRI</code></td>\n<td>Horário de funcionamento da location para sexta-feira.</td>\n</tr>\n<tr>\n<td><code>messages[].body.workingDays.FRI[].from</code></td>\n<td>Horário inicial do funcionamento da location para sexta-feira.</td>\n</tr>\n<tr>\n<td><code>messages[].body.workingDays.FRI[].to</code></td>\n<td>Horário final do funcionamento da location para sexta-feira.</td>\n</tr>\n<tr>\n<td><code>messages[].body.workingDays.SAT</code></td>\n<td>Horário de funcionamento da location para sábado.</td>\n</tr>\n<tr>\n<td><code>messages[].body.workingDays.SAT[].from</code></td>\n<td>Horário inicial do funcionamento da location para sábado.</td>\n</tr>\n<tr>\n<td><code>messages[].body.workingDays.SAT[].to</code></td>\n<td>Horário final do funcionamento da location para sábado.</td>\n</tr>\n<tr>\n<td><code>messages[].body.workingDays.SUN</code></td>\n<td>Horário de funcionamento da location para domingo.</td>\n</tr>\n<tr>\n<td><code>messages[].body.workingDays.SUN[].from</code></td>\n<td>Horário inicial do funcionamento da location para domingo.</td>\n</tr>\n<tr>\n<td><code>messages[].body.workingDays.SUN[].to</code></td>\n<td>Horário final do funcionamento da location para doming.</td>\n</tr>\n<tr>\n<td><code>messages[].receiptId</code></td>\n<td>Código identificador único para realizar o ACK da mensagem.</td>\n</tr>\n<tr>\n<td><code>messages[].attributes</code></td>\n<td>Array contendo informações das aplicações envolvidas na mensagem, tópico e identificação da mensagem.</td>\n</tr>\n<tr>\n<td><code>messages[].attributes.topicId</code></td>\n<td>Tópico que a mensagem foi publicada.</td>\n</tr>\n<tr>\n<td><code>messages[].attributes.applicationId</code></td>\n<td>Identificador da aplicação que publicou a mensagem.</td>\n</tr>\n<tr>\n<td><code>messages[].attributes.targetApplicationId</code></td>\n<td>Identificador da aplicação que recebeu a mensagem.</td>\n</tr>\n<tr>\n<td><code>messages[].attributes.messageId</code></td>\n<td>Código identificador da mensagem publicada.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","location","queues","{{queueId}}","messages"],"host":["{{api-host}}"],"query":[{"disabled":true,"key":"visibilityTimeout","value":"30"},{"disabled":true,"key":"size","value":"50"}],"variable":[]}},"response":[],"_postman_id":"08dd6130-f1dc-4349-9bfd-d2a2e0bcbbb1"}],"id":"e7e2df64-a58e-4e12-917e-32b8f25df043","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Endpoint utilizado para Consumo de uma mensagem específica referente ao tópico de <code>location</code>, o retorno da mensagem é a informação que precisa ser tratada na sua aplicação. Para fazer a requisição do consumo informe a indentificação da sua aplicação junto ao Maker IO, e o identificador da fila da mensagem que deseja fazer o consumo na URL da request.</p>\n<p><strong>OBS.</strong>: Após realizar o consumo da mensagem faça o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> da mensagem enderaçada à Aplicação Origem. O <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> é individual por mensagem, mesmo que tenha sido feito o consumo de várias mensagens ao mesmo tempo.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>GET</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/location/queues/{{queueId}}/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{TOKEN}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n<li><p><strong>Query-Params:</strong></p>\n<ul>\n<li><p><strong>visibilityTimeout:</strong> Tempo em segundos que a mensagem irá permanecer oculta da fila, o valor informado é o tempo necessário para a a <strong>Aplicação Consumidora</strong> fazer o tratamento da mensagem na aplicação e devolver o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> para a <strong>Aplicação Origem</strong>. Se for feito um consumo com várias mensagens tenha certeza de informar um valor de tempo suficiente para sua aplicação fazer o tratamento para todas as mensagens e realizar o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> individual para cada uma delas, caso contrário as mensagens retornarão à fila para serem consumidas novamente.</p>\n</li>\n<li><p><strong>size:</strong> Quantidade de mensagens que serão consumidas simultaneamente. Permite que seja feito o consumo de até 50 mensagens na mesma request, caso não seja enviado o padrão é 1.</p>\n</li>\n</ul>\n</li>\n</ul>\n","_postman_id":"e7e2df64-a58e-4e12-917e-32b8f25df043"},{"name":"Product","item":[{"name":"Product","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if(Math.trunc(pm.response.code / 100) === 2){\r\n    var jsonData = pm.response.json();\r\n\r\n    if(jsonData.messages.length > 0){\r\n        var message = jsonData.messages[0];\r\n        pm.environment.set(\"receiptId\", message.receiptId);\r\n        pm.environment.set(\"messageId\", message.messageId);\r\n        pm.environment.set(\"entityId\",  getEntityId(pm.environment.get(\"consume-topicId\"), message[\"body\"]));\r\n\r\n        if(pm.environment.get(\"consume-topicId\") === \"carrier-order-notify\"){\r\n            \r\n            pm.environment.set(\"orderId\",  message.body.orderId);\r\n            pm.environment.set(\"invoiceNumber\",  message.body.invoices[0].number);\r\n            pm.environment.set(\"carrier\",  message.body.shipment.carrier);\r\n            pm.environment.set(\"method\",  message.body.shipment.method);\r\n            pm.environment.set(\"trackingCode\",  message.body.shipment.trackingCode);\r\n\r\n        }\r\n\r\n    }\r\n\r\n}\r\n\r\nfunction getEntityId(topicId, message){\r\n    switch(topicId){\r\n        case \"carrier\":\r\n            return message[\"carrierId\"];\r\n        case \"location\":\r\n            return message[\"locationId\"];\r\n        case \"product\":\r\n            return message[\"productId\"];\r\n        case \"order\":\r\n        case \"order-treatment\":\r\n        case \"order-exception\":\r\n        case \"order-payment-status\":\r\n        case \"carrier-order-notify\":\r\n        case \"fulfillment-status\":\r\n            return message[\"orderId\"]\r\n        case \"price\":\r\n        case \"sku\":\r\n        case \"stock\":\r\n            return message[\"skuId\"]\r\n        case \"feedback\":\r\n                return message[\"entityId\"]\r\n        default:\r\n            return null;\r\n    }\r\n}\r\n"],"id":"3a28a5c9-9ac3-4a7b-950d-41be2ff71364"}}],"id":"a0b714df-a0af-4e8f-a8a4-6d58aa672e55","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"GET","header":[],"url":"{{api-host}}/v2/applications/{{app-id}}/topics/product/queues/{{queueId}}/messages","description":"<p>O retorno do endpoint possui a seguinte estrutura:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>messageId</code></td>\n<td>Código identificador da mensagem que está sendo consumida.</td>\n</tr>\n<tr>\n<td><code>body</code></td>\n<td>Array com as informações da mensagem publicada, os campos que retornam aqui variam conforme o tópico da mensagem.</td>\n</tr>\n<tr>\n<td><code>receiptId</code></td>\n<td>Código identificador único para realizar o ACK da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes</code></td>\n<td>Array contendo informações das aplicações envolvidas na mensagem, tópico e identificação da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.topicId</code></td>\n<td>Tópico que a mensagem foi publicada.</td>\n</tr>\n<tr>\n<td><code>attributes.applicationId</code></td>\n<td>Identificador da aplicação que publicou a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.targetApplicationId</code></td>\n<td>Identificador da aplicação que recebeu a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.messageId</code></td>\n<td>Código identificador da mensagem publicada.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","product","queues","{{queueId}}","messages"],"host":["{{api-host}}"],"query":[{"disabled":true,"key":"visibilityTimeout","value":"30"},{"disabled":true,"key":"size","value":"50"}],"variable":[]}},"response":[{"id":"a878484b-47d5-44d0-824e-cf082c0e75d3","name":"Consumo de mensagens do tópico Product","originalRequest":{"method":"GET","header":[],"url":{"raw":"{{api-host}}/v2/applications/maker-selfdev/topics/product/queues/5d0a898e6cb7f358fe3121db4800645491d6c07160149e0a119b9242c15274f5/messages","host":["{{api-host}}"],"path":["v2","applications","maker-selfdev","topics","product","queues","5d0a898e6cb7f358fe3121db4800645491d6c07160149e0a119b9242c15274f5","messages"],"query":[{"key":"visibilityTimeout","value":"30","disabled":true},{"key":"size","value":"50","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"messages\": [\n        {\n            \"messageId\": \"4d20329c-be0d-4627-9044-015899c337c7\",\n            \"body\": {\n                \"additionalCategories\": [],\n                \"brand\": {\n                    \"id\": \"1\",\n                    \"name\": \"Maker Jeans\"\n                },\n                \"attributes\": [],\n                \"manufacturer\": {\n                    \"id\": \"1\",\n                    \"name\": \"Maker Confecções\"\n                },\n                \"createdAt\": \"2026-09-30T16:55:03-03:00\",\n                \"description\": \"<p>A Calça Jeans Maker é a escolha perfeita para quem busca conforto, praticidade e estilo no dia a dia. Com modelagem regular, proporciona um caimento equilibrado, oferecendo liberdade de movimento sem ficar excessivamente justa ou larga. Possui cintura tradicional, fechamento frontal por zíper e botão, passantes para cinto e bolsos funcionais, unindo praticidade e funcionalidade. O design clássico facilita diversas combinações, tornando a peça versátil para diferentes ocasiões.</p>\\n\",\n                \"enabled\": true,\n                \"flags\": [\n                    {\n                        \"id\": \"1\",\n                        \"name\": \"calça\"\n                    },\n                    {\n                        \"id\": \"2\",\n                        \"name\": \"jeans\"\n                    },\n                    {\n                        \"id\": \"3\",\n                        \"name\": \"adulto\"\n                    }\n                ],\n                \"images\": [\n                    {\n                        \"id\": \"1\",\n                        \"height\": 1000,\n                        \"width\": 1000,\n                        \"url\": \"https://images.tcdn.com.br/img/img_prod/1313352/calca_jeans_masculina_black_1_20251112164457_19e96d32103d.jpg\",\n                        \"isProductMedia\": true,\n                        \"updatedAt\": \"2026-09-30T16:55:03-03:00\"\n                    }\n                ],\n                \"keywords\": [\n                    \"Calça\",\n                    \"Masculino\",\n                    \"Calça Masculina\"\n                ],\n                \"metaDescription\": \"\",\n                \"metaKeywords\": [\n                    \"Calça Masculina\"\n                ],\n                \"productId\": \"PS.00001.0001\",\n                \"publishedAt\": \"2026-09-30T16:55:03-03:00\",\n                \"publishedScope\": \"web\",\n                \"title\": \"Calça Masculina Maker Jeans\",\n                \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\n                \"category\": {\n                    \"id\": \"01\",\n                    \"name\": \"Masculino\",\n                    \"child\": {\n                        \"id\": \"01\",\n                        \"name\": \"Calça\"\n                    }\n                },\n                \"variations\": [\n                    {\n                        \"id\": \"SIZE\",\n                        \"name\": \"Tamanho\"\n                    }\n                ],\n                \"skus\": [\n                    {\n                        \"enabled\": true,\n                        \"height\": {\n                            \"unit\": \"cm\",\n                            \"value\": 3\n                        },\n                        \"identifiers\": {\n                            \"defaultGtin\": \"7901138444144\"\n                        },\n                        \"length\": {\n                            \"unit\": \"cm\",\n                            \"value\": 30\n                        },\n                        \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\n                        \"requiresShipping\": true,\n                        \"sku\": \"2593383\",\n                        \"skuId\": \"2593383\",\n                        \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 40\",\n                        \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\n                        \"variationOptions\": [\n                            {\n                                \"id\": \"COLOR\",\n                                \"name\": \"Cor\",\n                                \"data\": {\n                                    \"id\": \"211\",\n                                    \"type\": \"string\",\n                                    \"value\": \"Azul Claro\"\n                                }\n                            },\n                            {\n                                \"id\": \"SIZE\",\n                                \"name\": \"Tamanho\",\n                                \"data\": {\n                                    \"id\": \"40\",\n                                    \"type\": \"string\",\n                                    \"value\": \"40\"\n                                }\n                            }\n                        ],\n                        \"weight\": {\n                            \"unit\": \"kg\",\n                            \"value\": 0.52\n                        },\n                        \"width\": {\n                            \"unit\": \"cm\",\n                            \"value\": 25\n                        }\n                    },\n                    {\n                        \"enabled\": true,\n                        \"height\": {\n                            \"unit\": \"cm\",\n                            \"value\": 3\n                        },\n                        \"identifiers\": {\n                            \"defaultGtin\": \"7901138444151\"\n                        },\n                        \"length\": {\n                            \"unit\": \"cm\",\n                            \"value\": 30\n                        },\n                        \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\n                        \"requiresShipping\": true,\n                        \"sku\": \"2593384\",\n                        \"skuId\": \"2593384\",\n                        \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 42\",\n                        \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\n                        \"variationOptions\": [\n                            {\n                                \"id\": \"COLOR\",\n                                \"name\": \"Cor\",\n                                \"data\": {\n                                    \"id\": \"211\",\n                                    \"type\": \"string\",\n                                    \"value\": \"Azul Claro\"\n                                }\n                            },\n                            {\n                                \"id\": \"SIZE\",\n                                \"name\": \"Tamanho\",\n                                \"data\": {\n                                    \"id\": \"42\",\n                                    \"type\": \"string\",\n                                    \"value\": \"42\"\n                                }\n                            }\n                        ],\n                        \"weight\": {\n                            \"unit\": \"kg\",\n                            \"value\": 0.52\n                        },\n                        \"width\": {\n                            \"unit\": \"cm\",\n                            \"value\": 25\n                        }\n                    },\n                    {\n                        \"enabled\": true,\n                        \"height\": {\n                            \"unit\": \"cm\",\n                            \"value\": 3\n                        },\n                        \"identifiers\": {\n                            \"defaultGtin\": \"7901138444168\"\n                        },\n                        \"length\": {\n                            \"unit\": \"cm\",\n                            \"value\": 30\n                        },\n                        \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\n                        \"requiresShipping\": true,\n                        \"sku\": \"2593385\",\n                        \"skuId\": \"2593385\",\n                        \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 44\",\n                        \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\n                        \"variationOptions\": [\n                            {\n                                \"id\": \"COLOR\",\n                                \"name\": \"Cor\",\n                                \"data\": {\n                                    \"id\": \"211\",\n                                    \"type\": \"string\",\n                                    \"value\": \"Azul Claro\"\n                                }\n                            },\n                            {\n                                \"id\": \"SIZE\",\n                                \"name\": \"Tamanho\",\n                                \"data\": {\n                                    \"id\": \"44\",\n                                    \"type\": \"string\",\n                                    \"value\": \"44\"\n                                }\n                            }\n                        ],\n                        \"weight\": {\n                            \"unit\": \"kg\",\n                            \"value\": 0.52\n                        },\n                        \"width\": {\n                            \"unit\": \"cm\",\n                            \"value\": 25\n                        }\n                    },\n                    {\n                        \"enabled\": true,\n                        \"height\": {\n                            \"unit\": \"cm\",\n                            \"value\": 3\n                        },\n                        \"identifiers\": {\n                            \"defaultGtin\": \"7901138444137\"\n                        },\n                        \"length\": {\n                            \"unit\": \"cm\",\n                            \"value\": 30\n                        },\n                        \"publishedAt\": \"2026-03-23T03:00:00-03:00\",\n                        \"requiresShipping\": true,\n                        \"sku\": \"2593382\",\n                        \"skuId\": \"2593382\",\n                        \"title\": \"Calça Masculina Maker Jeans Basic Azul claro 38\",\n                        \"updatedAt\": \"2026-09-30T16:55:03-03:00\",\n                        \"variationOptions\": [\n                            {\n                                \"id\": \"COLOR\",\n                                \"name\": \"Cor\",\n                                \"data\": {\n                                    \"id\": \"211\",\n                                    \"type\": \"string\",\n                                    \"value\": \"Azul Claro\"\n                                }\n                            },\n                            {\n                                \"id\": \"SIZE\",\n                                \"name\": \"Tamanho\",\n                                \"data\": {\n                                    \"id\": \"38\",\n                                    \"type\": \"string\",\n                                    \"value\": \"38\"\n                                }\n                            }\n                        ],\n                        \"weight\": {\n                            \"unit\": \"kg\",\n                            \"value\": 0.52\n                        },\n                        \"width\": {\n                            \"unit\": \"cm\",\n                            \"value\": 25\n                        }\n                    }\n                ],\n                \"tags\": [\n                    {\n                        \"id\": \"1\",\n                        \"name\": \"Calça Masculina\"\n                    }\n                ],\n                \"videos\": [\n                    {\n                        \"id\": \"1\",\n                        \"height\": 680,\n                        \"width\": 420,\n                        \"url\": \"https://videos.widde.io/widde-bucket-sp/605e3776-8677-4b80-a796-e4c8ec81a17c/videos/a6bc7752-c054-498d-9f3b-bf445ca8514a-1754400313789-2442181/gif.mp4\",\n                        \"isProductMedia\": true,\n                        \"updatedAt\": \"2026-09-30T16:55:03-03:00\"\n                    }\n                ],\n                \"warranty\": \"\"\n            },\n            \"receiptId\": \"AQEBMxDZr3cJWNyxyrKvjGgEv7_cJk5WIYgQue7hW6q1_RpufS85RJCHgeK29oAkhPN4UvTk4nhtm0-ZRcUAXtPODubI2TrdgvFSfmhy-RO7jjMZAyppT2m8YT4B0OljcICHl4REPg.eyJkYXRhIjp7InF1ZXVlSWQiOiI1ZDBhODk4ZTZjYjdmMzU4ZmUzMTIxZGI0ODAwNjQ1NDkxZDZjMDcxNjAxNDllMGExMTliOTI0MmMxNTI3NGY1IiwibWVzc2FnZUlkIjoiNGQyMDMyOWMtYmUwZC00NjI3LTkwNDQtMDE1ODk5YzMzN2M3IiwiaGFzaElkIjoiN2VhYzZhMGItODAxNC00YjM4LTkxMTEtOTQwMWUxZjkxMDg4IiwidmlzaWJpbGl0eVRpbWVvdXQiOjMwMH0sImV4cCI6MzAwLCJ0cyI6MTc5MDg3OTY0NDg0OH0.2889675132.x9xbWwHf6HvCZuGLCm9pZg_LJb57zkkPN_0DbAyRA_GgEWVE-ZMqiv025-TgYAIZiYH2-r5T0R4cJJDEIHuGFR2lkSqMEY74W8YQVH0sgTruovna01uva_cRZrlsWp44wtUPrsfXbd5jdUR42tcNGA7Q926aiIa0q4rGrwE6Z1urEcVxuKqZrPQkofofG1oN_8mXD34UKX2Ij9nMjpA1WvKMKhF7m9FoESLintSZjXCmqUEisVfQCzv_hF2iEi4RKw9-xsgUJlI_w4KzQPh4a1sWfhdvblbdWNCYZYV8_d1n589bLReF4yVknZWseZA1iKjwL1TXNjP_muukebURnQNJJWkYaJL-N07La4tVS45W-aO==\",\n            \"attributes\": {\n                \"topicId\": \"product\",\n                \"applicationId\": \"maker-selfdev\",\n                \"targetApplicationId\": \"maker-selfdev\",\n                \"messageId\": \"4d20329c-be0d-4627-9044-015899c337c7\"\n            }\n        }\n    ]\n}"}],"_postman_id":"a0b714df-a0af-4e8f-a8a4-6d58aa672e55"}],"id":"c57a9858-869d-4c45-85bd-839bb7728b46","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Endpoint utilizado para Consumo de uma mensagem específica referente ao tópico de <code>product</code>, o retorno da mensagem é a informação que precisa ser tratada na sua aplicação. Para fazer a requisição do consumo informe a indentificação da sua aplicação junto ao Maker IO, e o identificador da fila da mensagem que deseja fazer o consumo na URL da request.</p>\n<p><strong>OBS.</strong>: Após realizar o consumo da mensagem faça o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> da mensagem enderaçada à Aplicação Origem. O <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> é individual por mensagem, mesmo que tenha sido feito o consumo de várias mensagens ao mesmo tempo.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>GET</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/product/queues/{{queueId}}/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{TOKEN}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n<li><p><strong>Query-Params:</strong></p>\n<ul>\n<li><p><strong>visibilityTimeout:</strong> Tempo em segundos que a mensagem irá permanecer oculta da fila, o valor informado é o tempo necessário para a a <strong>Aplicação Consumidora</strong> fazer o tratamento da mensagem na aplicação e devolver o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> para a <strong>Aplicação Origem</strong>. Se for feito um consumo com várias mensagens tenha certeza de informar um valor de tempo suficiente para sua aplicação fazer o tratamento para todas as mensagens e realizar o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> individual para cada uma delas, caso contrário as mensagens retornarão à fila para serem consumidas novamente.</p>\n</li>\n<li><p><strong>size:</strong> Quantidade de mensagens que serão consumidas simultaneamente. Permite que seja feito o consumo de até 50 mensagens na mesma request, caso não seja enviado o padrão é 1.</p>\n</li>\n</ul>\n</li>\n</ul>\n","_postman_id":"c57a9858-869d-4c45-85bd-839bb7728b46"},{"name":"Sku","item":[{"name":"Sku","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if(Math.trunc(pm.response.code / 100) === 2){\r\n    var jsonData = pm.response.json();\r\n\r\n    if(jsonData.messages.length > 0){\r\n        var message = jsonData.messages[0];\r\n        pm.environment.set(\"receiptId\", message.receiptId);\r\n        pm.environment.set(\"messageId\", message.messageId);\r\n        pm.environment.set(\"entityId\",  getEntityId(pm.environment.get(\"consume-topicId\"), message[\"body\"]));\r\n\r\n        if(pm.environment.get(\"consume-topicId\") === \"carrier-order-notify\"){\r\n            \r\n            pm.environment.set(\"orderId\",  message.body.orderId);\r\n            pm.environment.set(\"invoiceNumber\",  message.body.invoices[0].number);\r\n            pm.environment.set(\"carrier\",  message.body.shipment.carrier);\r\n            pm.environment.set(\"method\",  message.body.shipment.method);\r\n            pm.environment.set(\"trackingCode\",  message.body.shipment.trackingCode);\r\n\r\n        }\r\n\r\n    }\r\n\r\n}\r\n\r\nfunction getEntityId(topicId, message){\r\n    switch(topicId){\r\n        case \"carrier\":\r\n            return message[\"carrierId\"];\r\n        case \"location\":\r\n            return message[\"locationId\"];\r\n        case \"product\":\r\n            return message[\"productId\"];\r\n        case \"order\":\r\n        case \"order-treatment\":\r\n        case \"order-exception\":\r\n        case \"order-payment-status\":\r\n        case \"carrier-order-notify\":\r\n        case \"fulfillment-status\":\r\n            return message[\"orderId\"]\r\n        case \"price\":\r\n        case \"sku\":\r\n        case \"stock\":\r\n            return message[\"skuId\"]\r\n        case \"feedback\":\r\n                return message[\"entityId\"]\r\n        default:\r\n            return null;\r\n    }\r\n}\r\n"],"id":"6ef9a826-9fb3-4c2d-9589-870df06d5d24"}}],"id":"548500ba-5060-4083-ab58-f2e65d54db96","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"GET","header":[],"url":"{{api-host}}/v2/applications/{{app-id}}/topics/sku/queues/{{queueId}}/messages","description":"<p>O retorno do endpoint possui a seguinte estrutura:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>messageId</code></td>\n<td>Código identificador da mensagem que está sendo consumida.</td>\n</tr>\n<tr>\n<td><code>body</code></td>\n<td>Array com as informações da mensagem publicada, os campos que retornam aqui variam conforme o tópico da mensagem.</td>\n</tr>\n<tr>\n<td><code>receiptId</code></td>\n<td>Código identificador único para realizar o ACK da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes</code></td>\n<td>Array contendo informações das aplicações envolvidas na mensagem, tópico e identificação da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.topicId</code></td>\n<td>Tópico que a mensagem foi publicada.</td>\n</tr>\n<tr>\n<td><code>attributes.applicationId</code></td>\n<td>Identificador da aplicação que publicou a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.targetApplicationId</code></td>\n<td>Identificador da aplicação que recebeu a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.messageId</code></td>\n<td>Código identificador da mensagem publicada.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","sku","queues","{{queueId}}","messages"],"host":["{{api-host}}"],"query":[{"disabled":true,"key":"visibilityTimeout","value":"30"},{"disabled":true,"key":"size","value":"50"}],"variable":[]}},"response":[],"_postman_id":"548500ba-5060-4083-ab58-f2e65d54db96"}],"id":"83c6b26e-38ae-4afa-b12d-bf1b15fd9d23","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Endpoint utilizado para Consumo de uma mensagem específica referente ao tópico de <code>sku</code>, o retorno da mensagem é a informação que precisa ser tratada na sua aplicação. Para fazer a requisição do consumo informe a indentificação da sua aplicação junto ao Maker IO, e o identificador da fila da mensagem que deseja fazer o consumo na URL da request.</p>\n<p><strong>OBS.</strong>: Após realizar o consumo da mensagem faça o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> da mensagem enderaçada à Aplicação Origem. O <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> é individual por mensagem, mesmo que tenha sido feito o consumo de várias mensagens ao mesmo tempo.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>GET</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/sku/queues/{{queueId}}/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{TOKEN}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n<li><p><strong>Query-Params:</strong></p>\n<ul>\n<li><p><strong>visibilityTimeout:</strong> Tempo em segundos que a mensagem irá permanecer oculta da fila, o valor informado é o tempo necessário para a a <strong>Aplicação Consumidora</strong> fazer o tratamento da mensagem na aplicação e devolver o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> para a <strong>Aplicação Origem</strong>. Se for feito um consumo com várias mensagens tenha certeza de informar um valor de tempo suficiente para sua aplicação fazer o tratamento para todas as mensagens e realizar o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> individual para cada uma delas, caso contrário as mensagens retornarão à fila para serem consumidas novamente.</p>\n</li>\n<li><p><strong>size:</strong> Quantidade de mensagens que serão consumidas simultaneamente. Permite que seja feito o consumo de até 50 mensagens na mesma request, caso não seja enviado o padrão é 1.</p>\n</li>\n</ul>\n</li>\n</ul>\n","_postman_id":"83c6b26e-38ae-4afa-b12d-bf1b15fd9d23"},{"name":"Bundle","item":[{"name":"Bundle","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if(Math.trunc(pm.response.code / 100) === 2){\r\n    var jsonData = pm.response.json();\r\n\r\n    if(jsonData.messages.length > 0){\r\n        var message = jsonData.messages[0];\r\n        pm.environment.set(\"receiptId\", message.receiptId);\r\n        pm.environment.set(\"messageId\", message.messageId);\r\n        pm.environment.set(\"entityId\",  getEntityId(pm.environment.get(\"consume-topicId\"), message[\"body\"]));\r\n\r\n        if(pm.environment.get(\"consume-topicId\") === \"carrier-order-notify\"){\r\n            \r\n            pm.environment.set(\"orderId\",  message.body.orderId);\r\n            pm.environment.set(\"invoiceNumber\",  message.body.invoices[0].number);\r\n            pm.environment.set(\"carrier\",  message.body.shipment.carrier);\r\n            pm.environment.set(\"method\",  message.body.shipment.method);\r\n            pm.environment.set(\"trackingCode\",  message.body.shipment.trackingCode);\r\n\r\n        }\r\n\r\n    }\r\n\r\n}\r\n\r\nfunction getEntityId(topicId, message){\r\n    switch(topicId){\r\n        case \"carrier\":\r\n            return message[\"carrierId\"];\r\n        case \"location\":\r\n            return message[\"locationId\"];\r\n        case \"product\":\r\n            return message[\"productId\"];\r\n        case \"order\":\r\n        case \"order-treatment\":\r\n        case \"order-exception\":\r\n        case \"order-payment-status\":\r\n        case \"carrier-order-notify\":\r\n        case \"fulfillment-status\":\r\n            return message[\"orderId\"]\r\n        case \"price\":\r\n        case \"sku\":\r\n        case \"stock\":\r\n            return message[\"skuId\"]\r\n        case \"feedback\":\r\n                return message[\"entityId\"]\r\n        default:\r\n            return null;\r\n    }\r\n}\r\n"],"id":"f9ad7d29-653f-4d77-b19d-80f4b6f59f04"}}],"id":"7c8fe0eb-4339-40b6-b4d8-4cc4acfcda1c","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"GET","header":[],"url":"{{api-host}}/v2/applications/{{app-id}}/topics/bundle/queues/{{queueId}}/messages","description":"<p>O retorno do endpoint possui a seguinte estrutura:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>messageId</code></td>\n<td>Código identificador da mensagem que está sendo consumida.</td>\n</tr>\n<tr>\n<td><code>body</code></td>\n<td>Array com as informações da mensagem publicada, os campos que retornam aqui variam conforme o tópico da mensagem.</td>\n</tr>\n<tr>\n<td><code>receiptId</code></td>\n<td>Código identificador único para realizar o ACK da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes</code></td>\n<td>Array contendo informações das aplicações envolvidas na mensagem, tópico e identificação da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.topicId</code></td>\n<td>Tópico que a mensagem foi publicada.</td>\n</tr>\n<tr>\n<td><code>attributes.applicationId</code></td>\n<td>Identificador da aplicação que publicou a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.targetApplicationId</code></td>\n<td>Identificador da aplicação que recebeu a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.messageId</code></td>\n<td>Código identificador da mensagem publicada.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","bundle","queues","{{queueId}}","messages"],"host":["{{api-host}}"],"query":[{"disabled":true,"key":"visibilityTimeout","value":"30"},{"disabled":true,"key":"size","value":"50"}],"variable":[]}},"response":[],"_postman_id":"7c8fe0eb-4339-40b6-b4d8-4cc4acfcda1c"}],"id":"ee8f1225-4e0a-4e0d-bbe2-f574777322ae","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Endpoint utilizado para Consumo de uma mensagem específica referente ao tópico de <code>bundle</code>, o retorno da mensagem é a informação que precisa ser tratada na sua aplicação. Para fazer a requisição do consumo informe a indentificação da sua aplicação junto ao Maker IO, e o identificador da fila da mensagem que deseja fazer o consumo na URL da request.</p>\n<p><strong>OBS.</strong>: Após realizar o consumo da mensagem faça o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> da mensagem enderaçada à Aplicação Origem. O <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> é individual por mensagem, mesmo que tenha sido feito o consumo de várias mensagens ao mesmo tempo.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>GET</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/bundle/queues/{{queueId}}/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{TOKEN}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n<li><p><strong>Query-Params:</strong></p>\n<ul>\n<li><p><strong>visibilityTimeout:</strong> Tempo em segundos que a mensagem irá permanecer oculta da fila, o valor informado é o tempo necessário para a a <strong>Aplicação Consumidora</strong> fazer o tratamento da mensagem na aplicação e devolver o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> para a <strong>Aplicação Origem</strong>. Se for feito um consumo com várias mensagens tenha certeza de informar um valor de tempo suficiente para sua aplicação fazer o tratamento para todas as mensagens e realizar o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> individual para cada uma delas, caso contrário as mensagens retornarão à fila para serem consumidas novamente.</p>\n</li>\n<li><p><strong>size:</strong> Quantidade de mensagens que serão consumidas simultaneamente. Permite que seja feito o consumo de até 50 mensagens na mesma request, caso não seja enviado o padrão é 1.</p>\n</li>\n</ul>\n</li>\n</ul>\n","_postman_id":"ee8f1225-4e0a-4e0d-bbe2-f574777322ae"},{"name":"Stock","item":[{"name":"Stock","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if(Math.trunc(pm.response.code / 100) === 2){\r\n    var jsonData = pm.response.json();\r\n\r\n    if(jsonData.messages.length > 0){\r\n        var message = jsonData.messages[0];\r\n        pm.environment.set(\"receiptId\", message.receiptId);\r\n        pm.environment.set(\"messageId\", message.messageId);\r\n        pm.environment.set(\"entityId\",  getEntityId(pm.environment.get(\"consume-topicId\"), message[\"body\"]));\r\n\r\n        if(pm.environment.get(\"consume-topicId\") === \"carrier-order-notify\"){\r\n            \r\n            pm.environment.set(\"orderId\",  message.body.orderId);\r\n            pm.environment.set(\"invoiceNumber\",  message.body.invoices[0].number);\r\n            pm.environment.set(\"carrier\",  message.body.shipment.carrier);\r\n            pm.environment.set(\"method\",  message.body.shipment.method);\r\n            pm.environment.set(\"trackingCode\",  message.body.shipment.trackingCode);\r\n\r\n        }\r\n\r\n    }\r\n\r\n}\r\n\r\nfunction getEntityId(topicId, message){\r\n    switch(topicId){\r\n        case \"carrier\":\r\n            return message[\"carrierId\"];\r\n        case \"location\":\r\n            return message[\"locationId\"];\r\n        case \"product\":\r\n            return message[\"productId\"];\r\n        case \"order\":\r\n        case \"order-treatment\":\r\n        case \"order-exception\":\r\n        case \"order-payment-status\":\r\n        case \"carrier-order-notify\":\r\n        case \"fulfillment-status\":\r\n            return message[\"orderId\"]\r\n        case \"price\":\r\n        case \"sku\":\r\n        case \"stock\":\r\n            return message[\"skuId\"]\r\n        case \"feedback\":\r\n                return message[\"entityId\"]\r\n        default:\r\n            return null;\r\n    }\r\n}\r\n"],"id":"cebd550f-7581-4aa1-b4b1-fadeffa06c9f"}}],"id":"fcaf064b-cd25-4399-953c-89ded63c20d8","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"GET","header":[],"url":"{{api-host}}/v2/applications/{{app-id}}/topics/stock/queues/{{queueId}}/messages","description":"<p>O retorno do endpoint possui a seguinte estrutura:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>messageId</code></td>\n<td>Código identificador da mensagem que está sendo consumida.</td>\n</tr>\n<tr>\n<td><code>body</code></td>\n<td>Array com as informações da mensagem publicada, os campos que retornam aqui variam conforme o tópico da mensagem.</td>\n</tr>\n<tr>\n<td><code>receiptId</code></td>\n<td>Código identificador único para realizar o ACK da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes</code></td>\n<td>Array contendo informações das aplicações envolvidas na mensagem, tópico e identificação da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.topicId</code></td>\n<td>Tópico que a mensagem foi publicada.</td>\n</tr>\n<tr>\n<td><code>attributes.applicationId</code></td>\n<td>Identificador da aplicação que publicou a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.targetApplicationId</code></td>\n<td>Identificador da aplicação que recebeu a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.messageId</code></td>\n<td>Código identificador da mensagem publicada.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","stock","queues","{{queueId}}","messages"],"host":["{{api-host}}"],"query":[{"disabled":true,"key":"visibilityTimeout","value":"30"},{"disabled":true,"key":"size","value":"50"}],"variable":[]}},"response":[],"_postman_id":"fcaf064b-cd25-4399-953c-89ded63c20d8"}],"id":"d7de6b30-07a4-451e-92f3-2d0593d344fc","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Endpoint utilizado para Consumo de uma mensagem específica referente ao tópico de <code>stock</code>, o retorno da mensagem é a informação que precisa ser tratada na sua aplicação. Para fazer a requisição do consumo informe a indentificação da sua aplicação junto ao Maker IO, e o identificador da fila da mensagem que deseja fazer o consumo na URL da request.</p>\n<p><strong>OBS.</strong>: Após realizar o consumo da mensagem faça o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> da mensagem enderaçada à Aplicação Origem. O <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> é individual por mensagem, mesmo que tenha sido feito o consumo de várias mensagens ao mesmo tempo.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>GET</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/stock/queues/{{queueId}}/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{TOKEN}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n<li><p><strong>Query-Params:</strong></p>\n<ul>\n<li><p><strong>visibilityTimeout:</strong> Tempo em segundos que a mensagem irá permanecer oculta da fila, o valor informado é o tempo necessário para a a <strong>Aplicação Consumidora</strong> fazer o tratamento da mensagem na aplicação e devolver o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> para a <strong>Aplicação Origem</strong>. Se for feito um consumo com várias mensagens tenha certeza de informar um valor de tempo suficiente para sua aplicação fazer o tratamento para todas as mensagens e realizar o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> individual para cada uma delas, caso contrário as mensagens retornarão à fila para serem consumidas novamente.</p>\n</li>\n<li><p><strong>size:</strong> Quantidade de mensagens que serão consumidas simultaneamente. Permite que seja feito o consumo de até 50 mensagens na mesma request, caso não seja enviado o padrão é 1.</p>\n</li>\n</ul>\n</li>\n</ul>\n","_postman_id":"d7de6b30-07a4-451e-92f3-2d0593d344fc"},{"name":"Price","item":[{"name":"Price","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if(Math.trunc(pm.response.code / 100) === 2){\r\n    var jsonData = pm.response.json();\r\n\r\n    if(jsonData.messages.length > 0){\r\n        var message = jsonData.messages[0];\r\n        pm.environment.set(\"receiptId\", message.receiptId);\r\n        pm.environment.set(\"messageId\", message.messageId);\r\n        pm.environment.set(\"entityId\",  getEntityId(pm.environment.get(\"consume-topicId\"), message[\"body\"]));\r\n\r\n        if(pm.environment.get(\"consume-topicId\") === \"carrier-order-notify\"){\r\n            \r\n            pm.environment.set(\"orderId\",  message.body.orderId);\r\n            pm.environment.set(\"invoiceNumber\",  message.body.invoices[0].number);\r\n            pm.environment.set(\"carrier\",  message.body.shipment.carrier);\r\n            pm.environment.set(\"method\",  message.body.shipment.method);\r\n            pm.environment.set(\"trackingCode\",  message.body.shipment.trackingCode);\r\n\r\n        }\r\n\r\n    }\r\n\r\n}\r\n\r\nfunction getEntityId(topicId, message){\r\n    switch(topicId){\r\n        case \"carrier\":\r\n            return message[\"carrierId\"];\r\n        case \"location\":\r\n            return message[\"locationId\"];\r\n        case \"product\":\r\n            return message[\"productId\"];\r\n        case \"order\":\r\n        case \"order-treatment\":\r\n        case \"order-exception\":\r\n        case \"order-payment-status\":\r\n        case \"carrier-order-notify\":\r\n        case \"fulfillment-status\":\r\n            return message[\"orderId\"]\r\n        case \"price\":\r\n        case \"sku\":\r\n        case \"stock\":\r\n            return message[\"skuId\"]\r\n        case \"feedback\":\r\n                return message[\"entityId\"]\r\n        default:\r\n            return null;\r\n    }\r\n}\r\n"],"id":"5db533f0-b4b7-41b5-9a72-fa0840e47b63"}}],"id":"35349db9-dd25-4929-ad7e-66a7eb6e2cf5","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"GET","header":[],"url":"{{api-host}}/v2/applications/{{app-id}}/topics/price/queues/{{queueId}}/messages","description":"<p>O retorno do endpoint possui a seguinte estrutura:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>messageId</code></td>\n<td>Código identificador da mensagem que está sendo consumida.</td>\n</tr>\n<tr>\n<td><code>body</code></td>\n<td>Array com as informações da mensagem publicada, os campos que retornam aqui variam conforme o tópico da mensagem.</td>\n</tr>\n<tr>\n<td><code>receiptId</code></td>\n<td>Código identificador único para realizar o ACK da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes</code></td>\n<td>Array contendo informações das aplicações envolvidas na mensagem, tópico e identificação da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.topicId</code></td>\n<td>Tópico que a mensagem foi publicada.</td>\n</tr>\n<tr>\n<td><code>attributes.applicationId</code></td>\n<td>Identificador da aplicação que publicou a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.targetApplicationId</code></td>\n<td>Identificador da aplicação que recebeu a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.messageId</code></td>\n<td>Código identificador da mensagem publicada.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","price","queues","{{queueId}}","messages"],"host":["{{api-host}}"],"query":[{"disabled":true,"key":"visibilityTimeout","value":"30"},{"disabled":true,"key":"size","value":"50"}],"variable":[]}},"response":[],"_postman_id":"35349db9-dd25-4929-ad7e-66a7eb6e2cf5"}],"id":"cad8332a-86f1-45d8-92da-556c519b14da","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Endpoint utilizado para Consumo de uma mensagem específica referente ao tópico de <code>price</code>, o retorno da mensagem é a informação que precisa ser tratada na sua aplicação. Para fazer a requisição do consumo informe a indentificação da sua aplicação junto ao Maker IO, e o identificador da fila da mensagem que deseja fazer o consumo na URL da request.</p>\n<p><strong>OBS.</strong>: Após realizar o consumo da mensagem faça o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> da mensagem enderaçada à Aplicação Origem. O <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> é individual por mensagem, mesmo que tenha sido feito o consumo de várias mensagens ao mesmo tempo.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>GET</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/price/queues/{{queueId}}/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{TOKEN}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n<li><p><strong>Query-Params:</strong></p>\n<ul>\n<li><p><strong>visibilityTimeout:</strong> Tempo em segundos que a mensagem irá permanecer oculta da fila, o valor informado é o tempo necessário para a a <strong>Aplicação Consumidora</strong> fazer o tratamento da mensagem na aplicação e devolver o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> para a <strong>Aplicação Origem</strong>. Se for feito um consumo com várias mensagens tenha certeza de informar um valor de tempo suficiente para sua aplicação fazer o tratamento para todas as mensagens e realizar o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> individual para cada uma delas, caso contrário as mensagens retornarão à fila para serem consumidas novamente.</p>\n</li>\n<li><p><strong>size:</strong> Quantidade de mensagens que serão consumidas simultaneamente. Permite que seja feito o consumo de até 50 mensagens na mesma request, caso não seja enviado o padrão é 1.</p>\n</li>\n</ul>\n</li>\n</ul>\n","_postman_id":"cad8332a-86f1-45d8-92da-556c519b14da"},{"name":"Customer","item":[{"name":"Customer","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if(Math.trunc(pm.response.code / 100) === 2){\r\n    var jsonData = pm.response.json();\r\n\r\n    if(jsonData.messages.length > 0){\r\n        var message = jsonData.messages[0];\r\n        pm.environment.set(\"receiptId\", message.receiptId);\r\n        pm.environment.set(\"messageId\", message.messageId);\r\n        pm.environment.set(\"entityId\",  getEntityId(pm.environment.get(\"consume-topicId\"), message[\"body\"]));\r\n\r\n        if(pm.environment.get(\"consume-topicId\") === \"carrier-order-notify\"){\r\n            \r\n            pm.environment.set(\"orderId\",  message.body.orderId);\r\n            pm.environment.set(\"invoiceNumber\",  message.body.invoices[0].number);\r\n            pm.environment.set(\"carrier\",  message.body.shipment.carrier);\r\n            pm.environment.set(\"method\",  message.body.shipment.method);\r\n            pm.environment.set(\"trackingCode\",  message.body.shipment.trackingCode);\r\n\r\n        }\r\n\r\n    }\r\n\r\n}\r\n\r\nfunction getEntityId(topicId, message){\r\n    switch(topicId){\r\n        case \"carrier\":\r\n            return message[\"carrierId\"];\r\n        case \"location\":\r\n            return message[\"locationId\"];\r\n        case \"product\":\r\n            return message[\"productId\"];\r\n        case \"order\":\r\n        case \"order-treatment\":\r\n        case \"order-exception\":\r\n        case \"order-payment-status\":\r\n        case \"carrier-order-notify\":\r\n        case \"fulfillment-status\":\r\n            return message[\"orderId\"]\r\n        case \"price\":\r\n        case \"sku\":\r\n        case \"stock\":\r\n            return message[\"skuId\"]\r\n        case \"feedback\":\r\n                return message[\"entityId\"]\r\n        default:\r\n            return null;\r\n    }\r\n}\r\n"],"id":"10a953dc-da49-4c37-b3d4-2fedd066e850"}}],"id":"8816d8a3-ad87-49c5-8f78-ad6555dd20ab","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"GET","header":[],"url":"{{api-host}}/v2/applications/{{app-id}}/topics/customer/queues/{{queueId}}/messages","description":"<p>O retorno do endpoint possui a seguinte estrutura:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>messageId</code></td>\n<td>Código identificador da mensagem que está sendo consumida.</td>\n</tr>\n<tr>\n<td><code>body</code></td>\n<td>Array com as informações da mensagem publicada, os campos que retornam aqui variam conforme o tópico da mensagem.</td>\n</tr>\n<tr>\n<td><code>receiptId</code></td>\n<td>Código identificador único para realizar o ACK da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes</code></td>\n<td>Array contendo informações das aplicações envolvidas na mensagem, tópico e identificação da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.topicId</code></td>\n<td>Tópico que a mensagem foi publicada.</td>\n</tr>\n<tr>\n<td><code>attributes.applicationId</code></td>\n<td>Identificador da aplicação que publicou a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.targetApplicationId</code></td>\n<td>Identificador da aplicação que recebeu a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.messageId</code></td>\n<td>Código identificador da mensagem publicada.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","customer","queues","{{queueId}}","messages"],"host":["{{api-host}}"],"query":[{"disabled":true,"key":"visibilityTimeout","value":"30"},{"disabled":true,"key":"size","value":"50"}],"variable":[]}},"response":[],"_postman_id":"8816d8a3-ad87-49c5-8f78-ad6555dd20ab"}],"id":"0ac4215f-2f80-4f5f-89d3-b7b5a6de2550","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Endpoint utilizado para Consumo de uma mensagem específica referente ao tópico de <code>customer</code>, o retorno da mensagem é a informação que precisa ser tratada na sua aplicação. Para fazer a requisição do consumo informe a indentificação da sua aplicação junto ao Maker IO, e o identificador da fila da mensagem que deseja fazer o consumo na URL da request.</p>\n<p><strong>OBS.</strong>: Após realizar o consumo da mensagem faça o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> da mensagem enderaçada à Aplicação Origem. O <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> é individual por mensagem, mesmo que tenha sido feito o consumo de várias mensagens ao mesmo tempo.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>GET</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/customer/queues/{{queueId}}/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{TOKEN}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n<li><p><strong>Query-Params:</strong></p>\n<ul>\n<li><p><strong>visibilityTimeout:</strong> Tempo em segundos que a mensagem irá permanecer oculta da fila, o valor informado é o tempo necessário para a a <strong>Aplicação Consumidora</strong> fazer o tratamento da mensagem na aplicação e devolver o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> para a <strong>Aplicação Origem</strong>. Se for feito um consumo com várias mensagens tenha certeza de informar um valor de tempo suficiente para sua aplicação fazer o tratamento para todas as mensagens e realizar o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> individual para cada uma delas, caso contrário as mensagens retornarão à fila para serem consumidas novamente.</p>\n</li>\n<li><p><strong>size:</strong> Quantidade de mensagens que serão consumidas simultaneamente. Permite que seja feito o consumo de até 50 mensagens na mesma request, caso não seja enviado o padrão é 1.</p>\n</li>\n</ul>\n</li>\n</ul>\n","_postman_id":"0ac4215f-2f80-4f5f-89d3-b7b5a6de2550"},{"name":"Order","item":[{"name":"Order","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if(Math.trunc(pm.response.code / 100) === 2){\r\n    var jsonData = pm.response.json();\r\n\r\n    if(jsonData.messages.length > 0){\r\n        var message = jsonData.messages[0];\r\n        pm.environment.set(\"receiptId\", message.receiptId);\r\n        pm.environment.set(\"messageId\", message.messageId);\r\n        pm.environment.set(\"entityId\",  getEntityId(pm.environment.get(\"consume-topicId\"), message[\"body\"]));\r\n\r\n        if(pm.environment.get(\"consume-topicId\") === \"carrier-order-notify\"){\r\n            \r\n            pm.environment.set(\"orderId\",  message.body.orderId);\r\n            pm.environment.set(\"invoiceNumber\",  message.body.invoices[0].number);\r\n            pm.environment.set(\"carrier\",  message.body.shipment.carrier);\r\n            pm.environment.set(\"method\",  message.body.shipment.method);\r\n            pm.environment.set(\"trackingCode\",  message.body.shipment.trackingCode);\r\n\r\n        }\r\n\r\n    }\r\n\r\n}\r\n\r\nfunction getEntityId(topicId, message){\r\n    switch(topicId){\r\n        case \"carrier\":\r\n            return message[\"carrierId\"];\r\n        case \"location\":\r\n            return message[\"locationId\"];\r\n        case \"product\":\r\n            return message[\"productId\"];\r\n        case \"order\":\r\n        case \"order-treatment\":\r\n        case \"order-exception\":\r\n        case \"order-payment-status\":\r\n        case \"carrier-order-notify\":\r\n        case \"fulfillment-status\":\r\n            return message[\"orderId\"]\r\n        case \"price\":\r\n        case \"sku\":\r\n        case \"stock\":\r\n            return message[\"skuId\"]\r\n        case \"feedback\":\r\n                return message[\"entityId\"]\r\n        default:\r\n            return null;\r\n    }\r\n}\r\n"],"id":"cb40c73f-d07a-4505-95a6-8ddd574d0f9f"}}],"id":"2d2b78b5-5c72-408a-9c8d-140e1b5985be","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"GET","header":[],"url":"{{api-host}}/v2/applications/{{app-id}}/topics/order/queues/{{queueId}}/messages","description":"<p>O retorno do endpoint possui a seguinte estrutura:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>messageId</code></td>\n<td>Código identificador da mensagem que está sendo consumida.</td>\n</tr>\n<tr>\n<td><code>body</code></td>\n<td>Array com as informações da mensagem publicada, os campos que retornam aqui variam conforme o tópico da mensagem.</td>\n</tr>\n<tr>\n<td><code>receiptId</code></td>\n<td>Código identificador único para realizar o ACK da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes</code></td>\n<td>Array contendo informações das aplicações envolvidas na mensagem, tópico e identificação da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.topicId</code></td>\n<td>Tópico que a mensagem foi publicada.</td>\n</tr>\n<tr>\n<td><code>attributes.applicationId</code></td>\n<td>Identificador da aplicação que publicou a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.targetApplicationId</code></td>\n<td>Identificador da aplicação que recebeu a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.messageId</code></td>\n<td>Código identificador da mensagem publicada.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","order","queues","{{queueId}}","messages"],"host":["{{api-host}}"],"query":[{"disabled":true,"key":"visibilityTimeout","value":"30"},{"disabled":true,"key":"size","value":"50"}],"variable":[]}},"response":[],"_postman_id":"2d2b78b5-5c72-408a-9c8d-140e1b5985be"}],"id":"48c3c63a-0685-4b01-ae7f-66c5f9ecc32c","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Endpoint utilizado para Consumo de uma mensagem específica referente ao tópico de <code>order</code>, o retorno da mensagem é a informação que precisa ser tratada na sua aplicação. Para fazer a requisição do consumo informe a indentificação da sua aplicação junto ao Maker IO, e o identificador da fila da mensagem que deseja fazer o consumo na URL da request.</p>\n<p><strong>OBS.</strong>: Após realizar o consumo da mensagem faça o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> da mensagem enderaçada à Aplicação Origem. O <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> é individual por mensagem, mesmo que tenha sido feito o consumo de várias mensagens ao mesmo tempo.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>GET</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/order/queues/{{queueId}}/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{TOKEN}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n<li><p><strong>Query-Params:</strong></p>\n<ul>\n<li><p><strong>visibilityTimeout:</strong> Tempo em segundos que a mensagem irá permanecer oculta da fila, o valor informado é o tempo necessário para a a <strong>Aplicação Consumidora</strong> fazer o tratamento da mensagem na aplicação e devolver o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> para a <strong>Aplicação Origem</strong>. Se for feito um consumo com várias mensagens tenha certeza de informar um valor de tempo suficiente para sua aplicação fazer o tratamento para todas as mensagens e realizar o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> individual para cada uma delas, caso contrário as mensagens retornarão à fila para serem consumidas novamente.</p>\n</li>\n<li><p><strong>size:</strong> Quantidade de mensagens que serão consumidas simultaneamente. Permite que seja feito o consumo de até 50 mensagens na mesma request, caso não seja enviado o padrão é 1.</p>\n</li>\n</ul>\n</li>\n</ul>\n","_postman_id":"48c3c63a-0685-4b01-ae7f-66c5f9ecc32c"},{"name":"Carrier","item":[{"name":"Carrier","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if(Math.trunc(pm.response.code / 100) === 2){\r\n    var jsonData = pm.response.json();\r\n\r\n    if(jsonData.messages.length > 0){\r\n        var message = jsonData.messages[0];\r\n        pm.environment.set(\"receiptId\", message.receiptId);\r\n        pm.environment.set(\"messageId\", message.messageId);\r\n        pm.environment.set(\"entityId\",  getEntityId(pm.environment.get(\"consume-topicId\"), message[\"body\"]));\r\n\r\n        if(pm.environment.get(\"consume-topicId\") === \"carrier-order-notify\"){\r\n            \r\n            pm.environment.set(\"orderId\",  message.body.orderId);\r\n            pm.environment.set(\"invoiceNumber\",  message.body.invoices[0].number);\r\n            pm.environment.set(\"carrier\",  message.body.shipment.carrier);\r\n            pm.environment.set(\"method\",  message.body.shipment.method);\r\n            pm.environment.set(\"trackingCode\",  message.body.shipment.trackingCode);\r\n\r\n        }\r\n\r\n    }\r\n\r\n}\r\n\r\nfunction getEntityId(topicId, message){\r\n    switch(topicId){\r\n        case \"carrier\":\r\n            return message[\"carrierId\"];\r\n        case \"location\":\r\n            return message[\"locationId\"];\r\n        case \"product\":\r\n            return message[\"productId\"];\r\n        case \"order\":\r\n        case \"order-treatment\":\r\n        case \"order-exception\":\r\n        case \"order-payment-status\":\r\n        case \"carrier-order-notify\":\r\n        case \"fulfillment-status\":\r\n            return message[\"orderId\"]\r\n        case \"price\":\r\n        case \"sku\":\r\n        case \"stock\":\r\n            return message[\"skuId\"]\r\n        case \"feedback\":\r\n                return message[\"entityId\"]\r\n        default:\r\n            return null;\r\n    }\r\n}\r\n"],"id":"595d1b08-3312-480d-b654-5bf71668b05b"}}],"id":"a7184fe2-0572-4b85-9b4e-b774d7790655","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"GET","header":[],"url":"{{api-host}}/v2/applications/{{app-id}}/topics/carrier/queues/{{queueId}}/messages","description":"<p>O retorno do endpoint possui a seguinte estrutura:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>messageId</code></td>\n<td>Código identificador da mensagem que está sendo consumida.</td>\n</tr>\n<tr>\n<td><code>body</code></td>\n<td>Array com as informações da mensagem publicada, os campos que retornam aqui variam conforme o tópico da mensagem.</td>\n</tr>\n<tr>\n<td><code>receiptId</code></td>\n<td>Código identificador único para realizar o ACK da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes</code></td>\n<td>Array contendo informações das aplicações envolvidas na mensagem, tópico e identificação da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.topicId</code></td>\n<td>Tópico que a mensagem foi publicada.</td>\n</tr>\n<tr>\n<td><code>attributes.applicationId</code></td>\n<td>Identificador da aplicação que publicou a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.targetApplicationId</code></td>\n<td>Identificador da aplicação que recebeu a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.messageId</code></td>\n<td>Código identificador da mensagem publicada.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","carrier","queues","{{queueId}}","messages"],"host":["{{api-host}}"],"query":[{"disabled":true,"key":"visibilityTimeout","value":"30"},{"disabled":true,"key":"size","value":"50"}],"variable":[]}},"response":[],"_postman_id":"a7184fe2-0572-4b85-9b4e-b774d7790655"}],"id":"3baf4daa-1160-48fb-8fb3-eed5fa736f34","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Endpoint utilizado para Consumo de uma mensagem específica referente ao tópico de <code>carrier</code>, o retorno da mensagem é a informação que precisa ser tratada na sua aplicação. Para fazer a requisição do consumo informe a indentificação da sua aplicação junto ao Maker IO, e o identificador da fila da mensagem que deseja fazer o consumo na URL da request.</p>\n<p><strong>OBS.</strong>: Após realizar o consumo da mensagem faça o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> da mensagem enderaçada à Aplicação Origem. O <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> é individual por mensagem, mesmo que tenha sido feito o consumo de várias mensagens ao mesmo tempo.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>GET</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/carrier/queues/{{queueId}}/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{TOKEN}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n<li><p><strong>Query-Params:</strong></p>\n<ul>\n<li><p><strong>visibilityTimeout:</strong> Tempo em segundos que a mensagem irá permanecer oculta da fila, o valor informado é o tempo necessário para a a <strong>Aplicação Consumidora</strong> fazer o tratamento da mensagem na aplicação e devolver o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> para a <strong>Aplicação Origem</strong>. Se for feito um consumo com várias mensagens tenha certeza de informar um valor de tempo suficiente para sua aplicação fazer o tratamento para todas as mensagens e realizar o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> individual para cada uma delas, caso contrário as mensagens retornarão à fila para serem consumidas novamente.</p>\n</li>\n<li><p><strong>size:</strong> Quantidade de mensagens que serão consumidas simultaneamente. Permite que seja feito o consumo de até 50 mensagens na mesma request, caso não seja enviado o padrão é 1.</p>\n</li>\n</ul>\n</li>\n</ul>\n","_postman_id":"3baf4daa-1160-48fb-8fb3-eed5fa736f34"},{"name":"Carrier Order Notify","item":[{"name":"Carrier Order Notify","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if(Math.trunc(pm.response.code / 100) === 2){\r\n    var jsonData = pm.response.json();\r\n\r\n    if(jsonData.messages.length > 0){\r\n        var message = jsonData.messages[0];\r\n        pm.environment.set(\"receiptId\", message.receiptId);\r\n        pm.environment.set(\"messageId\", message.messageId);\r\n        pm.environment.set(\"entityId\",  getEntityId(pm.environment.get(\"consume-topicId\"), message[\"body\"]));\r\n\r\n        if(pm.environment.get(\"consume-topicId\") === \"carrier-order-notify\"){\r\n            \r\n            pm.environment.set(\"orderId\",  message.body.orderId);\r\n            pm.environment.set(\"invoiceNumber\",  message.body.invoices[0].number);\r\n            pm.environment.set(\"carrier\",  message.body.shipment.carrier);\r\n            pm.environment.set(\"method\",  message.body.shipment.method);\r\n            pm.environment.set(\"trackingCode\",  message.body.shipment.trackingCode);\r\n\r\n        }\r\n\r\n    }\r\n\r\n}\r\n\r\nfunction getEntityId(topicId, message){\r\n    switch(topicId){\r\n        case \"carrier\":\r\n            return message[\"carrierId\"];\r\n        case \"location\":\r\n            return message[\"locationId\"];\r\n        case \"product\":\r\n            return message[\"productId\"];\r\n        case \"order\":\r\n        case \"order-treatment\":\r\n        case \"order-exception\":\r\n        case \"order-payment-status\":\r\n        case \"carrier-order-notify\":\r\n        case \"fulfillment-status\":\r\n            return message[\"orderId\"]\r\n        case \"price\":\r\n        case \"sku\":\r\n        case \"stock\":\r\n            return message[\"skuId\"]\r\n        case \"feedback\":\r\n                return message[\"entityId\"]\r\n        default:\r\n            return null;\r\n    }\r\n}\r\n"],"id":"772710fd-47b7-48ce-8dc4-297389d84841"}}],"id":"f5aad874-f73c-447c-b2cf-da154429ce75","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"GET","header":[],"url":"{{api-host}}/v2/applications/{{app-id}}/topics/carrier-order-notify/queues/{{queueId}}/messages","description":"<p>O retorno do endpoint possui a seguinte estrutura:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>messageId</code></td>\n<td>Código identificador da mensagem que está sendo consumida.</td>\n</tr>\n<tr>\n<td><code>body</code></td>\n<td>Array com as informações da mensagem publicada, os campos que retornam aqui variam conforme o tópico da mensagem.</td>\n</tr>\n<tr>\n<td><code>receiptId</code></td>\n<td>Código identificador único para realizar o ACK da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes</code></td>\n<td>Array contendo informações das aplicações envolvidas na mensagem, tópico e identificação da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.topicId</code></td>\n<td>Tópico que a mensagem foi publicada.</td>\n</tr>\n<tr>\n<td><code>attributes.applicationId</code></td>\n<td>Identificador da aplicação que publicou a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.targetApplicationId</code></td>\n<td>Identificador da aplicação que recebeu a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.messageId</code></td>\n<td>Código identificador da mensagem publicada.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","carrier-order-notify","queues","{{queueId}}","messages"],"host":["{{api-host}}"],"query":[{"disabled":true,"key":"visibilityTimeout","value":"30"},{"disabled":true,"key":"size","value":"50"}],"variable":[]}},"response":[],"_postman_id":"f5aad874-f73c-447c-b2cf-da154429ce75"}],"id":"6909b877-b5df-45c0-b4a4-6fb4b9d06c44","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Endpoint utilizado para Consumo de uma mensagem específica referente ao tópico de <code>carrier-order-notify</code>, o retorno da mensagem é a informação que precisa ser tratada na sua aplicação. Para fazer a requisição do consumo informe a indentificação da sua aplicação junto ao Maker IO, e o identificador da fila da mensagem que deseja fazer o consumo na URL da request.</p>\n<p><strong>OBS.</strong>: Após realizar o consumo da mensagem faça o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> da mensagem enderaçada à Aplicação Origem. O <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> é individual por mensagem, mesmo que tenha sido feito o consumo de várias mensagens ao mesmo tempo.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>GET</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/carrier-order-notify/queues/{{queueId}}/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{TOKEN}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n<li><p><strong>Query-Params:</strong></p>\n<ul>\n<li><p><strong>visibilityTimeout:</strong> Tempo em segundos que a mensagem irá permanecer oculta da fila, o valor informado é o tempo necessário para a a <strong>Aplicação Consumidora</strong> fazer o tratamento da mensagem na aplicação e devolver o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> para a <strong>Aplicação Origem</strong>. Se for feito um consumo com várias mensagens tenha certeza de informar um valor de tempo suficiente para sua aplicação fazer o tratamento para todas as mensagens e realizar o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> individual para cada uma delas, caso contrário as mensagens retornarão à fila para serem consumidas novamente.</p>\n</li>\n<li><p><strong>size:</strong> Quantidade de mensagens que serão consumidas simultaneamente. Permite que seja feito o consumo de até 50 mensagens na mesma request, caso não seja enviado o padrão é 1.</p>\n</li>\n</ul>\n</li>\n</ul>\n","_postman_id":"6909b877-b5df-45c0-b4a4-6fb4b9d06c44"},{"name":"Order Treatment","item":[{"name":"Order Treatment","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if(Math.trunc(pm.response.code / 100) === 2){\r\n    var jsonData = pm.response.json();\r\n\r\n    if(jsonData.messages.length > 0){\r\n        var message = jsonData.messages[0];\r\n        pm.environment.set(\"receiptId\", message.receiptId);\r\n        pm.environment.set(\"messageId\", message.messageId);\r\n        pm.environment.set(\"entityId\",  getEntityId(pm.environment.get(\"consume-topicId\"), message[\"body\"]));\r\n\r\n        if(pm.environment.get(\"consume-topicId\") === \"carrier-order-notify\"){\r\n            \r\n            pm.environment.set(\"orderId\",  message.body.orderId);\r\n            pm.environment.set(\"invoiceNumber\",  message.body.invoices[0].number);\r\n            pm.environment.set(\"carrier\",  message.body.shipment.carrier);\r\n            pm.environment.set(\"method\",  message.body.shipment.method);\r\n            pm.environment.set(\"trackingCode\",  message.body.shipment.trackingCode);\r\n\r\n        }\r\n\r\n    }\r\n\r\n}\r\n\r\nfunction getEntityId(topicId, message){\r\n    switch(topicId){\r\n        case \"carrier\":\r\n            return message[\"carrierId\"];\r\n        case \"location\":\r\n            return message[\"locationId\"];\r\n        case \"product\":\r\n            return message[\"productId\"];\r\n        case \"order\":\r\n        case \"order-treatment\":\r\n        case \"order-exception\":\r\n        case \"order-payment-status\":\r\n        case \"carrier-order-notify\":\r\n        case \"fulfillment-status\":\r\n            return message[\"orderId\"]\r\n        case \"price\":\r\n        case \"sku\":\r\n        case \"stock\":\r\n            return message[\"skuId\"]\r\n        case \"feedback\":\r\n                return message[\"entityId\"]\r\n        default:\r\n            return null;\r\n    }\r\n}\r\n"],"id":"3800994d-f036-4c8e-9d71-d69619e5f169"}}],"id":"82a3d51b-313e-4f50-9f49-a0d2dae0c720","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"GET","header":[],"url":"{{api-host}}/v2/applications/{{app-id}}/topics/order-treatment/queues/{{queueId}}/messages","description":"<p>O retorno do endpoint possui a seguinte estrutura:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>messageId</code></td>\n<td>Código identificador da mensagem que está sendo consumida.</td>\n</tr>\n<tr>\n<td><code>body</code></td>\n<td>Array com as informações da mensagem publicada, os campos que retornam aqui variam conforme o tópico da mensagem.</td>\n</tr>\n<tr>\n<td><code>receiptId</code></td>\n<td>Código identificador único para realizar o ACK da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes</code></td>\n<td>Array contendo informações das aplicações envolvidas na mensagem, tópico e identificação da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.topicId</code></td>\n<td>Tópico que a mensagem foi publicada.</td>\n</tr>\n<tr>\n<td><code>attributes.applicationId</code></td>\n<td>Identificador da aplicação que publicou a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.targetApplicationId</code></td>\n<td>Identificador da aplicação que recebeu a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.messageId</code></td>\n<td>Código identificador da mensagem publicada.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","order-treatment","queues","{{queueId}}","messages"],"host":["{{api-host}}"],"query":[{"disabled":true,"key":"visibilityTimeout","value":"30"},{"disabled":true,"key":"size","value":"50"}],"variable":[]}},"response":[],"_postman_id":"82a3d51b-313e-4f50-9f49-a0d2dae0c720"}],"id":"2671dabd-51e1-4a44-a989-e74ae819d01e","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Endpoint utilizado para Consumo de uma mensagem específica referente ao tópico de <code>order-treatment</code>, o retorno da mensagem é a informação que precisa ser tratada na sua aplicação. Para fazer a requisição do consumo informe a indentificação da sua aplicação junto ao Maker IO, e o identificador da fila da mensagem que deseja fazer o consumo na URL da request.</p>\n<p><strong>OBS.</strong>: Após realizar o consumo da mensagem faça o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> da mensagem enderaçada à Aplicação Origem. O <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> é individual por mensagem, mesmo que tenha sido feito o consumo de várias mensagens ao mesmo tempo.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>GET</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/order-treatment/queues/{{queueId}}/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{TOKEN}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n<li><p><strong>Query-Params:</strong></p>\n<ul>\n<li><p><strong>visibilityTimeout:</strong> Tempo em segundos que a mensagem irá permanecer oculta da fila, o valor informado é o tempo necessário para a a <strong>Aplicação Consumidora</strong> fazer o tratamento da mensagem na aplicação e devolver o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> para a <strong>Aplicação Origem</strong>. Se for feito um consumo com várias mensagens tenha certeza de informar um valor de tempo suficiente para sua aplicação fazer o tratamento para todas as mensagens e realizar o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> individual para cada uma delas, caso contrário as mensagens retornarão à fila para serem consumidas novamente.</p>\n</li>\n<li><p><strong>size:</strong> Quantidade de mensagens que serão consumidas simultaneamente. Permite que seja feito o consumo de até 50 mensagens na mesma request, caso não seja enviado o padrão é 1.</p>\n</li>\n</ul>\n</li>\n</ul>\n","_postman_id":"2671dabd-51e1-4a44-a989-e74ae819d01e"},{"name":"Order Payment Status","item":[{"name":"Order Payment Status","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if(Math.trunc(pm.response.code / 100) === 2){\r\n    var jsonData = pm.response.json();\r\n\r\n    if(jsonData.messages.length > 0){\r\n        var message = jsonData.messages[0];\r\n        pm.environment.set(\"receiptId\", message.receiptId);\r\n        pm.environment.set(\"messageId\", message.messageId);\r\n        pm.environment.set(\"entityId\",  getEntityId(pm.environment.get(\"consume-topicId\"), message[\"body\"]));\r\n\r\n        if(pm.environment.get(\"consume-topicId\") === \"carrier-order-notify\"){\r\n            \r\n            pm.environment.set(\"orderId\",  message.body.orderId);\r\n            pm.environment.set(\"invoiceNumber\",  message.body.invoices[0].number);\r\n            pm.environment.set(\"carrier\",  message.body.shipment.carrier);\r\n            pm.environment.set(\"method\",  message.body.shipment.method);\r\n            pm.environment.set(\"trackingCode\",  message.body.shipment.trackingCode);\r\n\r\n        }\r\n\r\n    }\r\n\r\n}\r\n\r\nfunction getEntityId(topicId, message){\r\n    switch(topicId){\r\n        case \"carrier\":\r\n            return message[\"carrierId\"];\r\n        case \"location\":\r\n            return message[\"locationId\"];\r\n        case \"product\":\r\n            return message[\"productId\"];\r\n        case \"order\":\r\n        case \"order-treatment\":\r\n        case \"order-exception\":\r\n        case \"order-payment-status\":\r\n        case \"carrier-order-notify\":\r\n        case \"fulfillment-status\":\r\n            return message[\"orderId\"]\r\n        case \"price\":\r\n        case \"sku\":\r\n        case \"stock\":\r\n            return message[\"skuId\"]\r\n        case \"feedback\":\r\n                return message[\"entityId\"]\r\n        default:\r\n            return null;\r\n    }\r\n}\r\n"],"id":"a2b4760a-af89-42cc-8414-4b6522b2494d"}}],"id":"694c9546-b509-4856-ba68-6e1a475bc245","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"GET","header":[],"url":"{{api-host}}/v2/applications/{{app-id}}/topics/order-payment-status/queues/{{queueId}}/messages","description":"<p>O retorno do endpoint possui a seguinte estrutura:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>messageId</code></td>\n<td>Código identificador da mensagem que está sendo consumida.</td>\n</tr>\n<tr>\n<td><code>body</code></td>\n<td>Array com as informações da mensagem publicada, os campos que retornam aqui variam conforme o tópico da mensagem.</td>\n</tr>\n<tr>\n<td><code>receiptId</code></td>\n<td>Código identificador único para realizar o ACK da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes</code></td>\n<td>Array contendo informações das aplicações envolvidas na mensagem, tópico e identificação da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.topicId</code></td>\n<td>Tópico que a mensagem foi publicada.</td>\n</tr>\n<tr>\n<td><code>attributes.applicationId</code></td>\n<td>Identificador da aplicação que publicou a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.targetApplicationId</code></td>\n<td>Identificador da aplicação que recebeu a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.messageId</code></td>\n<td>Código identificador da mensagem publicada.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","order-payment-status","queues","{{queueId}}","messages"],"host":["{{api-host}}"],"query":[{"disabled":true,"key":"visibilityTimeout","value":"30"},{"disabled":true,"key":"size","value":"50"}],"variable":[]}},"response":[],"_postman_id":"694c9546-b509-4856-ba68-6e1a475bc245"}],"id":"e7225166-0d91-4283-bca4-96d6ccfa3d3e","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Endpoint utilizado para Consumo de uma mensagem específica referente ao tópico de <code>order-payment-status</code>, o retorno da mensagem é a informação que precisa ser tratada na sua aplicação. Para fazer a requisição do consumo informe a indentificação da sua aplicação junto ao Maker IO, e o identificador da fila da mensagem que deseja fazer o consumo na URL da request.</p>\n<p><strong>OBS.</strong>: Após realizar o consumo da mensagem faça o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> da mensagem enderaçada à Aplicação Origem. O <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> é individual por mensagem, mesmo que tenha sido feito o consumo de várias mensagens ao mesmo tempo.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>GET</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/order-payment-status/queues/{{queueId}}/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{TOKEN}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n<li><p><strong>Query-Params:</strong></p>\n<ul>\n<li><p><strong>visibilityTimeout:</strong> Tempo em segundos que a mensagem irá permanecer oculta da fila, o valor informado é o tempo necessário para a a <strong>Aplicação Consumidora</strong> fazer o tratamento da mensagem na aplicação e devolver o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> para a <strong>Aplicação Origem</strong>. Se for feito um consumo com várias mensagens tenha certeza de informar um valor de tempo suficiente para sua aplicação fazer o tratamento para todas as mensagens e realizar o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> individual para cada uma delas, caso contrário as mensagens retornarão à fila para serem consumidas novamente.</p>\n</li>\n<li><p><strong>size:</strong> Quantidade de mensagens que serão consumidas simultaneamente. Permite que seja feito o consumo de até 50 mensagens na mesma request, caso não seja enviado o padrão é 1.</p>\n</li>\n</ul>\n</li>\n</ul>\n","_postman_id":"e7225166-0d91-4283-bca4-96d6ccfa3d3e"},{"name":"Order Exception","item":[{"name":"Order Exception","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if(Math.trunc(pm.response.code / 100) === 2){\r\n    var jsonData = pm.response.json();\r\n\r\n    if(jsonData.messages.length > 0){\r\n        var message = jsonData.messages[0];\r\n        pm.environment.set(\"receiptId\", message.receiptId);\r\n        pm.environment.set(\"messageId\", message.messageId);\r\n        pm.environment.set(\"entityId\",  getEntityId(pm.environment.get(\"consume-topicId\"), message[\"body\"]));\r\n\r\n        if(pm.environment.get(\"consume-topicId\") === \"carrier-order-notify\"){\r\n            \r\n            pm.environment.set(\"orderId\",  message.body.orderId);\r\n            pm.environment.set(\"invoiceNumber\",  message.body.invoices[0].number);\r\n            pm.environment.set(\"carrier\",  message.body.shipment.carrier);\r\n            pm.environment.set(\"method\",  message.body.shipment.method);\r\n            pm.environment.set(\"trackingCode\",  message.body.shipment.trackingCode);\r\n\r\n        }\r\n\r\n    }\r\n\r\n}\r\n\r\nfunction getEntityId(topicId, message){\r\n    switch(topicId){\r\n        case \"carrier\":\r\n            return message[\"carrierId\"];\r\n        case \"location\":\r\n            return message[\"locationId\"];\r\n        case \"product\":\r\n            return message[\"productId\"];\r\n        case \"order\":\r\n        case \"order-treatment\":\r\n        case \"order-exception\":\r\n        case \"order-payment-status\":\r\n        case \"carrier-order-notify\":\r\n        case \"fulfillment-status\":\r\n            return message[\"orderId\"]\r\n        case \"price\":\r\n        case \"sku\":\r\n        case \"stock\":\r\n            return message[\"skuId\"]\r\n        case \"feedback\":\r\n                return message[\"entityId\"]\r\n        default:\r\n            return null;\r\n    }\r\n}\r\n"],"id":"cadce21e-c1bc-497c-b83a-f8ed60eb5a08"}}],"id":"9275acb0-32fe-4ac9-9c49-911def866a5a","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"GET","header":[],"url":"{{api-host}}/v2/applications/{{app-id}}/topics/order-exception/queues/{{queueId}}/messages","description":"<p>O retorno do endpoint possui a seguinte estrutura:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>messageId</code></td>\n<td>Código identificador da mensagem que está sendo consumida.</td>\n</tr>\n<tr>\n<td><code>body</code></td>\n<td>Array com as informações da mensagem publicada, os campos que retornam aqui variam conforme o tópico da mensagem.</td>\n</tr>\n<tr>\n<td><code>receiptId</code></td>\n<td>Código identificador único para realizar o ACK da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes</code></td>\n<td>Array contendo informações das aplicações envolvidas na mensagem, tópico e identificação da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.topicId</code></td>\n<td>Tópico que a mensagem foi publicada.</td>\n</tr>\n<tr>\n<td><code>attributes.applicationId</code></td>\n<td>Identificador da aplicação que publicou a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.targetApplicationId</code></td>\n<td>Identificador da aplicação que recebeu a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.messageId</code></td>\n<td>Código identificador da mensagem publicada.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","order-exception","queues","{{queueId}}","messages"],"host":["{{api-host}}"],"query":[{"disabled":true,"key":"visibilityTimeout","value":"30"},{"disabled":true,"key":"size","value":"50"}],"variable":[]}},"response":[],"_postman_id":"9275acb0-32fe-4ac9-9c49-911def866a5a"}],"id":"369207c8-1d10-4268-89f5-a4e76c3444d9","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Endpoint utilizado para Consumo de uma mensagem específica referente ao tópico de <code>order-exception</code>, o retorno da mensagem é a informação que precisa ser tratada na sua aplicação. Para fazer a requisição do consumo informe a indentificação da sua aplicação junto ao Maker IO, e o identificador da fila da mensagem que deseja fazer o consumo na URL da request.</p>\n<p><strong>OBS.</strong>: Após realizar o consumo da mensagem faça o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> da mensagem enderaçada à Aplicação Origem. O <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> é individual por mensagem, mesmo que tenha sido feito o consumo de várias mensagens ao mesmo tempo.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>GET</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/order-exception/queues/{{queueId}}/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{TOKEN}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n<li><p><strong>Query-Params:</strong></p>\n<ul>\n<li><p><strong>visibilityTimeout:</strong> Tempo em segundos que a mensagem irá permanecer oculta da fila, o valor informado é o tempo necessário para a a <strong>Aplicação Consumidora</strong> fazer o tratamento da mensagem na aplicação e devolver o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> para a <strong>Aplicação Origem</strong>. Se for feito um consumo com várias mensagens tenha certeza de informar um valor de tempo suficiente para sua aplicação fazer o tratamento para todas as mensagens e realizar o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> individual para cada uma delas, caso contrário as mensagens retornarão à fila para serem consumidas novamente.</p>\n</li>\n<li><p><strong>size:</strong> Quantidade de mensagens que serão consumidas simultaneamente. Permite que seja feito o consumo de até 50 mensagens na mesma request, caso não seja enviado o padrão é 1.</p>\n</li>\n</ul>\n</li>\n</ul>\n","_postman_id":"369207c8-1d10-4268-89f5-a4e76c3444d9"},{"name":"Order Relocation","item":[{"name":"Order Relocation","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if(Math.trunc(pm.response.code / 100) === 2){\r\n    var jsonData = pm.response.json();\r\n\r\n    if(jsonData.messages.length > 0){\r\n        var message = jsonData.messages[0];\r\n        pm.environment.set(\"receiptId\", message.receiptId);\r\n        pm.environment.set(\"messageId\", message.messageId);\r\n        pm.environment.set(\"entityId\",  getEntityId(pm.environment.get(\"consume-topicId\"), message[\"body\"]));\r\n\r\n        if(pm.environment.get(\"consume-topicId\") === \"carrier-order-notify\"){\r\n            \r\n            pm.environment.set(\"orderId\",  message.body.orderId);\r\n            pm.environment.set(\"invoiceNumber\",  message.body.invoices[0].number);\r\n            pm.environment.set(\"carrier\",  message.body.shipment.carrier);\r\n            pm.environment.set(\"method\",  message.body.shipment.method);\r\n            pm.environment.set(\"trackingCode\",  message.body.shipment.trackingCode);\r\n\r\n        }\r\n\r\n    }\r\n\r\n}\r\n\r\nfunction getEntityId(topicId, message){\r\n    switch(topicId){\r\n        case \"carrier\":\r\n            return message[\"carrierId\"];\r\n        case \"location\":\r\n            return message[\"locationId\"];\r\n        case \"product\":\r\n            return message[\"productId\"];\r\n        case \"order\":\r\n        case \"order-treatment\":\r\n        case \"order-exception\":\r\n        case \"order-payment-status\":\r\n        case \"carrier-order-notify\":\r\n        case \"fulfillment-status\":\r\n            return message[\"orderId\"]\r\n        case \"price\":\r\n        case \"sku\":\r\n        case \"stock\":\r\n            return message[\"skuId\"]\r\n        case \"feedback\":\r\n                return message[\"entityId\"]\r\n        default:\r\n            return null;\r\n    }\r\n}\r\n"],"id":"4b76c140-ed86-4d92-a941-01b4c7fcb322"}}],"id":"55c60f2d-87f5-4433-86ea-82d80f34e0d3","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"GET","header":[],"url":"{{api-host}}/v2/applications/{{app-id}}/topics/order-relocation/queues/{{queueId}}/messages","description":"<p>O retorno do endpoint possui a seguinte estrutura:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>messageId</code></td>\n<td>Código identificador da mensagem que está sendo consumida.</td>\n</tr>\n<tr>\n<td><code>body</code></td>\n<td>Array com as informações da mensagem publicada, os campos que retornam aqui variam conforme o tópico da mensagem.</td>\n</tr>\n<tr>\n<td><code>receiptId</code></td>\n<td>Código identificador único para realizar o ACK da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes</code></td>\n<td>Array contendo informações das aplicações envolvidas na mensagem, tópico e identificação da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.topicId</code></td>\n<td>Tópico que a mensagem foi publicada.</td>\n</tr>\n<tr>\n<td><code>attributes.applicationId</code></td>\n<td>Identificador da aplicação que publicou a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.targetApplicationId</code></td>\n<td>Identificador da aplicação que recebeu a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.messageId</code></td>\n<td>Código identificador da mensagem publicada.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","order-relocation","queues","{{queueId}}","messages"],"host":["{{api-host}}"],"query":[{"disabled":true,"key":"visibilityTimeout","value":"30"},{"disabled":true,"key":"size","value":"50"}],"variable":[]}},"response":[],"_postman_id":"55c60f2d-87f5-4433-86ea-82d80f34e0d3"}],"id":"48edb5df-e8be-4c0d-8fce-f61c08a7aee3","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Endpoint utilizado para Consumo de uma mensagem específica referente ao tópico de <code>order-relocation</code>, o retorno da mensagem é a informação que precisa ser tratada na sua aplicação. Para fazer a requisição do consumo informe a indentificação da sua aplicação junto ao Maker IO, e o identificador da fila da mensagem que deseja fazer o consumo na URL da request.</p>\n<p><strong>OBS.</strong>: Após realizar o consumo da mensagem faça o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> da mensagem enderaçada à Aplicação Origem. O <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> é individual por mensagem, mesmo que tenha sido feito o consumo de várias mensagens ao mesmo tempo.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>GET</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/order-relocation/queues/{{queueId}}/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{TOKEN}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n<li><p><strong>Query-Params:</strong></p>\n<ul>\n<li><p><strong>visibilityTimeout:</strong> Tempo em segundos que a mensagem irá permanecer oculta da fila, o valor informado é o tempo necessário para a a <strong>Aplicação Consumidora</strong> fazer o tratamento da mensagem na aplicação e devolver o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> para a <strong>Aplicação Origem</strong>. Se for feito um consumo com várias mensagens tenha certeza de informar um valor de tempo suficiente para sua aplicação fazer o tratamento para todas as mensagens e realizar o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> individual para cada uma delas, caso contrário as mensagens retornarão à fila para serem consumidas novamente.</p>\n</li>\n<li><p><strong>size:</strong> Quantidade de mensagens que serão consumidas simultaneamente. Permite que seja feito o consumo de até 50 mensagens na mesma request, caso não seja enviado o padrão é 1.</p>\n</li>\n</ul>\n</li>\n</ul>\n","_postman_id":"48edb5df-e8be-4c0d-8fce-f61c08a7aee3"},{"name":"Fulfillment Status","item":[{"name":"Fulfillment Status","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if(Math.trunc(pm.response.code / 100) === 2){\r\n    var jsonData = pm.response.json();\r\n\r\n    if(jsonData.messages.length > 0){\r\n        var message = jsonData.messages[0];\r\n        pm.environment.set(\"receiptId\", message.receiptId);\r\n        pm.environment.set(\"messageId\", message.messageId);\r\n        pm.environment.set(\"entityId\",  getEntityId(pm.environment.get(\"consume-topicId\"), message[\"body\"]));\r\n\r\n        if(pm.environment.get(\"consume-topicId\") === \"carrier-order-notify\"){\r\n            \r\n            pm.environment.set(\"orderId\",  message.body.orderId);\r\n            pm.environment.set(\"invoiceNumber\",  message.body.invoices[0].number);\r\n            pm.environment.set(\"carrier\",  message.body.shipment.carrier);\r\n            pm.environment.set(\"method\",  message.body.shipment.method);\r\n            pm.environment.set(\"trackingCode\",  message.body.shipment.trackingCode);\r\n\r\n        }\r\n\r\n    }\r\n\r\n}\r\n\r\nfunction getEntityId(topicId, message){\r\n    switch(topicId){\r\n        case \"carrier\":\r\n            return message[\"carrierId\"];\r\n        case \"location\":\r\n            return message[\"locationId\"];\r\n        case \"product\":\r\n            return message[\"productId\"];\r\n        case \"order\":\r\n        case \"order-treatment\":\r\n        case \"order-exception\":\r\n        case \"order-payment-status\":\r\n        case \"carrier-order-notify\":\r\n        case \"fulfillment-status\":\r\n            return message[\"orderId\"]\r\n        case \"price\":\r\n        case \"sku\":\r\n        case \"stock\":\r\n            return message[\"skuId\"]\r\n        case \"feedback\":\r\n                return message[\"entityId\"]\r\n        default:\r\n            return null;\r\n    }\r\n}\r\n"],"id":"e25bd359-05ab-4057-9a31-d1fb0224f7a8"}}],"id":"6de27c1a-4a34-4d59-9054-26b245663686","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"GET","header":[],"url":"{{api-host}}/v2/applications/{{app-id}}/topics/fulfillment-status/queues/{{queueId}}/messages","description":"<p>O retorno do endpoint possui a seguinte estrutura:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>messageId</code></td>\n<td>Código identificador da mensagem que está sendo consumida.</td>\n</tr>\n<tr>\n<td><code>body</code></td>\n<td>Array com as informações da mensagem publicada, os campos que retornam aqui variam conforme o tópico da mensagem.</td>\n</tr>\n<tr>\n<td><code>receiptId</code></td>\n<td>Código identificador único para realizar o ACK da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes</code></td>\n<td>Array contendo informações das aplicações envolvidas na mensagem, tópico e identificação da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.topicId</code></td>\n<td>Tópico que a mensagem foi publicada.</td>\n</tr>\n<tr>\n<td><code>attributes.applicationId</code></td>\n<td>Identificador da aplicação que publicou a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.targetApplicationId</code></td>\n<td>Identificador da aplicação que recebeu a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.messageId</code></td>\n<td>Código identificador da mensagem publicada.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","fulfillment-status","queues","{{queueId}}","messages"],"host":["{{api-host}}"],"query":[{"disabled":true,"key":"visibilityTimeout","value":"30"},{"disabled":true,"key":"size","value":"50"}],"variable":[]}},"response":[],"_postman_id":"6de27c1a-4a34-4d59-9054-26b245663686"}],"id":"4f99913b-d411-45c3-99e2-5944699d8b9e","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Endpoint utilizado para Consumo de uma mensagem específica referente ao tópico de <code>fulfillment-status</code>, o retorno da mensagem é a informação que precisa ser tratada na sua aplicação. Para fazer a requisição do consumo informe a indentificação da sua aplicação junto ao Maker IO, e o identificador da fila da mensagem que deseja fazer o consumo na URL da request.</p>\n<p><strong>OBS.</strong>: Após realizar o consumo da mensagem faça o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> da mensagem enderaçada à Aplicação Origem. O <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> é individual por mensagem, mesmo que tenha sido feito o consumo de várias mensagens ao mesmo tempo.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>GET</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/fulfillment-status/queues/{{queueId}}/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{TOKEN}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n<li><p><strong>Query-Params:</strong></p>\n<ul>\n<li><p><strong>visibilityTimeout:</strong> Tempo em segundos que a mensagem irá permanecer oculta da fila, o valor informado é o tempo necessário para a a <strong>Aplicação Consumidora</strong> fazer o tratamento da mensagem na aplicação e devolver o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> para a <strong>Aplicação Origem</strong>. Se for feito um consumo com várias mensagens tenha certeza de informar um valor de tempo suficiente para sua aplicação fazer o tratamento para todas as mensagens e realizar o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> individual para cada uma delas, caso contrário as mensagens retornarão à fila para serem consumidas novamente.</p>\n</li>\n<li><p><strong>size:</strong> Quantidade de mensagens que serão consumidas simultaneamente. Permite que seja feito o consumo de até 50 mensagens na mesma request, caso não seja enviado o padrão é 1.</p>\n</li>\n</ul>\n</li>\n</ul>\n","_postman_id":"4f99913b-d411-45c3-99e2-5944699d8b9e"},{"name":"Feedback","item":[{"name":"Feedback","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if(Math.trunc(pm.response.code / 100) === 2){\r\n    var jsonData = pm.response.json();\r\n\r\n    if(jsonData.messages.length > 0){\r\n        var message = jsonData.messages[0];\r\n        pm.environment.set(\"receiptId\", message.receiptId);\r\n        pm.environment.set(\"messageId\", message.messageId);\r\n        pm.environment.set(\"entityId\",  getEntityId(pm.environment.get(\"consume-topicId\"), message[\"body\"]));\r\n\r\n        if(pm.environment.get(\"consume-topicId\") === \"carrier-order-notify\"){\r\n            \r\n            pm.environment.set(\"orderId\",  message.body.orderId);\r\n            pm.environment.set(\"invoiceNumber\",  message.body.invoices[0].number);\r\n            pm.environment.set(\"carrier\",  message.body.shipment.carrier);\r\n            pm.environment.set(\"method\",  message.body.shipment.method);\r\n            pm.environment.set(\"trackingCode\",  message.body.shipment.trackingCode);\r\n\r\n        }\r\n\r\n    }\r\n\r\n}\r\n\r\nfunction getEntityId(topicId, message){\r\n    switch(topicId){\r\n        case \"carrier\":\r\n            return message[\"carrierId\"];\r\n        case \"location\":\r\n            return message[\"locationId\"];\r\n        case \"product\":\r\n            return message[\"productId\"];\r\n        case \"order\":\r\n        case \"order-treatment\":\r\n        case \"order-exception\":\r\n        case \"order-payment-status\":\r\n        case \"carrier-order-notify\":\r\n        case \"fulfillment-status\":\r\n            return message[\"orderId\"]\r\n        case \"price\":\r\n        case \"sku\":\r\n        case \"stock\":\r\n            return message[\"skuId\"]\r\n        case \"feedback\":\r\n                return message[\"entityId\"]\r\n        default:\r\n            return null;\r\n    }\r\n}\r\n"],"id":"539066a0-ccc6-4610-8835-ad9df091a328"}}],"id":"733893bb-f40c-43b2-8d9b-8435b17df906","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"GET","header":[],"url":"{{api-host}}/v2/applications/{{app-id}}/topics/feedback/queues/{{queueId}}/messages","description":"<p>O retorno do endpoint possui a seguinte estrutura:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>messageId</code></td>\n<td>Código identificador da mensagem que está sendo consumida.</td>\n</tr>\n<tr>\n<td><code>body</code></td>\n<td>Array com as informações da mensagem publicada, os campos que retornam aqui variam conforme o tópico da mensagem.</td>\n</tr>\n<tr>\n<td><code>receiptId</code></td>\n<td>Código identificador único para realizar o ACK da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes</code></td>\n<td>Array contendo informações das aplicações envolvidas na mensagem, tópico e identificação da mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.topicId</code></td>\n<td>Tópico que a mensagem foi publicada.</td>\n</tr>\n<tr>\n<td><code>attributes.applicationId</code></td>\n<td>Identificador da aplicação que publicou a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.targetApplicationId</code></td>\n<td>Identificador da aplicação que recebeu a mensagem.</td>\n</tr>\n<tr>\n<td><code>attributes.messageId</code></td>\n<td>Código identificador da mensagem publicada.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","feedback","queues","{{queueId}}","messages"],"host":["{{api-host}}"],"query":[{"disabled":true,"key":"visibilityTimeout","value":"30"},{"disabled":true,"key":"size","value":"50"}],"variable":[]}},"response":[{"id":"f9ce5f29-0758-4497-b40c-4f3ecee8aad7","name":"Consumo de Feedback","originalRequest":{"method":"GET","header":[],"url":{"raw":"{{api-host}}/v2/applications/{{app-id}}/topics/feedback/queues/5c809c9a15febd7e15fbb5bd295a2607783d572eb723480428b3279211c12bcb/messages","host":["{{api-host}}"],"path":["v2","applications","{{app-id}}","topics","feedback","queues","5c809c9a15febd7e15fbb5bd295a2607783d572eb723480428b3279211c12bcb","messages"],"query":[{"key":"visibilityTimeout","value":"30","disabled":true},{"key":"size","value":"50","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"messages\": [\n        {\n            \"messageId\": \"b24f91c8-d1bf-4aa9-a9e7-34ce906d6f5f\",\n            \"body\": {\n                \"message\": \"Processed\",\n                \"entityId\": \"null\",\n                \"referenceMessageId\": \"4d20329c-be0d-4627-9044-015899c337c7\",\n                \"type\": \"SUCCESS\",\n                \"topicId\": \"product\",\n                \"createdAt\": \"2026-10-01T18:36:42.487+00:00\",\n                \"applicationId\": \"maker-selfdev\",\n                \"additionalInfo\": {\n                    \"data\": {\n                        \"status\": \"OK\",\n                        \"processedAt\": \"2022-01-19T20:16:53.725Z\"\n                    }\n                }\n            },\n            \"receiptId\": \"AQEBW31mQvi_1VDE6iY_72rym3pW46gfDg2WtTRSHqOdgt6E3M5U3iuwmkJwvI9i7X8cPPYDN12yqUkbdM5g-7YHg74tC08YkXlP2U0dAx-7HWoAoNcuH473pzC7tsmbDrfytXVahQ.eyJkYXRhIjp7InF1ZXVlSWQiOiI1YzgwOWM5YTE1ZmViZDdlMTVmYmI1YmQyOTVhMjYwNzc4M2Q1NzJlYjcyMzQ4MDQyOGIzMjc5MjExYzEyYmNiIiwibWVzc2FnZUlkIjoiYjI0ZjkxYzgtZDFiZi00YWE5LWE5ZTctMzRjZTkwNmQ2ZjVmIiwib3JpZ2luYWxNZXNzYWdlSWQiOiI0ZDIwMzI5Yy1iZTBkLTQ2MjctOTA0NC0wMTU4OTljMzM3YzciLCJoYXNoSWQiOiJiNjFjYWI5ZC1kYzFiLTQyMWYtOWMzMS02ZjgyZDJhNDQxYTMiLCJ2aXNpYmlsaXR5VGltZW91dCI6MzAwfSwiZXhwIjozMDAsInRzIjoxNzkxMjMxMzQxNjY3fQ.3198144081.9htBP1jMAYWOc2toOkl8PJlL6CD2h7k52MNFhtYJvMxj7rKmc2pkQEbwjT219L9n59w3drDuNM_SVrvmvA7LD2Wo22ap6G1kM61CdI7Zmy5VovRKp-gNInj5UJ4-0XWwohyJXcamFkrKRa4wrOx6VvucNxV7eeO-8GNwyYlKydnBLBn_So3vLSoSPwoVc37avKrLq_o-3ZwGaS1HU9OxFPIOLKvF4WIl296ZnvDGVrlhReet0IP1XHISxWHTriLtbaH1386LtLzl1uN6WDYYIYqkUlDpXfle5qmI0LwA==\",\n            \"attributes\": {\n                \"topicId\": \"feedback\",\n                \"applicationId\": \"maker-selfdev\",\n                \"targetApplicationId\": \"maker-selfdev\",\n                \"messageId\": \"b24f91c8-d1bf-4aa9-a9e7-34ce906d6f5f\"\n            }\n        }\n    ]\n}"}],"_postman_id":"733893bb-f40c-43b2-8d9b-8435b17df906"}],"id":"50409b06-b16e-4a0f-bded-f1e6bf68043c","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Feedback é um tópico em que as mensagens são publicadas automaticamente conforme os <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> realizados pelas Aplicações da integração, se, essas aplicações possuirem a permissão necessária. Isso acontece quando a <strong>Aplicação Consumidora</strong> faz o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> da mensagem publicada pela <strong>Aplicação Origem</strong>, esse evento gera automaticamente uma mensagem de Feedback que será roteada para a <strong>Aplicação Origem</strong>, que por usa vez, também deve fazer o Consumo e o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> dessa mensagem. Após a <strong>Aplicação Origem</strong> fazer o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> do Feedback o ciclo da mensagem publicada se encerra e ela é deletada da fila.</p>\n<p><strong>OBS.</strong>: Após realizar o consumo da mensagem faça o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> da mensagem enderaçada à Aplicação Origem. O <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> é individual por mensagem, mesmo que tenha sido feito o consumo de várias mensagens ao mesmo tempo.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>GET</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/feedback/queues/{{queueId}}/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{token}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n<li><p><strong>Query-Params:</strong></p>\n<ul>\n<li><p><strong>visibilityTimeout:</strong> Tempo em segundos que a mensagem irá permanecer oculta da fila, o valor informado é o tempo necessário para a a <strong>Aplicação</strong> fazer o tratamento da mensagem na aplicação. Se for feito um consumo com várias mensagens tenha certeza de informar um valor de tempo suficiente para sua aplicação fazer o tratamento para todas as mensagens e realizar o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> individual para cada uma delas, caso contrário as mensagens retornarão à fila para serem consumidas novamente.</p>\n</li>\n<li><p><strong>size:</strong> Quantidade de mensagens que serão consumidas simultaneamente. Permite que seja feito o consumo de até 50 mensagens na mesma request, caso não seja enviado o padrão é 1.</p>\n</li>\n</ul>\n</li>\n</ul>\n<p>Onde:</p>\n<ul>\n<li><p><strong>app-id</strong>: Identificador da sua aplicação no Maker IO.</p>\n</li>\n<li><p><strong>queueId</strong>: UUID da fila que corresponde ao tópico informado na URL, essa informação pode ser encontrada no endpoint de GET Queues.</p>\n</li>\n<li><p><strong>token</strong>: Bearer Token gerado pelo endpoint de Login.</p>\n</li>\n</ul>\n","_postman_id":"50409b06-b16e-4a0f-bded-f1e6bf68043c"}],"id":"de90d461-0107-4370-b9bc-47e1d8ca45db","description":"<p>O endpoint de consumo de mensagens permite que a aplicação consumidora busque (<em>polling</em>) as mensagens que foram roteadas e acumuladas em sua fila privada (<code>queueId</code>) a partir de um tópico específico (<code>topicId</code>).</p>\n<p>Após a realização do <strong>Subscribe</strong>, as mensagens publicadas no tópico passam a ser armazenadas na fila da aplicação. Através deste endpoint REST, o sistema consumidor lê os eventos pendentes para processar as regras de negócio internamente.</p>\n<p>Os endpoints de consumos de mensagens possuem parâmetros de consulta de <code>size</code> que permite fazer o consumo de até 50 mensagens de uma vez, e o <code>visibilityTimeout</code> que retira a mensagem da fila pelo período determinado para que sua aplicação possa tratar todas as mensagens consumidas e realizar o <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> individual de cada mensagem.</p>\n<p><strong>Importante:</strong> Antes de efetuar o consumo da mensagem, verifique se existem mensagens na fila para serem consumidas através do endpoint <a href=\"#e7cb6f92-7921-429d-9d93-dd104f66476f\">GET Queues</a>, caso não tenha nenhuma mensagem na fila não faça o consumo da fila. Após o consumo da mensagem deve ser enviado um evento de <a href=\"#807d2162-8129-4fbd-8ab5-dbd6474e974c\">ACK</a> referente à mensagem para a aplicação que publicou a mensagem, para mais detalhes sobre o correto tratamento e fluxo de mensagens favor verificar <a href=\"#63dddee9-5125-4f46-ae02-dccd7200ed6d\">aqui</a>.</p>\n<p><strong>OBS.</strong>: As informações retornadas nos endpoints abaixo são as mensagens que foram publicadas na Aplicação Origem, o Maker IO não insere nenhuma nova informação na mensagem.</p>\n","_postman_id":"de90d461-0107-4370-b9bc-47e1d8ca45db"},{"name":"Hold Message","item":[{"name":"Hold","id":"2cbd99be-582c-4975-8d93-92d655c96e81","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"receiptId\": \"AQEBmP3AfoN2-V9jSz2KRWsdgcCSJ9uWMlp_II6_oUUtQB6rj8WXC5Ot9Nic1VuYTgOJtcyEQhw_nJ4900CzFQYY7GTI7Rz38O8lHXdvCYYkG9t3EVNPOuJjj3P-xNQEDnOwCOgQRQ.eyJkYXRhIjp7InF1ZXVlSWQiOiJhMTNhZWIyMjg0YzBkZTEyNDBhMWY4YjMyNDJlNWFjZDNiMGFmN2ZiMmIyNjU4NjIxNjdlMDc4MTc5YzljMjY4IiwibWVzc2FnZUlkIjoiMjk1YzlmMmUtODJhZS00NWI1LWE5MmQtOGI5NDI3NTUzNzdmIiwiaGFzaElkIjoiM2RmZDRlMiMtNTYzNi00OTNlLWFiYmUtMzI5NThiYTI1ODJiIiwidmlzaWJpbGl0eVRpbWVvdXQiOjkwMH0sImV4cCI6OTAwLCJ0cyI6MTc4OTk2ODUwMjMzNH0.1117204121.Q0lUzUFLKFNeQGV94f6hNmRJf9jft0uoEb2rMAXj2Dj531c7D9meIKED5NE4FItQcrHEXdUQxEg6xR_gRHuMODyhoTbotyxid8-vSHN4trAZhTkymG1dZVIkvqe-DfKc5FuIMY2dB1F5rzYhuxX2NDk76xedCrs3CGtH3ji_G3V4owtadtlyw0uDfqTnNzftmi7a9_o-yJxqVnYeEnZkSyoO2L5Wtkydt2DLIIuckF47ojNiLZM6tSl0l569FmKi5M3cZyk61zEYiyjYRyvvH6fSNlFwMxpVkO0aiQ8v0LlcVw-Wb6tonbicJvoduU1XsSvb0jbA3IPOnth_lmQinAwdq5BF5y0kPXIqa04pMJiA06wF6Wg==\",\r\n    \"visibilityTimeout\": 300\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/{{consume-topicId}}/queues/{{queueId}}/messages/{{messageId}}","description":"<p>Para fazer o Hold da mensagem informe a identificação da aplicação, o identificador do tópico da mensagem, o id da fila e o id da mensagem na URL da request, e, no corpo da requisição informe os campos abaixo:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Campo</strong></th>\n<th><strong>Obrigatório</strong></th>\n<th><strong>Tipo de dado</strong></th>\n<th><strong>Descrição</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>receiptId</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Identificador único de recebimento da mensagem.</td>\n</tr>\n<tr>\n<td><code>visibilityTimeout</code></td>\n<td>Sim</td>\n<td>integer</td>\n<td>Tempo em segundos que a mensagem ficará fora da fila de consumo.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","{{consume-topicId}}","queues","{{queueId}}","messages","{{messageId}}"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"2cbd99be-582c-4975-8d93-92d655c96e81"}],"id":"259281bd-1a0e-45f1-8c49-55b99d7ea746","description":"<p>O <strong>Hold Message</strong> (retenção ou mensagem em espera) é o recurso no <strong>Maker IO</strong> que permite à aplicação consumidora pausar temporariamente o processamento de uma mensagem específica sem removê-la da fila (sem enviar o <code>ACK</code>) e sem travar a leitura das mensagens subsequentes.</p>\n<p>Quando a aplicação consumidora identifica que uma mensagem não pode ser processada no exato momento por falta de uma dependência ou por indisponibilidade momentânea de um sistema terceiro, ela solicita o <strong>Hold</strong> da mensagem. O Maker IO retira a mensagem da fila principal por um período determinado (tempo informado no <code>visibilityTimeout</code>), liberando a fila para que as demais mensagens continuem sendo consumidas normalmente, quando expira esse período a mensagem volta para uma fila prioritária, podendo ser consumida antes das demais mensagens. A mensagem pode ser colocada em Hold quantas vezes forem necessário, mas dentro de um período de no máximo 7 dias, após isso a mensagem será descartada automaticamente.</p>\n<h3 id=\"por-que-utilizar-o-hold-message\">Por que utilizar o Hold Message?</h3>\n<ul>\n<li><p><strong>Evita o Bloqueio da Fila:</strong> Impede que um evento com falha paralise o consumo de todos os outros eventos válidos que estão atrás dele na fila.</p>\n</li>\n<li><p><strong>Tratamento Elegante de Dependências Assíncronas:</strong> Permite postergar o processamento até que os dados necessários estejam disponíveis no sistema receptor.</p>\n</li>\n<li><p><strong>Controle Fino de Retentativas:</strong> Permite definir um tempo de espera personalizado antes que a mensagem seja disponibilizada novamente para consumo.</p>\n</li>\n</ul>\n<h3 id=\"casos-de-uso-comuns\">Casos de Uso Comuns</h3>\n<ul>\n<li><p><strong>Inconsistência Prévia de Dados / Dependência Cadastral:</strong> O evento de inclusão de um pedido (<code>order-treatment</code>) chega antes do evento de cadastro do cliente (<code>customer</code>). A aplicação coloca a mensagem do pedido em <strong>hold</strong> para aguardar o término da criação do cliente.</p>\n</li>\n<li><p><strong>Instabilidade de Sistemas Externos:</strong> O ERP ou sistema legado de destino está temporariamente indisponível ou em manutenção.</p>\n</li>\n<li><p><strong>Limitação de Rate Limit:</strong> A API do sistema receptor atingiu o limite de requisições por minuto e precisa adiar mensagens para processá-las gradualmente.</p>\n</li>\n</ul>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>PUT</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/{{consume-topicId}}/queues/{{queueId}}/messages/{{messageId}}</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{TOKEN}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n</ul>\n","_postman_id":"259281bd-1a0e-45f1-8c49-55b99d7ea746"},{"name":"Message Ack","item":[{"name":"Ack Consume","item":[{"name":"Ack Consume","id":"7f36fd56-dbd1-4c55-8787-54d6236da6dd","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\r\n    \"entityId\": \"{{entityId}}\",\r\n    \"feedbackContent\": {\r\n        \"additionalInfo\": {\r\n            \"data\": {\r\n                \"status\": \"OK\",\r\n                \"processedAt\": \"2022-01-19T20:16:53.725Z\"\r\n            }\r\n        },\r\n        \"message\": \"Processed\"\r\n    },\r\n    \"receiptId\": \"{{receiptId}}\",\r\n    \"type\": \"SUCCESS\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/{{consume-topicId}}/queues/{{queueId}}/messages/{{messageId}}","description":"<h3 id=\"descrição-dos-campos-do-payload\">Descrição dos campos do payload</h3>\n<p>O ACK de consumo é utilizado pela <strong>Aplicação Consumidora</strong> para responder à <strong>Aplicação Origem</strong> sobre a mensagem publicada, <strong>sempre</strong> que houver consumo <strong>deve</strong> haver o ACK.<br />A requisição do ACK utiliza o seguinte payload:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Obrigatório</th>\n<th>Tipo de dado</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>entityId</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Código da entidade da mensagem, cada tópico tem uma entidade diferente, então para o tópico de <code>carrier</code> utilize o <strong>carrierId</strong>; para <code>carrier-order-notify</code> utilize o <strong>orderId</strong>; para <code>customer</code> utilize o <strong>customerId</strong>; para <code>dump-request</code> utilize o <strong>topicId</strong>; para <code>fulfillment-status</code> utilize o <strong>orderId</strong>; para <code>location</code> utilize o <strong>locationId</strong>; para <code>order-payment-status</code> utilize o <strong>orderId</strong>; para <code>order</code> utilize o <strong>orderId</strong>; para <code>price</code> utilize o <strong>skuId</strong>; para <code>stock</code> utilize o <strong>skuId</strong>; para <code>order-treatment</code> utilize o <strong>orderId</strong>; para <code>order-exeption</code> utilize o <strong>orderId</strong>;</td>\n</tr>\n<tr>\n<td><code>feedbackContent</code></td>\n<td>Sim</td>\n<td>object</td>\n<td>Informações referente ao feedback da mensagem.</td>\n</tr>\n<tr>\n<td><code>feedbackContent.additionalInfo</code></td>\n<td>Não</td>\n<td>string</td>\n<td>Campo para livre digitação, é possível informar algo que possa ajudar na análise de erros em mensagens.</td>\n</tr>\n<tr>\n<td><code>feedbackContent.message</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Informação sobre o tratamento aplicado na mensagem, essa informação pode ter um teor para que outra pessoa possa entender e realizar o tratamento adequado. Exemplo <em>Processed</em> para sucesso no consumo, <em>NotProcessed</em> para erro.</td>\n</tr>\n<tr>\n<td><code>receiptId</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Código Identificador Único do recibo da mensagem, essa informação é apresentada no corpo da mensagem publicada.</td>\n</tr>\n<tr>\n<td><code>type</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Tipo do ACK que resultou do consumo da mensagem, informe <strong>SUCESS</strong> para indicar sucesso no consumo da mensagem; <strong>ERROR</strong> para indicar erro no consumo da mensagem; <strong>DISCARD</strong> para indicar que a mensagem será descartada;</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","{{consume-topicId}}","queues","{{queueId}}","messages","{{messageId}}"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[{"id":"367470b5-3441-4ee0-925d-ab32e095e41b","name":"Ack de consumo","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\r\n    \"entityId\": \"PS.00001.0001\",\r\n    \"feedbackContent\": {\r\n        \"additionalInfo\": {\r\n            \"data\": {\r\n                \"status\": \"OK\",\r\n                \"processedAt\": \"2026-09-30T17:01:19-03:00\"\r\n            }\r\n        },\r\n        \"message\": \"Processed\"\r\n    },\r\n    \"receiptId\": \"AQEBMxDZr3cJWNyxyrKvjGgEv7_cJk5WIYgQue7hW6q1_RpufS85RJCHgeK29oAkhPN4UvTk4nhtm0-ZRcUAXtPODubI2TrdgvFSfmhy-RO7jjMZAyppT2m8YT4B0OljcICHl4REPg.eyJkYXRhIjp7InF1ZXVlSWQiOiI1ZDBhODk4ZTZjYjdmMzU4ZmUzMTIxZGI0ODAwNjQ1NDkxZDZjMDcxNjAxNDllMGExMTliOTI0MmMxNTI3NGY1IiwibWVzc2FnZUlkIjoiNGQyMDMyOWMtYmUwZC00NjI3LTkwNDQtMDE1ODk5YzMzN2M3IiwiaGFzaElkIjoiN2VhYzZhMGItODAxNC00YjM4LTkxMTEtOTQwMWUxZjkxMDg4IiwidmlzaWJpbGl0eVRpbWVvdXQiOjMwMH0sImV4cCI6MzAwLCJ0cyI6MTc5MDg3OTY0NDg0OH0.2889675132.x9xbWwHf6HvCZuGLCm9pZg_LJb57zkkPN_0DbAyRA_GgEWVE-ZMqiv025-TgYAIZiYH2-r5T0R4cJJDEIHuGFR2lkSqMEY74W8YQVH0sgTruovna01uva_cRZrlsWp44wtUPrsfXbd5jdUR42tcNGA7Q926aiIa0q4rGrwE6Z1urEcVxuKqZrPQkofofG1oN_8mXD34UKX2Ij9nMjpA1WvKMKhF7m9FoESLintSZjXCmqUEisVfQCzv_hF2iEi4RKw9-xsgUJlI_w4KzQPh4a1sWfhdvblbdWNCYZYV8_d1n589bLReF4yVknZWseZA1iKjwL1TXNjP_muukebURnQNJJWkYaJL-N07La4tVS45W-aO==\",\r\n    \"type\": \"SUCCESS\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/maker-selfdev/topics/product/queues/5d0a898e6cb7f358fe3121db4800645491d6c07160149e0a119b9242c15274f5/messages/4d20329c-be0d-4627-9044-015899c337c7"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Message is deleted successfully!\"\n}"},{"id":"d12c1f1f-655e-47ad-926e-bfd79131d077","name":"Token expirado","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\r\n    \"entityId\": \"PS.00001.0001\",\r\n    \"feedbackContent\": {\r\n        \"additionalInfo\": {\r\n            \"data\": {\r\n                \"status\": \"OK\",\r\n                \"processedAt\": \"2022-01-19T20:16:53.725Z\"\r\n            }\r\n        },\r\n        \"message\": \"Processed\"\r\n    },\r\n    \"receiptId\": \"AQEBMxDZr3cJWNyxyrKvjGgEv7_cJk5WIYgQue7hW6q1_RpufS85RJCHgeK29oAkhPN4UvTk4nhtm0-ZRcUAXtPODubI2TrdgvFSfmhy-RO7jjMZAyppT2m8YT4B0OljcICHl4REPg.eyJkYXRhIjp7InF1ZXVlSWQiOiI1ZDBhODk4ZTZjYjdmMzU4ZmUzMTIxZGI0ODAwNjQ1NDkxZDZjMDcxNjAxNDllMGExMTliOTI0MmMxNTI3NGY1IiwibWVzc2FnZUlkIjoiNGQyMDMyOWMtYmUwZC00NjI3LTkwNDQtMDE1ODk5YzMzN2M3IiwiaGFzaElkIjoiN2VhYzZhMGItODAxNC00YjM4LTkxMTEtOTQwMWUxZjkxMDg4IiwidmlzaWJpbGl0eVRpbWVvdXQiOjMwMH0sImV4cCI6MzAwLCJ0cyI6MTc5MDg3OTY0NDg0OH0.2889675132.x9xbWwHf6HvCZuGLCm9pZg_LJb57zkkPN_0DbAyRA_GgEWVE-ZMqiv025-TgYAIZiYH2-r5T0R4cJJDEIHuGFR2lkSqMEY74W8YQVH0sgTruovna01uva_cRZrlsWp44wtUPrsfXbd5jdUR42tcNGA7Q926aiIa0q4rGrwE6Z1urEcVxuKqZrPQkofofG1oN_8mXD34UKX2Ij9nMjpA1WvKMKhF7m9FoESLintSZjXCmqUEisVfQCzv_hF2iEi4RKw9-xsgUJlI_w4KzQPh4a1sWfhdvblbdWNCYZYV8_d1n589bLReF4yVknZWseZA1iKjwL1TXNjP_muukebURnQNJJWkYaJL-N07La4tVS45W-aO==\",\r\n    \"type\": \"SUCCESS\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/maker-selfdev/topics/feedback/queues/5c809c9a15febd7e15fbb5bd295a2607783d572eb723480428b3279211c12bcb/messages/4d20329c-be0d-4627-9044-015899c337c7"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"exp\": \"token expired\"\n}"}],"_postman_id":"7f36fd56-dbd1-4c55-8787-54d6236da6dd"}],"id":"de5e4ce4-5fd5-4782-8ea6-d1bab9c4a06f","description":"<h3 id=\"descrição\">Descrição</h3>\n<p>Endpoint utilizado para realizar o ACK do consumo da mensagem, esse processo é feito pela Aplicação Consumidora após ter feito o consumo da mensagem na fila, no ACK é enviado um retorno referente ao consumo da mensagem, esse retorno pode ser de sucesso(<code>type: sucess</code>), erro(<code>type: error</code>) ou informar que a mensagem não pôde ser tratada(<code>type: discard</code>). Após feito o ACK o Maker IO faz o roteamento para a Aplicação Origem gerando uma mensagem de Feedback.</p>\n<p><strong>OBS.</strong>: O <a href=\"#de90d461-0107-4370-b9bc-47e1d8ca45db\">ACK</a> é individual por mensagem, mesmo que o seu consumo de mensagens no tópico tenham sido feitos em lote.</p>\n<h4 id=\"requisição\">Requisição:</h4>\n<ul>\n<li><p><strong>Método HTTP:</strong> <code>DEL</code></p>\n</li>\n<li><p><strong>Endpoint:</strong> <code>/v2/applications/{{app-id}}/topics/order-relocation/queues/{{queueId}}/messages</code></p>\n</li>\n<li><p><strong>Header:</strong> <code>Authorization: Bearer {{TOKEN}}</code></p>\n</li>\n<li><p><strong>Content-Type:</strong> <code>application/json</code></p>\n</li>\n<li><p><strong>Query-Params:</strong></p>\n<ul>\n<li><p><strong>visibilityTimeout:</strong> Tempo em segundos que a mensagem irá permanecer oculta da fila, o valor informado é o tempo necessário para a a <strong>Aplicação Consumidora</strong> fazer o tratamento da mensagem na aplicação e devolver o <a href=\"#de90d461-0107-4370-b9bc-47e1d8ca45db\">ACK</a> para a <strong>Aplicação Origem</strong>. Se for feito um consumo com várias mensagens tenha certeza de informar um valor de tempo suficiente para sua aplicação fazer o tratamento para todas as mensagens e realizar o <a href=\"#de90d461-0107-4370-b9bc-47e1d8ca45db\">ACK</a> individual para cada uma delas, caso contrário as mensagens retornarão à fila para serem consumidas novamente.</p>\n</li>\n<li><p><strong>size:</strong> Quantidade de mensagens que serão consumidas simultaneamente. Permite que seja feito o consumo de até 50 mensagens na mesma request, caso não seja enviado o padrão é 1.</p>\n</li>\n</ul>\n</li>\n</ul>\n","_postman_id":"de5e4ce4-5fd5-4782-8ea6-d1bab9c4a06f"},{"name":"Ack Feedback","item":[{"name":"Ack Feedback","id":"71070281-2e04-4496-83ca-a88f6a234ce6","protocolProfileBehavior":{"disabledSystemHeaders":{"connection":true},"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{token}}"}]},"isInherited":false},"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\r\n    \"receiptId\": \"{{receiptId}}\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/{{app-id}}/topics/{{consume-topicId}}/queues/{{queueId}}/messages/{{messageId}}","description":"<h3 id=\"descrição-dos-campos-do-payload\">Descrição dos campos do payload</h3>\n<p>O ACK de feedback é utilizado pela <strong>Aplicação Origem</strong> para consumir o tratamento realizado na mensagem pela <strong>Aplicação Consumidora</strong>, e apagar a mensagem publicada da fila.<br />A requisição do ACK utiliza o seguinte payload:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Campo</th>\n<th>Obrigatório</th>\n<th>Tipo de dado</th>\n<th>Descrição</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>receiptId</code></td>\n<td>Sim</td>\n<td>string</td>\n<td>Código Identificador Único do recibo da mensagem, essa informação é apresentada no corpo da mensagem publicada.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["v2","applications","{{app-id}}","topics","{{consume-topicId}}","queues","{{queueId}}","messages","{{messageId}}"],"host":["{{api-host}}"],"query":[],"variable":[]}},"response":[{"id":"eaa3113f-f2ca-4072-b081-3326523ba273","name":"Ack do Feedback","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\r\n    \"receiptId\": \"{{receiptId}}\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{api-host}}/v2/applications/maker-selfdev/topics/feedback/queues/5c809c9a15febd7e15fbb5bd295a2607783d572eb723480428b3279211c12bcb/messages/b24f91c8-d1bf-4aa9-a9e7-34ce906d6f5f"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Message is deleted successfully!\"\n}"}],"_postman_id":"71070281-2e04-4496-83ca-a88f6a234ce6"}],"id":"c82e3dd2-7b0a-40c8-ab2c-7cb0453c09ea","_postman_id":"c82e3dd2-7b0a-40c8-ab2c-7cb0453c09ea","description":""}],"id":"10cfed31-2322-447a-b1ff-9094753c183e","description":"<p>O <strong>ACK (Acknowledgment)</strong> é o mecanismo de confirmação de processamento de mensagens no <strong>Maker IO</strong> e deve ser feito tanto pela <strong>Aplicação Origem</strong> quanto pela <strong>Aplicação Consumidora</strong>.</p>\n<p>No fluxo de consumo do Maker IO, ao buscar eventos na sua fila privada, as mensagens são entregues à sua aplicação acompanhadas de um token de confirmação (<code>receiptId</code>). O Maker IO retém essas mensagens temporariamente para garantir que não sejam perdidas, mas <strong>não as remove da fila até receber uma confirmação explícita</strong> através do ACK de Feedback feito pela <strong>Aplicação Origem</strong>. O ACK é feito pela <strong>Aplicação Consumidora</strong> após o consumo da mensagem e feito pela <strong>Aplicação Origem</strong> após receber o ACK do consumo, pode indicar sucesso ou erro no processamento, ou ainda o descarte da mensagem.</p>\n<h3 id=\"por-que-o-ack-é-fundamental\">Por que o ACK é fundamental?</h3>\n<ul>\n<li><p>Sem um retorno indicando que a mensagem possa ser excluída ela vai continuar sendo roteada para a aplicação consumidora, que pode continuar processando uma mensagem que já foi tratada, e com isso gerando requisições desnecessárias e sobrecarregando a aplicação e as filas como um todo.</p>\n</li>\n<li><p>Garantir que o fluxo de mensagens siga sem interrupções, visto que alguns tópicos dependem de outros para que também sejam processados.</p>\n</li>\n</ul>\n<h3 id=\"tipos-de-ack\">Tipos de ACK</h3>\n<p>Conforme o tipo de mensagem publicada e o contexto em que o ACK está acontecendo, é possível ter ACK diferentes, indicando tipos de resposta diferentes à aplicação da outra ponta. O emprego correto do ACK evita o retorno incorreto de mensagens para a fila, o processamento de mensagens que deveriam ter sido descartadas ou mensagens que não podem ser tratadas na aplicação por algum erro na mensagem. Segue abaixo os tipos de ACK disponíveis:</p>\n<p><strong>Success</strong>: Indica que a mensagem foi consumida e o teor da mensagem foi tratado na aplicação, ou seja, indica que em uma mensagem do tópico <code>stock</code>, o saldo do produto foi atualizado na aplicação e que a mensagem pode ser retirada da fila.</p>\n<p><strong>Error</strong>: Indica que a mensagem foi consumida mas o teor da mensagem não pode ser tratado e também não há como ter outra tentativa de tratar a mensagem na <strong>Aplicação Consumidora</strong>, um exemplo disso pode ser um cadastro de produto pelo tópico de <code>product</code> e na mensagem estar a URL ou o Código Identificador Único de outro produto que já esta cadastrado na <strong>Aplicação Consumidora</strong>.</p>\n<p><strong>Discard</strong>: Indica que a mensagem foi consumida mas o teor da mensagem é mais antigo que a informação atual na <strong>Aplicação Consumidora</strong>, um exemplo disso é uma atualização de saldo de estoque pelo tópico de <code>stock</code>, mas a informação do estoque na aplicação consumidora é mais atual do que o que veio na mensagem.</p>\n","_postman_id":"10cfed31-2322-447a-b1ff-9094753c183e"}],"id":"ec158068-50ba-43dc-99c2-a3fc055d3cb6","_postman_id":"ec158068-50ba-43dc-99c2-a3fc055d3cb6","description":""}]}