{"info":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","description":"<html><head></head><body><p>Hype API е базирано на REST принципите. Използват се стандартни HTTP</p>\n<h2 id=\"начално-ръководство\">Начално ръководство</h2>\n<p>За да използвате Hype API е необходимо -</p>\n<ul>\n<li><p>Да се създаде интеграция на вашата платформа с клиент на Hype, при което ще ви бъде предоставен API Key</p>\n</li>\n<li><p>Hype API има следните лимити и ограничения <a href=\"https://postman.postman.co/workspace/Collection-Templates~6311738d-2e70-441f-ae12-78caf078c5b7/collection/22517504-e9c28f47-1253-44af-a2f3-20dce4da1f18?ctx=documentation#rate-and-usage-limits\">rate and usage limits</a>.</p>\n</li>\n<li><p>Hype API отговаря само на HTTPS-secured комуникация.<br>  Всеки рекуест направен към HTTP ще бъде пренасочен с HTTP 301 redirect<br>  към съответния HTTPS ресурс.</p>\n</li>\n<li><p>Когато има грешка, Hype API връща както съответния<br>  Status Code на грешката в хедъра на отговора, така и JSON форматиран<br>  отговор, в следния вид:</p>\n</li>\n</ul>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n   \"error\": 1,\n   \"message\": \"Текст на грешката\"\n}\n\n</code></pre><h2 id=\"удостоверяване-authentication\">Удостоверяване (Authentication)</h2>\n<p>Hype API използва автентикация чрез Authorization header<br>от тип Bearer Token. За да получите такъв токън, трябва да се създаде<br>интеграция между настоящ клиент на Hype и вашата платформа за което<br>трябва да се свържите с съпорт центъра на Hype.</p>\n<h3 id=\"authentication-error-response\">Authentication error response</h3>\n<p>Ако токъна липсва или е невалиден, ще получите грешка от тип 401 (Unauthorized).</p>\n<h2 id=\"endpoints\">Endpoints</h2>\n<p><strong>DEV</strong>: <code>https://es.dev.hype-software.com</code></p>\n<p><strong>LIVE</strong>: <code>https://es.hype-software.com</code></p>\n<h2 id=\"rate-and-usage-limits\">Rate and usage limits</h2>\n<p>Hype API има ограничение на брой рекуести които могат да<br>се направят в рамките на една минута. Ограничението е 1000 заявки за<br>минута. Ако се надвишът броя заявки за минута, ще се. върне грешка 429<br>(Too Many Requests).</p>\n<p>В header на всеки върнат отговор след рекуест към Hype API, присъстват следните параметри:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Header</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>X-RateLimit-Limit</code></td>\n<td>Максималният брой заявки, които потребителят има право да направи за минута.</td>\n</tr>\n<tr>\n<td><code>X-RateLimit-Remaining</code></td>\n<td>Броят заявки, оставащи в текущия рейт лимит \"прозорец\".</td>\n</tr>\n<tr>\n<td><code>X-RateLimit-Reset</code></td>\n<td>Време (в Unix timestamp) когато настощият рейт лимит ще се ресетне.  <br>❗ <em>Връща се само в случай надвишаван на лимита.</em></td>\n</tr>\n<tr>\n<td><code>Retry-After</code></td>\n<td>Време (в секунди) след което може да се направи нов рекуест.  <br>❗ <em>Връща се само в случай надвишаван на лимита.</em></td>\n</tr>\n</tbody>\n</table>\n</div></body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[],"owner":"52109283","collectionId":"da6de878-cec6-4fec-bccb-436a356bf225","publishedId":"2sBXc8oNnL","public":true,"customColor":{"top-bar":"242331","right-sidebar":"242532","highlight":"674AEF"},"publishDate":"2026-02-05T15:18:48.000Z"},"item":[{"name":"v1","item":[{"name":"hype-custom","item":[{"name":"tasks","item":[{"name":"Items","item":[{"name":"Get item tasks","id":"02d012ae-6cce-43e5-8c56-441efbbdc705","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/tasks/hype-custom/items","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}},"urlObject":{"path":["tasks","hype-custom","items"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"c36808d8-30aa-4ff6-bc8c-4ef9a2a5e53d","name":"Get item tasks","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/tasks/hype-custom/items"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"[\n  {\n    \"id\": \"9a101f76-f1c8-47c2-a19f-259150bb62e0\",\n    \"request\": {\n      \"name\": \"Маргарита 20\",\n      \"categoryId\": 31,\n      \"price\": 4.33,\n      \"preparationTime\": 20,\n      \"barCode\": \"812345679\",\n      \"modifiers\": [],\n      \"supplements\": [],\n      \"quantity\": 2,\n      \"active\": true\n    },\n    \"status\": 0,\n    \"type\": \"POST\"\n  },\n  {\n    \"id\": \"9a101f76-f1c8-47c2-a19f-439150bb58ab\",\n    \"request\": {\n      \"id\": \"87001\",\n      \"name\": \"Coca Cola\",\n      \"categoryId\": 31,\n      \"price\": 2.5,\n      \"preparationTime\": null,\n      \"barCode\": \"712345689\",\n      \"modifiers\": [],\n      \"supplements\": [],\n      \"quantity\": 20,\n      \"active\": true\n    },\n    \"status\": 0,\n    \"type\": \"PUT\"\n  }\n]"}],"_postman_id":"02d012ae-6cce-43e5-8c56-441efbbdc705"},{"name":"Update item tasks","id":"56f8918b-dac2-4997-af7d-35430ade6863","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/tasks/hype-custom/items","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}},"urlObject":{"path":["tasks","hype-custom","items"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"f962e560-0204-4038-b99b-5669f830bf5a","name":"Update item tasks","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"[\n    {\n        \"entity_task_id\": \"9a101f76-f1c8-47c2-a19f-259150bb62e0\",\n        \"response\": {\n            \"id\": \"87008\",\n            \"name\": \"Маргарита 20\",\n            \"categoryId\": 31,\n            \"price\": 4.33,\n            \"preparationTime\": 20,\n            \"barCode\": \"812345679\",\n            \"modifiers\": [],\n            \"supplements\": [],\n            \"quantity\": 2,\n            \"active\": true\n        },\n        \"status\": 201\n    },\n    {\n        \"entity_task_id\": \"9a101f76-f1c8-47c2-a19f-439150bb58ab\",\n        \"response\": {\n            \"id\": \"87001\",\n            \"name\": \"Coca Cola\",\n            \"categoryId\": 31,\n            \"price\": 2.5,\n            \"preparationTime\": null,\n            \"barCode\": \"712345689\",\n            \"modifiers\": [],\n            \"supplements\": [],\n            \"quantity\": 20,\n            \"active\": true\n        },\n        \"status\": 200\n    }\n]","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/tasks/hype-custom/items"},"status":"No Content","code":204,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":""}],"_postman_id":"56f8918b-dac2-4997-af7d-35430ade6863"}],"id":"d8ac4da7-051a-4452-a4f6-95ae5f71273b","event":[{"listen":"prerequest","script":{"id":"cf082829-fe89-4714-835d-d02c32c5d093","type":"text/javascript","packages":{},"requests":{},"exec":[""]}},{"listen":"test","script":{"id":"4df52919-7ffe-44a7-a6aa-d1de524d7cfc","type":"text/javascript","packages":{},"requests":{},"exec":[""]}}],"_postman_id":"d8ac4da7-051a-4452-a4f6-95ae5f71273b","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}}},{"name":"Categories","item":[{"name":"Get category tasks","id":"0f661c83-4b3a-4da8-b449-4d0f92795f51","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/tasks/hype-custom/categories","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}},"urlObject":{"path":["tasks","hype-custom","categories"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"ee11604a-8bc8-4a6e-bf2b-a204a92f02d1","name":"Get category tasks","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/tasks/hype-custom/categories"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"[\n  {\n    \"id\": \"9a101f76-f1c8-47c2-a19f-259150bb62e0\",\n    \"request\": {\n      \"name\": \"Сандвичи\",\n      \"order\": 1\n    },\n    \"status\": 0,\n    \"type\": \"POST\"\n  },\n  {\n    \"id\": \"9a101f76-f1c8-47c2-a19f-259150bb62e0\",\n    \"request\": {\n      \"id\": \"135\",\n      \"name\": \"Пици\",\n      \"order\": 2\n    },\n    \"status\": 0,\n    \"type\": \"POST\"\n  },\n  {\n    \"id\": \"9a101f76-f1c8-47c2-a19f-489150bb62b1\",\n    \"request\": {\n      \"id\": 234,\n      \"name\": \"Бира\",\n      \"order\": 3\n    },\n    \"status\": 0,\n    \"type\": \"PUT\"\n  }\n]"}],"_postman_id":"0f661c83-4b3a-4da8-b449-4d0f92795f51"},{"name":"Update category tasks","id":"f8de6ba3-1330-41e3-b30b-f9d3377ce30e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/tasks/hype-custom/categories","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}},"urlObject":{"path":["tasks","hype-custom","categories"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"cf6a2e71-5d0d-45a0-833e-aa1cd96b8b68","name":"Update category tasks","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"[\n    {\n        \"entity_task_id\": \"9a101f76-f1c8-47c2-a19f-259150bb62e0\",\n        \"response\": {\n            \"id\": \"3011\",\n            \"name\": \"Сандвичи\",\n            \"order\": 1\n        },\n        \"status\": 201\n    },\n    {\n        \"entity_task_id\": \"9a101f76-f1c8-47c2-a19f-439150bb58ab\",\n        \"response\": {\n            \"id\": \"135\",\n            \"name\": \"Пици\",\n            \"order\": 2\n        },\n        \"status\": 201\n    }\n]","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/tasks/hype-custom/categories"},"status":"No Content","code":204,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":""}],"_postman_id":"f8de6ba3-1330-41e3-b30b-f9d3377ce30e"}],"id":"92dc8b97-7611-4259-82ef-6739098eca43","_postman_id":"92dc8b97-7611-4259-82ef-6739098eca43","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}}},{"name":"Order Requests","item":[{"name":"Get order request tasks","id":"7a38265a-451f-4cc0-9f37-2f1dd7b13fc3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/tasks/hype-custom/orderRequests","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}},"urlObject":{"path":["tasks","hype-custom","orderRequests"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"9c403ee2-9d6e-4a09-9b64-d484fa49f50d","name":"Get order request tasks","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/tasks/hype-custom/orderRequests"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"[\n  {\n    \"id\": \"9a101f76-f1c8-47c2-a19f-259150bb62e0\",\n    \"request\": {\n      \"id\": 1,\n      \"discount\": 3.45,\n      \"paymentTypes\": [\n        {\n          \"id\": 1,\n          \"name\": \"Stripe\",\n          \"amount\": 10.25,\n          \"status\": \"completed\"\n        }\n      ],\n      \"orderComment\": \"Коментар към поръчката\",\n      \"deliveryChannel\": {\n        \"id\": 1,\n        \"name\": \"За плажа\",\n        \"deliveryPrice\": 2.5\n      },\n      \"status\": {\n        \"id\": 2,\n        \"name\": \"Приета\"\n      },\n      \"clientDetails\": {\n        \"firstName\": \"Иван\",\n        \"lastName\": \"Иванов\",\n        \"phone\": \"+12345\",\n        \"city\": \"Бургас\",\n        \"postCode\": \"8000\",\n        \"address\": \"кв. Възраждане, 111\",\n        \"formatted\": \"Бургас, 8000, кв. Възраждане, 111\"\n      },\n      \"orderDetails\": {\n        \"items\": [\n          {\n            \"id\": 255653,\n            \"name\": \"Маргарита 20\",\n            \"modifierIds\": [],\n            \"supplementIds\": [],\n            \"comment\": \"Да няма нищо зелено, като рукола зелени маслини или чушки\",\n            \"quantity\": 2,\n            \"orderPrice\": 4.33\n          }\n        ]\n      },\n      \"total\": 10.25,\n      \"subTotal\": 8.67\n    },\n    \"status\": 0,\n    \"type\": \"PUT\"\n  }\n]"}],"_postman_id":"7a38265a-451f-4cc0-9f37-2f1dd7b13fc3"},{"name":"Update order request tasks","id":"c4062de9-07c0-4989-9618-6b6a52812a5c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/tasks/hype-custom/orderRequests","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}},"urlObject":{"path":["tasks","hype-custom","orderRequests"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"928bbd7c-13cd-40ca-9a3b-a5d99c1aa029","name":"Update order request tasks","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"[\n    {\n        \"entity_task_id\": \"9a101f76-f1c8-47c2-a19f-259150bb62e0\",\n        \"response\": {\n            \"id\": 1,\n            \"discount\": 3.45,\n            \"paymentTypes\": [\n                {\n                    \"id\": 1,\n                    \"name\": \"Stripe\",\n                    \"amount\": 10.25,\n                    \"status\": \"completed\"\n                }\n            ],\n            \"orderComment\": \"Коментар към поръчката\",\n            \"deliveryChannel\": {\n                \"id\": 1,\n                \"name\": \"За плажа\",\n                \"deliveryPrice\": 2.5\n            },\n            \"status\": {\n                \"id\": 2,\n                \"name\": \"Приета\"\n            },\n            \"clientDetails\": {\n                \"firstName\": \"Иван\",\n                \"lastName\": \"Иванов\",\n                \"phone\": \"+12345\",\n                \"city\": \"Бургас\",\n                \"postCode\": \"8000\",\n                \"address\": \"кв. Възраждане, 111\",\n                \"formatted\": \"Бургас, 8000, кв. Възраждане, 111\"\n            },\n            \"orderDetails\": {\n                \"items\": [\n                    {\n                        \"id\": 255653,\n                        \"name\": \"Маргарита 20\",\n                        \"modifierIds\": [],\n                        \"supplementIds\": [],\n                        \"comment\": \"Да няма нищо зелено, като рукола зелени маслини или чушки\",\n                        \"quantity\": 2,\n                        \"orderPrice\": 4.33\n                    }\n                ]\n            },\n            \"total\": 10.25,\n            \"subTotal\": 8.67\n        },\n        \"status\": 200\n    }\n]","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/tasks/hype-custom/orderRequests"},"status":"No Content","code":204,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":""}],"_postman_id":"c4062de9-07c0-4989-9618-6b6a52812a5c"}],"id":"2106d8ca-6abf-4781-bc8b-9a64322c272b","_postman_id":"2106d8ca-6abf-4781-bc8b-9a64322c272b","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}}},{"name":"Order Delivery Channels","item":[{"name":"Get delivery channel tasks","id":"44001279-b008-4346-be37-b16119999933","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/tasks/hype-custom/orderDeliveryChannels","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}},"urlObject":{"path":["tasks","hype-custom","orderDeliveryChannels"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"1fa47c5c-655b-4485-ad90-8e3ab146164b","name":"Get delivery channel tasks","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/tasks/hype-custom/orderDeliveryChannels"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"[\n  {\n    \"id\": \"9a101f76-f1c8-47c2-a19f-259150bb62e0\",\n    \"request\": {},\n    \"status\": 0,\n    \"type\": \"GET\"\n  }\n]"}],"_postman_id":"44001279-b008-4346-be37-b16119999933"},{"name":"Update delivery channel tasks","id":"72b96344-da71-424f-a3be-cb56d55960f1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/tasks/hype-custom/orderDeliveryChannels","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}},"urlObject":{"path":["tasks","hype-custom","orderDeliveryChannels"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"34d90e6b-3579-44d6-8fe8-f8a3d49887cd","name":"Update delivery channel tasks","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"[\n    {\n        \"entity_task_id\": \"9a101f76-f1c8-47c2-a19f-259150bb62e0\",\n        \"response\": {},\n        \"status\": 201\n    }\n]","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/tasks/hype-custom/orderDeliveryChannels"},"status":"No Content","code":204,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":""}],"_postman_id":"72b96344-da71-424f-a3be-cb56d55960f1"}],"id":"828f3cc6-c833-40b4-9c1e-5d5c56b9824d","_postman_id":"828f3cc6-c833-40b4-9c1e-5d5c56b9824d","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}}},{"name":"Order Payment Types","item":[{"name":"Get payment type tasks","id":"5c1baa54-2787-45da-a045-e9eff1bb80fd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/tasks/hype-custom/orderPaymentTypes","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}},"urlObject":{"path":["tasks","hype-custom","orderPaymentTypes"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"708e2fe1-6033-4485-8271-14d41961945f","name":"Get payment type tasks","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/tasks/hype-custom/orderPaymentTypes"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"[\n  {\n    \"id\": \"9a101f76-f1c8-47c2-a19f-259150bb62e0\",\n    \"request\": {},\n    \"status\": 0,\n    \"type\": \"GET\"\n  }\n]"}],"_postman_id":"5c1baa54-2787-45da-a045-e9eff1bb80fd"},{"name":"Update payment type tasks","id":"a65ddc55-f257-4e2b-9478-145c74d9cafe","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/tasks/hype-custom/orderPaymentTypes","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}},"urlObject":{"path":["tasks","hype-custom","orderPaymentTypes"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"f9ad56f0-2ab0-4517-b3d4-beca9c412887","name":"Update payment type tasks","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"[\n    {\n        \"entity_task_id\": \"9a101f76-f1c8-47c2-a19f-259150bb62e0\",\n        \"response\": {},\n        \"status\": 201\n    }\n]","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/tasks/hype-custom/orderPaymentTypes"},"status":"No Content","code":204,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":""}],"_postman_id":"a65ddc55-f257-4e2b-9478-145c74d9cafe"}],"id":"c1641ee0-4e75-46c5-bdc9-570c2b2e4647","_postman_id":"c1641ee0-4e75-46c5-bdc9-570c2b2e4647","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}}},{"name":"Order Request Status","item":[{"name":"Get order request status type","id":"32936239-cb11-475e-bbc6-d8aeb447ab37","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/tasks/hype-custom/orderRequestStatus","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}},"urlObject":{"path":["tasks","hype-custom","orderRequestStatus"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"aa011ebe-4a74-440d-851d-ad9ea0aa5691","name":"Get order request status type","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/tasks/hype-custom/orderRequestStatus"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"[\n  {\n    \"id\": \"9a101f76-f1c8-47c2-a19f-259150bb62e0\",\n    \"request\": {},\n    \"status\": 0,\n    \"type\": \"GET\"\n  }\n]"}],"_postman_id":"32936239-cb11-475e-bbc6-d8aeb447ab37"},{"name":"Update order request status type","id":"c2fcb153-d738-4dd5-83c1-97ab03f47a70","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/tasks/hype-custom/orderRequestStatus","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}},"urlObject":{"path":["tasks","hype-custom","orderRequestStatus"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"4cef68fe-5152-4bd1-a188-b71617f3dadf","name":"Update order request status type","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"[\n    {\n        \"entity_task_id\": \"9a101f76-f1c8-47c2-a19f-259150bb62e0\",\n        \"response\": {},\n        \"status\": 201\n    }\n]","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/tasks/hype-custom/orderRequestStatus"},"status":"No Content","code":204,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":""}],"_postman_id":"c2fcb153-d738-4dd5-83c1-97ab03f47a70"}],"id":"d3231821-6e8b-43e7-92cc-2583a7628423","_postman_id":"d3231821-6e8b-43e7-92cc-2583a7628423","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}}}],"id":"92fda388-a70e-4cee-87c9-6727cf79b190","description":"<p>Всяка една задача, създадена за обработка от съответната платформа се добавя към така наречена <code>опашка</code>, от която регулярно трябва да се извличат, като се правят рекуест към специално разработени за целта ендпойнти.</p>\n<p>За момента има 6 различни типа ресурси, за които се създават задачи: <em>items, categories, order requests, order delivery channels, order payment types, order request status</em></p>\n<p>След като бъде обработане дадена задача, се прави<br />отделен рекуест към съответния за ресурса ендпойнт, с което се подава<br />статуса и резултата от обработката й.</p>\n<h2 id=\"извличне-на-задачи\">Извличне на задачи</h2>\n<p>След като задачите се извлекът от съответния ендпойнт и<br />се обработят, то на същия се връща отговор за статуса и резултата от<br />изпълнението на съответната задача, след което заадчата се маркира като <code>обработена</code>.</p>\n<p>Като резултат от заявките към тези ендпойнти, се връща масив от обекти.<br />Всеки един обект интерпретиращ <code>задача</code> има следната структура:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n   \"id\":\" ...\",\n   \"request\":{\n      ...\n   },\n   \"status\":...,\n   \"type\":\"...\"\n}\n\n</code></pre><p><strong>id</strong> - Това е идентификатора на създадената задача, той ще е необходим, когато<br />се репортва статуса и резултата от изпълнението на задачата</p>\n<p><strong>request</strong> - При нормална Resfull API комуникация, това представлява Body-то на заявката</p>\n<p><strong>type</strong> - Това е Request Method-а който трябва да се интерпретира.</p>\n<p>- Задачите с type <strong>GET</strong>, се интерпретират, като заявка за получаване на всички записи за дадение ресурс (items, categories, erc.).<br />- <strong>POST</strong> - създаване на запис за съответния ресурс<br />- <strong>PUT</strong> - обновяване на запис за съответния ресурс</p>\n<p><strong>status</strong> - в случая статуса на задачата е винаги 0, което индикира че задачата е нова, необработена</p>\n<h4 id=\"items\">Items</h4>\n<p><code>GET /tasks/hype-custom/items</code></p>\n<p>Като резултат от горната заявка ще получим payload с по-долу представените задачи.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>[\n   {\n      \"id\":\"9a101f76-f1c8-47c2-a19f-259150bb62e0\",\n      \"request\":{\n         \"name\":\"Маргарита 20\",\n         \"categoryId\":31,\n         \"price\":4.33,\n         \"preparationTime\":20,\n         \"barCode\":\"812345679\",\n         \"modifiers\":[],\n         \"supplements\":[],\n         \"quantity\":2,\n         \"active\":true\n      },\n      \"status\":0,\n      \"type\":\"POST\"\n   },\n   {\n      \"id\":\"9a101f76-f1c8-47c2-a19f-259150bb62e0\",\n      \"request\":{\n         \"id\":87001, \n         \"name\":\"Coca Cola\",\n         \"categoryId\":31,\n         \"price\":2.5,\n         \"preparationTime\":null,\n         \"barCode\":\"712345689\",\n         \"modifiers\":[],\n         \"supplements\":[],\n         \"quantity\":20,\n         \"active\":true\n      },\n      \"status\":0,\n      \"type\":\"PUT\"\n   }\n]\n\n</code></pre><p>Първата задача с id <code>9a101f76-f1c8-47c2-a19f-259150bb62e0</code>, представлява задача за <strong>създаване н</strong>а нов <em>item.</em></p>\n<p>Втората задача е за обновяване на <em>item</em> с id 87001. <strong>Това ID е id-то на артикула от платформата, която се интегрира към HES!</strong></p>\n<h4 id=\"categories\">Categories</h4>\n<p><code>GET /tasks/hype-custom/categories</code></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>[\n   {\n      \"id\":\"9a101f76-f1c8-47c2-a19f-259150bb62e0\",\n      \"request\":{\n         \"name\":\"Сандвичи\",\n         \"order\":1\n      },\n      \"status\":0,\n      \"type\":\"POST\"\n   },\n   {\n      \"id\":\"9a101f76-f1c8-47c2-a19f-259150bb62e0\",\n      \"request\":{\n         \"id\":135,\n         \"name\":\"Пици\",\n         \"order\":2\n      },\n      \"status\":0,\n      \"type\":\"POST\"\n   },\n   {\n      \"id\":\"9a101f76-f1c8-47c2-a19f-489150bb62b1\",\n      \"request\":{\n         \"id\":234,\n         \"name\":\"Бира\",\n         \"order\":3\n      },\n      \"status\":0,\n      \"type\":\"PUT\"\n   }\n]\n\n</code></pre><h4 id=\"order-requests\">Order Requests</h4>\n<p><code>GET /tasks/hype-custom/orderRequests</code></p>\n<p>Когато има промяна по статуса на някоя поръчка от страна на Hype, се създава задача за обновяването (update) й.</p>\n<p>👉 <em>Hype обновява само статуса на поръчката като останалите параметри остават непроменени</em></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>[\n   {\n      \"id\":\"9a101f76-f1c8-47c2-a19f-259150bb62e0\",\n      \"request\":{\n         \"id\":1,\n         \"discount\":3.45,\n         \"paymentTypes\":[\n            {\n               \"id\":1,\n               \"name\":\"Stripe\",\n               \"amount\":10.25,\n               \"status\":\"completed\"\n            }\n         ],\n         \"orderComment\":\"Коментар към поръчката\",\n         \"deliveryChannel\":{\n            \"id\":1,\n            \"name\":\"За плажа\",\n            \"deliveryPrice\":2.5\n         },\n         \"status\":{\n            \"id\":2,\n            \"name\":\"Приета\"\n         },\n         \"clientDetails\":{\n            \"firstName\":\"Иван\",\n            \"lastName\":\"Иванов\",\n            \"phone\":\"+359884443555\",\n            \"city\":\"Бургас\",\n            \"postCode\":\"8000\",\n            \"address\":\"кв. Възраждане, Блок 571\",\n            \"formatted\":\"Бургас, 8000, кв. Възраждане, Блок 571\"\n         },\n         \"orderDetails\":{\n            \"elements\":[\n               {\n                  \"id\":255653,\n                  \"name\":\"Маргарита 20\",\n                  \"modifierIds\":[\n                  ],\n                  \"supplementIds\":[\n                  ],\n                  \"comment\":\"Да няма нищо зелено, като рукола зелени маслини или чушки\",\n                  \"quantity\":2,\n                  \"orderPrice\":4.33\n               }\n            ]\n         },\n         \"total\":10.25,\n         \"subTotal\":8.67\n      },\n      \"status\":0,\n      \"type\":\"PUT\"\n   }\n]\n\n</code></pre><h4 id=\"order-delivery-channels\">Order Delivery Channels</h4>\n<p><code>GET /tasks/hype-custom/orderDeliveryChannels</code></p>\n<p>Този тип ресурс, обикновено ще има задачи само от тип <strong>GET</strong>. Т.е когато се получи такъв тип задача, това се интерпретира, като <em>\"Дай ми всички записи, които имаш за този ресурс\"</em>.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>[\n   {\n      \"id\":\"9a101f76-f1c8-47c2-a19f-259150bb62e0\",\n      \"request\":{},\n      \"status\":0,\n      \"type\":\"GET\"\n   }\n]\n\n</code></pre><p>Това означава, че трябва да се използва <a href=\"https://www.postman.com/hype-api/workspace/hype-exchange-service/request/29595209-2e165b61-9c86-4d30-b633-0c2d93bb7333?ctx=documentation\">Create Order Delivery Channels</a>, за да се създадът в HES съответните матоди за доставка</p>\n<h4 id=\"order-payment-types\">Order Payment Types</h4>\n<p><code>GET /tasks/hype-custom/orderPaymentTypes</code></p>\n<p>По аналогичен начин, както е при Order Delivery Channels, и тук задачите са от тип GET</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>[\n   {\n      \"id\":\"9a101f76-f1c8-47c2-a19f-259150bb62e0\",\n      \"request\":{},\n      \"status\":0,\n      \"type\":\"GET\"\n   }\n]\n\n</code></pre><p>Като резултат, трябва да се използва <a href=\"https://www.postman.com/hype-api/workspace/hype-exchange-service/request/29595209-7238df62-d8d1-4ec1-97cb-aa7f4228c514?ctx=documentation\">Create Payment Type</a>, за да се създадът в HES съответните методи за плащане.</p>\n<h4 id=\"order-request-status\">Order Request Status</h4>\n<p><code>GET /tasks/hype-custom/orderRequestStatus</code></p>\n<p>По аналогичен начин, както е при Order Delivery Channels и Order Payment Types, и тук задачите са от тип GET</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>[\n   {\n      \"id\":\"9a101f76-f1c8-47c2-a19f-259150bb62e0\",\n      \"request\":{},\n      \"status\":0,\n      \"type\":\"GET\"\n   }\n]\n\n</code></pre><p>Като резултат, трябва да се използва <a href=\"https://www.postman.com/hype-api/workspace/hype-exchange-service/request/29595209-20830f1d-3177-40c4-a671-2619c76118a4?ctx=documentation\">Create Order Request Status</a>, за да се създадът в HES съответните методи за плащане.</p>\n<h2 id=\"обновяване-статус-на-задача\">Обновяване статус на задача</h2>\n<p>След като дадена задача бъде извлечена и обработена,<br />трябва системата да бъде нотифицирана, за резултата от това. За целта<br />към по-рано посочените ендпойнти за всеки отделен ресурс се прави<br />отделен PUT рекуест с подобен на следния пейлоуд :</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>[\n   {\n      \"entity_task_id\":\"9a101f76-f1c8-47c2-a19f-259150bb62e0\",\n      \"response\":{ ... },\n      \"status\": 200\n   }\n]\n\n</code></pre><p>entity_task_id - това е ID-то на задачата която е получена за обработка от HES</p>\n<p>response - това е отговорът от изпълнението на задачата (<em>При</em> <em><strong>GET</strong></em> <em>задача, този параметър се игнорира</em>)</p>\n<p>status - това е статуса на изпълнение на самата задача. Този статус код е същи като смисъла на стандартните <a href=\"https://en.wikipedia.org/wiki/List_of_HTTP_status_codes\">HTTP status code</a></p>\n","_postman_id":"92fda388-a70e-4cee-87c9-6727cf79b190","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}}},{"name":"Order Requests","item":[{"name":"Create Order Request","id":"1062a674-ea45-4d3e-a122-9c7c1fe4cb34","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/webhook/hype-custom/:entity","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}},"urlObject":{"path":["webhook","hype-custom",":entity"],"host":["{{baseUrl}}"],"query":[],"variable":[{"type":"any","value":"orderRequests","key":"entity"}]}},"response":[{"id":"f2f20504-0e4e-4c81-b7b0-3e58394f8017","name":"Create Order Request","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"id\": 1,\n    \"discount\": 3.45,\n    \"paymentTypes\": [\n        {\n            \"id\": 1,\n            \"name\": \"Stripe\",\n            \"amount\": 10.25,\n            \"status\": \"completed\"\n        }\n    ],\n    \"orderComment\": \"Коментар към поръчката\",\n    \"deliveryChannel\": {\n        \"id\": 1,\n        \"name\": \"За плажа\",\n        \"deliveryPrice\": 2.5\n    },\n    \"status\": {\n        \"id\": 1,\n        \"name\": \"Нова\"\n    },\n    \"clientDetails\": {\n        \"firstName\": \"Иван\",\n        \"lastName\": \"Иванов\",\n        \"phone\": \"+12345\",\n        \"city\": \"Бургас\",\n        \"postCode\": \"8000\",\n        \"address\": \"кв. Възраждане, 111\",\n        \"formatted\": \"Бургас, 8000, кв. Възраждане, 111\"\n    },\n    \"orderDetails\": {\n        \"items\": [\n            {\n                \"id\": 255653,\n                \"name\": \"Маргарита 20\",\n                \"modifierIds\": [],\n                \"supplementIds\": [],\n                \"comment\": \"Да няма нищо зелено, като рукола зелени маслини или чушки\",\n                \"quantity\": 2,\n                \"orderPrice\": 4.33\n            }\n        ]\n    },\n    \"total\": 10.25,\n    \"subTotal\": 8.67\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"{{baseUrl}}/webhook/hype-custom/:entity","host":["{{baseUrl}}"],"path":["webhook","hype-custom",":entity"],"variable":[{"key":"entity","value":"orderRequests"}]}},"status":"No Content","code":204,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":""}],"_postman_id":"1062a674-ea45-4d3e-a122-9c7c1fe4cb34"},{"name":"Update order request","id":"bebf761c-f221-4c6c-98d6-122c81559d31","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/webhook/hype-custom/:entity","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}},"urlObject":{"path":["webhook","hype-custom",":entity"],"host":["{{baseUrl}}"],"query":[],"variable":[{"type":"any","value":"orderRequests","key":"entity"}]}},"response":[{"id":"bb408393-8861-4ab6-a66d-5435fb5a74b2","name":"Update order request","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"id\": 1,\n    \"discount\": 3.45,\n    \"paymentTypes\": [\n        {\n            \"id\": 1,\n            \"name\": \"Stripe\",\n            \"amount\": 10.25,\n            \"status\": \"completed\"\n        }\n    ],\n    \"orderComment\": \"Коментар към поръчката\",\n    \"deliveryChannel\": {\n        \"id\": 1,\n        \"name\": \"За плажа\",\n        \"deliveryPrice\": 2.5\n    },\n    \"status\": {\n        \"id\": 2,\n        \"name\": \"Приета\"\n    },\n    \"clientDetails\": {\n        \"firstName\": \"Иван\",\n        \"lastName\": \"Иванов\",\n        \"phone\": \"+12345\",\n        \"city\": \"Бургас\",\n        \"postCode\": \"8000\",\n        \"address\": \"кв. Възраждане, 118\",\n        \"formatted\": \"Бургас, 8000, кв. Възраждане, 118\"\n    },\n    \"orderDetails\": {\n        \"elements\": [\n            {\n                \"id\": 255653,\n                \"name\": \"Маргарита 20\",\n                \"modifierIds\": [],\n                \"supplementIds\": [],\n                \"comment\": \"Да няма нищо зелено, като рукола, зелени маслини или чушки\",\n                \"quantity\": 2,\n                \"orderPrice\": 4.33\n            }\n        ]\n    },\n    \"total\": 10.25,\n    \"subTotal\": 8.67\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"{{baseUrl}}/webhook/hype-custom/:entity","host":["{{baseUrl}}"],"path":["webhook","hype-custom",":entity"],"variable":[{"key":"entity","value":"orderRequests"}]}},"status":"No Content","code":204,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":""}],"_postman_id":"bebf761c-f221-4c6c-98d6-122c81559d31"}],"id":"d10873e9-e1a6-4774-b6e4-b8c0fe43942f","_postman_id":"d10873e9-e1a6-4774-b6e4-b8c0fe43942f","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}}},{"name":"Order Delivery Channels","item":[{"name":"Create order delivery channel","id":"ee557362-384d-480a-8a3e-34a58a61f10f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/webhook/hype-custom/:entity","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}},"urlObject":{"path":["webhook","hype-custom",":entity"],"host":["{{baseUrl}}"],"query":[],"variable":[{"type":"any","value":"orderDeliveryChannels","key":"entity"}]}},"response":[{"id":"3b32de17-62ce-4233-a88d-c99d9788d76d","name":"Create Order Delivery Channel","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"id\": 1,\n    \"name\": \"За плажа\",\n    \"deliveryPrice\": 2.5\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"{{baseUrl}}/webhook/hype-custom/:entity","host":["{{baseUrl}}"],"path":["webhook","hype-custom",":entity"],"variable":[{"key":"entity","value":"orderDeliveryChannels"}]}},"status":"No Content","code":204,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":""}],"_postman_id":"ee557362-384d-480a-8a3e-34a58a61f10f"},{"name":"Update order delivery channel","id":"0d3571c6-dab7-48eb-9fc5-ba36dcda206a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/webhook/hype-custom/:entity","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}},"urlObject":{"path":["webhook","hype-custom",":entity"],"host":["{{baseUrl}}"],"query":[],"variable":[{"type":"any","value":"orderDeliveryChannels","key":"entity"}]}},"response":[{"id":"70405b04-a86a-43dd-94a2-d4dab845da7a","name":"Update order delivery channel","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"id\": 1,\n    \"name\": \"За плажа\",\n    \"deliveryPrice\": 2.2\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"{{baseUrl}}/webhook/hype-custom/:entity","host":["{{baseUrl}}"],"path":["webhook","hype-custom",":entity"],"variable":[{"key":"entity","value":"orderDeliveryChannels"}]}},"status":"No Content","code":204,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":""}],"_postman_id":"0d3571c6-dab7-48eb-9fc5-ba36dcda206a"}],"id":"57e27f0e-9ce5-4aaf-b1bb-d94b5639f7b8","description":"<p>Този ресурс се ползва само при първоначална синхронизация, за да може HES да свърже методите за доставка между двете платформи</p>\n","_postman_id":"57e27f0e-9ce5-4aaf-b1bb-d94b5639f7b8","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}}},{"name":"Order Payment Types","item":[{"name":"Create payment type","id":"ce3bcb9e-0b81-4d0d-b583-36bfb78adde8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/webhook/hype-custom/:entity","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}},"urlObject":{"path":["webhook","hype-custom",":entity"],"host":["{{baseUrl}}"],"query":[],"variable":[{"type":"any","value":"orderPaymentTypes","key":"entity"}]}},"response":[{"id":"95398da8-04e5-4d98-a12e-7547d9460858","name":"Create payment type","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"id\": 1,\n    \"name\": \"Stripe\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"{{baseUrl}}/webhook/hype-custom/:entity","host":["{{baseUrl}}"],"path":["webhook","hype-custom",":entity"],"variable":[{"key":"entity","value":"orderPaymentTypes"}]}},"status":"No Content","code":204,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":""}],"_postman_id":"ce3bcb9e-0b81-4d0d-b583-36bfb78adde8"},{"name":"Update payment type","id":"a1a3f2e2-c233-48bf-9727-9ffa727054f2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/webhook/hype-custom/:entity","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}},"urlObject":{"path":["webhook","hype-custom",":entity"],"host":["{{baseUrl}}"],"query":[],"variable":[{"type":"any","value":"orderPaymentTypes","key":"entity"}]}},"response":[{"id":"6e4a1b41-fb80-4b6d-a586-2c3a92a31f8f","name":"Update payment type","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"id\": 1,\n    \"name\": \"Stripe 2\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"{{baseUrl}}/webhook/hype-custom/:entity","host":["{{baseUrl}}"],"path":["webhook","hype-custom",":entity"],"variable":[{"key":"entity","value":"orderPaymentTypes"}]}},"status":"No Content","code":204,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":""}],"_postman_id":"a1a3f2e2-c233-48bf-9727-9ffa727054f2"}],"id":"2e241901-84e3-4ec9-930c-bf3b2ab71aa0","description":"<p>Този ресурс се ползва само при първоначална синхронизация, за да може HES да свърже методите за доставка между двете платформи</p>\n","_postman_id":"2e241901-84e3-4ec9-930c-bf3b2ab71aa0","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}}},{"name":"Order Request Status","item":[{"name":"Create order request status","id":"e5974212-cdb4-4c5c-abdb-3181dbb6c497","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/webhook/hype-custom/:entity","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}},"urlObject":{"path":["webhook","hype-custom",":entity"],"host":["{{baseUrl}}"],"query":[],"variable":[{"type":"any","value":"orderRequestStatus","key":"entity"}]}},"response":[{"id":"1ff55212-5fee-4c97-90a8-9c5f43408c52","name":"Create order request status","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"id\": 1,\n    \"name\": \"Нова\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"{{baseUrl}}/webhook/hype-custom/:entity","host":["{{baseUrl}}"],"path":["webhook","hype-custom",":entity"],"variable":[{"key":"entity","value":"orderRequestStatus"}]}},"status":"No Content","code":204,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":""}],"_postman_id":"e5974212-cdb4-4c5c-abdb-3181dbb6c497"},{"name":"Update order request status","id":"bac5e5e1-38f7-475f-a9ab-0190bdd6a64a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/webhook/hype-custom/:entity","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}},"urlObject":{"path":["webhook","hype-custom",":entity"],"host":["{{baseUrl}}"],"query":[],"variable":[{"type":"any","value":"orderRequestStatus","key":"entity"}]}},"response":[{"id":"7f2f6832-b118-47f6-8e2b-e35530b23dc1","name":"Update payment type","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"id\": 1,\n    \"name\": \"Изчакваща\"\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"{{baseUrl}}/webhook/hype-custom/:entity","host":["{{baseUrl}}"],"path":["webhook","hype-custom",":entity"],"variable":[{"key":"entity","value":"orderRequestStatus"}]}},"status":"No Content","code":204,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":""}],"_postman_id":"bac5e5e1-38f7-475f-a9ab-0190bdd6a64a"}],"id":"e96e111e-5e57-48d7-ae10-772380cff740","description":"<p>Този ресурс се ползва само при първоначална синхронизация, за да може HES да свърже методите за доставка между двете платформи</p>\n","_postman_id":"e96e111e-5e57-48d7-ae10-772380cff740","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":true,"source":{"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","id":"6dab1329-a3b8-4f11-b768-31885e636725","name":"hype-custom","type":"folder"}}}],"id":"6dab1329-a3b8-4f11-b768-31885e636725","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{apiKey}}"}]},"isInherited":false},"event":[{"listen":"prerequest","script":{"id":"0a619d82-1a17-4edb-896e-5569a47411ff","type":"text/javascript","packages":{},"requests":{},"exec":[""]}},{"listen":"test","script":{"id":"bddee46b-f619-4372-b2af-4749717fa88b","type":"text/javascript","packages":{},"requests":{},"exec":[""]}}],"_postman_id":"6dab1329-a3b8-4f11-b768-31885e636725","description":""},{"name":"hype-reports","item":[{"name":"tasks","item":[{"name":"Menus","item":[{"name":"Get menu tasks","id":"36f0fdab-9172-47ed-93fc-d4ba4aaee242","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/tasks/hype-reports/:entity","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":true,"source":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","type":"collection"}},"urlObject":{"path":["tasks","hype-reports",":entity"],"host":["{{baseUrl}}"],"query":[],"variable":[{"type":"any","value":"menus","key":"entity"}]}},"response":[{"id":"db2bf0f5-5e4d-413d-87be-b838436c1fc6","name":"Get menu tasks","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":{"raw":"{{baseUrl}}/tasks/hype-reports/:entity","host":["{{baseUrl}}"],"path":["tasks","hype-reports",":entity"],"variable":[{"key":"entity","value":"menus"}]}},"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"[\n  {\n    \"id\": \"a0ff034e-c2d4-4508-a367-b0ed546af60a\",\n    \"request\": {\n      \"name\": \"Основно меню\",\n      \"startDate\": \"\",\n      \"endDate\": \"\",\n      \"isActive\": true,\n      \"isDefault\": true,\n      \"source_account\": {\n        \"id\": \"a0fa1fe5-feda-4753-9f23-691343e3828c\",\n        \"name\": \"Local\",\n        \"platform_id\": \"4d410b0e-ee37-497e-8362-478a383d68ee\",\n        \"platform_name\": \"Hype Server\",\n        \"platform_key\": \"hype-server\"\n      }\n    },\n    \"status\": 0,\n    \"meta\": {\n      \"source_account\": {\n        \"id\": \"a0fa1fe5-feda-4753-9f23-691343e3828c\",\n        \"name\": \"Local\",\n        \"platform_id\": \"4d410b0e-ee37-497e-8362-478a383d68ee\",\n        \"platform_name\": \"Hype Server\",\n        \"platform_key\": \"hype-server\"\n      }\n    },\n    \"type\": \"POST\"\n  },\n  {\n    \"id\": \"a0ff034e-d59b-43de-8c49-90370f87238b\",\n    \"request\": {\n      \"name\": \"Обедно меню\",\n      \"startDate\": \"\",\n      \"endDate\": \"\",\n      \"isActive\": true,\n      \"isDefault\": false,\n      \"source_account\": {\n        \"id\": \"a0fa1fe5-feda-4753-9f23-691343e3828c\",\n        \"name\": \"Local\",\n        \"platform_id\": \"4d410b0e-ee37-497e-8362-478a383d68ee\",\n        \"platform_name\": \"Hype Server\",\n        \"platform_key\": \"hype-server\"\n      }\n    },\n    \"status\": 0,\n    \"meta\": {\n      \"source_account\": {\n        \"id\": \"a0fa1fe5-feda-4753-9f23-691343e3828c\",\n        \"name\": \"Local\",\n        \"platform_id\": \"4d410b0e-ee37-497e-8362-478a383d68ee\",\n        \"platform_name\": \"Hype Server\",\n        \"platform_key\": \"hype-server\"\n      }\n    },\n    \"type\": \"POST\"\n  }\n]"}],"_postman_id":"36f0fdab-9172-47ed-93fc-d4ba4aaee242"},{"name":"Update menu tasks","id":"0c4a6b90-a6d3-484c-8bd0-8aab78d6947d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/tasks/hype-reports/:entity","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":true,"source":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","type":"collection"}},"urlObject":{"path":["tasks","hype-reports",":entity"],"host":["{{baseUrl}}"],"query":[],"variable":[{"type":"any","value":"menus","key":"entity"}]}},"response":[{"id":"874b699f-1bb3-4f24-94b3-839bc83f9209","name":"Update menu tasks","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"[\n  {\n    \"entity_task_id\": \"a0ff034e-c2d4-4508-a367-b0ed546af60a\",\n    \"status\": 200,\n    \"response\": {\n      \"id\": \"custom_id_1\",\n      \"name\": \"Основно меню\",\n      \"startDate\": \"\",\n      \"endDate\": \"\",\n      \"isActive\": true,\n      \"isDefault\": true\n    }\n  },\n  {\n    \"entity_task_id\": \"a0ff034e-d59b-43de-8c49-90370f87238b\",\n    \"status\": 200,\n    \"response\": {\n      \"id\": \"custom_id_2\",\n      \"name\": \"Обедно меню\",\n      \"startDate\": \"\",\n      \"endDate\": \"\",\n      \"isActive\": true,\n      \"isDefault\": false\n    }\n  }\n]","options":{"raw":{"language":"json"}}},"url":{"raw":"{{baseUrl}}/tasks/hype-reports/:entity","host":["{{baseUrl}}"],"path":["tasks","hype-reports",":entity"],"variable":[{"key":"entity","value":"menus"}]}},"status":"No Content","code":204,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":""}],"_postman_id":"0c4a6b90-a6d3-484c-8bd0-8aab78d6947d"}],"id":"1f18d5e5-45fc-4787-bd05-0c2dbdcd6da1","_postman_id":"1f18d5e5-45fc-4787-bd05-0c2dbdcd6da1","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":true,"source":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","type":"collection"}}},{"name":"Users","item":[{"name":"Get user tasks","id":"c37b36a7-c185-4bf4-9c98-b5f006ca0f96","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/tasks/hype-reports/:entity","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":true,"source":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","type":"collection"}},"urlObject":{"path":["tasks","hype-reports",":entity"],"host":["{{baseUrl}}"],"query":[],"variable":[{"type":"any","value":"users","key":"entity"}]}},"response":[{"id":"65d1de66-e28f-49a7-9b24-3d45338b912c","name":"Get users tasks","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":{"raw":"{{baseUrl}}/tasks/hype-reports/:entity","host":["{{baseUrl}}"],"path":["tasks","hype-reports",":entity"],"variable":[{"key":"entity","value":"users"}]}},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"[\n    {\n    \"id\": \"a0ff034f-3820-460f-919e-67515732cc02\",\n    \"request\": {\n      \"firstName\": \"Радина\",\n      \"middleName\": \".\",\n      \"lastName\": \".\",\n      \"position\": \".\",\n      \"email\": \"\",\n      \"phone\": \"\",\n      \"source_account\": {\n        \"id\": \"a0fa1fe5-feda-4753-9f23-691343e3828c\",\n        \"name\": \"Local\",\n        \"platform_id\": \"4d410b0e-ee37-497e-8362-478a383d68ee\",\n        \"platform_name\": \"Hype Server\",\n        \"platform_key\": \"hype-server\"\n      }\n    },\n    \"status\": 0,\n    \"meta\": {\n      \"source_account\": {\n        \"id\": \"a0fa1fe5-feda-4753-9f23-691343e3828c\",\n        \"name\": \"Local\",\n        \"platform_id\": \"4d410b0e-ee37-497e-8362-478a383d68ee\",\n        \"platform_name\": \"Hype Server\",\n        \"platform_key\": \"hype-server\"\n      }\n    },\n    \"type\": \"POST\"\n  },\n    {\n    \"id\": \"a0ff034f-521b-4709-8033-60363ce9dcf0\",\n    \"request\": {\n      \"firstName\": \"Стефания\",\n      \"middleName\": \".\",\n      \"lastName\": \"Генчева\",\n      \"position\": \"Собственик\",\n      \"email\": \"test2@gmail.com\",\n      \"phone\": \"12345678\",\n      \"source_account\": {\n        \"id\": \"a0fa1fe5-feda-4753-9f23-691343e3828c\",\n        \"name\": \"Local\",\n        \"platform_id\": \"4d410b0e-ee37-497e-8362-478a383d68ee\",\n        \"platform_name\": \"Hype Server\",\n        \"platform_key\": \"hype-server\"\n      }\n    },\n    \"status\": 0,\n    \"meta\": {\n      \"source_account\": {\n        \"id\": \"a0fa1fe5-feda-4753-9f23-691343e3828c\",\n        \"name\": \"Local\",\n        \"platform_id\": \"4d410b0e-ee37-497e-8362-478a383d68ee\",\n        \"platform_name\": \"Hype Server\",\n        \"platform_key\": \"hype-server\"\n      }\n    },\n    \"type\": \"POST\"\n  }\n]"}],"_postman_id":"c37b36a7-c185-4bf4-9c98-b5f006ca0f96"},{"name":"Update users tasks","id":"fa2516d7-0ede-48b3-878b-a91d815e2da9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/tasks/hype-reports/:entity","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":true,"source":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","type":"collection"}},"urlObject":{"path":["tasks","hype-reports",":entity"],"host":["{{baseUrl}}"],"query":[],"variable":[{"type":"any","value":"users","key":"entity"}]}},"response":[{"id":"9f3eebe5-a168-4a27-8032-23fa1998322c","name":"Update menu tasks","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"[\n  {\n    \"entity_task_id\": \"a0ff034f-3820-460f-919e-67515732cc02\",\n    \"response\": {\n      \"id\": \"user_3\"\n    },\n    \"status\": 200\n  },\n  {\n    \"entity_task_id\": \"a0ff034f-521b-4709-8033-60363ce9dcf0\",\n    \"response\": {\n      \"id\": \"user_5\"\n    },\n    \"status\": 200\n  }\n]","options":{"raw":{"language":"json"}}},"url":{"raw":"{{baseUrl}}/tasks/hype-reports/:entity","host":["{{baseUrl}}"],"path":["tasks","hype-reports",":entity"],"variable":[{"key":"entity","value":"users"}]}},"code":204,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":""}],"_postman_id":"fa2516d7-0ede-48b3-878b-a91d815e2da9"}],"id":"f0ab47e3-9c00-4035-b14b-193163da059b","_postman_id":"f0ab47e3-9c00-4035-b14b-193163da059b","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":true,"source":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","type":"collection"}}},{"name":"Saloons","item":[{"name":"Get saloon tasks","id":"adff2aab-6d41-46a1-aa87-2da804d3e99b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"{{baseUrl}}/tasks/hype-reports/saloons","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":true,"source":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","type":"collection"}},"urlObject":{"path":["tasks","hype-reports","saloons"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"adff2aab-6d41-46a1-aa87-2da804d3e99b"},{"name":"Update saloon tasks","id":"d6358cc6-0c92-4cf8-bbeb-3ad1e4b8def4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"[\n  {\n    \"entity_task_id\": \"task-saloon-1\",\n    \"status\": 200,\n    \"response\": {\n      \"id\": \"hr-saloon-10\",\n      \"name\": \"Main hall\",\n      \"width\": 1200,\n      \"height\": 800,\n      \"order\": 1\n    }\n  }\n]","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/tasks/hype-reports/saloons","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":true,"source":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","type":"collection"}},"urlObject":{"path":["tasks","hype-reports","saloons"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"d6358cc6-0c92-4cf8-bbeb-3ad1e4b8def4"}],"id":"ba3ab280-a7c2-4290-9b1d-c84076da037b","_postman_id":"ba3ab280-a7c2-4290-9b1d-c84076da037b","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":true,"source":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","type":"collection"}}},{"name":"Tables","item":[{"name":"Get table tasks","id":"7c2b38ec-0275-4874-a78e-210ee6d797ac","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"{{baseUrl}}/tasks/hype-reports/tables","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":true,"source":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","type":"collection"}},"urlObject":{"path":["tasks","hype-reports","tables"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"7c2b38ec-0275-4874-a78e-210ee6d797ac"},{"name":"Update table tasks","id":"8de36bfa-5c1e-4587-96b2-1feb6ada9910","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"[\n  {\n    \"entity_task_id\": \"task-table-1\",\n    \"status\": 200,\n    \"response\": {\n      \"id\": \"hr-table-20\",\n      \"name\": \"Table 1\",\n      \"saloonId\": \"hr-saloon-10\",\n      \"x\": 0,\n      \"y\": 0,\n      \"width\": 100,\n      \"height\": 100\n    }\n  }\n]","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/tasks/hype-reports/tables","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":true,"source":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","type":"collection"}},"urlObject":{"path":["tasks","hype-reports","tables"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"8de36bfa-5c1e-4587-96b2-1feb6ada9910"}],"id":"29930693-75a9-4816-8f72-39e47840a66a","_postman_id":"29930693-75a9-4816-8f72-39e47840a66a","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":true,"source":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","type":"collection"}}}],"id":"7ca3b6e1-dad6-4ea3-bc03-58d86be2ebfa","description":"<p>Tasks</p>\n<p>Всеки task е entry в queue, който Hype Reports трябва да poll-ва от HES и след обработка да acknowledge-не със статус и response.</p>\n<p>HES създава tasks за следните entity types:</p>\n<ul>\n<li>menus</li>\n<li>saloons</li>\n<li>tables</li>\n<li>users</li>\n</ul>\n<p>Poll endpoints:</p>\n<ul>\n<li>GET /tasks/hype-reports/menus</li>\n<li>GET /tasks/hype-reports/saloons</li>\n<li>GET /tasks/hype-reports/tables</li>\n<li>GET /tasks/hype-reports/users</li>\n</ul>\n<p>Acknowledge endpoints:</p>\n<ul>\n<li>PUT /tasks/hype-reports/menus</li>\n<li>PUT /tasks/hype-reports/saloons</li>\n<li>PUT /tasks/hype-reports/tables</li>\n<li>PUT /tasks/hype-reports/users</li>\n</ul>\n<p>Task object</p>\n<p>Всеки GET response връща array от task objects:</p>\n<p>[\n  {\n    \"id\": \"...\",\n    \"request\": { ... },\n    \"status\": 0,\n    \"type\": \"POST\"\n  }\n]</p>\n<p>id е ID-то на task-а. Използва се като entity_task_id при acknowledge.</p>\n<p>request е payload-ът, който Hype Reports трябва да обработи.</p>\n<p>type е action-ът, който трябва да се изпълни:</p>\n<ul>\n<li>GET: Hype Reports връща своите записи към HES</li>\n<li>POST: създаване или mapping на нов entity</li>\n<li>PUT: обновяване или mapping на existing entity</li>\n</ul>\n<p>status е 0 за нов, необработен task.</p>\n<p>GET tasks</p>\n<p>GET task означава, че HES иска данни от Hype Reports за дадения entity type. Върнете response като array от entities или [] ако не поддържате HR -&gt; HS sync за този entity type.</p>\n<p>POST/PUT tasks</p>\n<p>POST и PUT tasks съдържат source entity от Hype Server. След като го приложите в Hype Reports, върнете single object в response. Ако entity вече съществува, върнете неговия existing HR ID. Това създава mapping между Hype Server ID и Hype Reports ID.</p>\n<p>Update task status</p>\n<p>След обработка изпратете PUT request към endpoint-а за съответния entity type:</p>\n<p>[\n  {\n    \"entity_task_id\": \"...\",\n    \"status\": 200,\n    \"response\": {\n      \"id\": \"...\"\n    }\n  }\n]</p>\n<p>entity_task_id е id от получения task.</p>\n<p>status е HTTP-like status code за резултата от обработката.</p>\n<p>response е резултатът от обработката:</p>\n<ul>\n<li>за GET tasks: array или []</li>\n<li>за POST/PUT tasks: single object с Hype Reports ID</li>\n</ul>\n<p>Важно за saloons и tables</p>\n<p>Обработвайте saloons преди tables. При table response полето saloonId трябва да съдържа Hype Reports saloon ID, за да може HES да мапне връзката table -&gt; saloon.</p>\n","_postman_id":"7ca3b6e1-dad6-4ea3-bc03-58d86be2ebfa","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":true,"source":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","type":"collection"}}},{"name":"Request report generation","id":"4373b85e-a2d9-4a43-9fbc-e16002dd2766","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n  \"date_from\": \"2026-07-08T00:00:00.000Z\",\n  \"date_to\": \"2026-07-08T23:59:59.000Z\",\n  \"user_ids\": [\"hr-user-7\"],\n  \"saloon_ids\": [\"hr-saloon-10\"],\n  \"table_ids\": [\"hr-table-20\"]\n}","options":{"raw":{"language":"json"}}},"url":"{{baseUrl}}/api/v1/integrations/:integrationId/reports/:report","description":"<p>Creates a report-generation job. Supported reports: operator-revenue (user_ids, max 31 days), revenue-by-menu (menu_ids, max 31 days), and orders-summary (user_ids, saloon_ids, table_ids, max 1 day). Filter IDs must be Hype Reports IDs mapped by sync tasks; unmapped IDs are omitted before forwarding to Hype Reports.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":true,"source":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","type":"collection"}},"urlObject":{"path":["api","v1","integrations",":integrationId","reports",":report"],"host":["{{baseUrl}}"],"query":[],"variable":[{"type":"any","value":"","key":"integrationId"},{"type":"any","value":"","key":"report"}]}},"response":[{"id":"c0cb0ffa-a827-4522-979d-104663b7cc44","name":"Request report generation","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"date_from\": \"2026-07-08T00:00:00.000Z\",\n  \"date_to\": \"2026-07-08T23:59:59.000Z\",\n  \"user_ids\": [\"hr-user-7\"],\n  \"saloon_ids\": [\"hr-saloon-10\"],\n  \"table_ids\": [\"hr-table-20\"]\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"{{baseUrl}}/api/v1/integrations/:integrationId/reports/:report","host":["{{baseUrl}}"],"path":["api","v1","integrations",":integrationId","reports",":report"],"variable":[{"key":"integrationId","value":""},{"key":"report","value":""}]}},"status":"Accepted","code":202,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"{\n  \"jobId\": \"a0ffc461-33b6-4dcc-b916-1932f339b1f4\",\n  \"pollUrl\": \"https://es.dev.hype-software.com/api/v1/report-data/a0ffc461-33b6-4dcc-b916-1932f339b1f4\",\n  \"message\": \"Report request accepted and queued for processing\"\n}"}],"_postman_id":"4373b85e-a2d9-4a43-9fbc-e16002dd2766"},{"name":"Get report status","id":"a4d44dc6-4f3e-4eb7-893e-e29e1198e626","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"{{vault:bearer-token}}"}],"url":"{{baseUrl}}/api/v1/report-data/:reportRequestId","description":"<p>Polls report status by reportRequestId. data is null until COMPLETED; completed_at is only set for completed jobs and error is only set for failed jobs. For orders-summary, data is the root array of closed-account rows.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":true,"source":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","type":"collection"}},"urlObject":{"path":["api","v1","report-data",":reportRequestId"],"host":["{{baseUrl}}"],"query":[],"variable":[{"type":"any","value":"","key":"reportRequestId"}]}},"response":[{"id":"7f377c59-5193-446e-8055-e39c7866b6d0","name":"Get report status - pending","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"{{vault:bearer-token}}"}],"url":{"raw":"{{baseUrl}}/api/v1/report-data/:reportRequestId","host":["{{baseUrl}}"],"path":["api","v1","report-data",":reportRequestId"],"variable":[{"key":"reportRequestId","value":""}]}},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":null,"cookie":[],"responseTime":null,"body":"{\n  \"jobId\": \"a0ffc461-33b6-4dcc-b916-1932f339b1f4\",\n  \"status\": \"PENDING\",\n  \"data\": null\n}"},{"id":"716a9330-0df6-4482-acd7-f3d933d32294","name":"Get report status - completed","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"{{vault:bearer-token}}"}],"url":{"raw":"{{baseUrl}}/api/v1/report-data/:reportRequestId","host":["{{baseUrl}}"],"path":["api","v1","report-data",":reportRequestId"],"variable":[{"key":"reportRequestId","value":""}]}},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":null,"cookie":[],"responseTime":null,"body":"{\n  \"jobId\": \"a0ffc461-33b6-4dcc-b916-1932f339b1f4\",\n  \"status\": \"COMPLETED\",\n  \"data\": {\n    \"period\": {\n      \"startDate\": \"2025-01-01T00:00:00.000Z\",\n      \"endDate\": \"2025-01-30T23:59:59.000Z\"\n    },\n    \"results\": [\n      {\n        \"operatorId\": \"user_2\",\n        \"revenue\": 30,\n        \"reversed\": 0,\n        \"openTableAccounts\": 3,\n        \"openTableAccountsSum\": 0,\n        \"tableAccountsSurchargeSum\": 0,\n        \"tableAccountId\": 0,\n        \"types\": [\n          {\n            \"paymentTypeId\": 1,\n            \"translationKey\": \"CASH\",\n            \"amount\": 0.03,\n            \"reversed\": 0\n          }\n        ],\n        \"operatorFirstName\": \"Super Admin\",\n        \"operatorLastName\": null,\n        \"fiscalRevenue\": 30,\n        \"numberOfClients\": 0\n      }\n    ]\n  },\n  \"completed_at\": \"2026-02-04T11:15:27+00:00\"\n}"}],"_postman_id":"a4d44dc6-4f3e-4eb7-893e-e29e1198e626"}],"id":"c330fe09-2620-4b12-a7c9-bb05debcd432","description":"<p><strong>Hype Reports интеграция</strong></p>\n<p>Този документ описва как клиент на Hype Reports се интегрира с Hype Exchange Service (HES) за синхронизация на menus, saloons, tables и users, както и за заявяване и polling на reports.</p>\n<p>Всички заявки използват Bearer token за Hype Reports акаунта:</p>\n<p>Authorization: Bearer</p>\n<p>Ще получите:</p>\n<ul>\n<li><p>integration_id</p>\n</li>\n<li><p>api_token</p>\n</li>\n</ul>\n<p><strong>Base URL</strong></p>\n<p>Използвайте средата на HES, която ви е предоставена.</p>\n<p><strong>1) Initial Sync (Menus, Saloons, Tables и Users)</strong></p>\n<p>HES създава sync tasks за четири entity типа. Hype Reports poll-ва matching endpoint-а и после acknowledge-ва със съответния PUT endpoint.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Order</strong></th>\n<th><strong>Entity</strong></th>\n<th><strong>Poll tasks</strong></th>\n<th><strong>Acknowledge tasks</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>1</td>\n<td>Menus</td>\n<td>GET /tasks/hype-reports/menus</td>\n<td>PUT /tasks/hype-reports/menus</td>\n</tr>\n<tr>\n<td>2</td>\n<td>Saloons</td>\n<td>GET /tasks/hype-reports/saloons</td>\n<td>PUT /tasks/hype-reports/saloons</td>\n</tr>\n<tr>\n<td>3</td>\n<td>Tables</td>\n<td>GET /tasks/hype-reports/tables</td>\n<td>PUT /tasks/hype-reports/tables</td>\n</tr>\n<tr>\n<td>4</td>\n<td>Users</td>\n<td>GET /tasks/hype-reports/users</td>\n<td>PUT /tasks/hype-reports/users</td>\n</tr>\n</tbody>\n</table>\n</div><p>Process saloons before tables. table.saloonId трябва да сочи към съответния Hype Reports saloon ID, за да може HES да мапне table -&gt; saloon връзката.</p>\n<p><strong>Task Types</strong></p>\n<p><strong>GET</strong></p>\n<ul>\n<li><p>Значение: \"Изпратете собствените си данни към HES.\"</p>\n</li>\n<li><p>response може да е list или [].</p>\n</li>\n<li><p>Ако не искате HR -&gt; HS sync за даден entity type, върнете [].</p>\n</li>\n</ul>\n<p><strong>POST/PUT</strong></p>\n<ul>\n<li><p>Значение: \"Приложете или мапнете source entity.\"</p>\n</li>\n<li><p>response трябва да е single object с вашия existing HR ID.</p>\n</li>\n<li><p>Това създава mapping (HS ID &lt;-&gt; HR ID) и предотвратява дублиране.</p>\n</li>\n</ul>\n<p><strong>Entity Payloads</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Entity</strong></th>\n<th><strong>Fields</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Menu</td>\n<td>id, name, startDate, endDate, isActive, isDefault</td>\n</tr>\n<tr>\n<td>Saloon</td>\n<td>id, name, width, height, order</td>\n</tr>\n<tr>\n<td>Table</td>\n<td>id, name, saloonId, x, y, width, height</td>\n</tr>\n<tr>\n<td>User</td>\n<td>, firstName, middleName, lastName, position, email, phone</td>\n</tr>\n</tbody>\n</table>\n</div><p>Entity IDs могат да са strings или integers. Връщайте стабилен Hype Reports id за всяко entity, което запазвате; report filters и ID mapping в резултатите зависят от него.</p>\n<p><strong>Task Update Request</strong></p>\n<p>Payload format:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>[\n  {\n    \"entity_task_id\": \"\",\n    \"status\": 200,\n    \"response\": {\n      \"id\": \"\",\n      \"name\": \"Table 1\",\n      \"saloonId\": \"\",\n      \"x\": 0,\n      \"y\": 0,\n      \"width\": 100,\n      \"height\": 100\n    }\n  }\n]\n\n</code></pre><p>Notes:</p>\n<ul>\n<li><p>За POST/PUT tasks, response трябва да е single object.</p>\n</li>\n<li><p>За GET tasks, response може да е list или [].</p>\n</li>\n<li><p>response: {} е accepted и advance-ва sync-а, но не създава usable HR-ID mapping. Използвайте го само ако не пазите това entity. Без mapping тези IDs не могат надеждно да се използват като report filters и HES няма как да ги преведе в report results.</p>\n</li>\n</ul>\n<p><strong>Deduplication Rule</strong></p>\n<p>Ако вече имате същия menu, saloon, table или user, върнете вашия existing HR ID в POST/PUT response. HES ще мапне ID-тата вместо да създава дубликати.</p>\n<p><strong>2) Request Reports</strong></p>\n<p>POST /api/v1/integrations/{integration_id}/reports/{report}</p>\n<p>Поддържани reports:</p>\n<ul>\n<li><p>operator-revenue</p>\n</li>\n<li><p>revenue-by-menu</p>\n</li>\n<li><p>orders-summary</p>\n</li>\n</ul>\n<p>Всички reports изискват:</p>\n<ul>\n<li><p>date_from (ISO 8601 datetime или YYYY-MM-DD)</p>\n</li>\n<li><p>date_to (ISO 8601 datetime или YYYY-MM-DD)</p>\n</li>\n</ul>\n<p>date_to трябва да е on/after date_from. Filters и maximum ranges са report-specific:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Report</strong></th>\n<th><strong>Optional filters (HR IDs)</strong></th>\n<th><strong>Maximum range</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>operator-revenue</td>\n<td>user_ids</td>\n<td>31 days</td>\n</tr>\n<tr>\n<td>revenue-by-menu</td>\n<td>menu_ids</td>\n<td>31 days</td>\n</tr>\n<tr>\n<td>orders-summary</td>\n<td>user_ids, saloon_ids, table_ids</td>\n<td>1 day</td>\n</tr>\n</tbody>\n</table>\n</div><p>Всички filter IDs трябва да са Hype Reports IDs, установени чрез sync tasks. HES ги превежда към Hype Server IDs преди worker-ът да генерира report-а. Unmapped IDs се пропускат; ако няма останали mapped IDs, worker-ът получава empty array и не прилага filter за този entity type.</p>\n<p>Example (operator-revenue):</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n  \"date_from\": \"2025-01-01T00:00:00.000Z\",\n  \"date_to\": \"2025-01-31T23:59:59.000Z\",\n  \"user_ids\": [\"hr-user-1\", \"hr-user-2\"]\n}\n\n</code></pre><p>Example (orders-summary):</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n  \"date_from\": \"2026-07-08T00:00:00.000Z\",\n  \"date_to\": \"2026-07-08T23:59:59.000Z\",\n  \"user_ids\": [\"hr-user-7\"],\n  \"saloon_ids\": [\"hr-saloon-10\"],\n  \"table_ids\": [\"hr-table-20\"]\n}\n\n</code></pre><p>При success, HES връща 202:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n  \"jobId\": \"\",\n  \"pollUrl\": \"https://hes.test/api/v1/report-data/\",\n  \"message\": \"Report request accepted and queued for processing\"\n}\n\n</code></pre><p><strong>3) Poll Report Status</strong></p>\n<p>GET /api/v1/report-data/{jobId}</p>\n<p>Report status values:</p>\n<ul>\n<li><p>PENDING: заявката е приета, но worker още не я е взел</p>\n</li>\n<li><p>PROCESSING: worker е взел задачата и я изпълнява</p>\n</li>\n<li><p>POST_PROCESSING_PENDING: в опашка за post-processing (ID mapping, formatting)</p>\n</li>\n<li><p>POST_PROCESSING: post-processing се изпълнява</p>\n</li>\n<li><p>COMPLETED: завършено успешно; data е налична</p>\n</li>\n<li><p>FAILED: worker е върнал error; error е наличен</p>\n</li>\n<li><p>CANCELLED: report е прекратен</p>\n</li>\n</ul>\n<p>Pending response:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n  \"jobId\": \"\",\n  \"status\": \"PENDING\",\n  \"data\": null\n}\n\n</code></pre><p>Completed response за operator-revenue / revenue-by-menu връща object data, обикновено с results.</p>\n<p>За orders-summary, data е root array с един entry за всеки closed account:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n  \"jobId\": \"\",\n  \"status\": \"COMPLETED\",\n  \"data\": [\n    {\n      \"saloonId\": \"hr-saloon-10\",\n      \"saloonName\": \"Main hall\",\n      \"tableId\": \"hr-table-20\",\n      \"tableName\": \"Table 1\",\n      \"accountTotal\": 123.45,\n      \"items\": [\n        { \"name\": \"Coffee\", \"quantity\": 2, \"salePrice\": 9.5 }\n      ],\n      \"operatorId\": \"hr-user-7\",\n      \"operatorName\": \"Mila Ivanova\",\n      \"accountClosedAt\": \"2026-07-08T12:30:00.000Z\"\n    }\n  ],\n  \"completed_at\": \"2026-07-08T12:31:00.000Z\"\n}\n\n</code></pre><p>Optional fields могат да са null или omitted. За accounts на virtual table, saloon/table fields могат да са null или omitted.</p>\n<p><strong>ID Mapping in Report Results</strong></p>\n<p>HES мапва IDs в report results обратно към Hype Reports IDs:</p>\n<ul>\n<li><p>operator-revenue: operatorId</p>\n</li>\n<li><p>revenue-by-menu: menuId</p>\n</li>\n<li><p>orders-summary: operatorId, saloonId, tableId</p>\n</li>\n</ul>\n<p>Ако mapping липсва, ID-то остава във worker/Hype Server стойността.</p>\n<p><strong>Common Errors</strong></p>\n<p><strong>422 Validation error</strong></p>\n<ul>\n<li><p>Invalid date или date_to преди date_from.</p>\n</li>\n<li><p>Range над 31 days за operator-revenue / revenue-by-menu.</p>\n</li>\n<li><p>Range над 1 day за orders-summary.</p>\n</li>\n<li><p>Response включва field-level errors.</p>\n</li>\n</ul>\n<p><strong>403 Unauthorized</strong></p>\n<ul>\n<li>Token-ът не принадлежи към integration-а.</li>\n</ul>\n<p><strong>404 Report not found</strong></p>\n<ul>\n<li>Report slug не е operator-revenue, revenue-by-menu или orders-summary.</li>\n</ul>\n","_postman_id":"c330fe09-2620-4b12-a7c9-bb05debcd432","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":true,"source":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","type":"collection"}}},{"name":"Integration","item":[{"name":"Get All Integrations","id":"98375c2d-f521-43b2-b740-17cc3466c75a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/api/hype-custom/integrations","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":true,"source":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","type":"collection"}},"urlObject":{"path":["api","hype-custom","integrations"],"host":["{{baseUrl}}"],"query":[],"variable":[]}},"response":[{"id":"141719e9-ccc6-49b1-a7c1-c3bb9332d8a9","name":"Get All Integrations","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/api/hype-custom/integrations"},"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"[\n  {\n    \"id\": \"9b57a2e7-48e3-4173-9bcd-11a831a6f111\",\n    \"status\": \"syncing\"\n  }\n]"}],"_postman_id":"98375c2d-f521-43b2-b740-17cc3466c75a"},{"name":"Get Integration Details","id":"47ec9f94-d586-4da1-a471-ce80f49f3a2e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/api/hype-custom/integrations/:integrationId","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":true,"source":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","type":"collection"}},"urlObject":{"path":["api","hype-custom","integrations",":integrationId"],"host":["{{baseUrl}}"],"query":[],"variable":[{"type":"any","value":"","key":"integrationId"}]}},"response":[{"id":"1c5b1f4e-62fc-432f-a802-5f1878764e84","name":"Get Integration Details","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":{"raw":"{{baseUrl}}/api/hype-custom/integrations/:integrationId","host":["{{baseUrl}}"],"path":["api","hype-custom","integrations",":integrationId"],"variable":[{"key":"integrationId","value":""}]}},"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"{\n  \"id\": \"9b57a2e7-48e3-4173-9bcd-11a831a6f111\",\n  \"status\": \"syncing\",\n  \"accountOne\": {\n    \"id\": \"9a583928-13d9-4a0f-bb7f-c02b847a927c\",\n    \"name\": \"demo.hype-software.com\",\n    \"status\": \"active\",\n    \"api_token\": \"9a583928-0e98-418a-940c-6650faf12163\",\n    \"foreign_account_id\": \"157\",\n    \"client_id\": 157,\n    \"settings\": [],\n    \"platform\": {\n      \"id\": \"4d410b0e-ee37-497e-8362-478a383d68ee\",\n      \"name\": \"Hype Server\",\n      \"key\": \"hype-server\",\n      \"prefix\": \"HS\"\n    }\n  },\n  \"pipeline\": {\n    \"id\": \"9b57a2e7-dd9b-428f-be5a-3173b77aebad\",\n    \"status\": \"processing\",\n    \"progress\": {\n      \"step\": 6,\n      \"from\": 8,\n      \"task_id\": \"9b57a3a2-6cf6-4c06-9037-cea260069b6f\"\n    },\n    \"message\": null\n  }\n}"}],"_postman_id":"47ec9f94-d586-4da1-a471-ce80f49f3a2e"}],"id":"dca2887e-5538-4a1d-921b-a1e0f2d5b664","_postman_id":"dca2887e-5538-4a1d-921b-a1e0f2d5b664","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":true,"source":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","type":"collection"}}},{"name":"Queue","item":[{"name":"Get Queue Jobs","id":"2e0b2094-530a-436c-b9d3-d5cce29e70be","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/api/hype-custom/integrations/:integrationId/queue-jobs","description":"<p>Това е API, което връща всички \"задания\" (jobs), които са в опашката за дадена интеграция.</p>\n<p>Това реално не са задачите който се получават при рекуест към <code>/tasks/hype-custom/[Entity]</code>,<br />а така нареченото \"задание\" (job), за създаването на тези задача. Има<br />различни ситуации в коите тези \"задания\" могат да доведат до грешка и<br />невъзможност да се създаде задача за синхронизация, но основната е<br />когато по някаква причина някой от свързанието елементи на<br />OrderRequest-a, примерно даден артикул, все още не е синхронизиран между<br />двата акаунта от една интеграция. В такъв случай, това което HES прави е<br />да \"паузира\" дадената опашка. При което изчаква липсващия елемент на<br />OrderRequest-а да се синхронизира межди двете платформи и след това<br />успешно да създаде задача за синхронизиране и на този OrderRequest, към<br />съответната платформа получател.</p>\n<p>Върнатия резултат от това API представлява масив от обекти представени чрез следните параметри:</p>\n<p><strong>id</strong> - Това е уникалния идентификатор на задачата в опашката.</p>\n<p><strong>request_method</strong> - това е метода на рекуеста който е използван от акаунта изпращач</p>\n<p><strong>entity</strong> - това поле указва името на ендтитито върху което тази задаче се изпълнява</p>\n<p><strong>payload</strong> - това е обекта носещ информация какви данни се подават от платформата за синхронизация</p>\n<p><strong>source</strong> - това е платформата източник на тази задача</p>\n<p><strong>staus</strong> - този параметър показва дали тази задача предстои да бъде обработена или е <em>failed</em>. Възможните стойности са <code>failed</code>, <code>pending</code></p>\n<p><strong>error_msg</strong> - това поле указва какъв е контекста на грешката по време на обработване на тази задача, ако статуса на задачата е failed</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{\n        \"id\": \"1f6cc4e9-222f-4ee1-95fd-517e9b28dde8\",\n        \"entity\": \"CategoryEntity\",\n        \"request_method\": \"PUT\",\n        \"payload\": {\n            \"id\": 53,\n            \"name\": \"TEST 4\",\n            \"color\": \"#674AEF\",\n            \"order\": 9007199254740991,\n            \"createdAt\": \"2024-04-15T12:15:37.013Z\",\n            \"updatedAt\": \"2024-04-15T12:15:57.000Z\",\n            \"mainCategoryId\": null\n        },\n        \"source\": {\n            \"id\": \"9a583928-13d9-4a0f-bb7f-c02b847a927c\",\n            \"name\": \"hype-fe.stage.scalewest.com\"\n        },\n        \"status\": \"failed\",\n        \"error_msg\": \"The entity with name TEST 4, which the platform is attempting to update, has not yet been fully synchronized between the two platforms.\"\n    }\n\n</code></pre><p>В примера, това е \"задание\" за създаване на задача за синхронизация на ентитито Category. Заданието идва от акауна <code>hype-fe.stage.scalewest.com</code><br />и представлява ъпдейт на категория. Но в дадения пример, системата не<br />може да създаде задача, защото има друга вече създадена задача в <code>/tasks/hype-custom/categories</code><br />, която е за създаване на самия запис в платформата получател (initial<br />POST request for category sync), т.е. преди да може HES да създаде<br />задача за ъпдейт, трябва да обработим задачата за създаване на този<br />запис</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":true,"source":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","type":"collection"}},"urlObject":{"path":["api","hype-custom","integrations",":integrationId","queue-jobs"],"host":["{{baseUrl}}"],"query":[],"variable":[{"type":"any","value":"","key":"integrationId"}]}},"response":[{"id":"57af0b47-6490-4c34-841d-e990052a37de","name":"Get Queue Jobs","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":{"raw":"{{baseUrl}}/api/hype-custom/integrations/:integration_id/queue-jobs","host":["{{baseUrl}}"],"path":["api","hype-custom","integrations",":integration_id","queue-jobs"],"variable":[{"key":"integration_id","value":"","description":"The ID of the integration."}]}},"status":"Forbidden","code":403,"_postman_previewlanguage":"Text","header":[],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"[\n  {\n    \"id\": \"1f6cc4e9-222f-4ee1-95fd-517e9b28dde8\",\n    \"entity\": \"CategoryEntity\",\n    \"request_method\": \"POST\",\n    \"payload\": {\n      \"id\": 53,\n      \"name\": \"TEST 4\",\n      \"color\": \"#674AEF\",\n      \"order\": 9007199254740991,\n      \"createdAt\": \"2024-04-15T12:15:37.013Z\",\n      \"updatedAt\": \"2024-04-15T12:15:57.000Z\",\n      \"mainCategoryId\": null\n    },\n    \"source\": {\n      \"id\": \"9a583928-13d9-4a0f-bb7f-c02b847a927c\",\n      \"name\": \"demo.hype-software.com\"\n    },\n    \"status\": \"failed\",\n    \"error_msg\": \"The entity with name TEST 4, which the platform is attempting to update, has not yet been fully synchronized between the two platforms.\"\n  },\n  {\n    \"id\": \"e333eb4b-3d15-4b51-805f-0f95b7c9791f\",\n    \"entity\": \"CategoryEntity\",\n    \"request_method\": \"POST\",\n    \"payload\": {\n      \"id\": 54,\n      \"name\": \"Специална бира\",\n      \"color\": \"#E5E5E7\",\n      \"order\": 9007199254740991,\n      \"createdAt\": \"2024-04-18T11:49:05.955Z\",\n      \"updatedAt\": \"2024-04-18T11:49:05.955Z\",\n      \"mainCategoryId\": null\n    },\n    \"source\": {\n      \"id\": \"9a583928-13d9-4a0f-bb7f-c02b847a927c\",\n      \"name\": \"demo.hype-software.com\"\n    },\n    \"status\": \"pending\",\n    \"error_msg\": null\n  },\n  {\n    \"id\": \"ebb32f39-0c13-4d2a-9ded-fd72358367b7\",\n    \"entity\": \"CategoryEntity\",\n    \"request_method\": \"POST\",\n    \"payload\": {\n      \"id\": 55,\n      \"name\": \"Много специална бира\",\n      \"color\": \"#E5E5E7\",\n      \"order\": 9007199254740991,\n      \"createdAt\": \"2024-04-18T13:38:47.546Z\",\n      \"updatedAt\": \"2024-04-18T13:38:47.546Z\",\n      \"mainCategoryId\": null\n    },\n    \"source\": {\n      \"id\": \"9a583928-13d9-4a0f-bb7f-c02b847a927c\",\n      \"name\": \"hype-fe.stage.scalewest.com\"\n    },\n    \"status\": \"pending\",\n    \"error_msg\": null\n  },\n  {\n    \"id\": \"7e228673-30ef-4ad2-8920-75120488f8ab\",\n    \"entity\": \"CategoryEntity\",\n    \"request_method\": \"POST\",\n    \"payload\": {\n      \"id\": 56,\n      \"name\": \"Специално червено вино\",\n      \"color\": \"#674AEF\",\n      \"order\": 9007199254740991,\n      \"createdAt\": \"2024-04-19T07:44:58.162Z\",\n      \"updatedAt\": \"2024-04-26T11:39:12.000Z\",\n      \"mainCategoryId\": 4\n    },\n    \"source\": {\n      \"id\": \"9a583928-13d9-4a0f-bb7f-c02b847a927c\",\n      \"name\": \"hype-fe.stage.scalewest.com\"\n    },\n    \"status\": \"pending\",\n    \"error_msg\": null\n  },\n  {\n    \"id\": \"5de7fd5e-9fb0-4e19-9c01-8763a90094a3\",\n    \"entity\": \"OrderRequestStatusEntity\",\n    \"request_method\": \"POST\",\n    \"payload\": {\n      \"id\": 1,\n      \"translationKey\": \"NEW\",\n      \"src_status\": {}\n    },\n    \"source\": {\n      \"id\": \"9a583928-13d9-4a0f-bb7f-c02b847a927c\",\n      \"name\": \"hype-fe.stage.scalewest.com\"\n    },\n    \"status\": \"pending\",\n    \"error_msg\": null\n  }\n]"}],"_postman_id":"2e0b2094-530a-436c-b9d3-d5cce29e70be"},{"name":"Delete Queue Job(s)","id":"a522d324-645d-47eb-aa3a-0cc54a26cd5d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"url":"{{baseUrl}}/api/hype-custom/integrations/:integrationId/queue-jobs/:jobId","description":"<p><strong>integraionId</strong><br />е задължителен параметър с който се указва за коя от интеграциите,<br />управлявани с този API ключ желаете да изтриете задачи от опашката</p>\n<p><strong>jobId</strong><br />е опционален (незадължителен) параметър. Когато сте дефинирали този<br />параметър системата ще се опита да изтрие точно това специфично задание.</p>\n<h4 id=\"ако-параметъра-jobid-не-се-подаде-то-всички-задания-в-тази-опашка-ще-бъдат-изтрити\"><em>Ако параметъра</em> <em><strong>jobId</strong></em> <em>не се подаде, то всички задания в тази опашка ще бъдат изтрити.</em></h4>\n","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":true,"source":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","type":"collection"}},"urlObject":{"path":["api","hype-custom","integrations",":integrationId","queue-jobs",":jobId"],"host":["{{baseUrl}}"],"query":[],"variable":[{"type":"any","value":"","key":"integrationId"},{"type":"any","value":"","key":"jobId"}]}},"response":[],"_postman_id":"a522d324-645d-47eb-aa3a-0cc54a26cd5d"}],"id":"8f01dbd6-6ec1-4d21-ab27-d8ea7ecf98d6","_postman_id":"8f01dbd6-6ec1-4d21-ab27-d8ea7ecf98d6","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":true,"source":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","type":"collection"}}}],"id":"77b93ffe-ee4c-4626-b4a8-4bb02c6cfe70","_postman_id":"77b93ffe-ee4c-4626-b4a8-4bb02c6cfe70","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":true,"source":{"_postman_id":"da6de878-cec6-4fec-bccb-436a356bf225","id":"da6de878-cec6-4fec-bccb-436a356bf225","name":"Hype Exchange Service - API","type":"collection"}}}],"auth":{"type":"bearer","bearer":{"basicConfig":[]}},"event":[{"listen":"prerequest","script":{"id":"82242c2c-0196-4ef1-908b-c6ea431d7c5e","type":"text/javascript","packages":{},"requests":{},"exec":[""]}},{"listen":"test","script":{"id":"17f03785-ba16-43d3-b926-e55a53e1d8ab","type":"text/javascript","packages":{},"requests":{},"exec":[""]}}]}