{"info":{"_postman_id":"b3347f31-66dd-4425-91e1-0c1cad3ace4c","name":"Loya CC API v1","description":"<html><head></head><body><p>Loya CC API grouped by frontend application.</p>\n<p>All apps share the same API. Default <code>baseUrl</code>: <code>https://api.loya.cc/api/v1</code>\nLocal Herd: <code>https://loya-cc-new2.test/api/v1</code></p>\n<h2 id=\"stats\">Stats</h2>\n<p><strong>Total requests:</strong> 343\n<strong>Methods:</strong> GET 145 · POST 83 · PATCH 52 · PUT 20 · DELETE 43\n<strong>Admin library resources:</strong> 15\n<strong>Admin lookup endpoints:</strong> 21</p>\n<h3 id=\"by-application\">By application</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Application</th>\n<th>Requests</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Admin Panel (@admin-panel)</td>\n<td>275</td>\n</tr>\n<tr>\n<td>Customer Mobile Application (@user-panel)</td>\n<td>56</td>\n</tr>\n<tr>\n<td>Validator Application (@validator-partner-for-worker)</td>\n<td>12</td>\n</tr>\n</tbody>\n</table>\n</div><div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>App</th>\n<th>Folder</th>\n<th>Port</th>\n<th>Auth guard</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>admin-panel</td>\n<td>Admin Panel (@admin-panel)</td>\n<td>3001</td>\n<td>admin</td>\n</tr>\n<tr>\n<td>user-panel</td>\n<td>Customer Mobile Application (@user-panel)</td>\n<td>3002</td>\n<td>customer · partner</td>\n</tr>\n<tr>\n<td>validator-partner-for-worker</td>\n<td>Validator Application (@validator-partner-for-worker)</td>\n<td>3004</td>\n<td>employee</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Tip:</strong> Run the <strong>Login</strong> request inside each app folder first — tokens are saved automatically.</p>\n<h2 id=\"regenerate-this-file\">Regenerate this file</h2>\n<p>From <code>loya-backend-laravel</code>: <code>composer postman</code> or <code>php scripts/generate-postman-collection.php</code>\nOpenAPI YAML: <code>composer openapi</code> → <code>openapi/openapi.yml</code> (also copied to <code>fern/openapi/</code>).\nThen re-import <code>postman/Loya-CC-API.postman_collection.json</code> in Postman (Replace existing collection).</p>\n<h2 id=\"collection-variables-no-api-key-needed\">Collection variables (no API key needed)</h2>\n<p>Edit <strong>Variables</strong> on the collection:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Variable</th>\n<th>Purpose</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>baseUrl</code></td>\n<td>API root, e.g. <code>https://api.loya.cc/api/v1</code> or local Herd URL</td>\n</tr>\n<tr>\n<td><code>locale</code></td>\n<td>Response language: <code>en</code>, <code>az</code>, <code>ru</code></td>\n</tr>\n<tr>\n<td><code>adminToken</code></td>\n<td>JWT from admin panel login (auto-saved)</td>\n</tr>\n<tr>\n<td><code>ownerToken</code></td>\n<td>JWT from owner login (auto-saved)</td>\n</tr>\n<tr>\n<td><code>customerToken</code></td>\n<td>JWT from customer login/register (auto-saved)</td>\n</tr>\n<tr>\n<td><code>userToken</code></td>\n<td>Same as customer/partner token for <code>/auth/me</code></td>\n</tr>\n<tr>\n<td><code>partnerToken</code></td>\n<td>JWT when unified login returns <code>role: partner</code></td>\n</tr>\n<tr>\n<td><code>employeeToken</code></td>\n<td>JWT for validator app</td>\n</tr>\n<tr>\n<td><code>branchesId</code></td>\n<td>Branch ID for detail/favorites (auto-set from list)</td>\n</tr>\n<tr>\n<td><code>promoId</code></td>\n<td>Promo to activate</td>\n</tr>\n<tr>\n<td><code>activationId</code></td>\n<td>Promo activation QR flow</td>\n</tr>\n<tr>\n<td><code>customPageSlug</code></td>\n<td>CMS page slug (<code>about</code>, <code>privacy</code>, …)</td>\n</tr>\n<tr>\n<td><code>loyaltyCheckInId</code></td>\n<td>Loyalty check-in QR flow</td>\n</tr>\n<tr>\n<td><code>loyaltyRedemptionId</code></td>\n<td>Loyalty reward redemption QR flow</td>\n</tr>\n<tr>\n<td><code>serviceId</code></td>\n<td>Branch service unit ID</td>\n</tr>\n<tr>\n<td><code>app-settingsId</code></td>\n<td>Admin app setting record ID</td>\n</tr>\n</tbody>\n</table>\n</div><p>Login requests auto-save <code>access_token</code>. List endpoints auto-save the first <code>id</code> where noted.</p>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[],"owner":"56130800","collectionId":"b3347f31-66dd-4425-91e1-0c1cad3ace4c","publishedId":"2sBYAuSrN8","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"},"publishDate":"2026-08-30T20:46:26.000Z"},"item":[{"name":"Admin Panel (@admin-panel)","item":[{"name":"Auth","item":[{"name":"2FA","item":[{"name":"Status","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"1777fea9-0d5a-4597-912b-607471701f77"}}],"id":"19af96a8-453b-49b6-bb2a-e8cbe5669fed","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/auth/admin/2fa/status","urlObject":{"path":["auth","admin","2fa","status"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"de97c284-4b15-47db-b5ee-369643f88631","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/auth/admin/2fa/status"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"enabled\": false,\n    \"confirmed\": false\n}"}],"_postman_id":"19af96a8-453b-49b6-bb2a-e8cbe5669fed"},{"name":"Setup","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"31e52bec-5a01-40d0-84dc-02e51b23c09f"}}],"id":"718eb7e9-c240-4065-9951-b6a979079228","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/auth/admin/2fa/setup","description":"<h2 id=\"summary\">Summary</h2>\n<p>Returns secret, backup codes, and QR. Confirm with a TOTP code next.</p>\n","urlObject":{"path":["auth","admin","2fa","setup"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"9c596749-5a9c-4ca9-9ae7-fbe1b7d25192","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/auth/admin/2fa/setup"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"secret\": \"JBSWY3DPEHPK3PXP\",\n    \"otpauth_url\": \"otpauth://totp/Loya:admin@loya.cc?secret=JBSWY3DPEHPK3PXP\",\n    \"backup_codes\": [\n        \"12345678\",\n        \"87654321\"\n    ]\n}"}],"_postman_id":"718eb7e9-c240-4065-9951-b6a979079228"},{"name":"Confirm setup","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if ([200, 201].includes(pm.response.code)) {","  const json = pm.response.json();","  if (json.access_token) pm.collectionVariables.set('adminToken', json.access_token);","}","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"b75f28b0-b63a-4b50-91da-21368cca6e47"}}],"id":"1f7c7f62-1886-4019-860f-0e860f41691e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"code\": \"123456\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/auth/admin/2fa/confirm","urlObject":{"path":["auth","admin","2fa","confirm"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"aaf72996-12ba-4fa3-bbb5-03a982fa921e","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/auth/admin/2fa/confirm"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"token_type\": \"Bearer\",\n    \"access_token\": \"\",\n    \"role\": \"admin\",\n    \"user\": {\n        \"id\": 1,\n        \"name\": \"Loya Admin\",\n        \"email\": \"admin@loya.cc\",\n        \"type\": \"super_admin\",\n        \"isActive\": true\n    },\n    \"requires_2fa_setup\": true\n}"}],"_postman_id":"1f7c7f62-1886-4019-860f-0e860f41691e"},{"name":"Verify","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if ([200, 201].includes(pm.response.code)) {","  const json = pm.response.json();","  if (json.access_token) pm.collectionVariables.set('adminToken', json.access_token);","}","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"1aae5bb5-bf72-4bf4-a015-e838ceaad920"}}],"id":"bce88c3a-a45b-4816-aea2-2ba26b744304","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"code\": \"123456\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/auth/admin/2fa/verify","description":"<h2 id=\"summary\">Summary</h2>\n<p>Exchange password JWT for a full token with <code>2fa_ok</code> claim.</p>\n","urlObject":{"path":["auth","admin","2fa","verify"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"6e74957b-e998-42e6-a47c-7b26cffe5bd6","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/auth/admin/2fa/verify"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"token_type\": \"Bearer\",\n    \"access_token\": \"\",\n    \"role\": \"admin\",\n    \"user\": {\n        \"id\": 1,\n        \"name\": \"Loya Admin\",\n        \"email\": \"admin@loya.cc\",\n        \"type\": \"super_admin\",\n        \"isActive\": true\n    },\n    \"requires_2fa_setup\": true\n}"}],"_postman_id":"bce88c3a-a45b-4816-aea2-2ba26b744304"}],"id":"c4b9b9e1-3cb1-44ee-8b69-cc47abe98ad9","description":"<p>Admin TOTP two-factor. Requires Bearer <code></code> from login (password step).</p>\n","_postman_id":"c4b9b9e1-3cb1-44ee-8b69-cc47abe98ad9"},{"name":"Panel login","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if ([200, 201].includes(pm.response.code)) {","  const json = pm.response.json();","  if (json.access_token) pm.collectionVariables.set('adminToken', json.access_token);","}","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"04e33c73-c382-4b70-9788-42571aa385a3"}}],"id":"bb20d737-6835-4109-8a90-aadc6dcf217e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"email\": \"admin@loya.cc\",\n    \"password\": \"password\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/auth/panel/login","description":"<h2 id=\"summary\">Summary</h2>\n<p>Admin/owner panel login. Prefer this over <code>/auth/admin/login</code> when 2FA may be enabled.</p>\n<h2 id=\"2fa\">2FA</h2>\n<p>If 2FA is enabled, response may return a pending token / <code>requires_2fa</code>; complete <strong>2FA → Verify</strong> before calling protected routes.</p>\n","urlObject":{"path":["auth","panel","login"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"9d7884cf-d1fc-4077-8481-cc2956fcce64","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/auth/panel/login"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"token_type\": \"Bearer\",\n    \"access_token\": \"\",\n    \"role\": \"admin\",\n    \"user\": {\n        \"id\": 1,\n        \"name\": \"Loya Admin\",\n        \"email\": \"admin@loya.cc\",\n        \"type\": \"super_admin\",\n        \"isActive\": true\n    },\n    \"requires_2fa_setup\": true\n}"}],"_postman_id":"bb20d737-6835-4109-8a90-aadc6dcf217e"},{"name":"Login (admin guard)","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if ([200, 201].includes(pm.response.code)) {","  const json = pm.response.json();","  if (json.access_token) pm.collectionVariables.set('adminToken', json.access_token);","}","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"2f9b22da-fdcd-49ea-b66f-61612f248e1c"}}],"id":"f76f1cc2-f686-41f7-95d3-7af6df768c58","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"email\": \"admin@loya.cc\",\n    \"password\": \"password\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/auth/admin/login","urlObject":{"path":["auth","admin","login"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"5c7b13eb-5f2c-43ed-9550-768241d2822a","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/auth/admin/login"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"token_type\": \"Bearer\",\n    \"access_token\": \"\",\n    \"role\": \"admin\",\n    \"user\": {\n        \"id\": 1,\n        \"name\": \"Loya Admin\",\n        \"email\": \"admin@loya.cc\",\n        \"type\": \"super_admin\",\n        \"isActive\": true\n    },\n    \"requires_2fa_setup\": true\n}"}],"_postman_id":"f76f1cc2-f686-41f7-95d3-7af6df768c58"},{"name":"Me","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"b970cf8f-07c8-4a3d-bd29-d87f6f729660"}}],"id":"17acf765-9cdd-4450-90ff-2174b65156d4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/auth/admin/me","urlObject":{"path":["auth","admin","me"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"f6fc7858-24b8-43e8-bf90-38a893ce92b5","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/auth/admin/me"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"user\": {\n        \"id\": 1,\n        \"name\": \"Loya Admin\",\n        \"email\": \"admin@loya.cc\",\n        \"type\": \"super_admin\",\n        \"isActive\": true\n    }\n}"}],"_postman_id":"17acf765-9cdd-4450-90ff-2174b65156d4"},{"name":"Logout","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"238e0636-8ffe-4b56-9966-e83aabaf8bd3"}}],"id":"88b1a306-11df-45d7-9a97-12d9a5865224","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/auth/admin/logout","urlObject":{"path":["auth","admin","logout"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"cb2d7034-bf16-4a3a-8296-62f6afb1330a","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/auth/admin/logout"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Logged out.\"\n}"}],"_postman_id":"88b1a306-11df-45d7-9a97-12d9a5865224"},{"name":"Owner login","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if ([200, 201].includes(pm.response.code)) {","  const json = pm.response.json();","  if (json.access_token) pm.collectionVariables.set('ownerToken', json.access_token);","}","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"dfe2fe78-4e92-45e1-8c3b-40f60d012140"}}],"id":"819b4fea-6b98-4a58-b3ac-724de17e6a60","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"email\": \"owner@example.az\",\n    \"password\": \"password\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/auth/owner/login","description":"<h2 id=\"summary\">Summary</h2>\n<p>Owner JWT for partner-scoped admin + <code>/partner/*</code> staff routes.</p>\n","urlObject":{"path":["auth","owner","login"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"6dcf818d-e321-4489-bb47-ee3a47a04cea","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/auth/owner/login"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"token_type\": \"Bearer\",\n    \"access_token\": \"\",\n    \"role\": \"owner\",\n    \"user\": {\n        \"id\": 1,\n        \"name\": \"Partner Owner\",\n        \"email\": \"owner@example.az\",\n        \"phone\": \"+994501234567\",\n        \"isActive\": true\n    }\n}"}],"_postman_id":"819b4fea-6b98-4a58-b3ac-724de17e6a60"},{"name":"Owner me","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"bf70a7f4-2aa5-47b2-a77a-12cd2b3320e3"}}],"id":"afe73b69-8696-4b41-8d99-d4763d12bebf","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/auth/owner/me","urlObject":{"path":["auth","owner","me"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"c5038db1-0448-4928-80b6-55eb155a0dc1","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/auth/owner/me"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"user\": {\n        \"id\": 1,\n        \"name\": \"Partner Owner\",\n        \"email\": \"owner@example.az\",\n        \"phone\": \"+994501234567\",\n        \"isActive\": true\n    }\n}"}],"_postman_id":"afe73b69-8696-4b41-8d99-d4763d12bebf"},{"name":"Owner logout","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"c48e3749-d514-4ede-baa7-a9e44e43d0e9"}}],"id":"2a68e61c-1d10-4a0b-a252-0a8dccd4c72c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/auth/owner/logout","urlObject":{"path":["auth","owner","logout"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"dbc63138-5546-42ff-b183-e34532828a1f","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/auth/owner/logout"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Logged out.\"\n}"}],"_postman_id":"2a68e61c-1d10-4a0b-a252-0a8dccd4c72c"}],"id":"c2b1c720-f53b-40e5-b9ff-7faf4100a962","_postman_id":"c2b1c720-f53b-40e5-b9ff-7faf4100a962","description":""},{"name":"Lookups","item":[{"name":"Partners","id":"5a9d88c1-f92b-4753-a6b0-7f7bc81ba207","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer "},{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/lookups/partners?search=&limit=100","urlObject":{"path":["lookups","partners"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}],"variable":[]}},"response":[{"id":"e8df5164-a817-48db-b778-dfc4008f0667","name":"OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.loya.cc/api/v1/lookups/partners?search=&limit=100","host":["https://api.loya.cc/api/v1"],"path":["lookups","partners"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"label\": \"Example\"\n        }\n    ]\n}"}],"_postman_id":"5a9d88c1-f92b-4753-a6b0-7f7bc81ba207"},{"name":"Branches","id":"87887b5e-de8f-4650-97c9-034301514267","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer "},{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/lookups/branches?search=&limit=100","urlObject":{"path":["lookups","branches"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}],"variable":[]}},"response":[{"id":"c019838e-995f-4141-932b-20ec8cf1e380","name":"OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.loya.cc/api/v1/lookups/branches?search=&limit=100","host":["https://api.loya.cc/api/v1"],"path":["lookups","branches"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"label\": \"Example\"\n        }\n    ]\n}"}],"_postman_id":"87887b5e-de8f-4650-97c9-034301514267"},{"name":"Categories","id":"042f73db-f900-4775-beac-fe89af282bee","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer "},{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/lookups/categories?search=&limit=100","urlObject":{"path":["lookups","categories"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}],"variable":[]}},"response":[{"id":"7a585a37-6013-43af-b468-e0baa649c951","name":"OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.loya.cc/api/v1/lookups/categories?search=&limit=100","host":["https://api.loya.cc/api/v1"],"path":["lookups","categories"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"label\": \"Example\"\n        }\n    ]\n}"}],"_postman_id":"042f73db-f900-4775-beac-fe89af282bee"},{"name":"Subcategories","id":"ae5c04a6-0dfe-4b4a-87a1-cf64644eaa6c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer "},{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/lookups/subcategories?search=&limit=100","urlObject":{"path":["lookups","subcategories"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}],"variable":[]}},"response":[{"id":"a224429d-92ae-42e2-8ee4-17bca39771e7","name":"OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.loya.cc/api/v1/lookups/subcategories?search=&limit=100","host":["https://api.loya.cc/api/v1"],"path":["lookups","subcategories"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"label\": \"Example\"\n        }\n    ]\n}"}],"_postman_id":"ae5c04a6-0dfe-4b4a-87a1-cf64644eaa6c"},{"name":"Countries","id":"81fa6f1d-b502-427e-afb4-56eb0816dca2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer "},{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/lookups/countries?search=&limit=100","urlObject":{"path":["lookups","countries"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}],"variable":[]}},"response":[{"id":"3b255e67-817a-48d7-aa49-b2215324bbd1","name":"OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.loya.cc/api/v1/lookups/countries?search=&limit=100","host":["https://api.loya.cc/api/v1"],"path":["lookups","countries"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"label\": \"Example\"\n        }\n    ]\n}"}],"_postman_id":"81fa6f1d-b502-427e-afb4-56eb0816dca2"},{"name":"States","id":"c561424f-f96c-4663-9643-e0d8c2deee54","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer "},{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/lookups/states?search=&limit=100","urlObject":{"path":["lookups","states"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}],"variable":[]}},"response":[{"id":"262c95fb-d1f2-4998-9dac-0467a1071caf","name":"OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.loya.cc/api/v1/lookups/states?search=&limit=100","host":["https://api.loya.cc/api/v1"],"path":["lookups","states"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"label\": \"Example\"\n        }\n    ]\n}"}],"_postman_id":"c561424f-f96c-4663-9643-e0d8c2deee54"},{"name":"Cities","id":"7b6b89f8-5754-4a1a-b3a1-766e548b525b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer "},{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/lookups/cities?search=&limit=100","urlObject":{"path":["lookups","cities"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}],"variable":[]}},"response":[{"id":"62715d94-1d08-4d94-8c9e-988c4f0296ea","name":"OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.loya.cc/api/v1/lookups/cities?search=&limit=100","host":["https://api.loya.cc/api/v1"],"path":["lookups","cities"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"label\": \"Example\"\n        }\n    ]\n}"}],"_postman_id":"7b6b89f8-5754-4a1a-b3a1-766e548b525b"},{"name":"Districts","id":"93410daf-a6a4-4c12-8d9c-7cfd377dbaee","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer "},{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/lookups/districts?search=&limit=100","urlObject":{"path":["lookups","districts"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}],"variable":[]}},"response":[{"id":"c5f73d91-e742-4438-a97a-17aba95b4f03","name":"OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.loya.cc/api/v1/lookups/districts?search=&limit=100","host":["https://api.loya.cc/api/v1"],"path":["lookups","districts"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"label\": \"Example\"\n        }\n    ]\n}"}],"_postman_id":"93410daf-a6a4-4c12-8d9c-7cfd377dbaee"},{"name":"Subway Stations","id":"00b0b6ba-2e12-44c6-b00b-cabec01494e0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer "},{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/lookups/subway-stations?search=&limit=100","urlObject":{"path":["lookups","subway-stations"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}],"variable":[]}},"response":[{"id":"ce61fe6d-8ceb-4af9-96d9-5471fd510b1c","name":"OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.loya.cc/api/v1/lookups/subway-stations?search=&limit=100","host":["https://api.loya.cc/api/v1"],"path":["lookups","subway-stations"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"label\": \"Example\"\n        }\n    ]\n}"}],"_postman_id":"00b0b6ba-2e12-44c6-b00b-cabec01494e0"},{"name":"Amenities","id":"c64c1c7a-42c4-4166-9e7e-b7db6c59fd19","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer "},{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/lookups/amenities?search=&limit=100","urlObject":{"path":["lookups","amenities"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}],"variable":[]}},"response":[{"id":"b4aea0b9-e60d-4190-8eab-cb6c01e9c8dd","name":"OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.loya.cc/api/v1/lookups/amenities?search=&limit=100","host":["https://api.loya.cc/api/v1"],"path":["lookups","amenities"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"label\": \"Example\"\n        }\n    ]\n}"}],"_postman_id":"c64c1c7a-42c4-4166-9e7e-b7db6c59fd19"},{"name":"Customers","id":"7c78d426-a497-4ad3-9163-bb1e28f72033","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer "},{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/lookups/customers?search=&limit=100","urlObject":{"path":["lookups","customers"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}],"variable":[]}},"response":[{"id":"0637ce44-ba15-4aae-a586-3f3ef3a2ce72","name":"OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.loya.cc/api/v1/lookups/customers?search=&limit=100","host":["https://api.loya.cc/api/v1"],"path":["lookups","customers"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"label\": \"Example\"\n        }\n    ]\n}"}],"_postman_id":"7c78d426-a497-4ad3-9163-bb1e28f72033"},{"name":"Owners","id":"dc56d2e9-c78c-44e6-8549-063e4b0116f6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer "},{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/lookups/owners?search=&limit=100","urlObject":{"path":["lookups","owners"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}],"variable":[]}},"response":[{"id":"13bb3c76-6bc4-414e-8862-28c84f021744","name":"OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.loya.cc/api/v1/lookups/owners?search=&limit=100","host":["https://api.loya.cc/api/v1"],"path":["lookups","owners"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"label\": \"Example\"\n        }\n    ]\n}"}],"_postman_id":"dc56d2e9-c78c-44e6-8549-063e4b0116f6"},{"name":"Country Entities","id":"a1baaca2-0bdc-409e-8803-37f01caa69b6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer "},{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/lookups/country-entities?search=&limit=100","urlObject":{"path":["lookups","country-entities"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}],"variable":[]}},"response":[{"id":"cddb1322-ed42-4f0a-a1fa-04c68e5d872b","name":"OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.loya.cc/api/v1/lookups/country-entities?search=&limit=100","host":["https://api.loya.cc/api/v1"],"path":["lookups","country-entities"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"label\": \"Example\"\n        }\n    ]\n}"}],"_postman_id":"a1baaca2-0bdc-409e-8803-37f01caa69b6"},{"name":"Employees","id":"b7aba48f-797a-44af-8f22-94bfc330acbd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer "},{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/lookups/employees?search=&limit=100","urlObject":{"path":["lookups","employees"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}],"variable":[]}},"response":[{"id":"dcb29991-e96c-41b3-b841-7272ea94c54e","name":"OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.loya.cc/api/v1/lookups/employees?search=&limit=100","host":["https://api.loya.cc/api/v1"],"path":["lookups","employees"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"label\": \"Example\"\n        }\n    ]\n}"}],"_postman_id":"b7aba48f-797a-44af-8f22-94bfc330acbd"},{"name":"Promo Types","id":"01375eb0-3df5-43d0-a966-f06a7cf369ff","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer "},{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/lookups/promo-types?search=&limit=100","urlObject":{"path":["lookups","promo-types"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}],"variable":[]}},"response":[{"id":"d8856492-627a-443b-8fdc-128a23d800b7","name":"OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.loya.cc/api/v1/lookups/promo-types?search=&limit=100","host":["https://api.loya.cc/api/v1"],"path":["lookups","promo-types"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"label\": \"Example\"\n        }\n    ]\n}"}],"_postman_id":"01375eb0-3df5-43d0-a966-f06a7cf369ff"},{"name":"Promos","id":"fbb41e43-a897-47fe-b56b-c6eb6a3c3c57","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer "},{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/lookups/promos?search=&limit=100","urlObject":{"path":["lookups","promos"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}],"variable":[]}},"response":[{"id":"014d8cd6-6347-446b-aecc-7bcc69664379","name":"OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.loya.cc/api/v1/lookups/promos?search=&limit=100","host":["https://api.loya.cc/api/v1"],"path":["lookups","promos"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"label\": \"Example\"\n        }\n    ]\n}"}],"_postman_id":"fbb41e43-a897-47fe-b56b-c6eb6a3c3c57"},{"name":"Promo Activations","id":"88c9928f-da26-455b-aaa5-9a7b36aa00d3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer "},{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/lookups/promo-activations?search=&limit=100","urlObject":{"path":["lookups","promo-activations"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}],"variable":[]}},"response":[{"id":"bec83b85-c4ed-4473-bba8-cad158a5787d","name":"OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.loya.cc/api/v1/lookups/promo-activations?search=&limit=100","host":["https://api.loya.cc/api/v1"],"path":["lookups","promo-activations"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"label\": \"Example\"\n        }\n    ]\n}"}],"_postman_id":"88c9928f-da26-455b-aaa5-9a7b36aa00d3"},{"name":"Loyalty Cards","id":"cd0f11ac-d8a1-4ccc-8296-f6fd05ec446b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer "},{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/lookups/loyalty-cards?search=&limit=100","urlObject":{"path":["lookups","loyalty-cards"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}],"variable":[]}},"response":[{"id":"e53a9857-a37e-457d-b833-6cddeb19de19","name":"OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.loya.cc/api/v1/lookups/loyalty-cards?search=&limit=100","host":["https://api.loya.cc/api/v1"],"path":["lookups","loyalty-cards"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"label\": \"Example\"\n        }\n    ]\n}"}],"_postman_id":"cd0f11ac-d8a1-4ccc-8296-f6fd05ec446b"},{"name":"Category Filter Groups","id":"72dbe374-352d-43f1-b4c6-040e39b308c9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer "},{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/lookups/category-filter-groups?search=&limit=100","urlObject":{"path":["lookups","category-filter-groups"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}],"variable":[]}},"response":[{"id":"0237c136-dca5-4eb7-a13f-de27f1f8939f","name":"OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.loya.cc/api/v1/lookups/category-filter-groups?search=&limit=100","host":["https://api.loya.cc/api/v1"],"path":["lookups","category-filter-groups"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"label\": \"Example\"\n        }\n    ]\n}"}],"_postman_id":"72dbe374-352d-43f1-b4c6-040e39b308c9"},{"name":"Category Filter Fields","id":"4c20f3a9-2908-4275-b818-2456a4b84738","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer "},{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/lookups/category-filter-fields?search=&limit=100","urlObject":{"path":["lookups","category-filter-fields"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}],"variable":[]}},"response":[{"id":"11058963-b429-459d-b118-125c93b1fe84","name":"OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.loya.cc/api/v1/lookups/category-filter-fields?search=&limit=100","host":["https://api.loya.cc/api/v1"],"path":["lookups","category-filter-fields"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"label\": \"Example\"\n        }\n    ]\n}"}],"_postman_id":"4c20f3a9-2908-4275-b818-2456a4b84738"},{"name":"Category Filter Options","id":"d5dade00-a294-4842-9f31-21e2642b64b8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer "},{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/lookups/category-filter-options?search=&limit=100","urlObject":{"path":["lookups","category-filter-options"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}],"variable":[]}},"response":[{"id":"fcce7f92-8a50-4fe2-8ad4-ba4a9e23e140","name":"OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.loya.cc/api/v1/lookups/category-filter-options?search=&limit=100","host":["https://api.loya.cc/api/v1"],"path":["lookups","category-filter-options"],"query":[{"key":"search","value":""},{"key":"limit","value":"100"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"label\": \"Example\"\n        }\n    ]\n}"}],"_postman_id":"d5dade00-a294-4842-9f31-21e2642b64b8"}],"id":"1aa6a2d2-6916-4c97-a5cc-8832a37868d7","description":"<p>Relation picker endpoints for admin forms.</p>\n","_postman_id":"1aa6a2d2-6916-4c97-a5cc-8832a37868d7"},{"name":"Geocode","item":[{"name":"Reverse geocode","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"f941481d-190b-449b-b69c-9c8e005c7ddd"}}],"id":"3cf2429e-3619-44d4-aa12-f07eb18a4d2b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/geocode/reverse?lat=40.4093&lng=49.8671","description":"<h2 id=\"summary\">Summary</h2>\n<p>Resolve coordinates to a formatted address for branch map picker.</p>\n","urlObject":{"path":["admin","geocode","reverse"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Latitude</p>\n","type":"text/plain"},"key":"lat","value":"40.4093"},{"description":{"content":"<p>Longitude</p>\n","type":"text/plain"},"key":"lng","value":"49.8671"}],"variable":[]}},"response":[{"id":"40354151-86b6-48e7-b26b-3b3ffc6474de","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/geocode/reverse?lat=40.4093&lng=49.8671","host":["https://api.loya.cc/api/v1"],"path":["admin","geocode","reverse"],"query":[{"key":"lat","value":"40.4093","description":"Latitude"},{"key":"lng","value":"49.8671","description":"Longitude"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"formattedAddress\": \"28 May str., Baku, Azerbaijan\",\n        \"lat\": 40.4093,\n        \"lng\": 49.8671\n    }\n}"}],"_postman_id":"3cf2429e-3619-44d4-aa12-f07eb18a4d2b"}],"id":"d462e0d4-c303-4829-bc91-c46e5684250e","_postman_id":"d462e0d4-c303-4829-bc91-c46e5684250e","description":""},{"name":"Partner hierarchy","item":[{"name":"List partners","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('partnersId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"7dd9cfa4-e30b-4b55-965f-65d5d82cb393"}}],"id":"e3dcd55e-5d5f-45a3-bbdb-882fb89f18a8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/partners?page=1&per_page=25&search=","description":"<h2 id=\"summary\">Summary</h2>\n<p>Paginated partners list.</p>\n","urlObject":{"path":["partner-hierarchy","partners"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"page","value":"1"},{"key":"per_page","value":"25"},{"key":"search","value":""}],"variable":[]}},"response":[{"id":"dd7ae1fc-8387-4eef-a198-5bc0032278c3","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/partner-hierarchy/partners?page=1&per_page=25&search=","host":["https://api.loya.cc/api/v1"],"path":["partner-hierarchy","partners"],"query":[{"key":"page","value":"1"},{"key":"per_page","value":"25"},{"key":"search","value":""}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"e3dcd55e-5d5f-45a3-bbdb-882fb89f18a8"},{"name":"Get partner","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"f12f5dee-4d24-48a2-b6a5-33ffd3cd8186"}}],"id":"0085bb3b-7b2b-4921-b6c5-854c63dc1022","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/partners/1","urlObject":{"path":["partner-hierarchy","partners","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"522f8c45-6280-4887-bef4-e730fb434ded","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/partners/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"0085bb3b-7b2b-4921-b6c5-854c63dc1022"},{"name":"Partner country entities","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('country-entitiesId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"4bda5df7-4920-4f9f-89f4-bcea5704481d"}}],"id":"d3df5937-94e7-47c1-970b-615c488e2938","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/partners/1/country-entities","urlObject":{"path":["partner-hierarchy","partners","1","country-entities"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"fd477705-a54d-4f16-adbf-1b8e73af2115","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/partners/1/country-entities"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"d3df5937-94e7-47c1-970b-615c488e2938"},{"name":"Partner unlinked branches","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"526c2ed9-a2fb-445c-9889-05749678eb82"}}],"id":"2d174b84-0f75-453a-9222-cb7d261321a2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/partners/1/unlinked-branches","urlObject":{"path":["partner-hierarchy","partners","1","unlinked-branches"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"e627d850-6bf8-4d3d-a62c-c73ae1d414ef","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/partners/1/unlinked-branches"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"2d174b84-0f75-453a-9222-cb7d261321a2"},{"name":"Partner employees","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"d5c8087b-40bb-4878-81e9-04a4051f4d13"}}],"id":"9c3bc659-f7b8-48a7-ae84-54955b46bd74","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/partners/1/employees","urlObject":{"path":["partner-hierarchy","partners","1","employees"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"a7e0ba2f-8803-4c98-b7a9-7e6f3eff89d0","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/partners/1/employees"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"9c3bc659-f7b8-48a7-ae84-54955b46bd74"},{"name":"Partner customers","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"72edd8cb-a081-418e-a880-593e47e547a2"}}],"id":"fb06165e-469c-46cd-8eb0-420050997032","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/partners/1/customers","urlObject":{"path":["partner-hierarchy","partners","1","customers"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"2b785ac6-c12e-43c2-ada1-e4fde78550a9","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/partners/1/customers"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"fb06165e-469c-46cd-8eb0-420050997032"},{"name":"Partner promos","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"5c886faa-8fc3-4fe3-97d3-7c1bc7c6f760"}}],"id":"be09ef39-a031-476e-92d2-f72f0a023f31","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/partners/1/promos","urlObject":{"path":["partner-hierarchy","partners","1","promos"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"c22dcdb2-816a-4652-aaa6-4f001d0b3bf4","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/partners/1/promos"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"be09ef39-a031-476e-92d2-f72f0a023f31"},{"name":"Partner activity","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"35413808-5e62-4e60-b7cc-577916ac4bdd"}}],"id":"345b880f-11d5-4d8a-a777-378136d9496f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/partners/1/activity?page=1&per_page=25","description":"<h2 id=\"summary\">Summary</h2>\n<p>Paginated partner activity log.</p>\n","urlObject":{"path":["partner-hierarchy","partners","1","activity"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"page","value":"1"},{"key":"per_page","value":"25"}],"variable":[]}},"response":[{"id":"7c9a8ce6-722a-44aa-9a80-55dddf526714","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/partner-hierarchy/partners/1/activity?page=1&per_page=25","host":["https://api.loya.cc/api/v1"],"path":["partner-hierarchy","partners","1","activity"],"query":[{"key":"page","value":"1"},{"key":"per_page","value":"25"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"345b880f-11d5-4d8a-a777-378136d9496f"},{"name":"Partner activity entry","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"6ae3c86e-c5d4-46e6-bbdd-3a3c60180578"}}],"id":"d228dcdf-672f-449b-b8a1-1965f6e649f6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/partners/1/activity/1","urlObject":{"path":["partner-hierarchy","partners","1","activity","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"db09f72f-4c19-42e5-a344-934cccc3f47f","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/partners/1/activity/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"d228dcdf-672f-449b-b8a1-1965f6e649f6"},{"name":"Partner assignment options","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"b08abd74-d52d-4888-9922-b82858156682"}}],"id":"94c71e20-2f45-4386-be8a-d1a4275d38c2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/partners/1/assignment-options","description":"<h2 id=\"summary\">Summary</h2>\n<p>Options for assigning owners / entities to a partner.</p>\n","urlObject":{"path":["partner-hierarchy","partners","1","assignment-options"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"094f6f07-973d-49b7-882e-be5963512340","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/partners/1/assignment-options"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"94c71e20-2f45-4386-be8a-d1a4275d38c2"},{"name":"Get country entity","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"2e1dd45d-0176-4895-834e-272eb72c1328"}}],"id":"b3200934-528c-43f9-aa71-976ea9b75d93","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/country-entities/1","urlObject":{"path":["partner-hierarchy","country-entities","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"f430448d-5b87-447c-a02a-7f81ea99f03b","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/country-entities/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"b3200934-528c-43f9-aa71-976ea9b75d93"},{"name":"Country entity branches","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('branchesId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"8e23c3bd-9853-4318-a537-50067a58c8a9"}}],"id":"0fd7dc55-8a8a-4bea-8ff4-bf6e4c6ea936","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/country-entities/1/branches","urlObject":{"path":["partner-hierarchy","country-entities","1","branches"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"95779dbf-9479-4b21-88f5-741c81a5c8e6","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/country-entities/1/branches"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"0fd7dc55-8a8a-4bea-8ff4-bf6e4c6ea936"},{"name":"Get branch","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"df097b1b-7e02-4baa-9e65-c7c3fdef828f"}}],"id":"6b0f18ee-549a-478c-ba16-79448ec2fed8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/branches/1","urlObject":{"path":["partner-hierarchy","branches","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"39d89497-9f99-4b2b-8397-499a6466adbb","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/branches/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"6b0f18ee-549a-478c-ba16-79448ec2fed8"},{"name":"Branch promos","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"8a839462-c311-41c1-bd99-5b4817c67287"}}],"id":"086e0d2f-2c47-409b-b8c2-47fcfd26f904","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/branches/1/promos","urlObject":{"path":["partner-hierarchy","branches","1","promos"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"8e149fb5-c4f8-4c15-b7ff-9a94c54bb2dd","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/branches/1/promos"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"086e0d2f-2c47-409b-b8c2-47fcfd26f904"},{"name":"Branch loyalty cards","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"bcd1bddb-c602-4e1b-8a0a-e0820a53407c"}}],"id":"b7967c67-3be3-4e04-8c27-2698a99d81ba","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/branches/1/loyalty-cards","urlObject":{"path":["partner-hierarchy","branches","1","loyalty-cards"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"954bffca-7b1e-480f-ae6e-27d32b6c9e61","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner-hierarchy/branches/1/loyalty-cards"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"b7967c67-3be3-4e04-8c27-2698a99d81ba"}],"id":"ecff7017-858d-4eb2-8386-1a6e0052aded","description":"<p>Read-only partner → country entity → branch tree for admin navigation and partner dashboards.</p>\n","_postman_id":"ecff7017-858d-4eb2-8386-1a6e0052aded"},{"name":"Owners","item":[{"name":"List owners","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('ownersId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"340fbdfe-f16a-4d3b-b641-a0e25cfcd073"}}],"id":"78494ab6-c928-49c2-9ddb-8dcf66e5bab2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/owners?page=1&per_page=25&search=","urlObject":{"path":["admin","owners"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"page","value":"1"},{"key":"per_page","value":"25"},{"key":"search","value":""}],"variable":[]}},"response":[{"id":"6e4acef1-0071-4f33-9e9c-28b7a75ae32c","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/owners?page=1&per_page=25&search=","host":["https://api.loya.cc/api/v1"],"path":["admin","owners"],"query":[{"key":"page","value":"1"},{"key":"per_page","value":"25"},{"key":"search","value":""}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"attributes\": {\n                \"name\": \"Example\"\n            },\n            \"relations\": {},\n            \"translations\": {},\n            \"counts\": {},\n            \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"78494ab6-c928-49c2-9ddb-8dcf66e5bab2"},{"name":"Create owner","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('ownersId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"11d5b078-9e43-4c27-8eec-ba73e63da232"}}],"id":"2371ee07-be67-45f6-939a-33739c7a4a14","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"name\": \"Partner Owner\",\n    \"email\": \"owner@example.az\",\n    \"password\": \"password\",\n    \"is_active\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/owners","urlObject":{"path":["admin","owners"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"2ccbf2c4-d2f6-4506-b6ca-8c9bd4c9451c","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/owners"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"attributes\": {\n            \"name\": \"Partner Owner\",\n            \"email\": \"owner@example.az\",\n            \"password\": \"password\",\n            \"is_active\": true\n        },\n        \"relations\": {},\n        \"translations\": {},\n        \"counts\": {},\n        \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n    }\n}"}],"_postman_id":"2371ee07-be67-45f6-939a-33739c7a4a14"},{"name":"Get owner","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"ac9e496f-7da1-4a59-9e4a-ed60ead2c5b8"}}],"id":"11b628a9-270e-40dc-8be1-a3a375267988","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/owners/1","urlObject":{"path":["admin","owners","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"c0f87561-3350-433d-bdc1-6b313edaa56f","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/owners/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"11b628a9-270e-40dc-8be1-a3a375267988"},{"name":"Update owner","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"69ec0614-64e4-4a9f-9293-5b0dd0b85636"}}],"id":"d4bded12-83f9-4882-b7f0-508a1865a28b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"name\": \"Partner Owner Updated\",\n    \"is_active\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/owners/1","urlObject":{"path":["admin","owners","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"52535fd1-de8c-4cdc-afea-ec3c3b3ac953","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/owners/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"name\": \"Partner Owner Updated\",\n        \"is_active\": true\n    }\n}"}],"_postman_id":"d4bded12-83f9-4882-b7f0-508a1865a28b"},{"name":"Delete owner","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"9c3335ee-f7b2-4b67-85f7-236619d4a456"}}],"id":"6dac3139-36a7-4fd4-9f01-a342ef7c7260","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/owners/1","urlObject":{"path":["admin","owners","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"62c47bb9-e491-46ea-ab69-03fa6bf50468","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/owners/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"6dac3139-36a7-4fd4-9f01-a342ef7c7260"},{"name":"List partner owners","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"c5e812af-9482-4d3b-8f0e-cb43cd9a79fb"}}],"id":"4715056a-accb-4e80-b6ea-b0e47f5fb89b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partners/1/owners","urlObject":{"path":["admin","partners","1","owners"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"04790df8-f3bd-4652-934d-953170f7424c","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partners/1/owners"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"4715056a-accb-4e80-b6ea-b0e47f5fb89b"},{"name":"Attach partner owner","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"815a5524-9f42-4246-9eb8-3c8a26e0f51d"}}],"id":"54a03b8f-4234-41f0-8ca0-a5ea31c9b469","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"owner_ids\": [\n        1\n    ]\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partners/1/owners","urlObject":{"path":["admin","partners","1","owners"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"c293240a-ed05-4f90-ba83-75779c5f3348","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partners/1/owners"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"owner_ids\": [\n            1\n        ]\n    }\n}"}],"_postman_id":"54a03b8f-4234-41f0-8ca0-a5ea31c9b469"},{"name":"Detach partner owner","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"dbfb5a69-34c4-4af8-9b26-a11447de38d1"}}],"id":"21919343-0eb1-4f2b-8698-b71df93b3d6f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partners/1/owners/1","urlObject":{"path":["admin","partners","1","owners","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"972c22ed-07ff-4de7-ba2b-17f973084bdf","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partners/1/owners/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"21919343-0eb1-4f2b-8698-b71df93b3d6f"},{"name":"List country-entity owners","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"cefc7c6b-424f-4eb9-a19f-b2f3e8cd21fd"}}],"id":"a9b3a1ca-e1f4-4dbf-8a9e-e6d0e414b6c3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/country-entities/1/owners","urlObject":{"path":["admin","country-entities","1","owners"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"cf58ed9c-7641-4c17-8d9b-266ee630caab","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/country-entities/1/owners"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"a9b3a1ca-e1f4-4dbf-8a9e-e6d0e414b6c3"},{"name":"Attach country-entity owner","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"5199a02c-0286-472f-a442-5db3ddcb585d"}}],"id":"fe508cfe-0e72-4b49-b54b-86a16d28a756","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"owner_ids\": [\n        1\n    ]\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/country-entities/1/owners","urlObject":{"path":["admin","country-entities","1","owners"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"2b737459-8823-4ace-a247-a4e101834dd2","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/country-entities/1/owners"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"owner_ids\": [\n            1\n        ]\n    }\n}"}],"_postman_id":"fe508cfe-0e72-4b49-b54b-86a16d28a756"},{"name":"Detach country-entity owner","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"97d7ff53-3e95-4837-8fc5-de4f7b2226d9"}}],"id":"ac5e2ae2-88cb-4c8c-9324-2b0e2401bfa3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/country-entities/1/owners/1","urlObject":{"path":["admin","country-entities","1","owners","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"ce1deae9-4307-4880-af5c-4329658ca33e","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/country-entities/1/owners/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"ac5e2ae2-88cb-4c8c-9324-2b0e2401bfa3"}],"id":"13a30f29-901f-461d-ae9e-8482dd4f8888","description":"<p>Platform/partner owner accounts and partner / country-entity assignments. Auth: admin or scoped owner + 2FA + partner-manager.</p>\n","_postman_id":"13a30f29-901f-461d-ae9e-8482dd4f8888"},{"name":"Owner staff","item":[{"name":"Scope","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"2b512599-c265-4f83-bc7c-0d450a829e25"}}],"id":"abd84771-8453-430a-8ead-b92c3c0b58ed","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner/scope","description":"<h2 id=\"summary\">Summary</h2>\n<p>Partners and country entities this owner may moderate.</p>\n","urlObject":{"path":["partner","scope"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"c100bf12-d502-4f64-aa24-440c894a5ec2","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner/scope"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"partners\": [\n            {\n                \"id\": 1,\n                \"name\": \"Papa John's\"\n            }\n        ],\n        \"countryEntities\": [\n            {\n                \"id\": 1,\n                \"partnerId\": 1,\n                \"label\": \"Azerbaijan\"\n            }\n        ],\n        \"partnerIds\": [\n            1\n        ],\n        \"countryEntityIds\": [\n            1\n        ]\n    }\n}"}],"_postman_id":"abd84771-8453-430a-8ead-b92c3c0b58ed"},{"name":"List employees","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('employeesId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"aa496a92-6100-4b5a-93a2-9d002730467b"}}],"id":"345d6244-8de8-4c29-93d0-b006024133b4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner/employees","urlObject":{"path":["partner","employees"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"16ace857-b8cc-4902-a00c-02e16f33ccf4","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner/employees"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1\n        }\n    ]\n}"}],"_postman_id":"345d6244-8de8-4c29-93d0-b006024133b4"},{"name":"Create employee","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('employeesId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"f3537f47-4f3d-47b9-af9f-c585142e0653"}}],"id":"2b022c7b-3801-4f34-820f-8c0cd5cddbfb","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"partner_id\": 1,\n    \"name\": \"Validator\",\n    \"phone\": \"+994501111111\",\n    \"email\": \"validator@papajohns.az\",\n    \"password\": \"password\",\n    \"is_active\": true,\n    \"assignments\": {\n        \"branches\": [\n            {\n                \"branch_id\": 1,\n                \"role\": \"cashier\"\n            }\n        ]\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/partner/employees","urlObject":{"path":["partner","employees"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"59a67258-f550-41c9-ab46-1b7044c674af","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/partner/employees"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"partner_id\": 1,\n        \"name\": \"Validator\",\n        \"phone\": \"+994501111111\",\n        \"email\": \"validator@papajohns.az\",\n        \"password\": \"password\",\n        \"is_active\": true,\n        \"assignments\": {\n            \"branches\": [\n                {\n                    \"branch_id\": 1,\n                    \"role\": \"cashier\"\n                }\n            ]\n        }\n    }\n}"}],"_postman_id":"2b022c7b-3801-4f34-820f-8c0cd5cddbfb"},{"name":"Update employee","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"c87884e9-271b-4ed7-9afe-b3bb0eaa0b78"}}],"id":"85d86b00-c469-4b22-b94a-cbb96197aae6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"name\": \"Validator Updated\",\n    \"is_active\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/partner/employees/1","urlObject":{"path":["partner","employees","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"69a9b524-a8cb-414e-b116-e869b11091de","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/partner/employees/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"name\": \"Validator Updated\",\n        \"is_active\": true\n    }\n}"}],"_postman_id":"85d86b00-c469-4b22-b94a-cbb96197aae6"},{"name":"Delete employee","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"a5c883c9-572a-40e0-8160-654a74cc34d7"}}],"id":"bd37f1fd-43ee-4435-9885-f68b45deb797","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner/employees/1","urlObject":{"path":["partner","employees","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"55a69057-14b9-4335-b852-a049bf5bbffc","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/partner/employees/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"bd37f1fd-43ee-4435-9885-f68b45deb797"}],"id":"b657e8bb-fd8e-49cf-ace4-8505385f6aef","description":"<p>Signed-in owner (<code></code>) manages employees within scoped partners / country entities.</p>\n","_postman_id":"b657e8bb-fd8e-49cf-ace4-8505385f6aef"},{"name":"Partner setup (write)","item":[{"name":"Partners & employees","item":[{"name":"Create partner","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('partnersId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"551ee8a6-0a2f-45f2-90df-6e667926bae6"}}],"id":"12a1182c-028f-40eb-b3ea-221107eaaf1b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"name\": \"Papa John's\",\n    \"email\": \"partner@example.az\",\n    \"phone\": \"+994501234567\",\n    \"password\": \"password123\",\n    \"is_active\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/partners","urlObject":{"path":["admin","partner-setup","partners"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"8d8b10f2-591d-4306-b9b9-ca9b915c0f69","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/partners"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"name\": \"Papa John's\",\n        \"email\": \"partner@example.az\",\n        \"phone\": \"+994501234567\",\n        \"password\": \"password123\",\n        \"is_active\": true\n    }\n}"}],"_postman_id":"12a1182c-028f-40eb-b3ea-221107eaaf1b"},{"name":"Update partner","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"fa6eb24b-09af-4ce5-9861-9137f7ee63d7"}}],"id":"1caee611-98a6-44e1-83e2-037f9115d95c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"name\": \"Papa John's AZ\",\n    \"is_active\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/partners/1","urlObject":{"path":["admin","partner-setup","partners","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"5e26a92b-73c0-40b6-81a9-15e95605d958","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/partners/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"name\": \"Papa John's AZ\",\n        \"is_active\": true\n    }\n}"}],"_postman_id":"1caee611-98a6-44e1-83e2-037f9115d95c"},{"name":"Delete partner","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"8e324840-1283-4ee2-8cf9-75c890a9a930"}}],"id":"7c5f38c8-5bd1-472c-99d2-a45c94e74182","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/partners/1","urlObject":{"path":["admin","partner-setup","partners","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"d3c0ca5f-2e99-40ec-9290-16d999cef95f","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/partners/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"7c5f38c8-5bd1-472c-99d2-a45c94e74182"},{"name":"Restore partner","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"086ebb30-8444-4e95-bef5-b31c7350184e"}}],"id":"1fb3f6ad-36b6-4d67-956e-9f038de1d93b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/partners/1/restore","urlObject":{"path":["admin","partner-setup","partners","1","restore"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"15823cec-6611-46de-84eb-5a4208823625","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/partners/1/restore"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"1fb3f6ad-36b6-4d67-956e-9f038de1d93b"},{"name":"Force delete partner","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"3596b365-8e13-43c8-a4d5-2778edd00e49"}}],"id":"c3a685ae-ba4d-4d8e-883c-369dee96b7bf","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/partners/1/force","urlObject":{"path":["admin","partner-setup","partners","1","force"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"0dd76091-a5c0-4293-8ba9-7d5a022fbe8b","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/partners/1/force"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"c3a685ae-ba4d-4d8e-883c-369dee96b7bf"},{"name":"Create employee","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('employeesId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"ffafc5d5-e3cf-477b-b009-be0fcf371325"}}],"id":"b4dcd790-a113-4e91-8e0d-3a4b887b4862","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"name\": \"Validator\",\n    \"email\": \"validator@papajohns.az\",\n    \"password\": \"password\",\n    \"is_active\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/partners/1/employees","urlObject":{"path":["admin","partner-setup","partners","1","employees"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"9e88c3f5-f2bb-4d47-ad4c-396763eab5e5","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/partners/1/employees"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"name\": \"Validator\",\n        \"email\": \"validator@papajohns.az\",\n        \"password\": \"password\",\n        \"is_active\": true\n    }\n}"}],"_postman_id":"b4dcd790-a113-4e91-8e0d-3a4b887b4862"},{"name":"Update employee","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"a48c5299-ff05-4e7d-9931-f020e346b86a"}}],"id":"b06ff9d7-e565-47ed-8c2c-c35bbfbedb70","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"name\": \"Validator Updated\",\n    \"is_active\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/employees/1","urlObject":{"path":["admin","partner-setup","employees","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"efbc276b-076b-45dc-810d-76969c0a9595","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/employees/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"name\": \"Validator Updated\",\n        \"is_active\": true\n    }\n}"}],"_postman_id":"b06ff9d7-e565-47ed-8c2c-c35bbfbedb70"},{"name":"Delete employee","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"c4ffeb14-82d9-44e6-b5ec-43d2745d2b97"}}],"id":"ac3f8193-1af6-4d49-a33c-88fc51b64a59","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/employees/1","urlObject":{"path":["admin","partner-setup","employees","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"0db523d8-fd9a-4740-aaa2-eeae8bd12be6","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/employees/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"ac3f8193-1af6-4d49-a33c-88fc51b64a59"},{"name":"Restore employee","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"f0d0300a-7785-4a7e-a8a5-8538b11d2686"}}],"id":"bab60e73-7711-4ee1-a01a-0f2b12d8200d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/employees/1/restore","urlObject":{"path":["admin","partner-setup","employees","1","restore"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"dcb249f3-0de2-4746-b9e9-c9bcb06ae111","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/employees/1/restore"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"bab60e73-7711-4ee1-a01a-0f2b12d8200d"},{"name":"Force delete employee","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"79598058-b59b-4e37-85d0-5c22c893c23d"}}],"id":"9f1d7a93-8b3a-4e82-a95a-ffb8670fad3b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/employees/1/force","urlObject":{"path":["admin","partner-setup","employees","1","force"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"5ee5f09d-6dcd-4fab-bd9d-d4b5cb994e93","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/employees/1/force"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"9f1d7a93-8b3a-4e82-a95a-ffb8670fad3b"}],"id":"b21dfc74-7f1e-4911-a06d-1dc3701ca11b","_postman_id":"b21dfc74-7f1e-4911-a06d-1dc3701ca11b","description":""},{"name":"Country entities & loyalty","item":[{"name":"Create country entity","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('country-entitiesId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"e5c68d51-b0b7-4dc4-83fd-0d6f6d437bc1"}}],"id":"7c551e0e-c273-4b0d-a32b-5cec14632f95","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"country_id\": 1,\n    \"loyalty_enabled\": true,\n    \"is_active\": true,\n    \"sort_order\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/partners/1/country-entities","urlObject":{"path":["admin","partner-setup","partners","1","country-entities"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"73796b63-4a61-4ff7-b704-5ea3202d9bf1","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/partners/1/country-entities"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"country_id\": 1,\n        \"loyalty_enabled\": true,\n        \"is_active\": true,\n        \"sort_order\": 1\n    }\n}"}],"_postman_id":"7c551e0e-c273-4b0d-a32b-5cec14632f95"},{"name":"Update country entity","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"41444498-96f2-414b-8824-0388e532d2f0"}}],"id":"627417f7-341e-4385-8c85-cd113258ae37","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"loyalty_enabled\": true,\n    \"is_active\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/country-entities/1","urlObject":{"path":["admin","partner-setup","country-entities","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"7c6e7ec9-1f80-4e45-b7da-10330ef28db3","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/country-entities/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"loyalty_enabled\": true,\n        \"is_active\": true\n    }\n}"}],"_postman_id":"627417f7-341e-4385-8c85-cd113258ae37"},{"name":"Default catalog fields","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"051a262f-9d51-4a9f-b95b-0d5bd29dc64f"}}],"id":"4d360905-34e4-4711-a3f0-78a908c323b9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/country-entities/1/default-fields?entity=service","description":"<h2 id=\"summary\">Summary</h2>\n<p>Filter-field definitions copied onto new branches/services in this country.</p>\n","urlObject":{"path":["admin","partner-setup","country-entities","1","default-fields"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p><code>branch</code> or <code>service</code> (default <code>branch</code>)</p>\n","type":"text/plain"},"key":"entity","value":"service"}],"variable":[]}},"response":[{"id":"dfb0a156-b517-4471-97f1-e40481ea95bd","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/partner-setup/country-entities/1/default-fields?entity=service","host":["https://api.loya.cc/api/v1"],"path":["admin","partner-setup","country-entities","1","default-fields"],"query":[{"key":"entity","value":"service","description":"`branch` or `service` (default `branch`)"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"4d360905-34e4-4711-a3f0-78a908c323b9"},{"name":"Update branch defaults","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"97e76d31-fc13-4fc9-8215-c833a9799eaa"}}],"id":"e9d6f201-b270-42cf-8e3e-282656bd67c0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"logo\": null,\n    \"opening_hour_groups\": [\n        {\n            \"title\": \"Opening hours\",\n            \"is_default\": true,\n            \"gender\": \"all\",\n            \"age_group\": null,\n            \"sort_order\": 0,\n            \"days\": {\n                \"monday\": {\n                    \"enabled\": true,\n                    \"is_24_hours\": false,\n                    \"opens_at\": \"09:00\",\n                    \"closes_at\": \"22:00\"\n                }\n            },\n            \"translations\": {\n                \"title\": {\n                    \"en\": \"Opening hours\"\n                }\n            }\n        }\n    ],\n    \"default_service_groups\": [\n        {\n            \"key\": \"blizz\",\n            \"name\": \"Blizz\",\n            \"icon\": \"services/blizz-icon.png\",\n            \"sort_order\": 0,\n            \"translations\": {\n                \"name\": {\n                    \"en\": \"Blizz\"\n                }\n            }\n        }\n    ],\n    \"default_services\": [\n        {\n            \"name\": \"Pool\",\n            \"service_group_key\": \"blizz\",\n            \"subcategory_ids\": [\n                1\n            ],\n            \"sort_order\": 0\n        }\n    ]\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/country-entities/1/branch-defaults","description":"<h2 id=\"summary\">Summary</h2>\n<p>Country-entity defaults copied onto each new branch (branding, hours, contacts, default service groups + services).</p>\n<h2 id=\"body-highlights\">Body highlights</h2>\n<p><code>opening_hour_groups[]</code> supports <code>gender</code> + <code>age_group</code>. <code>default_service_groups[]</code> requires stable <code>key</code>; <code>default_services[].service_group_key</code> links a template to a group. Clear all by sending empty arrays / nulls.</p>\n","urlObject":{"path":["admin","partner-setup","country-entities","1","branch-defaults"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"dc512a9f-27bd-48c9-8d8b-c5cc927dc083","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/country-entities/1/branch-defaults"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"logo\": null,\n        \"opening_hour_groups\": [\n            {\n                \"title\": \"Opening hours\",\n                \"is_default\": true,\n                \"gender\": \"all\",\n                \"age_group\": null,\n                \"sort_order\": 0,\n                \"days\": {\n                    \"monday\": {\n                        \"enabled\": true,\n                        \"is_24_hours\": false,\n                        \"opens_at\": \"09:00\",\n                        \"closes_at\": \"22:00\"\n                    }\n                },\n                \"translations\": {\n                    \"title\": {\n                        \"en\": \"Opening hours\"\n                    }\n                }\n            }\n        ],\n        \"default_service_groups\": [\n            {\n                \"key\": \"blizz\",\n                \"name\": \"Blizz\",\n                \"icon\": \"services/blizz-icon.png\",\n                \"sort_order\": 0,\n                \"translations\": {\n                    \"name\": {\n                        \"en\": \"Blizz\"\n                    }\n                }\n            }\n        ],\n        \"default_services\": [\n            {\n                \"name\": \"Pool\",\n                \"service_group_key\": \"blizz\",\n                \"subcategory_ids\": [\n                    1\n                ],\n                \"sort_order\": 0\n            }\n        ]\n    }\n}"}],"_postman_id":"e9d6f201-b270-42cf-8e3e-282656bd67c0"},{"name":"List entity loyalty cards","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"4afe1ee7-cf66-407b-8480-9e471941bd3d"}}],"id":"b8e549ba-7cc4-401c-8130-862b7a37773c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/country-entities/1/loyalty-cards","urlObject":{"path":["admin","partner-setup","country-entities","1","loyalty-cards"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"30537f00-9632-40b2-a712-f472f033a30c","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/country-entities/1/loyalty-cards"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"b8e549ba-7cc4-401c-8130-862b7a37773c"},{"name":"Create entity loyalty card","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('loyalty-cardsId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"f297bcd8-b4b5-4edb-aa56-17008fb17266"}}],"id":"656c6b2a-7513-4902-9d23-0de59b43e472","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"type\": \"punch_card\",\n    \"punches_required\": 10,\n    \"title\": \"Buy 10 get 1 free\",\n    \"reward_description\": \"Free coffee\",\n    \"is_active\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/country-entities/1/loyalty-cards","urlObject":{"path":["admin","partner-setup","country-entities","1","loyalty-cards"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"dc4f3b45-61c5-4d13-8f16-0e442784e24b","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/country-entities/1/loyalty-cards"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"type\": \"punch_card\",\n        \"punches_required\": 10,\n        \"title\": \"Buy 10 get 1 free\",\n        \"reward_description\": \"Free coffee\",\n        \"is_active\": true\n    }\n}"}],"_postman_id":"656c6b2a-7513-4902-9d23-0de59b43e472"},{"name":"Update loyalty card","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"03c03fd4-5e8c-4f87-aee5-173d1c8b89eb"}}],"id":"ef842e49-3af8-4bee-9afb-8a35a0d78384","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"title\": \"Updated loyalty card\",\n    \"is_active\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/loyalty-cards/1","urlObject":{"path":["admin","partner-setup","loyalty-cards","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"dbed9613-bd67-4aed-b6d0-589ab4822083","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/loyalty-cards/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"title\": \"Updated loyalty card\",\n        \"is_active\": true\n    }\n}"}],"_postman_id":"ef842e49-3af8-4bee-9afb-8a35a0d78384"},{"name":"Delete loyalty card","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"347ef8d0-cf3d-4a92-81a9-858bcdafa3ba"}}],"id":"94dafab8-c25e-4c45-8294-8030a14ef633","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/loyalty-cards/1","urlObject":{"path":["admin","partner-setup","loyalty-cards","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"0342a2dd-b60c-4871-abef-01e2980f590a","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/loyalty-cards/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"94dafab8-c25e-4c45-8294-8030a14ef633"},{"name":"Restore loyalty card","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"c5883226-c1c1-4015-afe1-98c8f2ce919b"}}],"id":"c12d250d-112c-429e-9725-199269dd36f9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/loyalty-cards/1/restore","urlObject":{"path":["admin","partner-setup","loyalty-cards","1","restore"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"6680b65d-85b5-490e-a74c-c546d3e5ee95","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/loyalty-cards/1/restore"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"c12d250d-112c-429e-9725-199269dd36f9"},{"name":"Force delete loyalty card","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"93b45136-acb6-4377-b200-25996745d337"}}],"id":"ae018e05-12b0-438e-9c78-b1b032b0cc75","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/loyalty-cards/1/force","urlObject":{"path":["admin","partner-setup","loyalty-cards","1","force"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"06aaaf7b-a19e-4262-80e0-f150c060b1bd","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/loyalty-cards/1/force"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"ae018e05-12b0-438e-9c78-b1b032b0cc75"}],"id":"60f94079-db78-4bf6-a468-28a79ab53209","_postman_id":"60f94079-db78-4bf6-a468-28a79ab53209","description":""},{"name":"Branches","item":[{"name":"Create branch","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('branchesId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"160b7970-1644-4d7a-ba06-9d58dd976409"}}],"id":"adf1bb2c-6c29-4246-abdc-6a523a02bdab","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"name\": \"Papa John's Narimanov\",\n    \"district_id\": 1,\n    \"address\": \"28 May str. 15\",\n    \"latitude\": 40.4098,\n    \"longitude\": 49.8765,\n    \"phone\": \"+994501234567\",\n    \"is_active\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/country-entities/1/branches","urlObject":{"path":["admin","partner-setup","country-entities","1","branches"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"13aa1845-d2fe-4d52-9b8d-6218367a6ce7","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/country-entities/1/branches"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"name\": \"Papa John's Narimanov\",\n        \"district_id\": 1,\n        \"address\": \"28 May str. 15\",\n        \"latitude\": 40.4098,\n        \"longitude\": 49.8765,\n        \"phone\": \"+994501234567\",\n        \"is_active\": true\n    }\n}"}],"_postman_id":"adf1bb2c-6c29-4246-abdc-6a523a02bdab"},{"name":"Update branch profile","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"bc636aae-17ee-41b3-9ffe-a98a03604d6c"}}],"id":"71862405-fc6f-4e9c-9158-ff35d5cb3388","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"name\": \"Papa John's Narimanov\",\n    \"address\": \"28 May str. 15\",\n    \"short_description\": \"Family restaurant\",\n    \"is_open\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/profile","urlObject":{"path":["admin","partner-setup","branches","1","profile"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"0ee5b9a6-e2b6-4f5e-ad9c-0c5ffac7d81a","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/profile"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"name\": \"Papa John's Narimanov\",\n        \"address\": \"28 May str. 15\",\n        \"short_description\": \"Family restaurant\",\n        \"is_open\": true\n    }\n}"}],"_postman_id":"71862405-fc6f-4e9c-9158-ff35d5cb3388"},{"name":"Update branch about","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"db12440d-bb0e-4db3-9e4b-b1b6a0fab660"}}],"id":"e71ce9cd-7dc2-4d1b-aa36-ef13ce99ccf7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"opening_hour_groups\": [\n        {\n            \"title\": \"For men Opening hours\",\n            \"is_default\": true,\n            \"gender\": \"male\",\n            \"age_group\": null,\n            \"sort_order\": 0,\n            \"days\": {\n                \"monday\": {\n                    \"enabled\": true,\n                    \"opens_at\": \"06:00\",\n                    \"closes_at\": \"14:00\"\n                }\n            },\n            \"translations\": {\n                \"title\": {\n                    \"en\": \"For men Opening hours\"\n                }\n            }\n        },\n        {\n            \"title\": \"For woman Opening hours\",\n            \"is_default\": false,\n            \"gender\": \"female\",\n            \"age_group\": null,\n            \"sort_order\": 1,\n            \"days\": {\n                \"monday\": {\n                    \"enabled\": true,\n                    \"opens_at\": \"14:00\",\n                    \"closes_at\": \"22:00\"\n                }\n            },\n            \"translations\": {\n                \"title\": {\n                    \"en\": \"For woman Opening hours\"\n                }\n            }\n        }\n    ],\n    \"sections\": [\n        {\n            \"title\": \"About us\",\n            \"content\": \"Welcome to our branch.\",\n            \"sort_order\": 1\n        }\n    ]\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/about","urlObject":{"path":["admin","partner-setup","branches","1","about"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"f8cae087-61da-4663-8204-3cb8941fe4ec","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/about"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"opening_hour_groups\": [\n            {\n                \"title\": \"For men Opening hours\",\n                \"is_default\": true,\n                \"gender\": \"male\",\n                \"age_group\": null,\n                \"sort_order\": 0,\n                \"days\": {\n                    \"monday\": {\n                        \"enabled\": true,\n                        \"opens_at\": \"06:00\",\n                        \"closes_at\": \"14:00\"\n                    }\n                },\n                \"translations\": {\n                    \"title\": {\n                        \"en\": \"For men Opening hours\"\n                    }\n                }\n            },\n            {\n                \"title\": \"For woman Opening hours\",\n                \"is_default\": false,\n                \"gender\": \"female\",\n                \"age_group\": null,\n                \"sort_order\": 1,\n                \"days\": {\n                    \"monday\": {\n                        \"enabled\": true,\n                        \"opens_at\": \"14:00\",\n                        \"closes_at\": \"22:00\"\n                    }\n                },\n                \"translations\": {\n                    \"title\": {\n                        \"en\": \"For woman Opening hours\"\n                    }\n                }\n            }\n        ],\n        \"sections\": [\n            {\n                \"title\": \"About us\",\n                \"content\": \"Welcome to our branch.\",\n                \"sort_order\": 1\n            }\n        ]\n    }\n}"}],"_postman_id":"e71ce9cd-7dc2-4d1b-aa36-ef13ce99ccf7"},{"name":"Sync branch amenities","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"6643b873-400b-4f65-b1bf-8f91cf095edd"}}],"id":"f5f2e10c-8a62-42ca-9a4e-e800222d5cec","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"amenity_ids\": [\n        1,\n        2\n    ]\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/amenities","urlObject":{"path":["admin","partner-setup","branches","1","amenities"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"7496dca6-2f34-447e-a748-ca621d8453f8","name":"OK","originalRequest":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/amenities"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"amenity_ids\": [\n            1,\n            2\n        ]\n    }\n}"}],"_postman_id":"f5f2e10c-8a62-42ca-9a4e-e800222d5cec"},{"name":"Create branch menu","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"383e2b4d-b3f8-4915-83ab-81bef78bd97c"}}],"id":"42a3cccd-8155-4255-9006-cfd3db129c5e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"service_id\": 1,\n    \"title\": \"Menu\",\n    \"external_url\": \"https://example.com/menu\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/menus","description":"<h2 id=\"summary\">Summary</h2>\n<p>Menus are <strong>service-scoped</strong>. <code>service_id</code> is required. PDF/image pages are uploaded on a service (<code>…/services/{id}/menu/pages</code>).</p>\n","urlObject":{"path":["admin","partner-setup","branches","1","menus"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"68e84ca4-ef7b-47a1-a221-65b1dea437a4","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/menus"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"service_id\": 1,\n        \"title\": \"Menu\",\n        \"external_url\": \"https://example.com/menu\"\n    }\n}"}],"_postman_id":"42a3cccd-8155-4255-9006-cfd3db129c5e"},{"name":"Reorder branch menus","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"4fcead85-808e-48e6-880c-920ddb630962"}}],"id":"a2c014b6-d83f-41fb-a93c-4c9721b4ebcd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"menu_ids\": [\n        1,\n        2\n    ],\n    \"service_id\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/menus/reorder","urlObject":{"path":["admin","partner-setup","branches","1","menus","reorder"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"9e1b9e73-e334-431b-a9d2-893ff07c56b6","name":"OK","originalRequest":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/menus/reorder"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"menu_ids\": [\n            1,\n            2\n        ],\n        \"service_id\": 1\n    }\n}"}],"_postman_id":"a2c014b6-d83f-41fb-a93c-4c9721b4ebcd"},{"name":"Update branch menu","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"4fcfe169-e24f-4d61-859a-ea842b69dfa8"}}],"id":"ef1ca711-5728-4de6-8a0b-d1eab34650fc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"title\": \"Updated menu\",\n    \"is_active\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/menus/1","urlObject":{"path":["admin","partner-setup","branches","1","menus","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"629b94da-d685-4fe8-89af-c5906d8e7672","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/menus/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"title\": \"Updated menu\",\n        \"is_active\": true\n    }\n}"}],"_postman_id":"ef1ca711-5728-4de6-8a0b-d1eab34650fc"},{"name":"Delete branch menu","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"2fd441e3-2ed2-4d74-bfe6-48e7428bb909"}}],"id":"bb6f1b6f-c366-4946-aa89-e638ef4673c2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/menus/1","urlObject":{"path":["admin","partner-setup","branches","1","menus","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"6a129676-67d5-4ab8-91dc-f7c9356e5787","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/menus/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"bb6f1b6f-c366-4946-aa89-e638ef4673c2"},{"name":"Create branch loyalty card","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"a3b9294d-04b0-4af0-9947-36704db2694b"}}],"id":"5beb23ed-54f7-4317-b145-9b59ea788de3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"type\": \"punch_card\",\n    \"punches_required\": 8,\n    \"title\": \"Branch punch card\",\n    \"is_active\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/loyalty-cards","urlObject":{"path":["admin","partner-setup","branches","1","loyalty-cards"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"843c9620-8b51-4a52-9599-c3d24d20a61d","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/loyalty-cards"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"type\": \"punch_card\",\n        \"punches_required\": 8,\n        \"title\": \"Branch punch card\",\n        \"is_active\": true\n    }\n}"}],"_postman_id":"5beb23ed-54f7-4317-b145-9b59ea788de3"},{"name":"Delete branch","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"6e272123-bc8c-4be6-88b6-12aefc747233"}}],"id":"568b3287-9a3c-4fe3-93e3-4fbfcfb4e420","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1","urlObject":{"path":["admin","partner-setup","branches","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"df8f4331-a0e4-456a-909b-2b94f9baf3f0","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"568b3287-9a3c-4fe3-93e3-4fbfcfb4e420"},{"name":"Restore branch","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"e24ad9a8-f911-4497-9d87-3b9480df974a"}}],"id":"0d122f6c-2289-4543-a971-d51b7bcae5c9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/restore","urlObject":{"path":["admin","partner-setup","branches","1","restore"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"ba8e87d3-a5db-4a93-a3a6-359413c371b5","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/restore"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"0d122f6c-2289-4543-a971-d51b7bcae5c9"},{"name":"Force delete branch","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"206108a5-8e70-46fe-8132-d5c1f116066b"}}],"id":"aec8a4e7-249f-447d-aaf9-5124cebec341","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/force","urlObject":{"path":["admin","partner-setup","branches","1","force"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"5bd5597b-50ae-4e70-be5c-f8c7169b877c","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/force"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"aec8a4e7-249f-447d-aaf9-5124cebec341"}],"id":"8aafa98e-4d20-4e4a-905a-c1d1216d3d5f","_postman_id":"8aafa98e-4d20-4e4a-905a-c1d1216d3d5f","description":""},{"name":"Services","item":[{"name":"List branch services","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('serviceId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"a0cace93-7754-4b5d-b225-38ea8bd9d5ce"}}],"id":"edeefce7-f44c-48c2-9d11-671de8c14adb","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/services","urlObject":{"path":["admin","partner-setup","branches","1","services"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"9f89472c-3749-46fa-90b0-8bf418191bcc","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/services"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"edeefce7-f44c-48c2-9d11-671de8c14adb"},{"name":"List service groups","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"3a996b43-c602-4f00-b7df-5e631ed5bd7d"}}],"id":"872be44d-dd8c-4808-bacc-f2a3c4813886","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/service-groups","urlObject":{"path":["admin","partner-setup","branches","1","service-groups"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"463e7aef-8e0b-40a1-aa68-15303f430513","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/service-groups"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"872be44d-dd8c-4808-bacc-f2a3c4813886"},{"name":"Create service group","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('serviceGroupId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"39c674ad-236f-43c9-9d7f-1b55881e8564"}}],"id":"3c1b525d-0ad2-4e5f-8b0c-ff6c1a24062c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"name\": \"Blizz\",\n    \"icon\": null,\n    \"sort_order\": 0,\n    \"translations\": {\n        \"name\": {\n            \"en\": \"Blizz\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/service-groups","urlObject":{"path":["admin","partner-setup","branches","1","service-groups"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"30a59390-8e03-4828-8b04-263943ab380d","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/service-groups"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"name\": \"Blizz\",\n        \"icon\": null,\n        \"sort_order\": 0,\n        \"translations\": {\n            \"name\": {\n                \"en\": \"Blizz\"\n            }\n        }\n    }\n}"}],"_postman_id":"3c1b525d-0ad2-4e5f-8b0c-ff6c1a24062c"},{"name":"Update service group","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"4ab6d9dc-2ab3-499e-9b96-146a26dd87a2"}}],"id":"bd69c2b8-7e15-409d-8ca8-471214c2ec8f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"name\": \"Blizz Updated\",\n    \"sort_order\": 0\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/service-groups/1","urlObject":{"path":["admin","partner-setup","branches","1","service-groups","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"edf617b7-8b2a-43d8-a726-047ef6b7c7e2","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/service-groups/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"name\": \"Blizz Updated\",\n        \"sort_order\": 0\n    }\n}"}],"_postman_id":"bd69c2b8-7e15-409d-8ca8-471214c2ec8f"},{"name":"Delete service group","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"557c0507-a9fd-4cf9-b99e-5125854a2319"}}],"id":"e9e19c0e-3342-42dc-b811-5514a03066ce","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/service-groups/1","urlObject":{"path":["admin","partner-setup","branches","1","service-groups","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"a41f7d45-ee78-493a-b9ea-411da42f18dd","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/service-groups/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"e9e19c0e-3342-42dc-b811-5514a03066ce"},{"name":"Restore service group","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"27aeb71c-111a-4a4c-b350-f5daf834f2a5"}}],"id":"0b866e81-a317-4380-8c6a-f930fd5d313d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/service-groups/1/restore","urlObject":{"path":["admin","partner-setup","branches","1","service-groups","1","restore"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"6d1b41f3-49af-4d61-9587-6e051b9a490c","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/service-groups/1/restore"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"0b866e81-a317-4380-8c6a-f930fd5d313d"},{"name":"Force delete service group","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"119bc104-8c2a-4b7c-935a-515167e59e6a"}}],"id":"51a3404d-a400-41b8-b292-cc4b0c62fcbb","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/service-groups/1/force","urlObject":{"path":["admin","partner-setup","branches","1","service-groups","1","force"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"0ce29400-8b0a-4d76-afd7-648f4c86caff","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/service-groups/1/force"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"51a3404d-a400-41b8-b292-cc4b0c62fcbb"},{"name":"Show service","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"2de72b18-9ac5-4cc1-ae1e-c57bc2193b24"}}],"id":"01ce131c-ba66-4d71-b4aa-0b4578532959","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/services/1","urlObject":{"path":["admin","partner-setup","branches","1","services","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"33441b27-b6a4-4b29-bef6-227d76956848","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/services/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"01ce131c-ba66-4d71-b4aa-0b4578532959"},{"name":"Create service","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('serviceId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"014491df-920f-47d4-a419-08eb98dbfc16"}}],"id":"eae15db4-7358-4182-9c93-be6ca21baa70","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"name\": \"Restaurant\",\n    \"service_group_id\": null,\n    \"subcategory_ids\": [\n        1\n    ],\n    \"sort_order\": 1,\n    \"is_active\": true,\n    \"translations\": {\n        \"name\": {\n            \"en\": \"Restaurant\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/services","urlObject":{"path":["admin","partner-setup","branches","1","services"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"5feffb9e-647b-4a7e-b6d4-a4ee31651e16","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/services"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"name\": \"Restaurant\",\n        \"service_group_id\": null,\n        \"subcategory_ids\": [\n            1\n        ],\n        \"sort_order\": 1,\n        \"is_active\": true,\n        \"translations\": {\n            \"name\": {\n                \"en\": \"Restaurant\"\n            }\n        }\n    }\n}"}],"_postman_id":"eae15db4-7358-4182-9c93-be6ca21baa70"},{"name":"Update service","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"6ba736c3-e940-440c-8081-fe985fb310f9"}}],"id":"94a34678-d024-4bda-9a43-7bd03c0604db","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"name\": \"Gym\",\n    \"opening_hour_groups\": [\n        {\n            \"title\": \"Opening hours\",\n            \"is_default\": true,\n            \"gender\": \"all\",\n            \"age_group\": null,\n            \"sort_order\": 0,\n            \"days\": {\n                \"monday\": {\n                    \"enabled\": true,\n                    \"opens_at\": \"06:00\",\n                    \"closes_at\": \"14:00\"\n                }\n            }\n        },\n        {\n            \"title\": \"For Adults\",\n            \"is_default\": false,\n            \"gender\": \"all\",\n            \"age_group\": \"young-adult\",\n            \"sort_order\": 1,\n            \"days\": {\n                \"saturday\": {\n                    \"enabled\": true,\n                    \"opens_at\": \"09:00\",\n                    \"closes_at\": \"11:00\"\n                }\n            }\n        }\n    ],\n    \"is_active\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/services/1","urlObject":{"path":["admin","partner-setup","branches","1","services","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"ae439bfb-10be-440d-baa9-64a90ca5b91e","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/services/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"name\": \"Gym\",\n        \"opening_hour_groups\": [\n            {\n                \"title\": \"Opening hours\",\n                \"is_default\": true,\n                \"gender\": \"all\",\n                \"age_group\": null,\n                \"sort_order\": 0,\n                \"days\": {\n                    \"monday\": {\n                        \"enabled\": true,\n                        \"opens_at\": \"06:00\",\n                        \"closes_at\": \"14:00\"\n                    }\n                }\n            },\n            {\n                \"title\": \"For Adults\",\n                \"is_default\": false,\n                \"gender\": \"all\",\n                \"age_group\": \"young-adult\",\n                \"sort_order\": 1,\n                \"days\": {\n                    \"saturday\": {\n                        \"enabled\": true,\n                        \"opens_at\": \"09:00\",\n                        \"closes_at\": \"11:00\"\n                    }\n                }\n            }\n        ],\n        \"is_active\": true\n    }\n}"}],"_postman_id":"94a34678-d024-4bda-9a43-7bd03c0604db"},{"name":"Service input fields","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"533b271b-9247-47bf-97fd-665403ed7ca8"}}],"id":"1e56766e-c7c9-46fe-8ae3-1187976cb302","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/services/1/input-fields","urlObject":{"path":["admin","partner-setup","branches","1","services","1","input-fields"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"be7efe9f-8004-49df-bc01-65cd5b782368","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/services/1/input-fields"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"1e56766e-c7c9-46fe-8ae3-1187976cb302"},{"name":"Sync service input fields","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"0c261125-45a3-42b2-b9af-766ef82a1c38"}}],"id":"757c49ec-f5ba-44e7-b05e-0a5ae674c39e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"category_filter_option_ids\": [\n        1,\n        2\n    ]\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/services/1/input-fields","description":"<h2 id=\"body\">Body</h2>\n<p><code>category_filter_option_ids</code> — selected filter option IDs for this service.</p>\n","urlObject":{"path":["admin","partner-setup","branches","1","services","1","input-fields"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"a86fe04b-aae0-4148-802b-79f462dad781","name":"OK","originalRequest":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/services/1/input-fields"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"category_filter_option_ids\": [\n            1,\n            2\n        ]\n    }\n}"}],"_postman_id":"757c49ec-f5ba-44e7-b05e-0a5ae674c39e"},{"name":"Delete service","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"97631363-ae7c-4eba-84c4-77b1d6d2b8c3"}}],"id":"23cd6e12-ed72-4260-93bb-4ab12b851ac7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/services/1","urlObject":{"path":["admin","partner-setup","branches","1","services","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"ce933c5a-03c4-4c2e-858f-f6ca344375d8","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/services/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"23cd6e12-ed72-4260-93bb-4ab12b851ac7"},{"name":"Restore service","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"0577d150-268f-4861-b024-ee332d700ea3"}}],"id":"7ca4872d-15c4-46fe-bad2-c197cd93ca2c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/services/1/restore","urlObject":{"path":["admin","partner-setup","branches","1","services","1","restore"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"81a5ddc1-78ef-4b22-8faf-5d432f6eae11","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/services/1/restore"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"7ca4872d-15c4-46fe-bad2-c197cd93ca2c"},{"name":"Force delete service","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"16f8696c-240c-4e54-92b0-172c2074b188"}}],"id":"9ae5de1a-bfb6-4670-89e5-ab6789b66084","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/services/1/force","urlObject":{"path":["admin","partner-setup","branches","1","services","1","force"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"27d1b3bd-e352-4ae2-9674-98919312c137","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/services/1/force"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"9ae5de1a-bfb6-4670-89e5-ab6789b66084"},{"name":"Add service menu page","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"60a46f81-2772-47f9-8064-2292678328f3"}}],"id":"8b165770-5191-4e1e-b596-b8ebf572a2ff","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"file\": \"menus/service-page-1.pdf\",\n    \"sort_order\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/services/1/menu/pages","urlObject":{"path":["admin","partner-setup","branches","1","services","1","menu","pages"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"bdf7da5a-eaeb-4cfc-8f94-f365e6f57c70","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/services/1/menu/pages"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"file\": \"menus/service-page-1.pdf\",\n        \"sort_order\": 1\n    }\n}"}],"_postman_id":"8b165770-5191-4e1e-b596-b8ebf572a2ff"},{"name":"Delete service menu page","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"e4c0bb26-3c0f-48c0-9b6d-130b4fd99330"}}],"id":"463f51fc-da97-495f-ae75-a7339abddc80","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/services/1/menu/pages/1","urlObject":{"path":["admin","partner-setup","branches","1","services","1","menu","pages","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"4416858b-e78c-4c35-a31f-3fb5d5bf9b4f","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/branches/1/services/1/menu/pages/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"463f51fc-da97-495f-ae75-a7339abddc80"}],"id":"c832bd3e-570b-4669-b609-c851cdddd132","_postman_id":"c832bd3e-570b-4669-b609-c851cdddd132","description":""},{"name":"Promos","item":[{"name":"Create promo","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('promoId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"49742d35-a197-44b3-84ad-cc9e3d97235a"}}],"id":"d5f597ff-b342-4c38-aae1-e82044c2dca7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"promo_type_id\": 1,\n    \"branch_id\": 1,\n    \"partner_id\": 1,\n    \"discount_type\": \"percentage\",\n    \"discount_value\": 20,\n    \"limit_per_user\": 2,\n    \"remaining_quantity\": 100,\n    \"is_active\": true,\n    \"title\": \"20% off\",\n    \"description\": \"Valid today.\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/promos","urlObject":{"path":["admin","partner-setup","promos"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"7ddd38ea-261f-4a4f-a47c-ac9bd0aa95ce","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/promos"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"promo_type_id\": 1,\n        \"branch_id\": 1,\n        \"partner_id\": 1,\n        \"discount_type\": \"percentage\",\n        \"discount_value\": 20,\n        \"limit_per_user\": 2,\n        \"remaining_quantity\": 100,\n        \"is_active\": true,\n        \"title\": \"20% off\",\n        \"description\": \"Valid today.\"\n    }\n}"}],"_postman_id":"d5f597ff-b342-4c38-aae1-e82044c2dca7"},{"name":"Update promo","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"3972d06b-8459-4aea-96ad-c97797bc0814"}}],"id":"f588fa4a-25ee-475d-8339-1a765033f497","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"title\": \"Updated promo\",\n    \"is_active\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/partner-setup/promos/1","urlObject":{"path":["admin","partner-setup","promos","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"09f2f6e1-a59e-4187-a995-8a27a50adcb6","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/promos/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"title\": \"Updated promo\",\n        \"is_active\": true\n    }\n}"}],"_postman_id":"f588fa4a-25ee-475d-8339-1a765033f497"},{"name":"Delete promo","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"2e02f784-7287-4b02-b810-7d0759448beb"}}],"id":"f5f7d833-9f37-427f-ba5e-6fedfb460d92","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/promos/1","urlObject":{"path":["admin","partner-setup","promos","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"197a1a7c-4a67-4432-a201-ed92b4ab76e8","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/promos/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"f5f7d833-9f37-427f-ba5e-6fedfb460d92"},{"name":"Restore promo","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"63ad1151-459b-4835-9631-60280fea510b"}}],"id":"dc417cc3-d5a9-458e-8c49-e9534640701f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/promos/1/restore","urlObject":{"path":["admin","partner-setup","promos","1","restore"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"9429a7d6-28eb-41a7-af18-804e11803bb6","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/promos/1/restore"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"dc417cc3-d5a9-458e-8c49-e9534640701f"},{"name":"Force delete promo","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"6ab848db-8580-4e88-9206-49b0cc2a1bd3"}}],"id":"c25c7aeb-eda7-4af3-9887-5eaa627af6ff","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/promos/1/force","urlObject":{"path":["admin","partner-setup","promos","1","force"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"36cd98ec-f9b3-445a-a309-490a54466744","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/partner-setup/promos/1/force"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"c25c7aeb-eda7-4af3-9887-5eaa627af6ff"}],"id":"b6a6c5be-cf50-4e3e-b1be-68e6cfe7e1aa","_postman_id":"b6a6c5be-cf50-4e3e-b1be-68e6cfe7e1aa","description":""}],"id":"71a681a5-0a67-4154-ad7c-8b5242fff902","description":"<p>Super-admin mutations for partners, branches, services, sub-branches, menus, promos, and loyalty cards.</p>\n","_postman_id":"71a681a5-0a67-4154-ad7c-8b5242fff902"},{"name":"Localizations","item":[{"name":"Public active locales","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"5291b7ab-61e6-46ff-b717-209f0edce433"}}],"id":"be651811-52ed-48e4-a3be-c68f0736cc8a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/localizations","urlObject":{"path":["localizations"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"8430c63a-28bc-4e98-9e3d-41edc12897a6","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/localizations"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"code\": \"en\",\n            \"name\": \"English\",\n            \"nativeName\": \"English\",\n            \"isActive\": true,\n            \"isDefault\": true,\n            \"sortOrder\": 0\n        }\n    ]\n}"}],"_postman_id":"be651811-52ed-48e4-a3be-c68f0736cc8a"},{"name":"List all locales","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"23faaa47-685a-4fe7-818c-812c9e3276bd"}}],"id":"23810337-261d-4392-a340-098d67cada8a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/localizations","urlObject":{"path":["admin","localizations"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"5f2b414c-f1ae-49cc-9f8f-4d0e0a8ef565","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/localizations"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"code\": \"en\",\n            \"name\": \"English\",\n            \"nativeName\": \"English\",\n            \"isActive\": true,\n            \"isDefault\": true,\n            \"sortOrder\": 0\n        }\n    ]\n}"}],"_postman_id":"23810337-261d-4392-a340-098d67cada8a"},{"name":"Create locale","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"6ac9a4a5-f3df-42bf-bc8d-d88566594038"}}],"id":"0e6b65a0-5c99-4a1a-ab8d-b16465c7deff","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"code\": \"tr\",\n    \"name\": \"Turkish\",\n    \"nativeName\": \"T\\u00fcrk\\u00e7e\",\n    \"isActive\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/localizations","urlObject":{"path":["admin","localizations"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"b3e50608-0970-4823-8772-598e1b6ebb35","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/localizations"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"code\": \"en\",\n            \"name\": \"English\",\n            \"nativeName\": \"English\",\n            \"isActive\": true,\n            \"isDefault\": true,\n            \"sortOrder\": 0\n        }\n    ]\n}"}],"_postman_id":"0e6b65a0-5c99-4a1a-ab8d-b16465c7deff"},{"name":"Update locale","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"43fddfe1-975b-4413-891a-1f8852d1d950"}}],"id":"382b102d-01cc-4d4c-931d-ef81a69dc186","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"isActive\": true,\n    \"isDefault\": false\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/localizations/1","urlObject":{"path":["admin","localizations","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"58fa66ec-aa4c-4f72-8342-0574dbc57aab","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/localizations/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"isActive\": true,\n        \"isDefault\": false\n    }\n}"}],"_postman_id":"382b102d-01cc-4d4c-931d-ef81a69dc186"},{"name":"Delete locale","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"c13c71db-a8f0-4190-ac76-e0175d924bea"}}],"id":"41696283-467c-4c71-ba61-6db834c895f9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/localizations/1","urlObject":{"path":["admin","localizations","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"f823f979-b9d1-494b-b751-f51cdb33bd18","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/localizations/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"41696283-467c-4c71-ba61-6db834c895f9"}],"id":"71dd4610-e92a-42a7-a644-b7aec952f495","description":"<p>Site locale management (enable/disable/add locales).</p>\n","_postman_id":"71dd4610-e92a-42a7-a644-b7aec952f495"},{"name":"UI messages","item":[{"name":"List languages","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"237940ff-09bd-4b24-a579-29f3073128c7"}}],"id":"9b2f7f57-3332-4d7d-b4b1-52f7b850db07","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/ui-messages/languages","urlObject":{"path":["ui-messages","languages"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"72b5f299-2a47-4727-9a91-68a972294ea6","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/ui-messages/languages"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"code\": \"en\",\n            \"name\": \"English\",\n            \"isActive\": true,\n            \"isDefault\": true,\n            \"sortOrder\": 0\n        }\n    ]\n}"}],"_postman_id":"9b2f7f57-3332-4d7d-b4b1-52f7b850db07"},{"name":"Reorder languages","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"1c9b3bb2-3288-4c3d-a862-096f91e73228"}}],"id":"5e59e1e4-dfa1-456c-8349-1d7d7735cbe6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"ids\": [\n        1,\n        2,\n        3\n    ]\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/ui-messages/languages/sort","description":"<h2 id=\"body\">Body</h2>\n<p><code>ids</code> — language IDs in desired order.</p>\n","urlObject":{"path":["ui-messages","languages","sort"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"cedec933-fdeb-487c-8478-f2b7b5bfba31","name":"OK","originalRequest":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/ui-messages/languages/sort"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"namespace\": \"languages\",\n        \"locale\": \"so\",\n        \"messages\": {\n            \"nav.dashboard\": \"Dashboard\"\n        },\n        \"updatedAt\": \"2026-08-31T00:00:00+00:00\"\n    }\n}"}],"_postman_id":"5e59e1e4-dfa1-456c-8349-1d7d7735cbe6"},{"name":"Create language","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"e93c6949-4d22-4d50-9ac4-09c7c5e7f90a"}}],"id":"8212af39-84d2-42c2-81f3-20d8374a2c98","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"code\": \"eo\",\n    \"name\": \"Esperanto\",\n    \"isActive\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/ui-messages/languages","urlObject":{"path":["ui-messages","languages"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"c101606f-a44b-4fda-9c8e-4c1dbfcf84f4","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/ui-messages/languages"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"code\": \"eo\",\n        \"name\": \"Esperanto\",\n        \"isActive\": true\n    }\n}"}],"_postman_id":"8212af39-84d2-42c2-81f3-20d8374a2c98"},{"name":"Update language","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"c6b4e5a0-27e2-4e39-a107-3b52f8a58e34"}}],"id":"fb7a8831-5034-4a86-93a8-35f89161544a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"name\": \"Esperanto\",\n    \"isActive\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/ui-messages/languages/1","urlObject":{"path":["ui-messages","languages","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"49c75744-6600-4a99-b48d-bc2423cbf5be","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/ui-messages/languages/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"name\": \"Esperanto\",\n        \"isActive\": true\n    }\n}"}],"_postman_id":"fb7a8831-5034-4a86-93a8-35f89161544a"},{"name":"Delete language","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"146cecf8-eed9-41a7-9500-4603fd71c35d"}}],"id":"b4d9878f-f027-4201-a6d5-f74141a0b135","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/ui-messages/languages/1","urlObject":{"path":["ui-messages","languages","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"c5f2f9b4-4e10-4c4c-b9ba-d5e939703906","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/ui-messages/languages/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"b4d9878f-f027-4201-a6d5-f74141a0b135"},{"name":"Restore language","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"f9e05ee0-b65f-47c4-9f0b-d1594200ff34"}}],"id":"4f2f18ca-89db-49bf-9c47-59d3c0ac21ad","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/ui-messages/languages/1/restore","urlObject":{"path":["ui-messages","languages","1","restore"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"c669c5f9-a1e9-4763-ac23-53e4bc58ac73","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/ui-messages/languages/1/restore"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"4f2f18ca-89db-49bf-9c47-59d3c0ac21ad"},{"name":"List namespaces","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"c70a9763-0556-4fee-bf8e-7fe14aa27446"}}],"id":"0c1d1945-600f-4819-a16d-b9d891af6954","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/ui-messages/namespaces","urlObject":{"path":["ui-messages","namespaces"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"9e9fecee-8669-45cb-8503-dc52ceca73bc","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/ui-messages/namespaces"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": \"admin-panel\",\n            \"label\": \"Admin panel\"\n        },\n        {\n            \"id\": \"user-panel\",\n            \"label\": \"User panel\"\n        },\n        {\n            \"id\": \"validator-panel\",\n            \"label\": \"Validator panel\"\n        }\n    ]\n}"}],"_postman_id":"0c1d1945-600f-4819-a16d-b9d891af6954"},{"name":"Get messages","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"9ee06419-3336-4fbe-a22c-153216df4786"}}],"id":"84c34228-a347-493d-99b5-a584659a091e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/ui-messages/admin-panel/en","urlObject":{"path":["ui-messages","admin-panel","en"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"93e5a438-8560-4a5f-97a7-a94447c67b3c","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/ui-messages/admin-panel/en"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"84c34228-a347-493d-99b5-a584659a091e"},{"name":"Update messages","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"c7ea77df-43ea-4534-93b9-ec4e372b006b"}}],"id":"537115e5-bc88-4113-ad63-abbeeed2edd9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"messages\": {\n        \"nav.dashboard\": \"Dashboard\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/ui-messages/admin-panel/en","urlObject":{"path":["ui-messages","admin-panel","en"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"2ad79090-800b-45f5-95e1-a730b40dde74","name":"OK","originalRequest":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/ui-messages/admin-panel/en"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"messages\": {\n            \"nav.dashboard\": \"Dashboard\"\n        }\n    }\n}"}],"_postman_id":"537115e5-bc88-4113-ad63-abbeeed2edd9"},{"name":"Download messages","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"f0f8e7bd-acb8-4fa6-9a97-43f199c50e23"}}],"id":"b3acb531-326c-49f0-862a-860569546edb","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/ui-messages/admin-panel/en/download","urlObject":{"path":["ui-messages","admin-panel","en","download"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"1c3a0455-24d1-4655-975c-de269ca088ce","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/ui-messages/admin-panel/en/download"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"b3acb531-326c-49f0-862a-860569546edb"}],"id":"904a62e2-49c7-464e-a03f-cd7b705ee00c","description":"<p>i18n message management for all frontends.</p>\n","_postman_id":"904a62e2-49c7-464e-a03f-cd7b705ee00c"},{"name":"Library (REST)","item":[{"name":"Uploads","item":[{"name":"Upload image","id":"17f8c21c-7646-48a7-a21e-db47c7a8b017","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer "},{"key":"Accept","value":"application/json"}],"body":{"mode":"formdata","formdata":[{"key":"file","type":"file","value":""},{"key":"folder","value":"icons","type":"text"}]},"url":"https://api.loya.cc/api/v1/admin/uploads","urlObject":{"path":["admin","uploads"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"10eadaff-cb4d-4129-ae28-943ffadb1618","name":"Created","originalRequest":{"method":"POST","header":[],"url":"https://api.loya.cc/api/v1/admin/uploads"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"path\": \"library/icons/example.png\",\n        \"url\": \"https://cdn.loya.cc/library/icons/example.png\",\n        \"version\": 1756598400\n    }\n}"}],"_postman_id":"17f8c21c-7646-48a7-a21e-db47c7a8b017"}],"id":"4bd2b07b-034b-4477-b399-b95ba93206ee","_postman_id":"4bd2b07b-034b-4477-b399-b95ba93206ee","description":""},{"name":"Icons","item":[{"name":"List","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('iconsId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"eb59c7d1-78ea-4a81-b162-2b5b4821a518"}}],"id":"ab1a5981-a527-4dcb-82e7-960e9633098a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/icons?page=1&per_page=25&search=&sort=","description":"<h2 id=\"summary\">Summary</h2>\n<p>Paginated Library list for <code>icons</code>.</p>\n","urlObject":{"path":["admin","icons"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Page number</p>\n","type":"text/plain"},"key":"page","value":"1"},{"description":{"content":"<p>Page size (max 100; icons max 200)</p>\n","type":"text/plain"},"key":"per_page","value":"25"},{"description":{"content":"<p>Search query</p>\n","type":"text/plain"},"key":"search","value":""},{"description":{"content":"<p>Column name; prefix with - for descending</p>\n","type":"text/plain"},"key":"sort","value":""}],"variable":[]}},"response":[{"id":"c4368626-13fb-4908-a34d-c457f2306665","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/icons?page=1&per_page=25&search=&sort=","host":["https://api.loya.cc/api/v1"],"path":["admin","icons"],"query":[{"key":"page","value":"1","description":"Page number"},{"key":"per_page","value":"25","description":"Page size (max 100; icons max 200)"},{"key":"search","value":"","description":"Search query"},{"key":"sort","value":"","description":"Column name; prefix with - for descending"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"attributes\": {\n                \"name\": \"Example\"\n            },\n            \"relations\": {},\n            \"translations\": {},\n            \"counts\": {},\n            \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"ab1a5981-a527-4dcb-82e7-960e9633098a"},{"name":"Get one","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"4930bd1c-caa9-42e0-b621-913296818f80"}}],"id":"4906ef45-a6f5-401b-80e8-729f7164a4f3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/icons/1","urlObject":{"path":["admin","icons","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"7b66f388-a2e5-447f-8a09-c2b352ebb270","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/icons/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"4906ef45-a6f5-401b-80e8-729f7164a4f3"},{"name":"Create","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('iconsId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"90f76091-deb3-4d03-abc3-9a7284ac551c"}}],"id":"50414d75-1a7c-4d8b-8a98-d7d64e442dbd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"Restaurant\",\n    \"path\": \"icons/mui/Restaurant.svg\",\n    \"source\": \"mui\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/icons","urlObject":{"path":["admin","icons"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"6ac8a309-eec1-4419-a5e9-0338930bd7b5","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/icons"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"attributes\": {\n            \"key\": \"Restaurant\",\n            \"path\": \"icons/mui/Restaurant.svg\",\n            \"source\": \"mui\"\n        },\n        \"relations\": {},\n        \"translations\": {},\n        \"counts\": {},\n        \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n    }\n}"}],"_postman_id":"50414d75-1a7c-4d8b-8a98-d7d64e442dbd"},{"name":"Update","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"1103f5bd-96b6-4723-b9e1-b342d61e2149"}}],"id":"c6ddd41e-d834-4536-854d-d67bd0c8fa41","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"Restaurant\",\n    \"path\": \"icons/mui/Restaurant.svg\",\n    \"source\": \"mui\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/icons/1","urlObject":{"path":["admin","icons","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"133e4f63-d148-4e56-9206-ca78b56474f8","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/icons/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"key\": \"Restaurant\",\n        \"path\": \"icons/mui/Restaurant.svg\",\n        \"source\": \"mui\"\n    }\n}"}],"_postman_id":"c6ddd41e-d834-4536-854d-d67bd0c8fa41"},{"name":"Delete","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"0c72f3b7-4c5c-4a4e-9989-2999f66a5c35"}}],"id":"b9ef7efa-31a8-4f2b-be35-5a31e80bcdd6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/icons/1","urlObject":{"path":["admin","icons","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"5c37f02e-fbab-4339-8de3-c41acb9ff849","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/icons/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"b9ef7efa-31a8-4f2b-be35-5a31e80bcdd6"}],"id":"df727a2b-341f-4cd2-8361-4b1ad8355c50","_postman_id":"df727a2b-341f-4cd2-8361-4b1ad8355c50","description":""},{"name":"Categories","item":[{"name":"List","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('categoriesId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"62f91a9c-a88e-4fc9-a44a-af26f77a2d59"}}],"id":"3c56f681-f9a2-4c8e-835b-d97e05b7fa8d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/categories?page=1&per_page=25&search=&sort=","description":"<h2 id=\"summary\">Summary</h2>\n<p>Paginated Library list for <code>categories</code>.</p>\n<h2 id=\"soft-deletes\">Soft deletes</h2>\n<p>Pass <code>trashed=1</code> to list only deleted rows, then <strong>Restore</strong> or <strong>Force delete</strong>.</p>\n","urlObject":{"path":["admin","categories"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Page number</p>\n","type":"text/plain"},"key":"page","value":"1"},{"description":{"content":"<p>Page size (max 100; icons max 200)</p>\n","type":"text/plain"},"key":"per_page","value":"25"},{"description":{"content":"<p>Search query</p>\n","type":"text/plain"},"key":"search","value":""},{"description":{"content":"<p>Column name; prefix with - for descending</p>\n","type":"text/plain"},"key":"sort","value":""},{"disabled":true,"description":{"content":"<p>Set 1 to list only soft-deleted rows</p>\n","type":"text/plain"},"key":"trashed","value":"1"}],"variable":[]}},"response":[{"id":"923ae1d3-ce14-4453-9b9a-5b950e019197","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/categories?page=1&per_page=25&search=&sort=","host":["https://api.loya.cc/api/v1"],"path":["admin","categories"],"query":[{"key":"page","value":"1","description":"Page number"},{"key":"per_page","value":"25","description":"Page size (max 100; icons max 200)"},{"key":"search","value":"","description":"Search query"},{"key":"sort","value":"","description":"Column name; prefix with - for descending"},{"key":"trashed","value":"1","description":"Set 1 to list only soft-deleted rows","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"attributes\": {\n                \"name\": \"Example\"\n            },\n            \"relations\": {},\n            \"translations\": {},\n            \"counts\": {},\n            \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"3c56f681-f9a2-4c8e-835b-d97e05b7fa8d"},{"name":"Get one","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"b136bfb4-41c0-43a4-86bf-fc9d492f9dce"}}],"id":"94467334-b81d-468d-80ad-053b9fa31480","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/categories/1","urlObject":{"path":["admin","categories","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"e24affe5-a456-4a3d-a8ec-a6fa31422896","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/categories/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"94467334-b81d-468d-80ad-053b9fa31480"},{"name":"Create","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('categoriesId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"7868708c-56ac-4414-aa39-2deec931a91f"}}],"id":"f3bf336e-d498-4173-8bce-ba9dfd973dfa","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"slug\": \"dining\",\n    \"icon\": \"icons/mui/Restaurant.svg\",\n    \"sort_order\": 1,\n    \"translations\": {\n        \"name\": {\n            \"en\": \"Dining\",\n            \"az\": \"Yem\\u0259k\",\n            \"ru\": \"\\u041f\\u0438\\u0442\\u0430\\u043d\\u0438\\u0435\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/categories","urlObject":{"path":["admin","categories"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"0ac17ed6-c49c-47f4-a667-2acde98574e7","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/categories"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"attributes\": {\n            \"slug\": \"dining\",\n            \"icon\": \"icons/mui/Restaurant.svg\",\n            \"sort_order\": 1\n        },\n        \"relations\": {},\n        \"translations\": {\n            \"name\": {\n                \"en\": \"Dining\",\n                \"az\": \"Yemək\",\n                \"ru\": \"Питание\"\n            }\n        },\n        \"counts\": {},\n        \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n    }\n}"}],"_postman_id":"f3bf336e-d498-4173-8bce-ba9dfd973dfa"},{"name":"Update","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"00467d13-1254-4b89-b88a-4d4f3198b16f"}}],"id":"5b4f06af-0233-4b0a-8ef0-b251c6b30e81","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"slug\": \"dining\",\n    \"icon\": \"icons/mui/Restaurant.svg\",\n    \"sort_order\": 1,\n    \"translations\": {\n        \"name\": {\n            \"en\": \"Dining\",\n            \"az\": \"Yem\\u0259k\",\n            \"ru\": \"\\u041f\\u0438\\u0442\\u0430\\u043d\\u0438\\u0435\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/categories/1","urlObject":{"path":["admin","categories","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"85b64b34-8127-4fcd-b96e-e26c7ad75188","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/categories/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"slug\": \"dining\",\n        \"icon\": \"icons/mui/Restaurant.svg\",\n        \"sort_order\": 1,\n        \"translations\": {\n            \"name\": {\n                \"en\": \"Dining\",\n                \"az\": \"Yemək\",\n                \"ru\": \"Питание\"\n            }\n        }\n    }\n}"}],"_postman_id":"5b4f06af-0233-4b0a-8ef0-b251c6b30e81"},{"name":"Delete","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"05b9cdda-f7a4-40eb-8f66-630207682859"}}],"id":"bcd14cc0-346f-45f7-bf46-ab908482bbf7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/categories/1","urlObject":{"path":["admin","categories","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"932ae40b-474b-4f30-9880-8abbdb06ac05","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/categories/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"bcd14cc0-346f-45f7-bf46-ab908482bbf7"},{"name":"Restore","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"804e3d0c-3a31-4427-9e88-3f8fe0afd9b2"}}],"id":"915588d3-b3ab-4a8a-84a5-075d13485f7c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/categories/1/restore","description":"<h2 id=\"summary\">Summary</h2>\n<p>Restore a soft-deleted row (<code>trashed=1</code> list).</p>\n","urlObject":{"path":["admin","categories","1","restore"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"0355d602-fae6-4ca3-a0d7-9229dda540e3","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/categories/1/restore"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"915588d3-b3ab-4a8a-84a5-075d13485f7c"},{"name":"Force delete","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"a33c7220-78ec-4927-8686-da5d4c065807"}}],"id":"a1808738-5853-48af-9908-499aea02388c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/categories/1/force","description":"<h2 id=\"summary\">Summary</h2>\n<p>Permanently delete (active or trashed). Fails with <code>422</code> if still referenced.</p>\n","urlObject":{"path":["admin","categories","1","force"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"022293ca-50ad-4358-a80b-c7650c9762c7","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/categories/1/force"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"a1808738-5853-48af-9908-499aea02388c"},{"name":"Sort list","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"97ce6052-b887-4ecd-a6c9-dbf6f68679c9"}}],"id":"78b63a6c-3eb4-4cd7-a433-09b58910d6d7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/categories/sort","description":"<h2 id=\"summary\">Summary</h2>\n<p>Ordered rows for drag-and-drop sort UI.</p>\n","urlObject":{"path":["admin","categories","sort"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"a8561663-3d68-40c1-a80a-05b4c690914e","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/categories/sort"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"name\": \"Example\",\n            \"sort_order\": 0\n        }\n    ],\n    \"meta\": {\n        \"scope\": null,\n        \"scopeValue\": null\n    }\n}"}],"_postman_id":"78b63a6c-3eb4-4cd7-a433-09b58910d6d7"},{"name":"Reorder","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"e404f17b-7233-41dc-9480-9f5ab08f837e"}}],"id":"e234044c-a35f-46d1-86e9-5c2e8f46d22c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"ids\": [\n        1,\n        2,\n        3\n    ]\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/categories/sort","description":"<h2 id=\"body\">Body</h2>\n<p><code>ids</code> — ordered record IDs.</p>\n","urlObject":{"path":["admin","categories","sort"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"b05342b1-1d9b-44d8-8ae0-573c955b46b8","name":"OK","originalRequest":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/categories/sort"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 3\n    }\n}"}],"_postman_id":"e234044c-a35f-46d1-86e9-5c2e8f46d22c"}],"id":"1f7d6b05-ee5c-46f0-b55c-3c4c6cb7a349","_postman_id":"1f7d6b05-ee5c-46f0-b55c-3c4c6cb7a349","description":""},{"name":"Subcategories","item":[{"name":"List","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('subcategoriesId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"3b262c24-7c1f-4445-a855-05d53f5fe1c8"}}],"id":"531b4900-484c-4036-ba20-01cdd38ff40b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/subcategories?page=1&per_page=25&search=&sort=&category_id=1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Paginated Library list for <code>subcategories</code>.</p>\n<h2 id=\"soft-deletes\">Soft deletes</h2>\n<p>Pass <code>trashed=1</code> to list only deleted rows, then <strong>Restore</strong> or <strong>Force delete</strong>.</p>\n","urlObject":{"path":["admin","subcategories"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Page number</p>\n","type":"text/plain"},"key":"page","value":"1"},{"description":{"content":"<p>Page size (max 100; icons max 200)</p>\n","type":"text/plain"},"key":"per_page","value":"25"},{"description":{"content":"<p>Search query</p>\n","type":"text/plain"},"key":"search","value":""},{"description":{"content":"<p>Column name; prefix with - for descending</p>\n","type":"text/plain"},"key":"sort","value":""},{"description":{"content":"<p>Filter / sort scope</p>\n","type":"text/plain"},"key":"category_id","value":"1"},{"disabled":true,"description":{"content":"<p>Set 1 to list only soft-deleted rows</p>\n","type":"text/plain"},"key":"trashed","value":"1"}],"variable":[]}},"response":[{"id":"f7b54495-5b07-423f-9a0b-599f242828e0","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/subcategories?page=1&per_page=25&search=&sort=&category_id=1","host":["https://api.loya.cc/api/v1"],"path":["admin","subcategories"],"query":[{"key":"page","value":"1","description":"Page number"},{"key":"per_page","value":"25","description":"Page size (max 100; icons max 200)"},{"key":"search","value":"","description":"Search query"},{"key":"sort","value":"","description":"Column name; prefix with - for descending"},{"key":"category_id","value":"1","description":"Filter / sort scope"},{"key":"trashed","value":"1","description":"Set 1 to list only soft-deleted rows","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"attributes\": {\n                \"name\": \"Example\"\n            },\n            \"relations\": {},\n            \"translations\": {},\n            \"counts\": {},\n            \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"531b4900-484c-4036-ba20-01cdd38ff40b"},{"name":"Get one","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"3313751c-f9c1-49e3-96e3-4cd948c18217"}}],"id":"86738a5d-37c2-4c93-8b3d-defb8392d380","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/subcategories/1","urlObject":{"path":["admin","subcategories","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"1f3812f2-8a4c-4c1d-8271-7e700aab4bf1","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/subcategories/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"86738a5d-37c2-4c93-8b3d-defb8392d380"},{"name":"Create","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('subcategoriesId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"56dfe992-3c4b-446b-b5bd-9e11aeede14d"}}],"id":"29f36f56-a2a8-4e33-aa4c-ec642e82a13b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"category_id\": 1,\n    \"slug\": \"restaurant\",\n    \"icon\": \"store\",\n    \"sort_order\": 1,\n    \"is_active\": true,\n    \"translations\": {\n        \"name\": {\n            \"en\": \"Restaurant\",\n            \"az\": \"Restoran\",\n            \"ru\": \"\\u0420\\u0435\\u0441\\u0442\\u043e\\u0440\\u0430\\u043d\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/subcategories","urlObject":{"path":["admin","subcategories"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"aa97ba84-7f98-4c48-8589-f5dcfa99c1a1","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/subcategories"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"attributes\": {\n            \"category_id\": 1,\n            \"slug\": \"restaurant\",\n            \"icon\": \"store\",\n            \"sort_order\": 1,\n            \"is_active\": true\n        },\n        \"relations\": {},\n        \"translations\": {\n            \"name\": {\n                \"en\": \"Restaurant\",\n                \"az\": \"Restoran\",\n                \"ru\": \"Ресторан\"\n            }\n        },\n        \"counts\": {},\n        \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n    }\n}"}],"_postman_id":"29f36f56-a2a8-4e33-aa4c-ec642e82a13b"},{"name":"Update","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"d29bfb57-0f70-427a-aa6a-bb46fce84f7f"}}],"id":"ebca2596-e8c8-46fb-a2d6-28e4001adfb2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"category_id\": 1,\n    \"slug\": \"restaurant\",\n    \"icon\": \"store\",\n    \"sort_order\": 1,\n    \"is_active\": true,\n    \"translations\": {\n        \"name\": {\n            \"en\": \"Restaurant\",\n            \"az\": \"Restoran\",\n            \"ru\": \"\\u0420\\u0435\\u0441\\u0442\\u043e\\u0440\\u0430\\u043d\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/subcategories/1","urlObject":{"path":["admin","subcategories","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"3438413f-350a-4769-b011-811fac28887c","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/subcategories/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"category_id\": 1,\n        \"slug\": \"restaurant\",\n        \"icon\": \"store\",\n        \"sort_order\": 1,\n        \"is_active\": true,\n        \"translations\": {\n            \"name\": {\n                \"en\": \"Restaurant\",\n                \"az\": \"Restoran\",\n                \"ru\": \"Ресторан\"\n            }\n        }\n    }\n}"}],"_postman_id":"ebca2596-e8c8-46fb-a2d6-28e4001adfb2"},{"name":"Delete","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"a9f55792-3425-461d-b2ff-231b5af64f35"}}],"id":"70e45661-c065-4644-925d-4452b505b437","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/subcategories/1","urlObject":{"path":["admin","subcategories","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"e121632c-4299-46ab-9123-ce7353a84306","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/subcategories/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"70e45661-c065-4644-925d-4452b505b437"},{"name":"Restore","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"91c908c9-84c3-4267-baf1-0e5018ea7c5c"}}],"id":"673b2717-cd44-4767-be2a-eafe4d698830","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/subcategories/1/restore","description":"<h2 id=\"summary\">Summary</h2>\n<p>Restore a soft-deleted row (<code>trashed=1</code> list).</p>\n","urlObject":{"path":["admin","subcategories","1","restore"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"e5c87ccd-2b6a-4abc-8fbe-852d2d05c1ec","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/subcategories/1/restore"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"673b2717-cd44-4767-be2a-eafe4d698830"},{"name":"Force delete","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"b382ea5d-e27e-48a3-9aa1-6b61d3f33c9c"}}],"id":"99d48136-2d11-447e-b6d9-91f7c221b031","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/subcategories/1/force","description":"<h2 id=\"summary\">Summary</h2>\n<p>Permanently delete (active or trashed). Fails with <code>422</code> if still referenced.</p>\n","urlObject":{"path":["admin","subcategories","1","force"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"ca551fe8-712b-44db-906a-04cde44c80f4","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/subcategories/1/force"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"99d48136-2d11-447e-b6d9-91f7c221b031"},{"name":"Sort list","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"973b28ea-18b2-4f1b-a069-87128cbbefec"}}],"id":"3ee96711-04b5-4ab5-80de-4fd8642d4367","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/subcategories/sort?category_id=1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Ordered rows for drag-and-drop sort UI. Requires <code>category_id</code>.</p>\n","urlObject":{"path":["admin","subcategories","sort"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Required sort scope</p>\n","type":"text/plain"},"key":"category_id","value":"1"}],"variable":[]}},"response":[{"id":"46da9af1-3929-4089-aab0-93237b3e18bb","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/subcategories/sort?category_id=1","host":["https://api.loya.cc/api/v1"],"path":["admin","subcategories","sort"],"query":[{"key":"category_id","value":"1","description":"Required sort scope"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"name\": \"Example\",\n            \"sort_order\": 0\n        }\n    ],\n    \"meta\": {\n        \"scope\": null,\n        \"scopeValue\": null\n    }\n}"}],"_postman_id":"3ee96711-04b5-4ab5-80de-4fd8642d4367"},{"name":"Reorder","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"bd1e16d8-4414-41b7-b617-edc7e97ac46b"}}],"id":"47f7174d-611d-4856-b3a7-54852af0b558","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"ids\": [\n        1,\n        2,\n        3\n    ],\n    \"category_id\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/subcategories/sort","description":"<h2 id=\"body\">Body</h2>\n<p><code>ids</code> — ordered record IDs. Also send <code>category_id</code>.</p>\n","urlObject":{"path":["admin","subcategories","sort"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"1d640d86-aaad-4100-a0d0-fd8a0de98bd5","name":"OK","originalRequest":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/subcategories/sort"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 3\n    }\n}"}],"_postman_id":"47f7174d-611d-4856-b3a7-54852af0b558"},{"name":"Bulk disable","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"331f7f13-3120-4390-a6f6-a03be441e900"}}],"id":"91354abe-e437-4b45-8e29-9dc79dcc7305","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"is_active\": false,\n    \"category_id\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/subcategories/bulk-active","description":"<h2 id=\"summary\">Summary</h2>\n<p>Set <code>is_active</code> on all Subcategories rows (omit scope to affect every row). Optional <code>category_id</code> limits the update to that parent.</p>\n<h2 id=\"body\">Body</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>is_active</td>\n<td>boolean</td>\n<td>yes</td>\n<td><code>false</code> disables, <code>true</code> enables</td>\n</tr>\n<tr>\n<td>category_id</td>\n<td>int</td>\n<td>no</td>\n<td>Limit to this parent; omit to update all</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-200\">Response <code>200</code></h2>\n<p><code>json\\n{\\n  \"data\": { \"updated\": 12, \"isActive\": false }\\n}\\n</code></p>\n","urlObject":{"path":["admin","subcategories","bulk-active"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"54a9d32a-dedb-4a9c-a077-2e55c157e206","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/subcategories/bulk-active"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 12,\n        \"isActive\": false\n    }\n}"}],"_postman_id":"91354abe-e437-4b45-8e29-9dc79dcc7305"},{"name":"Bulk enable","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"ce47abe2-2aaf-4bca-8256-acf4310378ee"}}],"id":"04520d0a-af2f-48a9-8cf8-913ac2ee58c9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"is_active\": true,\n    \"category_id\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/subcategories/bulk-active","description":"<h2 id=\"summary\">Summary</h2>\n<p>Enable all Subcategories rows (same endpoint as Bulk disable).</p>\n","urlObject":{"path":["admin","subcategories","bulk-active"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"bbff09a6-72ab-483f-9648-e20230894e4e","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/subcategories/bulk-active"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 12,\n        \"isActive\": true\n    }\n}"}],"_postman_id":"04520d0a-af2f-48a9-8cf8-913ac2ee58c9"}],"id":"31f338c9-7307-4c82-95a7-3c846c33f8b8","_postman_id":"31f338c9-7307-4c82-95a7-3c846c33f8b8","description":""},{"name":"Countries","item":[{"name":"List","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('countriesId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"d0475630-1806-4ca3-9a52-fe59471924eb"}}],"id":"b1fc18b5-d2df-41d1-8680-e057698745d3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/countries?page=1&per_page=25&search=&sort=","description":"<h2 id=\"summary\">Summary</h2>\n<p>Paginated Library list for <code>countries</code>.</p>\n","urlObject":{"path":["admin","countries"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Page number</p>\n","type":"text/plain"},"key":"page","value":"1"},{"description":{"content":"<p>Page size (max 100; icons max 200)</p>\n","type":"text/plain"},"key":"per_page","value":"25"},{"description":{"content":"<p>Search query</p>\n","type":"text/plain"},"key":"search","value":""},{"description":{"content":"<p>Column name; prefix with - for descending</p>\n","type":"text/plain"},"key":"sort","value":""}],"variable":[]}},"response":[{"id":"e79d5ed5-277c-4e52-a6d4-e4df688ab48e","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/countries?page=1&per_page=25&search=&sort=","host":["https://api.loya.cc/api/v1"],"path":["admin","countries"],"query":[{"key":"page","value":"1","description":"Page number"},{"key":"per_page","value":"25","description":"Page size (max 100; icons max 200)"},{"key":"search","value":"","description":"Search query"},{"key":"sort","value":"","description":"Column name; prefix with - for descending"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"attributes\": {\n                \"name\": \"Example\"\n            },\n            \"relations\": {},\n            \"translations\": {},\n            \"counts\": {},\n            \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"b1fc18b5-d2df-41d1-8680-e057698745d3"},{"name":"Get one","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"66993256-87f2-47d2-bd25-a557192bdccb"}}],"id":"a6264554-fb79-4ef4-95ea-ea9765ccb70e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/countries/1","urlObject":{"path":["admin","countries","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"d8836180-050e-44d5-b057-22df2bb43004","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/countries/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"a6264554-fb79-4ef4-95ea-ea9765ccb70e"},{"name":"Create","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('countriesId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"53b6b225-cf17-44a0-a599-cf9f79b0b6fe"}}],"id":"57116e36-52b3-4af8-9bfd-0874e4a2f9b6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"slug\": \"azerbaijan\",\n    \"code\": \"AZ\",\n    \"flag_icon\": \"flags/az.svg\",\n    \"is_active\": true,\n    \"has_states\": false,\n    \"sort_order\": 1,\n    \"latitude\": 40.1431,\n    \"longitude\": 47.5769,\n    \"translations\": {\n        \"name\": {\n            \"en\": \"Azerbaijan\",\n            \"az\": \"Az\\u0259rbaycan\",\n            \"ru\": \"\\u0410\\u0437\\u0435\\u0440\\u0431\\u0430\\u0439\\u0434\\u0436\\u0430\\u043d\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/countries","urlObject":{"path":["admin","countries"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"ed999e23-b3f0-479d-aee2-caa11a2b161a","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/countries"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"attributes\": {\n            \"slug\": \"azerbaijan\",\n            \"code\": \"AZ\",\n            \"flag_icon\": \"flags/az.svg\",\n            \"is_active\": true,\n            \"has_states\": false,\n            \"sort_order\": 1,\n            \"latitude\": 40.1431,\n            \"longitude\": 47.5769\n        },\n        \"relations\": {},\n        \"translations\": {\n            \"name\": {\n                \"en\": \"Azerbaijan\",\n                \"az\": \"Azərbaycan\",\n                \"ru\": \"Азербайджан\"\n            }\n        },\n        \"counts\": {},\n        \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n    }\n}"}],"_postman_id":"57116e36-52b3-4af8-9bfd-0874e4a2f9b6"},{"name":"Update","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"e1d21706-543c-4967-893b-6a043e356d3d"}}],"id":"c1c2e33e-dc67-40f2-9377-e48aa281cdc6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"slug\": \"azerbaijan\",\n    \"code\": \"AZ\",\n    \"flag_icon\": \"flags/az.svg\",\n    \"is_active\": true,\n    \"has_states\": false,\n    \"sort_order\": 1,\n    \"latitude\": 40.1431,\n    \"longitude\": 47.5769,\n    \"translations\": {\n        \"name\": {\n            \"en\": \"Azerbaijan\",\n            \"az\": \"Az\\u0259rbaycan\",\n            \"ru\": \"\\u0410\\u0437\\u0435\\u0440\\u0431\\u0430\\u0439\\u0434\\u0436\\u0430\\u043d\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/countries/1","urlObject":{"path":["admin","countries","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"3117319f-2758-4409-8d0f-e62082cfa831","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/countries/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"slug\": \"azerbaijan\",\n        \"code\": \"AZ\",\n        \"flag_icon\": \"flags/az.svg\",\n        \"is_active\": true,\n        \"has_states\": false,\n        \"sort_order\": 1,\n        \"latitude\": 40.1431,\n        \"longitude\": 47.5769,\n        \"translations\": {\n            \"name\": {\n                \"en\": \"Azerbaijan\",\n                \"az\": \"Azərbaycan\",\n                \"ru\": \"Азербайджан\"\n            }\n        }\n    }\n}"}],"_postman_id":"c1c2e33e-dc67-40f2-9377-e48aa281cdc6"},{"name":"Delete","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"91653df0-5703-4ee2-a337-e701ea4d6277"}}],"id":"fce8ed71-7936-46fa-aa73-736aba7c9077","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/countries/1","urlObject":{"path":["admin","countries","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"45c008f8-4aa9-4580-88ec-2e90b5a92e8d","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/countries/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"fce8ed71-7936-46fa-aa73-736aba7c9077"},{"name":"Sort list","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"9e0e1a2a-5091-4908-b3ed-aece47ca3f95"}}],"id":"e4e8853e-818b-4c5a-a656-af9fdba9a324","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/countries/sort","description":"<h2 id=\"summary\">Summary</h2>\n<p>Ordered rows for drag-and-drop sort UI.</p>\n","urlObject":{"path":["admin","countries","sort"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"95f07976-0d88-4218-b9c8-ee8ca96f58a2","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/countries/sort"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"name\": \"Example\",\n            \"sort_order\": 0\n        }\n    ],\n    \"meta\": {\n        \"scope\": null,\n        \"scopeValue\": null\n    }\n}"}],"_postman_id":"e4e8853e-818b-4c5a-a656-af9fdba9a324"},{"name":"Reorder","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"49349827-950f-4a17-851c-24a07a65e24d"}}],"id":"668ad058-622b-45b5-96d8-e99f02552848","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"ids\": [\n        1,\n        2,\n        3\n    ]\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/countries/sort","description":"<h2 id=\"body\">Body</h2>\n<p><code>ids</code> — ordered record IDs.</p>\n","urlObject":{"path":["admin","countries","sort"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"85d95d16-3c81-4c6c-a0a5-d2a77839a140","name":"OK","originalRequest":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/countries/sort"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 3\n    }\n}"}],"_postman_id":"668ad058-622b-45b5-96d8-e99f02552848"},{"name":"Bulk disable","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"5687226c-65c8-45cf-af62-24959f713766"}}],"id":"948bfb60-6cf8-4648-bf22-6ad9798ed747","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"is_active\": false\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/countries/bulk-active","description":"<h2 id=\"summary\">Summary</h2>\n<p>Set <code>is_active</code> on all Countries rows (omit scope to affect every row).</p>\n<h2 id=\"body\">Body</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>is_active</td>\n<td>boolean</td>\n<td>yes</td>\n<td><code>false</code> disables, <code>true</code> enables</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-200\">Response <code>200</code></h2>\n<p><code>json\\n{\\n  \"data\": { \"updated\": 12, \"isActive\": false }\\n}\\n</code></p>\n","urlObject":{"path":["admin","countries","bulk-active"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"333b8f3e-8ff6-4c48-a71d-661433491027","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/countries/bulk-active"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 12,\n        \"isActive\": false\n    }\n}"}],"_postman_id":"948bfb60-6cf8-4648-bf22-6ad9798ed747"},{"name":"Bulk enable","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"3bd613b8-eda7-470e-8c35-5ce5cc2124b1"}}],"id":"a66fe937-0f8c-438f-923d-2ef7bf20d89e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"is_active\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/countries/bulk-active","description":"<h2 id=\"summary\">Summary</h2>\n<p>Enable all Countries rows (same endpoint as Bulk disable).</p>\n","urlObject":{"path":["admin","countries","bulk-active"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"55e900ee-116d-41e9-9134-9cab73c75261","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/countries/bulk-active"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 12,\n        \"isActive\": true\n    }\n}"}],"_postman_id":"a66fe937-0f8c-438f-923d-2ef7bf20d89e"}],"id":"877b5a2c-bfdd-4841-80d7-041efa9f4166","_postman_id":"877b5a2c-bfdd-4841-80d7-041efa9f4166","description":""},{"name":"States","item":[{"name":"List","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('statesId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"69b6e2f7-bbeb-4de3-bb13-138e1d62997a"}}],"id":"e3157d6f-2f93-420c-af3c-3216b2ecd15d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/states?page=1&per_page=25&search=&sort=&country_id=1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Paginated Library list for <code>states</code>.</p>\n","urlObject":{"path":["admin","states"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Page number</p>\n","type":"text/plain"},"key":"page","value":"1"},{"description":{"content":"<p>Page size (max 100; icons max 200)</p>\n","type":"text/plain"},"key":"per_page","value":"25"},{"description":{"content":"<p>Search query</p>\n","type":"text/plain"},"key":"search","value":""},{"description":{"content":"<p>Column name; prefix with - for descending</p>\n","type":"text/plain"},"key":"sort","value":""},{"description":{"content":"<p>Filter / sort scope</p>\n","type":"text/plain"},"key":"country_id","value":"1"}],"variable":[]}},"response":[{"id":"946a6dd2-8ac1-4151-afcf-00369e21b134","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/states?page=1&per_page=25&search=&sort=&country_id=1","host":["https://api.loya.cc/api/v1"],"path":["admin","states"],"query":[{"key":"page","value":"1","description":"Page number"},{"key":"per_page","value":"25","description":"Page size (max 100; icons max 200)"},{"key":"search","value":"","description":"Search query"},{"key":"sort","value":"","description":"Column name; prefix with - for descending"},{"key":"country_id","value":"1","description":"Filter / sort scope"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"attributes\": {\n                \"name\": \"Example\"\n            },\n            \"relations\": {},\n            \"translations\": {},\n            \"counts\": {},\n            \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"e3157d6f-2f93-420c-af3c-3216b2ecd15d"},{"name":"Get one","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"151452c8-1498-49be-a0ab-2e4c03896427"}}],"id":"3b415fba-f6ed-4c40-99b7-72aabfc98abf","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/states/1","urlObject":{"path":["admin","states","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"d71101c5-f00e-40ee-9b7b-a39f3345a459","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/states/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"3b415fba-f6ed-4c40-99b7-72aabfc98abf"},{"name":"Create","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('statesId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"e93092b4-b674-4a71-8604-ee90a838c0fd"}}],"id":"a4c6605f-9102-4e63-afdd-6cc5e308e67c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"country_id\": 1,\n    \"slug\": \"california\",\n    \"is_active\": true,\n    \"sort_order\": 1,\n    \"translations\": {\n        \"name\": {\n            \"en\": \"California\",\n            \"az\": \"Kaliforniya\",\n            \"ru\": \"\\u041a\\u0430\\u043b\\u0438\\u0444\\u043e\\u0440\\u043d\\u0438\\u044f\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/states","urlObject":{"path":["admin","states"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"f3715e2c-5722-40bd-9b5d-b07164de3f29","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/states"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"attributes\": {\n            \"country_id\": 1,\n            \"slug\": \"california\",\n            \"is_active\": true,\n            \"sort_order\": 1\n        },\n        \"relations\": {},\n        \"translations\": {\n            \"name\": {\n                \"en\": \"California\",\n                \"az\": \"Kaliforniya\",\n                \"ru\": \"Калифорния\"\n            }\n        },\n        \"counts\": {},\n        \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n    }\n}"}],"_postman_id":"a4c6605f-9102-4e63-afdd-6cc5e308e67c"},{"name":"Update","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"5d488f34-7cd6-463e-9f84-ead5881eaa3f"}}],"id":"11f47f89-80f7-40df-acaf-177e94168bd5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"country_id\": 1,\n    \"slug\": \"california\",\n    \"is_active\": true,\n    \"sort_order\": 1,\n    \"translations\": {\n        \"name\": {\n            \"en\": \"California\",\n            \"az\": \"Kaliforniya\",\n            \"ru\": \"\\u041a\\u0430\\u043b\\u0438\\u0444\\u043e\\u0440\\u043d\\u0438\\u044f\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/states/1","urlObject":{"path":["admin","states","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"d9dd12fb-7666-457f-b36b-ac7b86c30549","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/states/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"country_id\": 1,\n        \"slug\": \"california\",\n        \"is_active\": true,\n        \"sort_order\": 1,\n        \"translations\": {\n            \"name\": {\n                \"en\": \"California\",\n                \"az\": \"Kaliforniya\",\n                \"ru\": \"Калифорния\"\n            }\n        }\n    }\n}"}],"_postman_id":"11f47f89-80f7-40df-acaf-177e94168bd5"},{"name":"Delete","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"ed1c857a-2c48-4547-be75-abb35d5fe91b"}}],"id":"7ba20e44-dd47-4666-93bb-13dfe4f5db67","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/states/1","urlObject":{"path":["admin","states","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"9a8ce1aa-1ff6-43ac-b047-e369d89d9ead","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/states/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"7ba20e44-dd47-4666-93bb-13dfe4f5db67"},{"name":"Sort list","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"77e099d9-b791-4859-8c71-5e0fbab6b118"}}],"id":"86f86009-2da9-4ef2-842a-90288bcb65e6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/states/sort?country_id=1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Ordered rows for drag-and-drop sort UI. Requires <code>country_id</code>.</p>\n","urlObject":{"path":["admin","states","sort"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Required sort scope</p>\n","type":"text/plain"},"key":"country_id","value":"1"}],"variable":[]}},"response":[{"id":"c3fd2d2f-729f-4a91-861b-ae62998c47ba","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/states/sort?country_id=1","host":["https://api.loya.cc/api/v1"],"path":["admin","states","sort"],"query":[{"key":"country_id","value":"1","description":"Required sort scope"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"name\": \"Example\",\n            \"sort_order\": 0\n        }\n    ],\n    \"meta\": {\n        \"scope\": null,\n        \"scopeValue\": null\n    }\n}"}],"_postman_id":"86f86009-2da9-4ef2-842a-90288bcb65e6"},{"name":"Reorder","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"03280873-0541-43cd-a7e1-9d782d521447"}}],"id":"f335dd66-54a6-4950-8464-b0dcfb53a02a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"ids\": [\n        1,\n        2,\n        3\n    ],\n    \"country_id\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/states/sort","description":"<h2 id=\"body\">Body</h2>\n<p><code>ids</code> — ordered record IDs. Also send <code>country_id</code>.</p>\n","urlObject":{"path":["admin","states","sort"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"e63c5c9b-f944-46e9-8306-3578c325bedf","name":"OK","originalRequest":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/states/sort"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 3\n    }\n}"}],"_postman_id":"f335dd66-54a6-4950-8464-b0dcfb53a02a"},{"name":"Bulk disable","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"4d57a2c9-86a4-4338-aa40-1174203d3f0c"}}],"id":"d9dac164-385e-4e42-b8a1-0e1a1986b4bb","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"is_active\": false,\n    \"country_id\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/states/bulk-active","description":"<h2 id=\"summary\">Summary</h2>\n<p>Set <code>is_active</code> on all States rows (omit scope to affect every row). Optional <code>country_id</code> limits the update to that parent.</p>\n<h2 id=\"body\">Body</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>is_active</td>\n<td>boolean</td>\n<td>yes</td>\n<td><code>false</code> disables, <code>true</code> enables</td>\n</tr>\n<tr>\n<td>country_id</td>\n<td>int</td>\n<td>no</td>\n<td>Limit to this parent; omit to update all</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-200\">Response <code>200</code></h2>\n<p><code>json\\n{\\n  \"data\": { \"updated\": 12, \"isActive\": false }\\n}\\n</code></p>\n","urlObject":{"path":["admin","states","bulk-active"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"98d6755f-f69e-4dba-9260-45e4b6d2dcad","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/states/bulk-active"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 12,\n        \"isActive\": false\n    }\n}"}],"_postman_id":"d9dac164-385e-4e42-b8a1-0e1a1986b4bb"},{"name":"Bulk enable","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"a70dbf63-5e5f-473b-9ebc-4ec13b40b272"}}],"id":"296d28e5-387a-4de2-90ff-4fb6f2708060","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"is_active\": true,\n    \"country_id\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/states/bulk-active","description":"<h2 id=\"summary\">Summary</h2>\n<p>Enable all States rows (same endpoint as Bulk disable).</p>\n","urlObject":{"path":["admin","states","bulk-active"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"efd7f3f2-de27-4ca1-b7f0-dce0a35bd99f","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/states/bulk-active"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 12,\n        \"isActive\": true\n    }\n}"}],"_postman_id":"296d28e5-387a-4de2-90ff-4fb6f2708060"}],"id":"76fe9647-8c8d-4c1c-987e-2a8ecb7880e0","_postman_id":"76fe9647-8c8d-4c1c-987e-2a8ecb7880e0","description":""},{"name":"Cities","item":[{"name":"List","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('citiesId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"4caeb3db-ce1f-48d5-8d8c-75dfcd1123a7"}}],"id":"ee334897-0451-4a4a-b0a1-853987946551","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/cities?page=1&per_page=25&search=&sort=&country_id=1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Paginated Library list for <code>cities</code>.</p>\n","urlObject":{"path":["admin","cities"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Page number</p>\n","type":"text/plain"},"key":"page","value":"1"},{"description":{"content":"<p>Page size (max 100; icons max 200)</p>\n","type":"text/plain"},"key":"per_page","value":"25"},{"description":{"content":"<p>Search query</p>\n","type":"text/plain"},"key":"search","value":""},{"description":{"content":"<p>Column name; prefix with - for descending</p>\n","type":"text/plain"},"key":"sort","value":""},{"description":{"content":"<p>Filter / sort scope</p>\n","type":"text/plain"},"key":"country_id","value":"1"}],"variable":[]}},"response":[{"id":"f2e1e18a-df54-4829-9b3c-03c91e4552ea","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/cities?page=1&per_page=25&search=&sort=&country_id=1","host":["https://api.loya.cc/api/v1"],"path":["admin","cities"],"query":[{"key":"page","value":"1","description":"Page number"},{"key":"per_page","value":"25","description":"Page size (max 100; icons max 200)"},{"key":"search","value":"","description":"Search query"},{"key":"sort","value":"","description":"Column name; prefix with - for descending"},{"key":"country_id","value":"1","description":"Filter / sort scope"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"attributes\": {\n                \"name\": \"Example\"\n            },\n            \"relations\": {},\n            \"translations\": {},\n            \"counts\": {},\n            \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"ee334897-0451-4a4a-b0a1-853987946551"},{"name":"Get one","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"08557e3e-a666-4512-babc-bda6587e0c07"}}],"id":"188e32bc-d3cf-4628-8f3c-5c088647e295","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/cities/1","urlObject":{"path":["admin","cities","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"f97f2785-e062-499f-aed4-da06e3b61af0","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/cities/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"188e32bc-d3cf-4628-8f3c-5c088647e295"},{"name":"Create","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('citiesId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"6f2a4435-f4d0-49c7-a769-6245ed70f816"}}],"id":"d2e98488-13d2-49d1-9e9a-9fbfd64f20d2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"country_id\": 1,\n    \"state_id\": null,\n    \"slug\": \"baku\",\n    \"is_active\": true,\n    \"sort_order\": 1,\n    \"latitude\": 40.4093,\n    \"longitude\": 49.8671,\n    \"translations\": {\n        \"name\": {\n            \"en\": \"Baku\",\n            \"az\": \"Bak\\u0131\",\n            \"ru\": \"\\u0411\\u0430\\u043a\\u0443\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/cities","urlObject":{"path":["admin","cities"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"028a0deb-326f-4df3-8796-1924b1af8a72","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/cities"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"attributes\": {\n            \"country_id\": 1,\n            \"state_id\": null,\n            \"slug\": \"baku\",\n            \"is_active\": true,\n            \"sort_order\": 1,\n            \"latitude\": 40.4093,\n            \"longitude\": 49.8671\n        },\n        \"relations\": {},\n        \"translations\": {\n            \"name\": {\n                \"en\": \"Baku\",\n                \"az\": \"Bakı\",\n                \"ru\": \"Баку\"\n            }\n        },\n        \"counts\": {},\n        \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n    }\n}"}],"_postman_id":"d2e98488-13d2-49d1-9e9a-9fbfd64f20d2"},{"name":"Update","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"55a255b0-7c30-456e-b61a-3a94da7b1847"}}],"id":"9b03f977-aa1b-4411-865b-6e78a3b93d51","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"country_id\": 1,\n    \"state_id\": null,\n    \"slug\": \"baku\",\n    \"is_active\": true,\n    \"sort_order\": 1,\n    \"latitude\": 40.4093,\n    \"longitude\": 49.8671,\n    \"translations\": {\n        \"name\": {\n            \"en\": \"Baku\",\n            \"az\": \"Bak\\u0131\",\n            \"ru\": \"\\u0411\\u0430\\u043a\\u0443\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/cities/1","urlObject":{"path":["admin","cities","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"3b32629c-4b43-4eb8-8ebb-815b04eaf548","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/cities/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"country_id\": 1,\n        \"state_id\": null,\n        \"slug\": \"baku\",\n        \"is_active\": true,\n        \"sort_order\": 1,\n        \"latitude\": 40.4093,\n        \"longitude\": 49.8671,\n        \"translations\": {\n            \"name\": {\n                \"en\": \"Baku\",\n                \"az\": \"Bakı\",\n                \"ru\": \"Баку\"\n            }\n        }\n    }\n}"}],"_postman_id":"9b03f977-aa1b-4411-865b-6e78a3b93d51"},{"name":"Delete","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"e7175c66-5b53-402c-b1c2-0c30ba8987c3"}}],"id":"c520f3ce-8044-4d60-8913-c0db06d82f33","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/cities/1","urlObject":{"path":["admin","cities","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"4d6028b1-07f1-4111-b3b1-5e1fc6cca7c6","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/cities/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"c520f3ce-8044-4d60-8913-c0db06d82f33"},{"name":"Sort list","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"8b49134b-2a2d-43bb-bb69-b495fa4ea17b"}}],"id":"5e5ca29b-6a0f-4d13-a08d-b2a3f80f79a9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/cities/sort?country_id=1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Ordered rows for drag-and-drop sort UI. Requires <code>country_id</code>.</p>\n","urlObject":{"path":["admin","cities","sort"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Required sort scope</p>\n","type":"text/plain"},"key":"country_id","value":"1"}],"variable":[]}},"response":[{"id":"c5b80211-f511-4856-808f-c7614855c240","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/cities/sort?country_id=1","host":["https://api.loya.cc/api/v1"],"path":["admin","cities","sort"],"query":[{"key":"country_id","value":"1","description":"Required sort scope"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"name\": \"Example\",\n            \"sort_order\": 0\n        }\n    ],\n    \"meta\": {\n        \"scope\": null,\n        \"scopeValue\": null\n    }\n}"}],"_postman_id":"5e5ca29b-6a0f-4d13-a08d-b2a3f80f79a9"},{"name":"Reorder","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"0ae451d7-f74f-4c4d-bf2c-84db016b359d"}}],"id":"67da0d07-a2d8-499b-ba4d-7e811aab6367","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"ids\": [\n        1,\n        2,\n        3\n    ],\n    \"country_id\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/cities/sort","description":"<h2 id=\"body\">Body</h2>\n<p><code>ids</code> — ordered record IDs. Also send <code>country_id</code>.</p>\n","urlObject":{"path":["admin","cities","sort"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"152ba16f-5f48-4833-9bd0-90723a0a9547","name":"OK","originalRequest":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/cities/sort"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 3\n    }\n}"}],"_postman_id":"67da0d07-a2d8-499b-ba4d-7e811aab6367"},{"name":"Bulk disable","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"7aa8011f-5646-4a25-9d17-82030fbb0d48"}}],"id":"23d79087-8936-405c-9030-06c2a081f382","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"is_active\": false,\n    \"country_id\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/cities/bulk-active","description":"<h2 id=\"summary\">Summary</h2>\n<p>Set <code>is_active</code> on all Cities rows (omit scope to affect every row). Optional <code>country_id</code> limits the update to that parent.</p>\n<h2 id=\"body\">Body</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>is_active</td>\n<td>boolean</td>\n<td>yes</td>\n<td><code>false</code> disables, <code>true</code> enables</td>\n</tr>\n<tr>\n<td>country_id</td>\n<td>int</td>\n<td>no</td>\n<td>Limit to this parent; omit to update all</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-200\">Response <code>200</code></h2>\n<p><code>json\\n{\\n  \"data\": { \"updated\": 12, \"isActive\": false }\\n}\\n</code></p>\n","urlObject":{"path":["admin","cities","bulk-active"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"8d6fc945-e7dc-40a1-9e17-c3f0793b8601","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/cities/bulk-active"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 12,\n        \"isActive\": false\n    }\n}"}],"_postman_id":"23d79087-8936-405c-9030-06c2a081f382"},{"name":"Bulk enable","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"6e6003d4-c8df-462d-ade9-88b03b78a9ba"}}],"id":"15a1272d-93cc-4b54-9669-9639d3ca1f39","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"is_active\": true,\n    \"country_id\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/cities/bulk-active","description":"<h2 id=\"summary\">Summary</h2>\n<p>Enable all Cities rows (same endpoint as Bulk disable).</p>\n","urlObject":{"path":["admin","cities","bulk-active"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"bc6da091-10a2-475e-bb29-ed164f24a2ec","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/cities/bulk-active"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 12,\n        \"isActive\": true\n    }\n}"}],"_postman_id":"15a1272d-93cc-4b54-9669-9639d3ca1f39"}],"id":"73ddc90a-6915-43ff-bc78-467a9d11ad60","_postman_id":"73ddc90a-6915-43ff-bc78-467a9d11ad60","description":""},{"name":"Districts","item":[{"name":"List","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('districtsId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"087ce2ee-4595-45cb-bd44-696a44bdc096"}}],"id":"2c5ee130-b5cd-44ee-ad09-84012cfd5f53","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/districts?page=1&per_page=25&search=&sort=&city_id=1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Paginated Library list for <code>districts</code>.</p>\n","urlObject":{"path":["admin","districts"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Page number</p>\n","type":"text/plain"},"key":"page","value":"1"},{"description":{"content":"<p>Page size (max 100; icons max 200)</p>\n","type":"text/plain"},"key":"per_page","value":"25"},{"description":{"content":"<p>Search query</p>\n","type":"text/plain"},"key":"search","value":""},{"description":{"content":"<p>Column name; prefix with - for descending</p>\n","type":"text/plain"},"key":"sort","value":""},{"description":{"content":"<p>Filter / sort scope</p>\n","type":"text/plain"},"key":"city_id","value":"1"}],"variable":[]}},"response":[{"id":"6e8e2ca7-2658-4189-8383-55d4f228212b","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/districts?page=1&per_page=25&search=&sort=&city_id=1","host":["https://api.loya.cc/api/v1"],"path":["admin","districts"],"query":[{"key":"page","value":"1","description":"Page number"},{"key":"per_page","value":"25","description":"Page size (max 100; icons max 200)"},{"key":"search","value":"","description":"Search query"},{"key":"sort","value":"","description":"Column name; prefix with - for descending"},{"key":"city_id","value":"1","description":"Filter / sort scope"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"attributes\": {\n                \"name\": \"Example\"\n            },\n            \"relations\": {},\n            \"translations\": {},\n            \"counts\": {},\n            \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"2c5ee130-b5cd-44ee-ad09-84012cfd5f53"},{"name":"Get one","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"14cfbdf5-208d-43f8-83a0-1dd1035af010"}}],"id":"1bb212bb-ee75-4d8a-8cab-cb03e41411c0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/districts/1","urlObject":{"path":["admin","districts","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"0c064cd4-6745-4e6f-8b6e-cbec66547a08","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/districts/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"1bb212bb-ee75-4d8a-8cab-cb03e41411c0"},{"name":"Create","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('districtsId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"a87ca574-60f2-41d3-91a1-f2ffd18944a8"}}],"id":"16900d2e-bbe5-4c2a-8f0e-379bc2f4fa19","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"city_id\": 1,\n    \"slug\": \"narimanov\",\n    \"is_active\": true,\n    \"sort_order\": 1,\n    \"translations\": {\n        \"name\": {\n            \"en\": \"Narimanov\",\n            \"az\": \"N\\u0259rimanov\",\n            \"ru\": \"\\u041d\\u0430\\u0440\\u0438\\u043c\\u0430\\u043d\\u043e\\u0432\\u0441\\u043a\\u0438\\u0439\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/districts","urlObject":{"path":["admin","districts"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"146f46dc-70f4-4538-b1ec-78cb2c189cc1","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/districts"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"attributes\": {\n            \"city_id\": 1,\n            \"slug\": \"narimanov\",\n            \"is_active\": true,\n            \"sort_order\": 1\n        },\n        \"relations\": {},\n        \"translations\": {\n            \"name\": {\n                \"en\": \"Narimanov\",\n                \"az\": \"Nərimanov\",\n                \"ru\": \"Наримановский\"\n            }\n        },\n        \"counts\": {},\n        \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n    }\n}"}],"_postman_id":"16900d2e-bbe5-4c2a-8f0e-379bc2f4fa19"},{"name":"Update","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"7478dd30-ccb9-4de5-97a4-370a7d97b309"}}],"id":"2cec4682-1a0a-4278-9282-c9b1f04e1d30","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"city_id\": 1,\n    \"slug\": \"narimanov\",\n    \"is_active\": true,\n    \"sort_order\": 1,\n    \"translations\": {\n        \"name\": {\n            \"en\": \"Narimanov\",\n            \"az\": \"N\\u0259rimanov\",\n            \"ru\": \"\\u041d\\u0430\\u0440\\u0438\\u043c\\u0430\\u043d\\u043e\\u0432\\u0441\\u043a\\u0438\\u0439\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/districts/1","urlObject":{"path":["admin","districts","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"1ef7068f-30d2-43b2-80ad-6b6901fd1f60","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/districts/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"city_id\": 1,\n        \"slug\": \"narimanov\",\n        \"is_active\": true,\n        \"sort_order\": 1,\n        \"translations\": {\n            \"name\": {\n                \"en\": \"Narimanov\",\n                \"az\": \"Nərimanov\",\n                \"ru\": \"Наримановский\"\n            }\n        }\n    }\n}"}],"_postman_id":"2cec4682-1a0a-4278-9282-c9b1f04e1d30"},{"name":"Delete","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"891c5213-f63e-439a-b6ab-43c0127a7c4f"}}],"id":"aae158c3-12e2-4cfa-ba9e-8c09327fec8a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/districts/1","urlObject":{"path":["admin","districts","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"e2e49a65-ed50-417e-961a-e085bd4c481f","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/districts/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"aae158c3-12e2-4cfa-ba9e-8c09327fec8a"},{"name":"Sort list","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"490ce7c2-ed22-4e32-9cdb-23aa19526396"}}],"id":"4c9dec15-1d1a-4dc1-bbce-ffb9e5bffe35","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/districts/sort?city_id=1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Ordered rows for drag-and-drop sort UI. Requires <code>city_id</code>.</p>\n","urlObject":{"path":["admin","districts","sort"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Required sort scope</p>\n","type":"text/plain"},"key":"city_id","value":"1"}],"variable":[]}},"response":[{"id":"3c66fa9a-c5cb-490c-8c54-ddd31ade3cc7","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/districts/sort?city_id=1","host":["https://api.loya.cc/api/v1"],"path":["admin","districts","sort"],"query":[{"key":"city_id","value":"1","description":"Required sort scope"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"name\": \"Example\",\n            \"sort_order\": 0\n        }\n    ],\n    \"meta\": {\n        \"scope\": null,\n        \"scopeValue\": null\n    }\n}"}],"_postman_id":"4c9dec15-1d1a-4dc1-bbce-ffb9e5bffe35"},{"name":"Reorder","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"14f6598a-2281-4e83-bba8-761cff2d781c"}}],"id":"73ec7513-acd1-4030-83fb-f489dd429c2d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"ids\": [\n        1,\n        2,\n        3\n    ],\n    \"city_id\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/districts/sort","description":"<h2 id=\"body\">Body</h2>\n<p><code>ids</code> — ordered record IDs. Also send <code>city_id</code>.</p>\n","urlObject":{"path":["admin","districts","sort"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"a2ae4074-3e7a-4ba1-9c21-b6d5b603852f","name":"OK","originalRequest":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/districts/sort"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 3\n    }\n}"}],"_postman_id":"73ec7513-acd1-4030-83fb-f489dd429c2d"},{"name":"Bulk disable","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"5d85e417-091c-4b07-9eaa-5f2016e5b809"}}],"id":"3af432b9-ce32-4aca-92c0-df628268b960","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"is_active\": false,\n    \"city_id\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/districts/bulk-active","description":"<h2 id=\"summary\">Summary</h2>\n<p>Set <code>is_active</code> on all Districts rows (omit scope to affect every row). Optional <code>city_id</code> limits the update to that parent.</p>\n<h2 id=\"body\">Body</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>is_active</td>\n<td>boolean</td>\n<td>yes</td>\n<td><code>false</code> disables, <code>true</code> enables</td>\n</tr>\n<tr>\n<td>city_id</td>\n<td>int</td>\n<td>no</td>\n<td>Limit to this parent; omit to update all</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-200\">Response <code>200</code></h2>\n<p><code>json\\n{\\n  \"data\": { \"updated\": 12, \"isActive\": false }\\n}\\n</code></p>\n","urlObject":{"path":["admin","districts","bulk-active"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"b0f52de1-3553-4469-ac2a-0f3cf11cf38e","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/districts/bulk-active"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 12,\n        \"isActive\": false\n    }\n}"}],"_postman_id":"3af432b9-ce32-4aca-92c0-df628268b960"},{"name":"Bulk enable","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"d3471e97-b5a6-4924-9f8e-cf9c7b9c0bfd"}}],"id":"4a5bc11c-8ce1-49ca-ae0b-a1ab88e964df","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"is_active\": true,\n    \"city_id\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/districts/bulk-active","description":"<h2 id=\"summary\">Summary</h2>\n<p>Enable all Districts rows (same endpoint as Bulk disable).</p>\n","urlObject":{"path":["admin","districts","bulk-active"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"74a70e19-fde9-444c-8e87-0e15297a9afe","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/districts/bulk-active"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 12,\n        \"isActive\": true\n    }\n}"}],"_postman_id":"4a5bc11c-8ce1-49ca-ae0b-a1ab88e964df"}],"id":"7de4fcd1-1576-43b6-89ee-d0eb3ba7f351","_postman_id":"7de4fcd1-1576-43b6-89ee-d0eb3ba7f351","description":""},{"name":"Subway Stations","item":[{"name":"List","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('subway-stationsId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"1df4cf83-3b0b-45e6-bf67-e7b22251c661"}}],"id":"e9a6eb64-64a5-400f-9e2d-91c978222f70","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/subway-stations?page=1&per_page=25&search=&sort=&city_id=1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Paginated Library list for <code>subway-stations</code>.</p>\n","urlObject":{"path":["admin","subway-stations"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Page number</p>\n","type":"text/plain"},"key":"page","value":"1"},{"description":{"content":"<p>Page size (max 100; icons max 200)</p>\n","type":"text/plain"},"key":"per_page","value":"25"},{"description":{"content":"<p>Search query</p>\n","type":"text/plain"},"key":"search","value":""},{"description":{"content":"<p>Column name; prefix with - for descending</p>\n","type":"text/plain"},"key":"sort","value":""},{"description":{"content":"<p>Filter / sort scope</p>\n","type":"text/plain"},"key":"city_id","value":"1"}],"variable":[]}},"response":[{"id":"c49bdd7a-f156-47c9-ae61-979130ac624d","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/subway-stations?page=1&per_page=25&search=&sort=&city_id=1","host":["https://api.loya.cc/api/v1"],"path":["admin","subway-stations"],"query":[{"key":"page","value":"1","description":"Page number"},{"key":"per_page","value":"25","description":"Page size (max 100; icons max 200)"},{"key":"search","value":"","description":"Search query"},{"key":"sort","value":"","description":"Column name; prefix with - for descending"},{"key":"city_id","value":"1","description":"Filter / sort scope"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"attributes\": {\n                \"name\": \"Example\"\n            },\n            \"relations\": {},\n            \"translations\": {},\n            \"counts\": {},\n            \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"e9a6eb64-64a5-400f-9e2d-91c978222f70"},{"name":"Get one","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"b59d3b7a-ef3f-408a-b4cd-bcde5aefb538"}}],"id":"3c43a64c-611c-44ab-a90c-2320da38917b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/subway-stations/{{subway-stationsId}}","urlObject":{"path":["admin","subway-stations","{{subway-stationsId}}"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"f3573035-840a-4938-87c4-bc81cad00c51","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/subway-stations/{{subway-stationsId}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"3c43a64c-611c-44ab-a90c-2320da38917b"},{"name":"Create","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('subway-stationsId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"64f7ca74-d4a2-4875-b450-6e62898d884d"}}],"id":"63014023-b244-44e4-aa26-5a313ee7d25a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"city_id\": 1,\n    \"slug\": \"28-may\",\n    \"is_active\": true,\n    \"sort_order\": 1,\n    \"latitude\": 40.3798,\n    \"longitude\": 49.8488,\n    \"translations\": {\n        \"name\": {\n            \"en\": \"28 May\",\n            \"az\": \"28 May\",\n            \"ru\": \"28 \\u041c\\u0430\\u044f\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/subway-stations","urlObject":{"path":["admin","subway-stations"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"ac388ae2-a9c1-4ee5-b9a4-b98cb8aecf2e","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/subway-stations"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"attributes\": {\n            \"city_id\": 1,\n            \"slug\": \"28-may\",\n            \"is_active\": true,\n            \"sort_order\": 1,\n            \"latitude\": 40.3798,\n            \"longitude\": 49.8488\n        },\n        \"relations\": {},\n        \"translations\": {\n            \"name\": {\n                \"en\": \"28 May\",\n                \"az\": \"28 May\",\n                \"ru\": \"28 Мая\"\n            }\n        },\n        \"counts\": {},\n        \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n    }\n}"}],"_postman_id":"63014023-b244-44e4-aa26-5a313ee7d25a"},{"name":"Update","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"97e357da-9acc-4369-8d80-bf0b2f9c7554"}}],"id":"ad41ed03-90d7-420e-b02f-6ace26133b8c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"city_id\": 1,\n    \"slug\": \"28-may\",\n    \"is_active\": true,\n    \"sort_order\": 1,\n    \"latitude\": 40.3798,\n    \"longitude\": 49.8488,\n    \"translations\": {\n        \"name\": {\n            \"en\": \"28 May\",\n            \"az\": \"28 May\",\n            \"ru\": \"28 \\u041c\\u0430\\u044f\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/subway-stations/{{subway-stationsId}}","urlObject":{"path":["admin","subway-stations","{{subway-stationsId}}"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"388beb41-255b-469a-b356-4c1ab745ab6b","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/subway-stations/{{subway-stationsId}}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"city_id\": 1,\n        \"slug\": \"28-may\",\n        \"is_active\": true,\n        \"sort_order\": 1,\n        \"latitude\": 40.3798,\n        \"longitude\": 49.8488,\n        \"translations\": {\n            \"name\": {\n                \"en\": \"28 May\",\n                \"az\": \"28 May\",\n                \"ru\": \"28 Мая\"\n            }\n        }\n    }\n}"}],"_postman_id":"ad41ed03-90d7-420e-b02f-6ace26133b8c"},{"name":"Delete","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"d14c2fa3-c9ef-45d8-a43b-79d9fa971741"}}],"id":"82414c3f-4415-4595-87fe-576e31e44688","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/subway-stations/{{subway-stationsId}}","urlObject":{"path":["admin","subway-stations","{{subway-stationsId}}"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"106eab14-24ee-4ea0-8a26-f6c24d83b9f9","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/subway-stations/{{subway-stationsId}}"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"82414c3f-4415-4595-87fe-576e31e44688"},{"name":"Sort list","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"3ba6f2ad-7f53-47ae-a42b-377d5a20cdea"}}],"id":"79d176e8-0099-41ed-9195-8f99b4fba618","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/subway-stations/sort?city_id=1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Ordered rows for drag-and-drop sort UI. Requires <code>city_id</code>.</p>\n","urlObject":{"path":["admin","subway-stations","sort"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Required sort scope</p>\n","type":"text/plain"},"key":"city_id","value":"1"}],"variable":[]}},"response":[{"id":"ce5dc044-ffd1-4445-bf95-50e975bade12","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/subway-stations/sort?city_id=1","host":["https://api.loya.cc/api/v1"],"path":["admin","subway-stations","sort"],"query":[{"key":"city_id","value":"1","description":"Required sort scope"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"name\": \"Example\",\n            \"sort_order\": 0\n        }\n    ],\n    \"meta\": {\n        \"scope\": null,\n        \"scopeValue\": null\n    }\n}"}],"_postman_id":"79d176e8-0099-41ed-9195-8f99b4fba618"},{"name":"Reorder","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"30da2b24-5c3a-4bff-98f6-81dd9125ef1d"}}],"id":"339c2772-576b-40a7-a9f7-aa0ea1681a20","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"ids\": [\n        1,\n        2,\n        3\n    ],\n    \"city_id\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/subway-stations/sort","description":"<h2 id=\"body\">Body</h2>\n<p><code>ids</code> — ordered record IDs. Also send <code>city_id</code>.</p>\n","urlObject":{"path":["admin","subway-stations","sort"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"fa5f8e75-f322-4c6b-9fbd-c44f01914584","name":"OK","originalRequest":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/subway-stations/sort"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 3\n    }\n}"}],"_postman_id":"339c2772-576b-40a7-a9f7-aa0ea1681a20"},{"name":"Bulk disable","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"736e0105-04a4-4f8e-9d4d-d2adfce00965"}}],"id":"1812cd16-721c-4e44-a904-b90c296eef3d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"is_active\": false,\n    \"city_id\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/subway-stations/bulk-active","description":"<h2 id=\"summary\">Summary</h2>\n<p>Set <code>is_active</code> on all Subway Stations rows (omit scope to affect every row). Optional <code>city_id</code> limits the update to that parent.</p>\n<h2 id=\"body\">Body</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>is_active</td>\n<td>boolean</td>\n<td>yes</td>\n<td><code>false</code> disables, <code>true</code> enables</td>\n</tr>\n<tr>\n<td>city_id</td>\n<td>int</td>\n<td>no</td>\n<td>Limit to this parent; omit to update all</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-200\">Response <code>200</code></h2>\n<p><code>json\\n{\\n  \"data\": { \"updated\": 12, \"isActive\": false }\\n}\\n</code></p>\n","urlObject":{"path":["admin","subway-stations","bulk-active"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"0cfc0f10-a629-4a31-b6e1-e30824526415","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/subway-stations/bulk-active"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 12,\n        \"isActive\": false\n    }\n}"}],"_postman_id":"1812cd16-721c-4e44-a904-b90c296eef3d"},{"name":"Bulk enable","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"e99c63be-9956-407a-b3dc-4988426d2459"}}],"id":"bd35d0d1-bd9d-4609-8938-19309c529a10","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"is_active\": true,\n    \"city_id\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/subway-stations/bulk-active","description":"<h2 id=\"summary\">Summary</h2>\n<p>Enable all Subway Stations rows (same endpoint as Bulk disable).</p>\n","urlObject":{"path":["admin","subway-stations","bulk-active"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"db1eb930-9104-44b7-a5bc-72e86338293e","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/subway-stations/bulk-active"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 12,\n        \"isActive\": true\n    }\n}"}],"_postman_id":"bd35d0d1-bd9d-4609-8938-19309c529a10"}],"id":"b322481f-499a-44a7-bf1b-d6d1b7bc1bb2","_postman_id":"b322481f-499a-44a7-bf1b-d6d1b7bc1bb2","description":""},{"name":"Category Filter Groups","item":[{"name":"List","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('category-filter-groupsId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"be810ebd-0deb-4ee8-834f-21eb1e886efc"}}],"id":"08cb4581-3a66-4b51-9e6c-8671f7696425","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/category-filter-groups?page=1&per_page=25&search=&sort=&category_id=1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Paginated Library list for <code>category-filter-groups</code>.</p>\n","urlObject":{"path":["admin","category-filter-groups"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Page number</p>\n","type":"text/plain"},"key":"page","value":"1"},{"description":{"content":"<p>Page size (max 100; icons max 200)</p>\n","type":"text/plain"},"key":"per_page","value":"25"},{"description":{"content":"<p>Search query</p>\n","type":"text/plain"},"key":"search","value":""},{"description":{"content":"<p>Column name; prefix with - for descending</p>\n","type":"text/plain"},"key":"sort","value":""},{"description":{"content":"<p>Filter / sort scope</p>\n","type":"text/plain"},"key":"category_id","value":"1"}],"variable":[]}},"response":[{"id":"1ac7b6a1-6c1b-4f16-9b20-ffe38b530fcd","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/category-filter-groups?page=1&per_page=25&search=&sort=&category_id=1","host":["https://api.loya.cc/api/v1"],"path":["admin","category-filter-groups"],"query":[{"key":"page","value":"1","description":"Page number"},{"key":"per_page","value":"25","description":"Page size (max 100; icons max 200)"},{"key":"search","value":"","description":"Search query"},{"key":"sort","value":"","description":"Column name; prefix with - for descending"},{"key":"category_id","value":"1","description":"Filter / sort scope"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"attributes\": {\n                \"name\": \"Example\"\n            },\n            \"relations\": {},\n            \"translations\": {},\n            \"counts\": {},\n            \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"08cb4581-3a66-4b51-9e6c-8671f7696425"},{"name":"Get one","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"8b75339c-ebca-43ac-8bc5-c321f7747125"}}],"id":"77113335-5972-4198-bfb7-4c039809fe1d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/category-filter-groups/1","urlObject":{"path":["admin","category-filter-groups","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"3ee87140-639f-48c1-bd5c-27749a1ce477","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/category-filter-groups/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"77113335-5972-4198-bfb7-4c039809fe1d"},{"name":"Create","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('category-filter-groupsId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"ba72c461-51a9-4bbd-a5e6-3d526fe4415a"}}],"id":"61f3b26c-e9cd-4898-aa89-ed68e3c1175c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"category_id\": 1,\n    \"slug\": \"cuisines\",\n    \"sort_order\": 1,\n    \"is_active\": true,\n    \"translations\": {\n        \"label\": {\n            \"en\": \"Cuisine\",\n            \"az\": \"M\\u0259tb\\u0259x\",\n            \"ru\": \"\\u041a\\u0443\\u0445\\u043d\\u044f\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/category-filter-groups","urlObject":{"path":["admin","category-filter-groups"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"d462060c-f117-46d8-8550-ba82e1516966","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/category-filter-groups"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"attributes\": {\n            \"category_id\": 1,\n            \"slug\": \"cuisines\",\n            \"sort_order\": 1,\n            \"is_active\": true\n        },\n        \"relations\": {},\n        \"translations\": {\n            \"label\": {\n                \"en\": \"Cuisine\",\n                \"az\": \"Mətbəx\",\n                \"ru\": \"Кухня\"\n            }\n        },\n        \"counts\": {},\n        \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n    }\n}"}],"_postman_id":"61f3b26c-e9cd-4898-aa89-ed68e3c1175c"},{"name":"Update","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"bd2158f7-f734-4921-b80a-02d0edb11a46"}}],"id":"2ffdabe1-2d45-45a3-937a-1ed189818323","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"category_id\": 1,\n    \"slug\": \"cuisines\",\n    \"sort_order\": 1,\n    \"is_active\": true,\n    \"translations\": {\n        \"label\": {\n            \"en\": \"Cuisine\",\n            \"az\": \"M\\u0259tb\\u0259x\",\n            \"ru\": \"\\u041a\\u0443\\u0445\\u043d\\u044f\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/category-filter-groups/1","urlObject":{"path":["admin","category-filter-groups","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"54f1a8e8-2baf-451d-b727-8cab0012807c","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/category-filter-groups/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"category_id\": 1,\n        \"slug\": \"cuisines\",\n        \"sort_order\": 1,\n        \"is_active\": true,\n        \"translations\": {\n            \"label\": {\n                \"en\": \"Cuisine\",\n                \"az\": \"Mətbəx\",\n                \"ru\": \"Кухня\"\n            }\n        }\n    }\n}"}],"_postman_id":"2ffdabe1-2d45-45a3-937a-1ed189818323"},{"name":"Delete","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"ce11bea0-6502-4de9-a75e-a868cad9c47d"}}],"id":"9d0ec259-8acb-4003-b500-2331820e3bda","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/category-filter-groups/1","urlObject":{"path":["admin","category-filter-groups","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"93607773-f77b-40b3-9f06-e7c43a8f8033","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/category-filter-groups/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"9d0ec259-8acb-4003-b500-2331820e3bda"},{"name":"Sort list","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"155d6e71-41bd-492f-8a8c-349172be4edd"}}],"id":"fe0739fb-d870-427c-aa87-09d94c2191b1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/category-filter-groups/sort?category_id=1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Ordered rows for drag-and-drop sort UI. Requires <code>category_id</code>.</p>\n","urlObject":{"path":["admin","category-filter-groups","sort"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Required sort scope</p>\n","type":"text/plain"},"key":"category_id","value":"1"}],"variable":[]}},"response":[{"id":"03e945d8-50a7-4ae5-a04d-7946593795e7","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/category-filter-groups/sort?category_id=1","host":["https://api.loya.cc/api/v1"],"path":["admin","category-filter-groups","sort"],"query":[{"key":"category_id","value":"1","description":"Required sort scope"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"name\": \"Example\",\n            \"sort_order\": 0\n        }\n    ],\n    \"meta\": {\n        \"scope\": null,\n        \"scopeValue\": null\n    }\n}"}],"_postman_id":"fe0739fb-d870-427c-aa87-09d94c2191b1"},{"name":"Reorder","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"be509cdd-1e93-479f-9b8f-1c06c5f90355"}}],"id":"fb6308d7-d076-4f12-b3da-669b5be8938e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"ids\": [\n        1,\n        2,\n        3\n    ],\n    \"category_id\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/category-filter-groups/sort","description":"<h2 id=\"body\">Body</h2>\n<p><code>ids</code> — ordered record IDs. Also send <code>category_id</code>.</p>\n","urlObject":{"path":["admin","category-filter-groups","sort"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"3f18a465-c110-4ec4-886c-d8eeed36fabe","name":"OK","originalRequest":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/category-filter-groups/sort"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 3\n    }\n}"}],"_postman_id":"fb6308d7-d076-4f12-b3da-669b5be8938e"},{"name":"Bulk disable","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"724a7f8c-9c90-49b4-b41b-317ddf64ab00"}}],"id":"c1ddd827-9624-4c5b-a29c-c6fa0f828e42","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"is_active\": false,\n    \"category_id\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/category-filter-groups/bulk-active","description":"<h2 id=\"summary\">Summary</h2>\n<p>Set <code>is_active</code> on all Category Filter Groups rows (omit scope to affect every row). Optional <code>category_id</code> limits the update to that parent.</p>\n<h2 id=\"body\">Body</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>is_active</td>\n<td>boolean</td>\n<td>yes</td>\n<td><code>false</code> disables, <code>true</code> enables</td>\n</tr>\n<tr>\n<td>category_id</td>\n<td>int</td>\n<td>no</td>\n<td>Limit to this parent; omit to update all</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-200\">Response <code>200</code></h2>\n<p><code>json\\n{\\n  \"data\": { \"updated\": 12, \"isActive\": false }\\n}\\n</code></p>\n","urlObject":{"path":["admin","category-filter-groups","bulk-active"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"cb3bfbec-8a78-4b53-9cda-81115b079167","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/category-filter-groups/bulk-active"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 12,\n        \"isActive\": false\n    }\n}"}],"_postman_id":"c1ddd827-9624-4c5b-a29c-c6fa0f828e42"},{"name":"Bulk enable","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"752e83b0-61b4-498f-a649-b8dd99279030"}}],"id":"7db470f0-b8d0-4b5f-8384-132fe501f113","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"is_active\": true,\n    \"category_id\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/category-filter-groups/bulk-active","description":"<h2 id=\"summary\">Summary</h2>\n<p>Enable all Category Filter Groups rows (same endpoint as Bulk disable).</p>\n","urlObject":{"path":["admin","category-filter-groups","bulk-active"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"8336b8a3-dfc0-4182-a155-003b354fa694","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/category-filter-groups/bulk-active"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 12,\n        \"isActive\": true\n    }\n}"}],"_postman_id":"7db470f0-b8d0-4b5f-8384-132fe501f113"}],"id":"d9ecdbd4-500c-4e7b-8df1-9d434a86e2c3","_postman_id":"d9ecdbd4-500c-4e7b-8df1-9d434a86e2c3","description":""},{"name":"Category Filter Fields","item":[{"name":"List","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('category-filter-fieldsId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"21beba9c-bfa6-419c-89c2-2844bce82640"}}],"id":"38213ef6-779f-4b44-b64b-6877bd63f4e7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/category-filter-fields?page=1&per_page=25&search=&sort=&group_id=1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Paginated Library list for <code>category-filter-fields</code>.</p>\n","urlObject":{"path":["admin","category-filter-fields"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Page number</p>\n","type":"text/plain"},"key":"page","value":"1"},{"description":{"content":"<p>Page size (max 100; icons max 200)</p>\n","type":"text/plain"},"key":"per_page","value":"25"},{"description":{"content":"<p>Search query</p>\n","type":"text/plain"},"key":"search","value":""},{"description":{"content":"<p>Column name; prefix with - for descending</p>\n","type":"text/plain"},"key":"sort","value":""},{"description":{"content":"<p>Filter / sort scope</p>\n","type":"text/plain"},"key":"group_id","value":"1"}],"variable":[]}},"response":[{"id":"44398e5a-db06-45c8-89fa-e923521d8e20","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/category-filter-fields?page=1&per_page=25&search=&sort=&group_id=1","host":["https://api.loya.cc/api/v1"],"path":["admin","category-filter-fields"],"query":[{"key":"page","value":"1","description":"Page number"},{"key":"per_page","value":"25","description":"Page size (max 100; icons max 200)"},{"key":"search","value":"","description":"Search query"},{"key":"sort","value":"","description":"Column name; prefix with - for descending"},{"key":"group_id","value":"1","description":"Filter / sort scope"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"attributes\": {\n                \"name\": \"Example\"\n            },\n            \"relations\": {},\n            \"translations\": {},\n            \"counts\": {},\n            \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"38213ef6-779f-4b44-b64b-6877bd63f4e7"},{"name":"Get one","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"7488a71e-b2a8-4f7a-a8bf-a513eddc124e"}}],"id":"a0c476f4-a1a5-4d35-9fdd-71e376269414","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/category-filter-fields/1","urlObject":{"path":["admin","category-filter-fields","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"e030320e-76f8-47b1-be74-d02cbfc8849a","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/category-filter-fields/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"a0c476f4-a1a5-4d35-9fdd-71e376269414"},{"name":"Create","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('category-filter-fieldsId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"78a739ab-7e7d-4730-90c5-98e47b7c9ce5"}}],"id":"b67173dc-dc62-4331-98d0-715ce91e122d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"group_id\": 1,\n    \"key\": \"cuisine\",\n    \"type\": \"multi_select\",\n    \"config\": {},\n    \"sort_order\": 1,\n    \"translations\": {\n        \"label\": {\n            \"en\": \"Cuisine\",\n            \"az\": \"M\\u0259tb\\u0259x\",\n            \"ru\": \"\\u041a\\u0443\\u0445\\u043d\\u044f\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/category-filter-fields","urlObject":{"path":["admin","category-filter-fields"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"dddf2939-5d01-432d-9135-646ee36df8bd","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/category-filter-fields"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"attributes\": {\n            \"group_id\": 1,\n            \"key\": \"cuisine\",\n            \"type\": \"multi_select\",\n            \"config\": {},\n            \"sort_order\": 1\n        },\n        \"relations\": {},\n        \"translations\": {\n            \"label\": {\n                \"en\": \"Cuisine\",\n                \"az\": \"Mətbəx\",\n                \"ru\": \"Кухня\"\n            }\n        },\n        \"counts\": {},\n        \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n    }\n}"}],"_postman_id":"b67173dc-dc62-4331-98d0-715ce91e122d"},{"name":"Update","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"7f91d6f3-783b-438f-900e-7cbca3043fe3"}}],"id":"b2eaa65e-f9dd-421f-8fb4-7a22aabba0da","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"group_id\": 1,\n    \"key\": \"cuisine\",\n    \"type\": \"multi_select\",\n    \"config\": {},\n    \"sort_order\": 1,\n    \"translations\": {\n        \"label\": {\n            \"en\": \"Cuisine\",\n            \"az\": \"M\\u0259tb\\u0259x\",\n            \"ru\": \"\\u041a\\u0443\\u0445\\u043d\\u044f\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/category-filter-fields/1","urlObject":{"path":["admin","category-filter-fields","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"dda90cc4-04de-4492-b23a-649a3ea7db1a","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/category-filter-fields/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"group_id\": 1,\n        \"key\": \"cuisine\",\n        \"type\": \"multi_select\",\n        \"config\": {},\n        \"sort_order\": 1,\n        \"translations\": {\n            \"label\": {\n                \"en\": \"Cuisine\",\n                \"az\": \"Mətbəx\",\n                \"ru\": \"Кухня\"\n            }\n        }\n    }\n}"}],"_postman_id":"b2eaa65e-f9dd-421f-8fb4-7a22aabba0da"},{"name":"Delete","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"1a00a658-ac40-4135-94bb-ef15b7581d6d"}}],"id":"80a97a96-a4ce-448e-933a-50831fa82660","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/category-filter-fields/1","urlObject":{"path":["admin","category-filter-fields","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"61ce9659-a938-47be-9f64-a477ed063611","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/category-filter-fields/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"80a97a96-a4ce-448e-933a-50831fa82660"},{"name":"Sort list","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"5c22d2ab-723e-4228-9ea7-7595d22faccf"}}],"id":"f45379eb-652f-4823-b174-19e89e4c7476","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/category-filter-fields/sort?group_id=1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Ordered rows for drag-and-drop sort UI. Requires <code>group_id</code>.</p>\n","urlObject":{"path":["admin","category-filter-fields","sort"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Required sort scope</p>\n","type":"text/plain"},"key":"group_id","value":"1"}],"variable":[]}},"response":[{"id":"93283b36-f91d-4804-968e-e9b3fbda2892","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/category-filter-fields/sort?group_id=1","host":["https://api.loya.cc/api/v1"],"path":["admin","category-filter-fields","sort"],"query":[{"key":"group_id","value":"1","description":"Required sort scope"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"name\": \"Example\",\n            \"sort_order\": 0\n        }\n    ],\n    \"meta\": {\n        \"scope\": null,\n        \"scopeValue\": null\n    }\n}"}],"_postman_id":"f45379eb-652f-4823-b174-19e89e4c7476"},{"name":"Reorder","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"63dc44b0-249f-4aee-bc88-63beaf1ed2a8"}}],"id":"c3936ee3-dff9-4b02-a44f-557840bff459","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"ids\": [\n        1,\n        2,\n        3\n    ],\n    \"group_id\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/category-filter-fields/sort","description":"<h2 id=\"body\">Body</h2>\n<p><code>ids</code> — ordered record IDs. Also send <code>group_id</code>.</p>\n","urlObject":{"path":["admin","category-filter-fields","sort"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"1a95e4b4-6911-442b-be72-2a2ed919e849","name":"OK","originalRequest":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/category-filter-fields/sort"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 3\n    }\n}"}],"_postman_id":"c3936ee3-dff9-4b02-a44f-557840bff459"}],"id":"0396208d-69c9-45ee-9a35-11955cb9ea79","_postman_id":"0396208d-69c9-45ee-9a35-11955cb9ea79","description":""},{"name":"Category Filter Options","item":[{"name":"List","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('category-filter-optionsId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"36b4ec09-a7ba-4304-a224-22bba69f811b"}}],"id":"9b692ba1-fc5c-4494-a898-0aae054a3e5f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/category-filter-options?page=1&per_page=25&search=&sort=&field_id=1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Paginated Library list for <code>category-filter-options</code>.</p>\n","urlObject":{"path":["admin","category-filter-options"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Page number</p>\n","type":"text/plain"},"key":"page","value":"1"},{"description":{"content":"<p>Page size (max 100; icons max 200)</p>\n","type":"text/plain"},"key":"per_page","value":"25"},{"description":{"content":"<p>Search query</p>\n","type":"text/plain"},"key":"search","value":""},{"description":{"content":"<p>Column name; prefix with - for descending</p>\n","type":"text/plain"},"key":"sort","value":""},{"description":{"content":"<p>Filter / sort scope</p>\n","type":"text/plain"},"key":"field_id","value":"1"}],"variable":[]}},"response":[{"id":"22db180c-1896-48d5-b0c7-38aed57f1d30","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/category-filter-options?page=1&per_page=25&search=&sort=&field_id=1","host":["https://api.loya.cc/api/v1"],"path":["admin","category-filter-options"],"query":[{"key":"page","value":"1","description":"Page number"},{"key":"per_page","value":"25","description":"Page size (max 100; icons max 200)"},{"key":"search","value":"","description":"Search query"},{"key":"sort","value":"","description":"Column name; prefix with - for descending"},{"key":"field_id","value":"1","description":"Filter / sort scope"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"attributes\": {\n                \"name\": \"Example\"\n            },\n            \"relations\": {},\n            \"translations\": {},\n            \"counts\": {},\n            \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"9b692ba1-fc5c-4494-a898-0aae054a3e5f"},{"name":"Get one","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"e84077a2-3810-4cab-9bde-76d3d3b9a0c0"}}],"id":"97cfec6f-22a2-4c71-a5ff-0bd62cbe6417","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/category-filter-options/1","urlObject":{"path":["admin","category-filter-options","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"d6447c12-5dcd-4df7-851d-39711a9941bb","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/category-filter-options/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"97cfec6f-22a2-4c71-a5ff-0bd62cbe6417"},{"name":"Create","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('category-filter-optionsId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"626558a6-0a69-458a-96a5-229bdee5d937"}}],"id":"bec78f9c-5c7b-4448-98fe-bc37c9ca6842","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"field_id\": 1,\n    \"value\": \"italian\",\n    \"icon\": null,\n    \"sort_order\": 1,\n    \"translations\": {\n        \"label\": {\n            \"en\": \"Italian\",\n            \"az\": \"\\u0130talyan\",\n            \"ru\": \"\\u0418\\u0442\\u0430\\u043b\\u044c\\u044f\\u043d\\u0441\\u043a\\u0430\\u044f\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/category-filter-options","urlObject":{"path":["admin","category-filter-options"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"8c8020bd-e85d-4162-b0d8-5cbd46c2519e","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/category-filter-options"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"attributes\": {\n            \"field_id\": 1,\n            \"value\": \"italian\",\n            \"icon\": null,\n            \"sort_order\": 1\n        },\n        \"relations\": {},\n        \"translations\": {\n            \"label\": {\n                \"en\": \"Italian\",\n                \"az\": \"İtalyan\",\n                \"ru\": \"Итальянская\"\n            }\n        },\n        \"counts\": {},\n        \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n    }\n}"}],"_postman_id":"bec78f9c-5c7b-4448-98fe-bc37c9ca6842"},{"name":"Update","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"1a69a9dd-4b56-4b24-88b9-0d52afa5db1b"}}],"id":"f0da21bd-53a4-4fff-96cc-f9ef5f42b8e4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"field_id\": 1,\n    \"value\": \"italian\",\n    \"icon\": null,\n    \"sort_order\": 1,\n    \"translations\": {\n        \"label\": {\n            \"en\": \"Italian\",\n            \"az\": \"\\u0130talyan\",\n            \"ru\": \"\\u0418\\u0442\\u0430\\u043b\\u044c\\u044f\\u043d\\u0441\\u043a\\u0430\\u044f\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/category-filter-options/1","urlObject":{"path":["admin","category-filter-options","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"bef49de5-9ecd-480c-99f5-bef4b788ea74","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/category-filter-options/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"field_id\": 1,\n        \"value\": \"italian\",\n        \"icon\": null,\n        \"sort_order\": 1,\n        \"translations\": {\n            \"label\": {\n                \"en\": \"Italian\",\n                \"az\": \"İtalyan\",\n                \"ru\": \"Итальянская\"\n            }\n        }\n    }\n}"}],"_postman_id":"f0da21bd-53a4-4fff-96cc-f9ef5f42b8e4"},{"name":"Delete","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"3e78e4b1-e3f9-4c68-91e0-97c7836ba826"}}],"id":"4cf9601e-224c-44ed-9912-0119462bafa3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/category-filter-options/1","urlObject":{"path":["admin","category-filter-options","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"b4b7d8f1-524a-418c-9599-8e1d0ca43d81","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/category-filter-options/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"4cf9601e-224c-44ed-9912-0119462bafa3"},{"name":"Sort list","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"61ce16a1-9a59-4693-951a-82dcfda11146"}}],"id":"2cae85a4-f688-4154-a407-af8fd0aacbd0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/category-filter-options/sort?field_id=1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Ordered rows for drag-and-drop sort UI. Requires <code>field_id</code>.</p>\n","urlObject":{"path":["admin","category-filter-options","sort"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Required sort scope</p>\n","type":"text/plain"},"key":"field_id","value":"1"}],"variable":[]}},"response":[{"id":"c58b98ea-66dd-474c-b4ec-89f3afa513b3","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/category-filter-options/sort?field_id=1","host":["https://api.loya.cc/api/v1"],"path":["admin","category-filter-options","sort"],"query":[{"key":"field_id","value":"1","description":"Required sort scope"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"name\": \"Example\",\n            \"sort_order\": 0\n        }\n    ],\n    \"meta\": {\n        \"scope\": null,\n        \"scopeValue\": null\n    }\n}"}],"_postman_id":"2cae85a4-f688-4154-a407-af8fd0aacbd0"},{"name":"Reorder","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"a342ec73-0588-4af5-9d32-5b11986cf5db"}}],"id":"ace521b8-50c9-4174-b745-c61da4850b0c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"ids\": [\n        1,\n        2,\n        3\n    ],\n    \"field_id\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/category-filter-options/sort","description":"<h2 id=\"body\">Body</h2>\n<p><code>ids</code> — ordered record IDs. Also send <code>field_id</code>.</p>\n","urlObject":{"path":["admin","category-filter-options","sort"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"c021ce26-836e-4e6d-a51d-f80247f1ac29","name":"OK","originalRequest":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/category-filter-options/sort"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 3\n    }\n}"}],"_postman_id":"ace521b8-50c9-4174-b745-c61da4850b0c"}],"id":"9f09c102-2da5-4f58-83be-b20f828e68d1","_postman_id":"9f09c102-2da5-4f58-83be-b20f828e68d1","description":""},{"name":"Home Banners","item":[{"name":"List","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('home-bannersId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"636e0bbf-1ec4-4187-b71f-7ee486fef9a7"}}],"id":"ae26f876-4c11-4642-9b89-8de8c69f76e2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/home-banners?page=1&per_page=25&search=&sort=","description":"<h2 id=\"summary\">Summary</h2>\n<p>Paginated Library list for <code>home-banners</code>.</p>\n","urlObject":{"path":["admin","home-banners"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Page number</p>\n","type":"text/plain"},"key":"page","value":"1"},{"description":{"content":"<p>Page size (max 100; icons max 200)</p>\n","type":"text/plain"},"key":"per_page","value":"25"},{"description":{"content":"<p>Search query</p>\n","type":"text/plain"},"key":"search","value":""},{"description":{"content":"<p>Column name; prefix with - for descending</p>\n","type":"text/plain"},"key":"sort","value":""}],"variable":[]}},"response":[{"id":"2e5bd163-adc4-400b-b348-f0ddada1d4f1","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/home-banners?page=1&per_page=25&search=&sort=","host":["https://api.loya.cc/api/v1"],"path":["admin","home-banners"],"query":[{"key":"page","value":"1","description":"Page number"},{"key":"per_page","value":"25","description":"Page size (max 100; icons max 200)"},{"key":"search","value":"","description":"Search query"},{"key":"sort","value":"","description":"Column name; prefix with - for descending"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"attributes\": {\n                \"name\": \"Example\"\n            },\n            \"relations\": {},\n            \"translations\": {},\n            \"counts\": {},\n            \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"ae26f876-4c11-4642-9b89-8de8c69f76e2"},{"name":"Get one","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"7906bc4d-d05c-45ad-a122-b80768945d51"}}],"id":"dd967a45-6241-4d90-93a2-d756098d229d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/home-banners/1","urlObject":{"path":["admin","home-banners","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"5ad8b943-510c-4869-9acb-70385a9016ec","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/home-banners/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"dd967a45-6241-4d90-93a2-d756098d229d"},{"name":"Create","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('home-bannersId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"c69ce4dc-8b88-4c08-b051-8b276a89674b"}}],"id":"fe3daccb-ae5d-4467-952c-7a1a3253a21c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"image\": \"banners/welcome.jpg\",\n    \"link_type\": \"branch\",\n    \"link_id\": 1,\n    \"sort_order\": 1,\n    \"is_active\": true,\n    \"translations\": {\n        \"title\": {\n            \"en\": \"Deals and loyalty\",\n            \"az\": \"Endiriml\\u0259r\",\n            \"ru\": \"\\u0410\\u043a\\u0446\\u0438\\u0438\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/home-banners","urlObject":{"path":["admin","home-banners"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"a2fea888-73b0-4a67-96f4-086711c49070","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/home-banners"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"attributes\": {\n            \"image\": \"banners/welcome.jpg\",\n            \"link_type\": \"branch\",\n            \"link_id\": 1,\n            \"sort_order\": 1,\n            \"is_active\": true\n        },\n        \"relations\": {},\n        \"translations\": {\n            \"title\": {\n                \"en\": \"Deals and loyalty\",\n                \"az\": \"Endirimlər\",\n                \"ru\": \"Акции\"\n            }\n        },\n        \"counts\": {},\n        \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n    }\n}"}],"_postman_id":"fe3daccb-ae5d-4467-952c-7a1a3253a21c"},{"name":"Update","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"afe8c17f-e624-449e-ba65-c724ebc3c917"}}],"id":"0a488ba0-2a7c-4561-ab46-339c1ed49dba","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"image\": \"banners/welcome.jpg\",\n    \"link_type\": \"branch\",\n    \"link_id\": 1,\n    \"sort_order\": 1,\n    \"is_active\": true,\n    \"translations\": {\n        \"title\": {\n            \"en\": \"Deals and loyalty\",\n            \"az\": \"Endiriml\\u0259r\",\n            \"ru\": \"\\u0410\\u043a\\u0446\\u0438\\u0438\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/home-banners/1","urlObject":{"path":["admin","home-banners","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"1cd4f465-3ac2-4328-b9a3-c7b5e5411474","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/home-banners/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"image\": \"banners/welcome.jpg\",\n        \"link_type\": \"branch\",\n        \"link_id\": 1,\n        \"sort_order\": 1,\n        \"is_active\": true,\n        \"translations\": {\n            \"title\": {\n                \"en\": \"Deals and loyalty\",\n                \"az\": \"Endirimlər\",\n                \"ru\": \"Акции\"\n            }\n        }\n    }\n}"}],"_postman_id":"0a488ba0-2a7c-4561-ab46-339c1ed49dba"},{"name":"Delete","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"c46be0b8-7a89-41f8-ad74-85c9f7441705"}}],"id":"2daee2da-c3e4-4d21-84e6-dad47b1696db","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/home-banners/1","urlObject":{"path":["admin","home-banners","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"63e1cb41-375d-4180-a259-610e9c6093ab","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/home-banners/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"2daee2da-c3e4-4d21-84e6-dad47b1696db"},{"name":"Sort list","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"05f6d1bd-1217-4ae6-8922-ee4be629fe6e"}}],"id":"7597fb77-8609-471e-a6bf-99a4b25d2ea3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/home-banners/sort","description":"<h2 id=\"summary\">Summary</h2>\n<p>Ordered rows for drag-and-drop sort UI.</p>\n","urlObject":{"path":["admin","home-banners","sort"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"f84d59ef-28a1-4b27-a410-ef88d4886937","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/home-banners/sort"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"name\": \"Example\",\n            \"sort_order\": 0\n        }\n    ],\n    \"meta\": {\n        \"scope\": null,\n        \"scopeValue\": null\n    }\n}"}],"_postman_id":"7597fb77-8609-471e-a6bf-99a4b25d2ea3"},{"name":"Reorder","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"dba4ada0-da59-49da-bb54-e5cbf3a6fc22"}}],"id":"8f8c0501-470c-4a91-a46e-cb9db75d09a8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"ids\": [\n        1,\n        2,\n        3\n    ]\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/home-banners/sort","description":"<h2 id=\"body\">Body</h2>\n<p><code>ids</code> — ordered record IDs.</p>\n","urlObject":{"path":["admin","home-banners","sort"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"8eef05a3-641f-44c9-b028-61453743c8de","name":"OK","originalRequest":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/home-banners/sort"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 3\n    }\n}"}],"_postman_id":"8f8c0501-470c-4a91-a46e-cb9db75d09a8"},{"name":"Bulk disable","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"23cd07b9-183b-4350-bd5e-b83c6606b525"}}],"id":"844d24df-844a-4bdb-8a0a-1bfb4de3561e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"is_active\": false\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/home-banners/bulk-active","description":"<h2 id=\"summary\">Summary</h2>\n<p>Set <code>is_active</code> on all Home Banners rows (omit scope to affect every row).</p>\n<h2 id=\"body\">Body</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>is_active</td>\n<td>boolean</td>\n<td>yes</td>\n<td><code>false</code> disables, <code>true</code> enables</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-200\">Response <code>200</code></h2>\n<p><code>json\\n{\\n  \"data\": { \"updated\": 12, \"isActive\": false }\\n}\\n</code></p>\n","urlObject":{"path":["admin","home-banners","bulk-active"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"b85b24ea-1f0c-4fe2-a8ce-da237a3b8f94","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/home-banners/bulk-active"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 12,\n        \"isActive\": false\n    }\n}"}],"_postman_id":"844d24df-844a-4bdb-8a0a-1bfb4de3561e"},{"name":"Bulk enable","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"19a19e60-547a-4476-bb1e-b269a15588f3"}}],"id":"1968c95a-c09b-4f09-ab1f-f4a1056e608f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"is_active\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/home-banners/bulk-active","description":"<h2 id=\"summary\">Summary</h2>\n<p>Enable all Home Banners rows (same endpoint as Bulk disable).</p>\n","urlObject":{"path":["admin","home-banners","bulk-active"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"a9fec1b0-e7ee-4026-bf9c-a874a91fe76b","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/home-banners/bulk-active"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 12,\n        \"isActive\": true\n    }\n}"}],"_postman_id":"1968c95a-c09b-4f09-ab1f-f4a1056e608f"}],"id":"eb994091-d3a8-4e20-a58e-5b841bbb85f6","_postman_id":"eb994091-d3a8-4e20-a58e-5b841bbb85f6","description":""},{"name":"Cms Pages","item":[{"name":"List","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('cms-pagesId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"a8d45462-90ce-4cab-a60c-b4a48b6a2ee0"}}],"id":"a2d22b86-9e30-472e-91de-7b4d75da8261","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/cms-pages?page=1&per_page=25&search=&sort=","description":"<h2 id=\"summary\">Summary</h2>\n<p>Paginated Library list for <code>cms-pages</code>.</p>\n","urlObject":{"path":["admin","cms-pages"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Page number</p>\n","type":"text/plain"},"key":"page","value":"1"},{"description":{"content":"<p>Page size (max 100; icons max 200)</p>\n","type":"text/plain"},"key":"per_page","value":"25"},{"description":{"content":"<p>Search query</p>\n","type":"text/plain"},"key":"search","value":""},{"description":{"content":"<p>Column name; prefix with - for descending</p>\n","type":"text/plain"},"key":"sort","value":""}],"variable":[]}},"response":[{"id":"1bc49ca6-5152-4508-b615-d8f14cb42d77","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/cms-pages?page=1&per_page=25&search=&sort=","host":["https://api.loya.cc/api/v1"],"path":["admin","cms-pages"],"query":[{"key":"page","value":"1","description":"Page number"},{"key":"per_page","value":"25","description":"Page size (max 100; icons max 200)"},{"key":"search","value":"","description":"Search query"},{"key":"sort","value":"","description":"Column name; prefix with - for descending"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"attributes\": {\n                \"name\": \"Example\"\n            },\n            \"relations\": {},\n            \"translations\": {},\n            \"counts\": {},\n            \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"a2d22b86-9e30-472e-91de-7b4d75da8261"},{"name":"Get one","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"165841ac-9d88-4c3b-b94e-4b731d2fd486"}}],"id":"b893353c-1322-4151-81d5-dd98681f1541","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/cms-pages/1","urlObject":{"path":["admin","cms-pages","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"16334667-6af0-472c-9983-25ee0d8bbf16","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/cms-pages/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"b893353c-1322-4151-81d5-dd98681f1541"},{"name":"Create","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('cms-pagesId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"7cfe7661-d2fc-410e-a00b-233a5dbd690b"}}],"id":"3a09e4f3-e0dc-4f46-ac95-2789b26fd47d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"slug\": \"about\",\n    \"type\": \"about\",\n    \"published_at\": \"2026-07-08T10:00:00.000000Z\",\n    \"translations\": {\n        \"title\": {\n            \"en\": \"About Loya\",\n            \"az\": \"Loya haqq\\u0131nda\",\n            \"ru\": \"\\u041e Loya\"\n        },\n        \"body\": {\n            \"en\": \"Loya connects customers with partner offers.\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/cms-pages","urlObject":{"path":["admin","cms-pages"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"8f6a8bf9-c833-48d8-85a8-4894b9eaf386","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/cms-pages"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"attributes\": {\n            \"slug\": \"about\",\n            \"type\": \"about\",\n            \"published_at\": \"2026-07-08T10:00:00.000000Z\"\n        },\n        \"relations\": {},\n        \"translations\": {\n            \"title\": {\n                \"en\": \"About Loya\",\n                \"az\": \"Loya haqqında\",\n                \"ru\": \"О Loya\"\n            },\n            \"body\": {\n                \"en\": \"Loya connects customers with partner offers.\"\n            }\n        },\n        \"counts\": {},\n        \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n    }\n}"}],"_postman_id":"3a09e4f3-e0dc-4f46-ac95-2789b26fd47d"},{"name":"Update","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"db69094c-607d-43e1-a901-a48681ae87ed"}}],"id":"abcf4257-d30d-490a-a035-b4f1db9f0cc5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"slug\": \"about\",\n    \"type\": \"about\",\n    \"published_at\": \"2026-07-08T10:00:00.000000Z\",\n    \"translations\": {\n        \"title\": {\n            \"en\": \"About Loya\",\n            \"az\": \"Loya haqq\\u0131nda\",\n            \"ru\": \"\\u041e Loya\"\n        },\n        \"body\": {\n            \"en\": \"Loya connects customers with partner offers.\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/cms-pages/1","urlObject":{"path":["admin","cms-pages","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"ad386875-e0b4-4963-8d2d-067125506b6e","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/cms-pages/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"slug\": \"about\",\n        \"type\": \"about\",\n        \"published_at\": \"2026-07-08T10:00:00.000000Z\",\n        \"translations\": {\n            \"title\": {\n                \"en\": \"About Loya\",\n                \"az\": \"Loya haqqında\",\n                \"ru\": \"О Loya\"\n            },\n            \"body\": {\n                \"en\": \"Loya connects customers with partner offers.\"\n            }\n        }\n    }\n}"}],"_postman_id":"abcf4257-d30d-490a-a035-b4f1db9f0cc5"},{"name":"Delete","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"7fce09da-1a13-4348-896c-c50a7245cdd8"}}],"id":"d7dfa2c3-048c-45be-973a-038cb9b94b20","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/cms-pages/1","urlObject":{"path":["admin","cms-pages","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"6724c07e-4b94-4459-976b-7e6eea3a2237","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/cms-pages/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"d7dfa2c3-048c-45be-973a-038cb9b94b20"}],"id":"5a7a1424-0186-4cdb-83a9-e8024338466d","_postman_id":"5a7a1424-0186-4cdb-83a9-e8024338466d","description":""},{"name":"Question Answers","item":[{"name":"List","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('question-answersId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"39a572a5-f332-46ff-a91d-22461b98286f"}}],"id":"a37c3fbe-1e0a-477d-9c90-b0a86409a8d0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/question-answers?page=1&per_page=25&search=&sort=","description":"<h2 id=\"summary\">Summary</h2>\n<p>Paginated Library list for <code>question-answers</code>.</p>\n","urlObject":{"path":["admin","question-answers"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Page number</p>\n","type":"text/plain"},"key":"page","value":"1"},{"description":{"content":"<p>Page size (max 100; icons max 200)</p>\n","type":"text/plain"},"key":"per_page","value":"25"},{"description":{"content":"<p>Search query</p>\n","type":"text/plain"},"key":"search","value":""},{"description":{"content":"<p>Column name; prefix with - for descending</p>\n","type":"text/plain"},"key":"sort","value":""}],"variable":[]}},"response":[{"id":"292262c4-9f37-46b2-9b68-c82f92be9ca8","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/question-answers?page=1&per_page=25&search=&sort=","host":["https://api.loya.cc/api/v1"],"path":["admin","question-answers"],"query":[{"key":"page","value":"1","description":"Page number"},{"key":"per_page","value":"25","description":"Page size (max 100; icons max 200)"},{"key":"search","value":"","description":"Search query"},{"key":"sort","value":"","description":"Column name; prefix with - for descending"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"attributes\": {\n                \"name\": \"Example\"\n            },\n            \"relations\": {},\n            \"translations\": {},\n            \"counts\": {},\n            \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"a37c3fbe-1e0a-477d-9c90-b0a86409a8d0"},{"name":"Get one","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"26528f20-d6b0-4158-8b80-02f4f95a9332"}}],"id":"46eed7a7-12e4-44c3-8eff-5cdcc2606daf","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/question-answers/1","urlObject":{"path":["admin","question-answers","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"319d0d20-8cde-4c9b-8ca8-ffcb8140f4fc","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/question-answers/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"46eed7a7-12e4-44c3-8eff-5cdcc2606daf"},{"name":"Create","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('question-answersId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"baeeb786-4679-46c7-a694-3c3db10073c1"}}],"id":"c1f29509-da9c-4dbb-b608-cefa3471a5a1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"sort_order\": 1,\n    \"is_active\": true,\n    \"translations\": {\n        \"question\": {\n            \"en\": \"How do I redeem a promo?\",\n            \"az\": \"Promo nec\\u0259 aktivl\\u0259\\u015fdirilir?\",\n            \"ru\": \"\\u041a\\u0430\\u043a \\u0430\\u043a\\u0442\\u0438\\u0432\\u0438\\u0440\\u043e\\u0432\\u0430\\u0442\\u044c \\u043f\\u0440\\u043e\\u043c\\u043e?\"\n        },\n        \"answer\": {\n            \"en\": \"Tap Redeem and show the QR code to staff.\",\n            \"az\": \"Redeem d\\u00fcym\\u0259sin\\u0259 bas\\u0131n v\\u0259 QR kodu g\\u00f6st\\u0259rin.\",\n            \"ru\": \"\\u041d\\u0430\\u0436\\u043c\\u0438\\u0442\\u0435 Redeem \\u0438 \\u043f\\u043e\\u043a\\u0430\\u0436\\u0438\\u0442\\u0435 QR-\\u043a\\u043e\\u0434 \\u0441\\u043e\\u0442\\u0440\\u0443\\u0434\\u043d\\u0438\\u043a\\u0443.\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/question-answers","urlObject":{"path":["admin","question-answers"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"53d15460-3f1f-4f6e-bcce-680905018410","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/question-answers"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"attributes\": {\n            \"sort_order\": 1,\n            \"is_active\": true\n        },\n        \"relations\": {},\n        \"translations\": {\n            \"question\": {\n                \"en\": \"How do I redeem a promo?\",\n                \"az\": \"Promo necə aktivləşdirilir?\",\n                \"ru\": \"Как активировать промо?\"\n            },\n            \"answer\": {\n                \"en\": \"Tap Redeem and show the QR code to staff.\",\n                \"az\": \"Redeem düyməsinə basın və QR kodu göstərin.\",\n                \"ru\": \"Нажмите Redeem и покажите QR-код сотруднику.\"\n            }\n        },\n        \"counts\": {},\n        \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n    }\n}"}],"_postman_id":"c1f29509-da9c-4dbb-b608-cefa3471a5a1"},{"name":"Update","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"867200f2-090e-47bf-8d7f-9a8297307efd"}}],"id":"a5bc508f-08c7-4591-9fb7-00875f9af986","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"sort_order\": 1,\n    \"is_active\": true,\n    \"translations\": {\n        \"question\": {\n            \"en\": \"How do I redeem a promo?\",\n            \"az\": \"Promo nec\\u0259 aktivl\\u0259\\u015fdirilir?\",\n            \"ru\": \"\\u041a\\u0430\\u043a \\u0430\\u043a\\u0442\\u0438\\u0432\\u0438\\u0440\\u043e\\u0432\\u0430\\u0442\\u044c \\u043f\\u0440\\u043e\\u043c\\u043e?\"\n        },\n        \"answer\": {\n            \"en\": \"Tap Redeem and show the QR code to staff.\",\n            \"az\": \"Redeem d\\u00fcym\\u0259sin\\u0259 bas\\u0131n v\\u0259 QR kodu g\\u00f6st\\u0259rin.\",\n            \"ru\": \"\\u041d\\u0430\\u0436\\u043c\\u0438\\u0442\\u0435 Redeem \\u0438 \\u043f\\u043e\\u043a\\u0430\\u0436\\u0438\\u0442\\u0435 QR-\\u043a\\u043e\\u0434 \\u0441\\u043e\\u0442\\u0440\\u0443\\u0434\\u043d\\u0438\\u043a\\u0443.\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/question-answers/1","urlObject":{"path":["admin","question-answers","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"73e002a6-a07e-4498-9346-b5d4a4234e2f","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/question-answers/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"sort_order\": 1,\n        \"is_active\": true,\n        \"translations\": {\n            \"question\": {\n                \"en\": \"How do I redeem a promo?\",\n                \"az\": \"Promo necə aktivləşdirilir?\",\n                \"ru\": \"Как активировать промо?\"\n            },\n            \"answer\": {\n                \"en\": \"Tap Redeem and show the QR code to staff.\",\n                \"az\": \"Redeem düyməsinə basın və QR kodu göstərin.\",\n                \"ru\": \"Нажмите Redeem и покажите QR-код сотруднику.\"\n            }\n        }\n    }\n}"}],"_postman_id":"a5bc508f-08c7-4591-9fb7-00875f9af986"},{"name":"Delete","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"a4cb7ec0-23cd-4563-9344-56b961cf00e1"}}],"id":"6f862fed-0c3d-49ef-b661-684b67e1828c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/question-answers/1","urlObject":{"path":["admin","question-answers","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"1c80822a-cc3c-4f44-bf0b-43a161d0458f","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/question-answers/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"6f862fed-0c3d-49ef-b661-684b67e1828c"},{"name":"Sort list","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"c8bc7bb0-450b-46b0-952c-9622aa0ddbf6"}}],"id":"9992f870-2b67-4d2f-9b1b-b29af29c119a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/question-answers/sort","description":"<h2 id=\"summary\">Summary</h2>\n<p>Ordered rows for drag-and-drop sort UI.</p>\n","urlObject":{"path":["admin","question-answers","sort"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"e22faf33-81ea-4dcd-8a3c-6756f4e08e1e","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/question-answers/sort"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"name\": \"Example\",\n            \"sort_order\": 0\n        }\n    ],\n    \"meta\": {\n        \"scope\": null,\n        \"scopeValue\": null\n    }\n}"}],"_postman_id":"9992f870-2b67-4d2f-9b1b-b29af29c119a"},{"name":"Reorder","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"f2783e8b-53b5-422e-9979-0641da554d69"}}],"id":"559d923d-fe20-4491-aa20-c6a23bc7b4da","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"ids\": [\n        1,\n        2,\n        3\n    ]\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/question-answers/sort","description":"<h2 id=\"body\">Body</h2>\n<p><code>ids</code> — ordered record IDs.</p>\n","urlObject":{"path":["admin","question-answers","sort"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"24efc22b-a46f-490c-a45c-aaa20b11e08d","name":"OK","originalRequest":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/question-answers/sort"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 3\n    }\n}"}],"_postman_id":"559d923d-fe20-4491-aa20-c6a23bc7b4da"},{"name":"Bulk disable","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"9e347a19-b67d-4839-b59e-923bfee46840"}}],"id":"388ffacd-b741-4763-94da-53bba2b287ca","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"is_active\": false\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/question-answers/bulk-active","description":"<h2 id=\"summary\">Summary</h2>\n<p>Set <code>is_active</code> on all Question Answers rows (omit scope to affect every row).</p>\n<h2 id=\"body\">Body</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>is_active</td>\n<td>boolean</td>\n<td>yes</td>\n<td><code>false</code> disables, <code>true</code> enables</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-200\">Response <code>200</code></h2>\n<p><code>json\\n{\\n  \"data\": { \"updated\": 12, \"isActive\": false }\\n}\\n</code></p>\n","urlObject":{"path":["admin","question-answers","bulk-active"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"e50bc958-7ffa-45a9-9006-48edad20f9fb","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/question-answers/bulk-active"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 12,\n        \"isActive\": false\n    }\n}"}],"_postman_id":"388ffacd-b741-4763-94da-53bba2b287ca"},{"name":"Bulk enable","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"849ceb34-a0db-4473-a2b0-8a53b86269f2"}}],"id":"34761e8f-f409-40f8-8cfc-611a18330294","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"is_active\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/question-answers/bulk-active","description":"<h2 id=\"summary\">Summary</h2>\n<p>Enable all Question Answers rows (same endpoint as Bulk disable).</p>\n","urlObject":{"path":["admin","question-answers","bulk-active"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"c77f9793-5915-49be-8dd1-349e15fc27c4","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/question-answers/bulk-active"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 12,\n        \"isActive\": true\n    }\n}"}],"_postman_id":"34761e8f-f409-40f8-8cfc-611a18330294"}],"id":"1df5bf84-bbac-46d1-a9fe-52fd8a928400","_postman_id":"1df5bf84-bbac-46d1-a9fe-52fd8a928400","description":""},{"name":"Promo Types","item":[{"name":"List","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('promo-typesId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"3d12b834-d282-4efc-adad-38533447d720"}}],"id":"40cf2589-9819-4aa0-a1a0-f91f5e385954","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/promo-types?page=1&per_page=25&search=&sort=","description":"<h2 id=\"summary\">Summary</h2>\n<p>Paginated Library list for <code>promo-types</code>.</p>\n<h2 id=\"soft-deletes\">Soft deletes</h2>\n<p>Pass <code>trashed=1</code> to list only deleted rows, then <strong>Restore</strong> or <strong>Force delete</strong>.</p>\n","urlObject":{"path":["admin","promo-types"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Page number</p>\n","type":"text/plain"},"key":"page","value":"1"},{"description":{"content":"<p>Page size (max 100; icons max 200)</p>\n","type":"text/plain"},"key":"per_page","value":"25"},{"description":{"content":"<p>Search query</p>\n","type":"text/plain"},"key":"search","value":""},{"description":{"content":"<p>Column name; prefix with - for descending</p>\n","type":"text/plain"},"key":"sort","value":""},{"disabled":true,"description":{"content":"<p>Set 1 to list only soft-deleted rows</p>\n","type":"text/plain"},"key":"trashed","value":"1"}],"variable":[]}},"response":[{"id":"16f81dde-c1c6-49b6-8f15-f86998f68d7f","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/promo-types?page=1&per_page=25&search=&sort=","host":["https://api.loya.cc/api/v1"],"path":["admin","promo-types"],"query":[{"key":"page","value":"1","description":"Page number"},{"key":"per_page","value":"25","description":"Page size (max 100; icons max 200)"},{"key":"search","value":"","description":"Search query"},{"key":"sort","value":"","description":"Column name; prefix with - for descending"},{"key":"trashed","value":"1","description":"Set 1 to list only soft-deleted rows","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"attributes\": {\n                \"name\": \"Example\"\n            },\n            \"relations\": {},\n            \"translations\": {},\n            \"counts\": {},\n            \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"40cf2589-9819-4aa0-a1a0-f91f5e385954"},{"name":"Get one","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"0c912b24-6748-4b46-aee7-699f76bde342"}}],"id":"5866b982-3cb2-4060-b8b6-edced40fa9ba","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/promo-types/1","urlObject":{"path":["admin","promo-types","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"73934172-6a74-4366-a5cd-cf36eeb36210","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/promo-types/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"5866b982-3cb2-4060-b8b6-edced40fa9ba"},{"name":"Create","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('promo-typesId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"6fb2d065-028e-4b84-b280-5906cc114d60"}}],"id":"a5e58082-c8b4-4cc5-9fd2-94c6f73e6990","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"slug\": \"welcome-deal\",\n    \"icon\": \"gift\",\n    \"sort_order\": 1,\n    \"translations\": {\n        \"name\": {\n            \"en\": \"Welcome Deal\",\n            \"az\": \"Xo\\u015f g\\u0259ldin\",\n            \"ru\": \"\\u041f\\u0440\\u0438\\u0432\\u0435\\u0442\\u0441\\u0442\\u0432\\u0435\\u043d\\u043d\\u0430\\u044f \\u0430\\u043a\\u0446\\u0438\\u044f\"\n        },\n        \"description\": {\n            \"en\": \"First visit promo.\",\n            \"az\": \"\\u0130lk ziyar\\u0259t promo.\",\n            \"ru\": \"\\u041f\\u0440\\u043e\\u043c\\u043e \\u0434\\u043b\\u044f \\u043f\\u0435\\u0440\\u0432\\u043e\\u0433\\u043e \\u0432\\u0438\\u0437\\u0438\\u0442\\u0430.\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/promo-types","urlObject":{"path":["admin","promo-types"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"feb0d2fd-62c2-41dd-94dd-5a9d4e771906","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/promo-types"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"attributes\": {\n            \"slug\": \"welcome-deal\",\n            \"icon\": \"gift\",\n            \"sort_order\": 1\n        },\n        \"relations\": {},\n        \"translations\": {\n            \"name\": {\n                \"en\": \"Welcome Deal\",\n                \"az\": \"Xoş gəldin\",\n                \"ru\": \"Приветственная акция\"\n            },\n            \"description\": {\n                \"en\": \"First visit promo.\",\n                \"az\": \"İlk ziyarət promo.\",\n                \"ru\": \"Промо для первого визита.\"\n            }\n        },\n        \"counts\": {},\n        \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n    }\n}"}],"_postman_id":"a5e58082-c8b4-4cc5-9fd2-94c6f73e6990"},{"name":"Update","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"9f61409f-5e38-41ec-81dd-13819e8087f3"}}],"id":"8f99f7a4-21fb-46af-857d-98102da9cf6d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"slug\": \"welcome-deal\",\n    \"icon\": \"gift\",\n    \"sort_order\": 1,\n    \"translations\": {\n        \"name\": {\n            \"en\": \"Welcome Deal\",\n            \"az\": \"Xo\\u015f g\\u0259ldin\",\n            \"ru\": \"\\u041f\\u0440\\u0438\\u0432\\u0435\\u0442\\u0441\\u0442\\u0432\\u0435\\u043d\\u043d\\u0430\\u044f \\u0430\\u043a\\u0446\\u0438\\u044f\"\n        },\n        \"description\": {\n            \"en\": \"First visit promo.\",\n            \"az\": \"\\u0130lk ziyar\\u0259t promo.\",\n            \"ru\": \"\\u041f\\u0440\\u043e\\u043c\\u043e \\u0434\\u043b\\u044f \\u043f\\u0435\\u0440\\u0432\\u043e\\u0433\\u043e \\u0432\\u0438\\u0437\\u0438\\u0442\\u0430.\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/promo-types/1","urlObject":{"path":["admin","promo-types","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"b1ec702a-3b77-445e-8766-341458c0f1c2","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/promo-types/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"slug\": \"welcome-deal\",\n        \"icon\": \"gift\",\n        \"sort_order\": 1,\n        \"translations\": {\n            \"name\": {\n                \"en\": \"Welcome Deal\",\n                \"az\": \"Xoş gəldin\",\n                \"ru\": \"Приветственная акция\"\n            },\n            \"description\": {\n                \"en\": \"First visit promo.\",\n                \"az\": \"İlk ziyarət promo.\",\n                \"ru\": \"Промо для первого визита.\"\n            }\n        }\n    }\n}"}],"_postman_id":"8f99f7a4-21fb-46af-857d-98102da9cf6d"},{"name":"Delete","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"ad8f9b2d-ad33-4ff2-a857-55403d5b0c59"}}],"id":"311c352e-5e7b-452c-9ebd-5e99086af98c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/promo-types/1","urlObject":{"path":["admin","promo-types","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"48252a25-2227-4c98-84ed-b9ffa9960d17","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/promo-types/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"311c352e-5e7b-452c-9ebd-5e99086af98c"},{"name":"Restore","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"b6bfafe0-f81e-444e-9bb4-3e6a866d729c"}}],"id":"5c7db439-dfda-48e1-b440-8a938dfa42c5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/promo-types/1/restore","description":"<h2 id=\"summary\">Summary</h2>\n<p>Restore a soft-deleted row (<code>trashed=1</code> list).</p>\n","urlObject":{"path":["admin","promo-types","1","restore"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"9bed16c2-d40e-4fa1-8824-092d4efd7d6c","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/promo-types/1/restore"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"5c7db439-dfda-48e1-b440-8a938dfa42c5"},{"name":"Force delete","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"94aeb9e1-ff37-4886-a902-ae2ed750b45f"}}],"id":"c121fc75-0c30-4b3a-97f0-6cb0e1c1f007","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/promo-types/1/force","description":"<h2 id=\"summary\">Summary</h2>\n<p>Permanently delete (active or trashed). Fails with <code>422</code> if still referenced.</p>\n","urlObject":{"path":["admin","promo-types","1","force"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"fa296425-d244-4569-9b78-465f1299c614","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/promo-types/1/force"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"c121fc75-0c30-4b3a-97f0-6cb0e1c1f007"},{"name":"Sort list","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"08a14277-8c82-45cc-adde-22ae3da6882d"}}],"id":"85b3bb88-3d85-46b2-bd77-ea49f08645dc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/promo-types/sort","description":"<h2 id=\"summary\">Summary</h2>\n<p>Ordered rows for drag-and-drop sort UI.</p>\n","urlObject":{"path":["admin","promo-types","sort"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"8935c4b9-211e-44ff-9299-cabbca7d9b92","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/promo-types/sort"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"name\": \"Example\",\n            \"sort_order\": 0\n        }\n    ],\n    \"meta\": {\n        \"scope\": null,\n        \"scopeValue\": null\n    }\n}"}],"_postman_id":"85b3bb88-3d85-46b2-bd77-ea49f08645dc"},{"name":"Reorder","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"12b103a0-1be2-4260-93b6-f511921b7c40"}}],"id":"78aa2b25-c141-4165-a792-340e2133e9f6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"ids\": [\n        1,\n        2,\n        3\n    ]\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/promo-types/sort","description":"<h2 id=\"body\">Body</h2>\n<p><code>ids</code> — ordered record IDs.</p>\n","urlObject":{"path":["admin","promo-types","sort"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"edb3fb3c-00dd-493c-a1c4-ad995784ce1c","name":"OK","originalRequest":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/promo-types/sort"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 3\n    }\n}"}],"_postman_id":"78aa2b25-c141-4165-a792-340e2133e9f6"}],"id":"52a3aab5-7c78-44c8-a0d8-20931ceae560","_postman_id":"52a3aab5-7c78-44c8-a0d8-20931ceae560","description":""},{"name":"Cms Pages — publish","item":[{"name":"Publish","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"3a884255-b471-420b-8a4a-a75f1c8bb214"}}],"id":"455b277a-1092-49b2-a96d-a7caef466a61","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/cms-pages/1/publish","urlObject":{"path":["admin","cms-pages","1","publish"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"ac533f01-56bb-45e2-8b46-6a59f5989c65","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/cms-pages/1/publish"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"455b277a-1092-49b2-a96d-a7caef466a61"},{"name":"Unpublish","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"026ada4d-4401-4434-8b93-a08b6ff6b6e9"}}],"id":"b0f59a97-f26d-4e83-b408-e1757919478e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/cms-pages/1/unpublish","urlObject":{"path":["admin","cms-pages","1","unpublish"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"ba21e8c8-fe40-4501-86eb-84690efdc792","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/cms-pages/1/unpublish"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"b0f59a97-f26d-4e83-b408-e1757919478e"}],"id":"ceb2bf08-de4f-4a21-8b70-70bc45c5e3b6","_postman_id":"ceb2bf08-de4f-4a21-8b70-70bc45c5e3b6","description":""},{"name":"Category filter ordering","item":[{"name":"Get ordering","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"ce382dfa-b82d-408a-bc25-435ec2b13098"}}],"id":"8be72eb7-6d26-40b5-bf0d-078a818064d5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/categories/1/filter-ordering","description":"<h2 id=\"summary\">Summary</h2>\n<p>Current filter group/field order for a category. Optional <code>subcategory_id</code> scopes to a subcategory overlay.</p>\n","urlObject":{"path":["admin","categories","1","filter-ordering"],"host":["https://api.loya.cc/api/v1"],"query":[{"disabled":true,"description":{"content":"<p>Optional subcategory overlay</p>\n","type":"text/plain"},"key":"subcategory_id","value":"1"}],"variable":[]}},"response":[{"id":"8ab85930-d8d0-4123-b98a-1ddd9d0b9766","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/categories/1/filter-ordering","host":["https://api.loya.cc/api/v1"],"path":["admin","categories","1","filter-ordering"],"query":[{"key":"subcategory_id","value":"1","description":"Optional subcategory overlay","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"groups\": [\n            {\n                \"id\": 1,\n                \"slug\": \"cuisines\",\n                \"sortOrder\": 0,\n                \"isHidden\": false,\n                \"isActive\": true,\n                \"fields\": [\n                    {\n                        \"id\": 1,\n                        \"key\": \"cuisine\",\n                        \"sortOrder\": 0,\n                        \"isHidden\": false\n                    }\n                ]\n            }\n        ]\n    }\n}"}],"_postman_id":"8be72eb7-6d26-40b5-bf0d-078a818064d5"},{"name":"Update ordering","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"0905b7c3-8ff2-4b48-a502-35e860c90d26"}}],"id":"1d4eaff1-0929-46d7-b9bf-976c8ee43c25","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"subcategory_id\": null,\n    \"groups\": [\n        {\n            \"id\": 1,\n            \"slug\": \"cuisines\",\n            \"sortOrder\": 0,\n            \"isHidden\": false,\n            \"isActive\": true,\n            \"fields\": [\n                {\n                    \"id\": 1,\n                    \"key\": \"cuisine\",\n                    \"sortOrder\": 0,\n                    \"isHidden\": false\n                }\n            ]\n        }\n    ]\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/categories/1/filter-ordering","urlObject":{"path":["admin","categories","1","filter-ordering"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"9080d5eb-570a-44f4-8de7-9fec6081053a","name":"OK","originalRequest":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/categories/1/filter-ordering"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"groups\": [\n            {\n                \"id\": 1,\n                \"slug\": \"cuisines\",\n                \"sortOrder\": 0,\n                \"isHidden\": false,\n                \"isActive\": true,\n                \"fields\": [\n                    {\n                        \"id\": 1,\n                        \"key\": \"cuisine\",\n                        \"sortOrder\": 0,\n                        \"isHidden\": false\n                    }\n                ]\n            }\n        ]\n    }\n}"}],"_postman_id":"1d4eaff1-0929-46d7-b9bf-976c8ee43c25"}],"id":"b26b8a66-a8a3-4f01-8da6-a9b689a9a5f5","description":"<p>Per-category (optional per-subcategory) group/field order and hidden flags for the catalog filter UI.</p>\n","_postman_id":"b26b8a66-a8a3-4f01-8da6-a9b689a9a5f5"},{"name":"App Settings","item":[{"name":"List","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('app-settingsId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"726e7e6c-d9cb-458d-b855-8fe951a8271a"}}],"id":"62510a0e-9e6b-4be4-bba4-8e558d6c8f83","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/app-settings?page=1&per_page=25&search=&sort=sort_order","description":"<h2 id=\"summary\">Summary</h2>\n<p>Paginated list of app settings for the admin Library.</p>\n<h2 id=\"response-fields\">Response fields</h2>\n<p><code>id</code>, <code>key</code>, <code>displayName</code>, <code>details</code>, <code>type</code>, <code>sortOrder</code>, <code>group</code>, <code>translations.value</code></p>\n<h2 id=\"types\">Types</h2>\n<p><code>number</code> · <code>text</code> · <code>textarea</code> · <code>html</code> · <code>image</code> · <code>file</code> · <code>select</code></p>\n","urlObject":{"path":["admin","app-settings"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"page","value":"1"},{"key":"per_page","value":"25"},{"key":"search","value":""},{"key":"sort","value":"sort_order"}],"variable":[]}},"response":[{"id":"39cf139b-1eae-427d-aea0-7c0e316e3538","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/app-settings?page=1&per_page=25&search=&sort=sort_order","host":["https://api.loya.cc/api/v1"],"path":["admin","app-settings"],"query":[{"key":"page","value":"1"},{"key":"per_page","value":"25"},{"key":"search","value":""},{"key":"sort","value":"sort_order"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"attributes\": {\n                \"name\": \"Example\"\n            },\n            \"relations\": {},\n            \"translations\": {},\n            \"counts\": {},\n            \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"62510a0e-9e6b-4be4-bba4-8e558d6c8f83"},{"name":"Get one","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"fd5b8f67-a74c-471e-9cfd-43dd49d42e4e"}}],"id":"3d5f4f49-a246-45ec-9769-ed91fddbb42a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/app-settings/1","urlObject":{"path":["admin","app-settings","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"21d4a6d8-0494-4d20-ba14-49018d94ffde","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/app-settings/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"3d5f4f49-a246-45ec-9769-ed91fddbb42a"},{"name":"Create","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"c7679fc3-96aa-469e-ac56-103f38f7f053"}}],"id":"c74652a2-0803-40ab-b002-bfaa62196232","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"key\": \"support.phone\",\n    \"display_name\": \"Support Phone\",\n    \"details\": \"+994123456789\",\n    \"type\": \"text\",\n    \"sort_order\": 1,\n    \"group\": \"Support\",\n    \"translations\": {\n        \"value\": {\n            \"en\": \"+994 12 345 67 89\",\n            \"az\": \"+994 12 345 67 89\",\n            \"ru\": \"+994 12 345 67 89\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/app-settings","description":"<h2 id=\"body\">Body</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>key</td>\n<td>string</td>\n<td>yes</td>\n<td>Unique setting key, e.g. <code>support.phone</code></td>\n</tr>\n<tr>\n<td>display_name</td>\n<td>string</td>\n<td>yes</td>\n<td>Admin UI label</td>\n</tr>\n<tr>\n<td>details</td>\n<td>string</td>\n<td>no</td>\n<td>Helper text or JSON options for <code>select</code> type</td>\n</tr>\n<tr>\n<td>type</td>\n<td>string</td>\n<td>yes</td>\n<td>Input widget type</td>\n</tr>\n<tr>\n<td>sort_order</td>\n<td>int</td>\n<td>no</td>\n<td>Display order within group</td>\n</tr>\n<tr>\n<td>group</td>\n<td>string</td>\n<td>no</td>\n<td>Settings group, e.g. <code>Support</code></td>\n</tr>\n<tr>\n<td>translations.value</td>\n<td>object</td>\n<td>no</td>\n<td>Per-locale value map (<code>en</code>, <code>az</code>, <code>ru</code>)</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["admin","app-settings"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"a838645e-1d49-4521-a174-44a8ae5a044f","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/app-settings"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"attributes\": {\n            \"key\": \"support.phone\",\n            \"display_name\": \"Support Phone\",\n            \"details\": \"+994123456789\",\n            \"type\": \"text\",\n            \"sort_order\": 1,\n            \"group\": \"Support\"\n        },\n        \"relations\": {},\n        \"translations\": {\n            \"value\": {\n                \"en\": \"+994 12 345 67 89\",\n                \"az\": \"+994 12 345 67 89\",\n                \"ru\": \"+994 12 345 67 89\"\n            }\n        },\n        \"counts\": {},\n        \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n    }\n}"}],"_postman_id":"c74652a2-0803-40ab-b002-bfaa62196232"},{"name":"Update","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"108aa5cb-ea01-4791-9228-2f33effaa950"}}],"id":"c30e6e5a-6b10-4013-9afc-90706e5d9a26","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"display_name\": \"Support Phone\",\n    \"translations\": {\n        \"value\": {\n            \"en\": \"+994 12 345 67 90\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/app-settings/1","urlObject":{"path":["admin","app-settings","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"e0c54e26-1831-467d-be93-b806ebc13939","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/app-settings/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"display_name\": \"Support Phone\",\n        \"translations\": {\n            \"value\": {\n                \"en\": \"+994 12 345 67 90\"\n            }\n        }\n    }\n}"}],"_postman_id":"c30e6e5a-6b10-4013-9afc-90706e5d9a26"},{"name":"Delete","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"aca077e5-fb66-4fd0-8677-304bc0e632b2"}}],"id":"e6867e83-6790-4f3f-a5ec-c634d470ee99","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/app-settings/1","urlObject":{"path":["admin","app-settings","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"edd5855f-7684-45a3-be79-1d437217f065","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/app-settings/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"e6867e83-6790-4f3f-a5ec-c634d470ee99"},{"name":"Sort list","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"bd2cec32-1fbf-41c2-bc78-9c3e36de4ce9"}}],"id":"8c8100fe-2e94-415d-854b-2f2407b4a233","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/app-settings/sort","description":"<h2 id=\"summary\">Summary</h2>\n<p>Ordered rows for drag-and-drop sort UI.</p>\n","urlObject":{"path":["admin","app-settings","sort"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"8d5c7acb-53ea-48b8-b750-92df896c7f54","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/app-settings/sort"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"name\": \"Example\",\n            \"sort_order\": 0\n        }\n    ],\n    \"meta\": {\n        \"scope\": null,\n        \"scopeValue\": null\n    }\n}"}],"_postman_id":"8c8100fe-2e94-415d-854b-2f2407b4a233"},{"name":"Reorder","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"f2bcb8f4-cafb-4dd6-a16b-6ba63822e543"}}],"id":"8345b86a-3b10-42db-818b-74da9e51ed35","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"ids\": [\n        1,\n        2,\n        3\n    ]\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/app-settings/sort","description":"<h2 id=\"body\">Body</h2>\n<p><code>ids</code> — array of setting IDs in desired order.</p>\n","urlObject":{"path":["admin","app-settings","sort"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"28f76a5e-be7d-4a6a-bb8a-c12084070aaf","name":"OK","originalRequest":{"method":"PUT","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/app-settings/sort"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"updated\": 3\n    }\n}"}],"_postman_id":"8345b86a-3b10-42db-818b-74da9e51ed35"}],"id":"5b1df736-5430-4996-83b0-58bd11e00520","description":"<p>Site-wide settings (<code>support.phone</code>, <code>support.email</code>, <code>support.hours</code>, …). <code>value</code> is translatable per locale.</p>\n","_postman_id":"5b1df736-5430-4996-83b0-58bd11e00520"},{"name":"Translations (raw)","item":[{"name":"List","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"94d13321-45e0-4316-bbc6-f68f8a50a11d"}}],"id":"089e81b3-6380-4a96-ae7f-c2caa3ba58e7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/translations?table_name=categories&foreign_key=1&locale=az","urlObject":{"path":["admin","translations"],"host":["https://api.loya.cc/api/v1"],"query":[{"key":"table_name","value":"categories"},{"key":"foreign_key","value":"1"},{"key":"locale","value":"az"}],"variable":[]}},"response":[{"id":"5fd371e8-3d1f-4207-8a04-b032d6db84a0","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":{"raw":"https://api.loya.cc/api/v1/admin/translations?table_name=categories&foreign_key=1&locale=az","host":["https://api.loya.cc/api/v1"],"path":["admin","translations"],"query":[{"key":"table_name","value":"categories"},{"key":"foreign_key","value":"1"},{"key":"locale","value":"az"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"attributes\": {\n                \"name\": \"Example\"\n            },\n            \"relations\": {},\n            \"translations\": {},\n            \"counts\": {},\n            \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n        }\n    ],\n    \"meta\": {\n        \"current_page\": 1,\n        \"last_page\": 1,\n        \"per_page\": 25,\n        \"total\": 1\n    }\n}"}],"_postman_id":"089e81b3-6380-4a96-ae7f-c2caa3ba58e7"},{"name":"Get one","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"c58518db-e7ab-4d56-b825-c2bc2e40942d"}}],"id":"7f1e6490-979e-4171-acf3-a62f51c57fb2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/translations/1","urlObject":{"path":["admin","translations","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"1538fa75-2175-4cc3-8d68-7c3a2c29f63a","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/translations/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"7f1e6490-979e-4171-acf3-a62f51c57fb2"},{"name":"Create","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"80e402dd-a621-47a2-bd47-4b38cb4e12bf"}}],"id":"6c645ce9-cb1e-4c72-b1ae-12731b6c7ef5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"table_name\": \"categories\",\n    \"column_name\": \"name\",\n    \"foreign_key\": 1,\n    \"locale\": \"az\",\n    \"value\": \"Yem\\u0259k\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/translations","urlObject":{"path":["admin","translations"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"02dd5689-4aec-460f-a8ae-d4f163db8986","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/translations"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"attributes\": {\n            \"table_name\": \"categories\",\n            \"column_name\": \"name\",\n            \"foreign_key\": 1,\n            \"locale\": \"az\",\n            \"value\": \"Yemək\"\n        },\n        \"relations\": {},\n        \"translations\": {},\n        \"counts\": {},\n        \"updated_at\": \"2026-08-31T00:00:00.000000Z\"\n    }\n}"}],"_postman_id":"6c645ce9-cb1e-4c72-b1ae-12731b6c7ef5"},{"name":"Update","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"3d73c77b-42e6-4297-8ce7-6a1e3e6a216d"}}],"id":"2867da97-b666-4c78-bdc5-e0e405c7162f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"table_name\": \"categories\",\n    \"column_name\": \"name\",\n    \"foreign_key\": 1,\n    \"locale\": \"az\",\n    \"value\": \"Yem\\u0259k\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/admin/translations/1","urlObject":{"path":["admin","translations","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"c51abc64-67e8-411c-b53e-cd5e12f2f09f","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/admin/translations/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"table_name\": \"categories\",\n        \"column_name\": \"name\",\n        \"foreign_key\": 1,\n        \"locale\": \"az\",\n        \"value\": \"Yemək\"\n    }\n}"}],"_postman_id":"2867da97-b666-4c78-bdc5-e0e405c7162f"},{"name":"Delete","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"5e06f4fa-4d8c-475c-a613-7319dc33a4a8"}}],"id":"5a164b84-5f4d-40dc-b80d-b992b0ffaa29","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/translations/1","urlObject":{"path":["admin","translations","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"9630e047-3d96-4b95-ace8-c8f0e02663d2","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/admin/translations/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"5a164b84-5f4d-40dc-b80d-b992b0ffaa29"}],"id":"9c3de9fc-8027-4905-bff6-9f465ac6149b","_postman_id":"9c3de9fc-8027-4905-bff6-9f465ac6149b","description":""}],"id":"b6475adc-acce-4c58-adfa-271611896e6d","description":"<p>Implemented super-admin CRUD at <code>/admin/{resource}</code> (plain JSON). Translatable fields use a <code>translations</code> map keyed by locale (en/az/ru).</p>\n","_postman_id":"b6475adc-acce-4c58-adfa-271611896e6d"}],"id":"0fa7a0b5-b5f7-43fe-a8c0-c47a619ef0a9","description":"<p>Frontend: <strong>admin-panel</strong> (port 3001)\nAPI base: <code>https://api.loya.cc/api/v1</code>\nAuth guard: <strong>admin</strong>\nDemo: <code>admin@loya.cc</code> / <code>password</code></p>\n<p><strong>Endpoints:</strong> 275\n<strong>Methods:</strong> GET 107 · POST 56 · PATCH 50 · PUT 20 · DELETE 42</p>\n<p><strong>Sections:</strong></p>\n<ul>\n<li>Auth: 11</li>\n<li>Lookups: 21</li>\n<li>Geocode: 1</li>\n<li>Partner hierarchy: 15</li>\n<li>Owners: 11</li>\n<li>Owner staff: 5</li>\n<li>Partner setup (write): 54</li>\n<li>Localizations: 5</li>\n<li>UI messages: 10</li>\n<li>Library (REST): 142</li>\n</ul>\n","_postman_id":"0fa7a0b5-b5f7-43fe-a8c0-c47a619ef0a9"},{"name":"Customer Mobile Application (@user-panel)","item":[{"name":"Auth","item":[{"name":"OTP send","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"863640cf-2d16-4108-85bb-9a6dc6b8f2a5"}}],"id":"8844d9df-53f7-4750-be4e-3d13308bd198","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"phone\": \"+994509876543\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/auth/customer/otp/send","description":"<h2 id=\"summary\">Summary</h2>\n<p>Send a 6-digit SMS verification code to the phone number.</p>\n<h2 id=\"auth\">Auth</h2>\n<p>None</p>\n<h2 id=\"body\">Body</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>phone</td>\n<td>string</td>\n<td>yes</td>\n<td>E.164 format, e.g. <code>+994509876543</code></td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-200\">Response <code>200</code></h2>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"message\": \"Verification code sent.\",\n  \"dev_code\": \"111111\"\n}\n</code></pre>\n<p><code>dev_code</code> is returned only when <code>APP_MODE=development</code>.</p>\n","urlObject":{"path":["auth","customer","otp","send"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"ce1ce8d0-7b74-46da-8982-c5a0535be63d","name":"Development mode","originalRequest":{"method":"POST","header":[],"url":"https://api.loya.cc/api/v1/auth/customer/otp/send"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Verification code sent.\",\n    \"dev_code\": \"111111\"\n}"}],"_postman_id":"8844d9df-53f7-4750-be4e-3d13308bd198"},{"name":"OTP verify","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"7de4f1ab-19b8-4180-8aef-aa8889c8e0f4"}}],"id":"e12badcb-26db-44d3-b91f-610aed0768bc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"phone\": \"+994509876543\",\n    \"code\": \"111111\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/auth/customer/otp/verify","description":"<h2 id=\"summary\">Summary</h2>\n<p>Verify the OTP code. Required before <strong>Register</strong>.</p>\n<h2 id=\"auth\">Auth</h2>\n<p>None</p>\n<h2 id=\"body\">Body</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>phone</td>\n<td>string</td>\n<td>yes</td>\n<td>Same phone used in OTP send</td>\n</tr>\n<tr>\n<td>code</td>\n<td>string</td>\n<td>yes</td>\n<td>6 digits. Use <code>111111</code> in development</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-200\">Response <code>200</code></h2>\n<p><code>json\\n{ \"message\": \"OTP verified.\" }\\n</code></p>\n<h2 id=\"errors\">Errors</h2>\n<ul>\n<li><code>422</code> — expired or invalid code</li>\n</ul>\n","urlObject":{"path":["auth","customer","otp","verify"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"db995f82-426b-4ecc-9948-a830a13590b9","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/auth/customer/otp/verify"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"OTP verified.\"\n}"}],"_postman_id":"e12badcb-26db-44d3-b91f-610aed0768bc"},{"name":"Register","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if ([200, 201].includes(pm.response.code)) {","  const json = pm.response.json();","  if (json.access_token) pm.collectionVariables.set('customerToken', json.access_token);","}","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"9507f30c-9fac-4eae-8e97-9633089b5f67"}}],"id":"01d06e57-7ce9-4e4b-9030-904fdbce4029","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"phone\": \"+994509876543\",\n    \"password\": \"password123\",\n    \"first_name\": \"James\",\n    \"last_name\": \"Carter\",\n    \"locale\": \"en\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/auth/customer/register","description":"<h2 id=\"summary\">Summary</h2>\n<p>Create a customer account after successful OTP verification.</p>\n<h2 id=\"auth\">Auth</h2>\n<p>None (phone must be OTP-verified first)</p>\n<h2 id=\"body\">Body</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>phone</td>\n<td>string</td>\n<td>yes</td>\n<td>Verified phone number</td>\n</tr>\n<tr>\n<td>password</td>\n<td>string</td>\n<td>yes</td>\n<td>Min 8 characters</td>\n</tr>\n<tr>\n<td>first_name</td>\n<td>string</td>\n<td>no</td>\n<td></td>\n</tr>\n<tr>\n<td>last_name</td>\n<td>string</td>\n<td>no</td>\n<td></td>\n</tr>\n<tr>\n<td>locale</td>\n<td>string</td>\n<td>no</td>\n<td><code>en</code> · <code>az</code> · <code>ru</code></td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-201\">Response <code>201</code></h2>\n<p><code>json\\n{\\n  \"token_type\": \"Bearer\",\\n  \"access_token\": \"…\",\\n  \"role\": \"customer\",\\n  \"user\": { \"id\": 1, \"phone\": \"+994…\", \"firstName\": \"James\" }\\n}\\n</code></p>\n<h2 id=\"variables\">Variables</h2>\n<p>Saves <code>customerToken</code> from <code>access_token</code></p>\n","urlObject":{"path":["auth","customer","register"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"9c31a83b-e500-4689-9ad3-d7ddd01a7632","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/auth/customer/register"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"token_type\": \"Bearer\",\n    \"access_token\": \"\",\n    \"role\": \"customer\",\n    \"user\": {\n        \"id\": 1,\n        \"phone\": \"+994509876543\",\n        \"firstName\": \"James\",\n        \"lastName\": \"Carter\",\n        \"locale\": \"en\",\n        \"isActive\": true\n    }\n}"}],"_postman_id":"01d06e57-7ce9-4e4b-9030-904fdbce4029"},{"name":"Login","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if ([200, 201].includes(pm.response.code)) {","  const json = pm.response.json();","  if (json.access_token) pm.collectionVariables.set('customerToken', json.access_token);","}","if (pm.response.code === 200) {","  if (json.access_token) {","    const varName = json.role === 'partner' ? 'partnerToken' : 'customerToken';","    pm.collectionVariables.set(varName, json.access_token);","    pm.collectionVariables.set('userToken', json.access_token);","  }","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"910f9171-bb8f-4e6a-9ea7-3638faeffbd8"}}],"id":"0d596090-4ea1-49fe-a169-a8a58752aceb","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"phone\": \"+994509876543\",\n    \"password\": \"password\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/auth/login","description":"<h2 id=\"summary\">Summary</h2>\n<p>Unified phone login for the user app. Partner account is matched first.</p>\n<h2 id=\"auth\">Auth</h2>\n<p>None</p>\n<h2 id=\"body\">Body</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>phone</td>\n<td>string</td>\n<td>yes</td>\n<td>Partner or customer phone</td>\n</tr>\n<tr>\n<td>password</td>\n<td>string</td>\n<td>yes</td>\n<td></td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-200\">Response <code>200</code></h2>\n<p><code>json\\n{\\n  \"token_type\": \"Bearer\",\\n  \"access_token\": \"…\",\\n  \"role\": \"customer\",\\n  \"user\": { … }\\n}\\n</code>\\n<code>role</code> is <code>customer</code> or <code>partner</code>.</p>\n<h2 id=\"variables\">Variables</h2>\n<p>Saves <code>customerToken</code> or <code>partnerToken</code> and <code>userToken</code></p>\n","urlObject":{"path":["auth","login"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"fb4be667-fa02-4812-b481-b78db83d1efd","name":"Customer login","originalRequest":{"method":"POST","header":[],"url":"https://api.loya.cc/api/v1/auth/login"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"token_type\": \"Bearer\",\n    \"access_token\": \"eyJ…\",\n    \"role\": \"customer\",\n    \"user\": {\n        \"id\": 1,\n        \"phone\": \"+994509876543\",\n        \"firstName\": \"James\"\n    }\n}"}],"_postman_id":"0d596090-4ea1-49fe-a169-a8a58752aceb"},{"name":"Password reset","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"68c4dd7e-bca2-476c-aeaa-4b7e9170a44c"}}],"id":"3f621fe4-aa9a-4b5a-8f8c-0ee38ce5045d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"phone\": \"+994509876543\",\n    \"password\": \"newpassword\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/auth/customer/password/reset","description":"<h2 id=\"summary\">Summary</h2>\n<p>Reset password after a successful <strong>OTP Verify</strong>. Same flow as register: send OTP → verify OTP → reset.</p>\n<h2 id=\"body\">Body</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>phone</td>\n<td>string</td>\n<td>yes</td>\n<td>Must already be verified via OTP</td>\n</tr>\n<tr>\n<td>password</td>\n<td>string</td>\n<td>yes</td>\n<td>Min 8 characters</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"errors\">Errors</h2>\n<ul>\n<li><code>422</code> — phone not verified (<code>otp_required</code>) or unknown phone</li>\n</ul>\n","urlObject":{"path":["auth","customer","password","reset"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"4fd762c9-9564-4ee5-8dd7-d2897b33f179","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/auth/customer/password/reset"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Password updated.\"\n}"}],"_postman_id":"3f621fe4-aa9a-4b5a-8f8c-0ee38ce5045d"},{"name":"Me","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"d5dfb1e6-efe4-4685-9f6f-adaf16099452"}}],"id":"c1c7c6c9-ba55-497f-8473-28facdfafb86","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/auth/me","description":"<h2 id=\"summary\">Summary</h2>\n<p>Current authenticated customer or partner profile.</p>\n<h2 id=\"auth\">Auth</h2>\n<p>Bearer <code></code> or <code></code> / <code></code> for partner routes</p>\n","urlObject":{"path":["auth","me"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"49fb8e61-b117-4ebb-afab-907e15dd88b4","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/auth/me"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"role\": \"customer\",\n    \"user\": {\n        \"id\": 1,\n        \"phone\": \"+994509876543\",\n        \"firstName\": \"James\",\n        \"lastName\": \"Carter\",\n        \"locale\": \"en\",\n        \"isActive\": true\n    }\n}"}],"_postman_id":"c1c7c6c9-ba55-497f-8473-28facdfafb86"},{"name":"Logout","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"531e0ab9-9ab2-4a33-8d08-ee2fa6584610"}}],"id":"54029060-8446-42f9-a9ad-e8247b380aed","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/auth/logout","description":"<h2 id=\"summary\">Summary</h2>\n<p>Invalidate the current JWT session.</p>\n<h2 id=\"auth\">Auth</h2>\n<p>Bearer <code></code> or <code></code> / <code></code> for partner routes</p>\n","urlObject":{"path":["auth","logout"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"95167614-3146-411c-ad76-2b3f34f791e4","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/auth/logout"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Logged out.\"\n}"}],"_postman_id":"54029060-8446-42f9-a9ad-e8247b380aed"}],"id":"883250a0-bdde-4b76-9243-99cc46630923","description":"<p>Customer registration uses phone OTP. Unified <code>/auth/login</code> checks <strong>partner</strong> first, then <strong>customer</strong>.</p>\n","_postman_id":"883250a0-bdde-4b76-9243-99cc46630923"},{"name":"Browse (public)","item":[{"name":"Categories","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('categoriesId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"2476e67e-b1ba-40e9-b490-6cefdeede047"}}],"id":"a7681608-5515-4db9-b562-30ebae184f12","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/categories","description":"<h2 id=\"summary\">Summary</h2>\n<p>Top-level categories for the home carousel (Dining, Sport, …).</p>\n<h2 id=\"response-fields\">Response fields</h2>\n<p><code>id</code>, <code>slug</code>, <code>name</code>, <code>icon</code>, <code>iconUrl</code>, <code>sortOrder</code></p>\n","urlObject":{"path":["categories"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"d876bb49-02aa-42b7-a007-572f164790df","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/categories"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"slug\": \"dining\",\n            \"name\": \"Dining\",\n            \"icon\": \"https://cdn.loya.cc/icons/mui/Restaurant.svg\",\n            \"iconUrl\": \"https://cdn.loya.cc/icons/mui/Restaurant.svg\",\n            \"sortOrder\": 1\n        }\n    ]\n}"}],"_postman_id":"a7681608-5515-4db9-b562-30ebae184f12"},{"name":"Subcategories","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"ace9e397-35b0-40ee-a2c3-5b3c683ab658"}}],"id":"3bf83527-78e8-4114-86c2-1483a1a6f1dc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/subcategories","description":"<h2 id=\"summary\">Summary</h2>\n<p>Subcategories linked to categories (Restaurant, Fast food, …). Filter branches via <code>subcategoryIds</code>.</p>\n","urlObject":{"path":["subcategories"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"3acde3ff-fa2c-49e9-ad54-9be78b03f92c","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/subcategories"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"categoryId\": 1,\n            \"slug\": \"restaurant\",\n            \"name\": \"Restaurant\",\n            \"sortOrder\": 1\n        }\n    ]\n}"}],"_postman_id":"3bf83527-78e8-4114-86c2-1483a1a6f1dc"},{"name":"Category filters","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"eaef3c28-7814-4339-bb95-ff2f83575993"}}],"id":"a0cae98e-5c83-4f89-9e70-758ac9cbc92a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/category-filters?category_slug=dining","description":"<h2 id=\"summary\">Summary</h2>\n<p>Filter groups and options for a category page.</p>\n","urlObject":{"path":["category-filters"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Category slug (required)</p>\n","type":"text/plain"},"key":"category_slug","value":"dining"}],"variable":[]}},"response":[{"id":"4c86fb95-2701-49af-bde3-43c53cfd5eee","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":{"raw":"https://api.loya.cc/api/v1/category-filters?category_slug=dining","host":["https://api.loya.cc/api/v1"],"path":["category-filters"],"query":[{"key":"category_slug","value":"dining","description":"Category slug (required)"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1\n        }\n    ]\n}"}],"_postman_id":"a0cae98e-5c83-4f89-9e70-758ac9cbc92a"},{"name":"Countries","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"b86116c8-3099-49a7-988c-60cf0f0ebf03"}}],"id":"e78592bb-7063-4da5-aa90-8ad6d4f563e9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/countries","description":"<h2 id=\"summary\">Summary</h2>\n<p>Active countries with <code>flagIcon</code> CDN URL and <code>hasStates</code> for the optional state layer.</p>\n","urlObject":{"path":["countries"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"46f06a8d-b2d6-4428-8886-42ebf1ca4119","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/countries"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"slug\": \"azerbaijan\",\n            \"code\": \"AZ\",\n            \"name\": \"Azerbaijan\",\n            \"flagIcon\": \"https://cdn.loya.cc/flags/az.svg\",\n            \"flagIconUrl\": \"https://cdn.loya.cc/flags/az.svg\",\n            \"hasStates\": false,\n            \"isActive\": true\n        }\n    ]\n}"}],"_postman_id":"e78592bb-7063-4da5-aa90-8ad6d4f563e9"},{"name":"States","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"659b738f-9f76-4f7a-9827-17651ecdd984"}}],"id":"627825c7-1f3c-4ae0-bc3c-38b83feed275","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/states?country_id=1","description":"<h2 id=\"summary\">Summary</h2>\n<p>States / provinces for countries that use the Country → State → City flow.</p>\n","urlObject":{"path":["states"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Filter by country ID</p>\n","type":"text/plain"},"key":"country_id","value":"1"}],"variable":[]}},"response":[{"id":"68a4e5eb-71a0-4592-b767-897a264698ea","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":{"raw":"https://api.loya.cc/api/v1/states?country_id=1","host":["https://api.loya.cc/api/v1"],"path":["states"],"query":[{"key":"country_id","value":"1","description":"Filter by country ID"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"countryId\": 1,\n            \"slug\": \"california\",\n            \"name\": \"California\",\n            \"isActive\": true\n        }\n    ]\n}"}],"_postman_id":"627825c7-1f3c-4ae0-bc3c-38b83feed275"},{"name":"Cities","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"f6e18bda-3c5f-4e0a-bc3d-636d260b7a3b"}}],"id":"d2307332-6c13-4bb5-9532-7b8e265230f7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/cities?country_id=1&state_id=1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Cities for location picker.</p>\n","urlObject":{"path":["cities"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Filter by country ID</p>\n","type":"text/plain"},"key":"country_id","value":"1"},{"description":{"content":"<p>Filter by state ID when the country has states</p>\n","type":"text/plain"},"key":"state_id","value":"1"}],"variable":[]}},"response":[{"id":"7a27344a-53a7-4029-932e-744f8ac1e9d9","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":{"raw":"https://api.loya.cc/api/v1/cities?country_id=1&state_id=1","host":["https://api.loya.cc/api/v1"],"path":["cities"],"query":[{"key":"country_id","value":"1","description":"Filter by country ID"},{"key":"state_id","value":"1","description":"Filter by state ID when the country has states"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"countryId\": 1,\n            \"stateId\": null,\n            \"slug\": \"baku\",\n            \"name\": \"Baku\",\n            \"latitude\": 40.4093,\n            \"longitude\": 49.8671,\n            \"isActive\": true\n        }\n    ]\n}"}],"_postman_id":"d2307332-6c13-4bb5-9532-7b8e265230f7"},{"name":"Districts","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"18113b1b-235d-4a17-9917-4dfcf0109814"}}],"id":"b9fdc2d8-e847-4d1b-80cb-b7d8fe24243f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/districts?city_id=1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Districts/neighbourhoods within a city.</p>\n","urlObject":{"path":["districts"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Filter by city ID</p>\n","type":"text/plain"},"key":"city_id","value":"1"}],"variable":[]}},"response":[{"id":"ed60298d-4371-4ae3-8b2c-3410e0900eae","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":{"raw":"https://api.loya.cc/api/v1/districts?city_id=1","host":["https://api.loya.cc/api/v1"],"path":["districts"],"query":[{"key":"city_id","value":"1","description":"Filter by city ID"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"cityId\": 1,\n            \"slug\": \"narimanov\",\n            \"name\": \"Narimanov\",\n            \"isActive\": true\n        }\n    ]\n}"}],"_postman_id":"b9fdc2d8-e847-4d1b-80cb-b7d8fe24243f"},{"name":"Subway stations","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"bcaba220-d748-41be-9fce-0c457191034c"}}],"id":"abb818b0-5e2e-4ff6-8206-89e8efcfbf93","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/subway-stations?city_id=1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Metro stations for branch location filters.</p>\n","urlObject":{"path":["subway-stations"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Filter by city ID</p>\n","type":"text/plain"},"key":"city_id","value":"1"}],"variable":[]}},"response":[{"id":"a00d666f-58d6-4f24-88d1-c746533f93a5","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":{"raw":"https://api.loya.cc/api/v1/subway-stations?city_id=1","host":["https://api.loya.cc/api/v1"],"path":["subway-stations"],"query":[{"key":"city_id","value":"1","description":"Filter by city ID"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"cityId\": 1,\n            \"slug\": \"28-may\",\n            \"name\": \"28 May\",\n            \"latitude\": 40.3798,\n            \"longitude\": 49.8488\n        }\n    ]\n}"}],"_postman_id":"abb818b0-5e2e-4ff6-8206-89e8efcfbf93"},{"name":"Branches","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('branchesId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"0964c142-e131-4d11-92bb-03f758cac59b"}}],"id":"fb596fe4-04f7-432b-86bc-a459111fe5c8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/branches","description":"<h2 id=\"summary\">Summary</h2>\n<p>List active branches. Supports geo sort when <code>lat</code> + <code>lng</code> provided.</p>\n<h2 id=\"query-parameters\">Query parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Param</th>\n<th>Type</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>district_id</td>\n<td>int</td>\n<td>Filter by district</td>\n</tr>\n<tr>\n<td>category_id</td>\n<td>int</td>\n<td>Filter by parent category</td>\n</tr>\n<tr>\n<td>subcategory_id</td>\n<td>int</td>\n<td>Single subcategory</td>\n</tr>\n<tr>\n<td>subcategory_ids</td>\n<td>string</td>\n<td>Comma-separated IDs</td>\n</tr>\n<tr>\n<td>q</td>\n<td>string</td>\n<td>Search name/address</td>\n</tr>\n<tr>\n<td>lat</td>\n<td>float</td>\n<td>With <code>lng</code> enables distance sort</td>\n</tr>\n<tr>\n<td>lng</td>\n<td>float</td>\n<td>With <code>lat</code> enables distance sort</td>\n</tr>\n<tr>\n<td>radius</td>\n<td>float</td>\n<td>Km radius (default 20)</td>\n</tr>\n<tr>\n<td>sort</td>\n<td>string</td>\n<td><code>distance</code> when lat/lng set</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-fields\">Response fields</h2>\n<p><code>id</code>, <code>name</code>, <code>slug</code>, <code>logo</code>, <code>coverImage</code>, <code>distanceKm</code>, <code>isOpen</code>, <code>subcategoryIds</code></p>\n","urlObject":{"path":["branches"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"6f1683ac-428d-4c8a-b02d-635a5e2bf750","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/branches"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"name\": \"Papa John's Narimanov\",\n            \"slug\": \"papa-johns-narimanov\",\n            \"logo\": \"https://cdn.loya.cc/branches/logos/example.png\",\n            \"coverImage\": \"https://cdn.loya.cc/branches/covers/example.png\",\n            \"isOpen\": true,\n            \"distanceKm\": 1.2\n        }\n    ]\n}"}],"_postman_id":"fb596fe4-04f7-432b-86bc-a459111fe5c8"},{"name":"Branches nearby","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('branchesId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"bc317652-175a-46d2-b0fc-28fbdf8f85ab"}}],"id":"230b4f39-cfb6-4d05-b697-9cc03b224269","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/branches?lat=40.4093&lng=49.8671&radius=20&sort=distance","description":"<h2 id=\"summary\">Summary</h2>\n<p>Branches sorted by distance from Baku centre (example coordinates).</p>\n","urlObject":{"path":["branches"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Latitude</p>\n","type":"text/plain"},"key":"lat","value":"40.4093"},{"description":{"content":"<p>Longitude</p>\n","type":"text/plain"},"key":"lng","value":"49.8671"},{"description":{"content":"<p>Max distance in km</p>\n","type":"text/plain"},"key":"radius","value":"20"},{"description":{"content":"<p>Sort by proximity</p>\n","type":"text/plain"},"key":"sort","value":"distance"}],"variable":[]}},"response":[{"id":"b3cd9435-6568-4610-a8db-6fcb789866ec","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":{"raw":"https://api.loya.cc/api/v1/branches?lat=40.4093&lng=49.8671&radius=20&sort=distance","host":["https://api.loya.cc/api/v1"],"path":["branches"],"query":[{"key":"lat","value":"40.4093","description":"Latitude"},{"key":"lng","value":"49.8671","description":"Longitude"},{"key":"radius","value":"20","description":"Max distance in km"},{"key":"sort","value":"distance","description":"Sort by proximity"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"name\": \"Papa John's Narimanov\",\n            \"slug\": \"papa-johns-narimanov\",\n            \"logo\": \"https://cdn.loya.cc/branches/logos/example.png\",\n            \"coverImage\": \"https://cdn.loya.cc/branches/covers/example.png\",\n            \"isOpen\": true,\n            \"distanceKm\": 1.2\n        }\n    ]\n}"}],"_postman_id":"230b4f39-cfb6-4d05-b697-9cc03b224269"},{"name":"Services (catalog / search cards)","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('serviceId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"a98401af-ab2c-4aaf-ae00-ea68fbade25c"}}],"id":"b1f284e2-94b7-4035-a673-ba07a5152426","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/services?category_slug=dining&lat=40.4093&lng=49.8671&sort=distance","description":"<h2 id=\"summary\">Summary</h2>\n<p>Category and search place cards. Each row is a <strong>service</strong>, with presentation rules for title/logo/profile path. Plain (non-branded, non-external) services on the same host branch collapse to one card.</p>\n<h2 id=\"auth\">Auth</h2>\n<p>None. Internal-only services are <strong>hidden</strong> from this list (they remain on the host branch profile).</p>\n<h2 id=\"query-parameters\">Query parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Param</th>\n<th>Type</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>category_id</td>\n<td>int</td>\n<td>Filter by parent category</td>\n</tr>\n<tr>\n<td>category_slug</td>\n<td>string</td>\n<td>Filter by category slug (e.g. <code>dining</code>)</td>\n</tr>\n<tr>\n<td>subcategory_id</td>\n<td>int</td>\n<td>Filter by subcategory</td>\n</tr>\n<tr>\n<td>q</td>\n<td>string</td>\n<td>Search service / host / partner name</td>\n</tr>\n<tr>\n<td>lat</td>\n<td>float</td>\n<td>With <code>lng</code> enables <code>distanceKm</code> + radius filter</td>\n</tr>\n<tr>\n<td>lng</td>\n<td>float</td>\n<td>With <code>lat</code> enables distance</td>\n</tr>\n<tr>\n<td>radius</td>\n<td>float</td>\n<td>Km radius (default 20 when lat/lng set)</td>\n</tr>\n<tr>\n<td>sort</td>\n<td>string</td>\n<td><code>distance</code> when lat/lng set</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"card-presentation\">Card presentation</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Case</th>\n<th>title</th>\n<th>logo</th>\n<th>profilePath</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Plain internal (no service logo)</td>\n<td>Host <strong>branch</strong> name</td>\n<td>Host branch logo</td>\n<td><code>/home/branches/{hostId}</code></td>\n</tr>\n<tr>\n<td>Branded internal (service logo set)</td>\n<td><code>{service} — {host}</code></td>\n<td>Service logo</td>\n<td><code>/home/branches/{hostId}?focusService={id}</code></td>\n</tr>\n<tr>\n<td>External Accept All</td>\n<td>Guest / linked name</td>\n<td>Linked branch logo</td>\n<td><code>/home/branches/{linkedBranchId}</code></td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"response-fields\">Response fields</h2>\n<p><code>id</code>, <code>kind</code> (<code>service</code>), <code>name</code>, <code>title</code>, <code>slug</code>, <code>logo</code>, <code>logoUrl</code>, <code>serviceLogoUrl</code>, <code>branchLogoUrl</code>, <code>linkedBranchLogoUrl</code>, <code>branchId</code>, <code>branchName</code>, <code>partnerName</code>, <code>hostName</code>, <code>isExternallyLinked</code>, <code>linkedBranchId</code>, <code>isBranded</code>, <code>profilePath</code>, <code>isOpen</code>, <code>distanceKm</code>, <code>subcategoryIds</code></p>\n","urlObject":{"path":["services"],"host":["https://api.loya.cc/api/v1"],"query":[{"description":{"content":"<p>Category slug</p>\n","type":"text/plain"},"key":"category_slug","value":"dining"},{"description":{"content":"<p>Latitude</p>\n","type":"text/plain"},"key":"lat","value":"40.4093"},{"description":{"content":"<p>Longitude</p>\n","type":"text/plain"},"key":"lng","value":"49.8671"},{"description":{"content":"<p>Sort by proximity</p>\n","type":"text/plain"},"key":"sort","value":"distance"}],"variable":[]}},"response":[{"id":"56a0b61c-0927-481b-a476-a1b801491969","name":"Services catalog","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://api.loya.cc/api/v1/services?category_slug=dining","host":["https://api.loya.cc/api/v1"],"path":["services"],"query":[{"key":"category_slug","value":"dining"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"kind\": \"service\",\n            \"name\": \"Dine-in\",\n            \"title\": \"Papa John's Narimanov\",\n            \"isBranded\": false,\n            \"isExternallyLinked\": false,\n            \"profilePath\": \"/home/branches/1\",\n            \"branchId\": 1,\n            \"hostName\": \"Papa John's Narimanov\",\n            \"distanceKm\": 1,\n            \"isOpen\": false\n        }\n    ]\n}"}],"_postman_id":"b1f284e2-94b7-4035-a673-ba07a5152426"},{"name":"Branch detail","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"7053c32e-ced7-417d-8e1c-493e399577b4"}}],"id":"ddb5aa59-e313-4075-a040-3afb24b2ac5e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/branches/1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Full branch profile: about, amenities, menus, promos, loyalty cards, gallery.</p>\n<h2 id=\"path\">Path</h2>\n<p><code>branchesId</code> collection variable (default <code>1</code>)</p>\n<h2 id=\"includes\">Includes</h2>\n<p><code>aboutSections</code>, <code>amenities</code>, <code>images</code>, <code>menuTargets</code>, <code>serviceUnits</code>, <code>externalBrandServices</code>, <code>promos</code>, <code>loyaltyCards</code>, <code>wifiNetworks</code>, <code>openingHourGroups</code></p>\n<h2 id=\"opening-hour-groups\">Opening hour groups</h2>\n<p>Each group: <code>id</code>, <code>slug</code>, <code>title</code>, <code>isDefault</code>, <code>gender</code> (<code>all</code>|<code>male</code>|<code>female</code>), <code>ageGroup</code> (nullable age key: <code>infant</code>…<code>senior</code>), <code>sortOrder</code>, <code>days</code>, <code>translations.title</code>.</p>\n<h2 id=\"ordering\">Ordering</h2>\n<p><code>serviceUnits</code> sorted by <code>sortOrder</code> asc. Services may belong to <code>serviceGroup*</code> fields for grouped UI.</p>\n","urlObject":{"path":["branches","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"b4c5167c-a0bb-41df-8f8c-b7d39f32e944","name":"Branch detail","originalRequest":{"method":"GET","header":[],"url":"https://api.loya.cc/api/v1/branches/9"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 9,\n        \"name\": \"KFC Narimanov\",\n        \"slug\": \"kfc-narimanov\",\n        \"logo\": \"https://cdn.loya.cc/.../branches/logos/kfc-narimanov.png\",\n        \"coverImage\": \"https://cdn.loya.cc/.../branches/covers/kfc-narimanov.png\",\n        \"distanceKm\": 0.4,\n        \"isOpen\": true,\n        \"todayHours\": \"09:00-23:00\",\n        \"menuUrl\": \"https://cdn.loya.cc/.../menus/kfc-narimanov-menu.pdf\"\n    }\n}"}],"_postman_id":"ddb5aa59-e313-4075-a040-3afb24b2ac5e"},{"name":"Service detail","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"9bb6afb5-589f-45f3-9bf8-da41d6c5004b"}}],"id":"999ff408-d11d-47e7-9743-1e0500071172","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/branches/1/services/1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Service profile opened from a host branch (menu, hours, promos, loyalty). <strong>Accept only internal</strong> services are allowed here even though they are hidden from <code>GET /services</code> search.</p>\n<h2 id=\"path\">Path</h2>\n<p><code>branchesId</code> + <code>serviceId</code> collection variables</p>\n<h2 id=\"opening-hour-groups\">Opening hour groups</h2>\n<p>Same shape as branch: includes <code>gender</code> and <code>ageGroup</code> for Special access times in the app drawer.</p>\n","urlObject":{"path":["branches","1","services","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"79903b14-195b-4390-98f3-f3294a16b7b8","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/branches/1/services/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"name\": \"Papa John's Narimanov\",\n        \"slug\": \"papa-johns-narimanov\",\n        \"logo\": \"https://cdn.loya.cc/branches/logos/example.png\",\n        \"coverImage\": \"https://cdn.loya.cc/branches/covers/example.png\",\n        \"isOpen\": true,\n        \"distanceKm\": 1.2\n    }\n}"}],"_postman_id":"999ff408-d11d-47e7-9743-1e0500071172"},{"name":"Promos","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('promoId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"f88046a9-fa7a-4561-bb8e-cd5d2b2efd04"}}],"id":"fa8e2af3-a856-4b7f-a6b7-2bbfc415a0e8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/promos","description":"<h2 id=\"summary\">Summary</h2>\n<p>Public promo catalog. When logged in, includes per-user activation state.</p>\n","urlObject":{"path":["promos"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"1087336e-f598-428f-95dd-52b80dc237c3","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/promos"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"title\": \"20% off\",\n            \"discountType\": \"percentage\",\n            \"discountValue\": 20,\n            \"isActive\": true\n        }\n    ]\n}"}],"_postman_id":"fa8e2af3-a856-4b7f-a6b7-2bbfc415a0e8"},{"name":"Loyalty cards","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('loyalty-cardsId', String(rows[0].id));","pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"3a4e30f8-9796-4277-85ef-5da149f33ae0"}}],"id":"c3c25336-e07f-4f36-82c5-b5e07da68812","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/loyalty-cards","description":"<h2 id=\"summary\">Summary</h2>\n<p>Visible loyalty programs across branches.</p>\n","urlObject":{"path":["loyalty-cards"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"29e30622-df99-4b85-a0ea-50c0c13b8b93","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/loyalty-cards"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"title\": \"Buy 10 get 1 free\",\n            \"type\": \"punch_card\",\n            \"punchesRequired\": 10,\n            \"isActive\": true\n        }\n    ]\n}"}],"_postman_id":"c3c25336-e07f-4f36-82c5-b5e07da68812"},{"name":"Home banners","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"fc65b00f-13b7-4ac4-b462-b3d2933f7745"}}],"id":"75723ae0-ad90-4d2c-b0b8-4cad3dc1d863","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/home-banners","description":"<h2 id=\"summary\">Summary</h2>\n<p>Carousel banners with <code>imageUrl</code> and deep-link (<code>linkType</code>, <code>linkId</code>).</p>\n","urlObject":{"path":["home-banners"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"4cdad93d-cfbe-4809-b745-428313a6f18a","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/home-banners"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"title\": \"Deals and loyalty\",\n            \"imageUrl\": \"https://cdn.loya.cc/banners/welcome.jpg\",\n            \"linkType\": \"branch\",\n            \"linkId\": 1\n        }\n    ]\n}"}],"_postman_id":"75723ae0-ad90-4d2c-b0b8-4cad3dc1d863"},{"name":"App settings (public)","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"1c57b30f-c595-4812-8023-dad8798aa437"}}],"id":"12bae2b5-69c9-4f5e-aa57-677edf41d8be","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/settings","description":"<h2 id=\"summary\">Summary</h2>\n<p>Public support contact settings for the user app Support screen.</p>\n<h2 id=\"response-200\">Response <code>200</code></h2>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"data\": {\n    \"supportPhone\": \"+994 12 345 67 89\",\n    \"supportPhoneTel\": \"+994123456789\",\n    \"supportEmail\": \"support@loya.az\",\n    \"supportHours\": \"Mon–Fri, 9:00–18:00\"\n  }\n}\n</code></pre>\n<h2 id=\"auth\">Auth</h2>\n<p>None</p>\n","urlObject":{"path":["settings"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"2adfab59-c795-4da4-a4d8-5c5b6210f249","name":"Support settings","originalRequest":{"method":"GET","header":[],"url":"https://api.loya.cc/api/v1/settings"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"supportPhone\": \"+994 12 345 67 89\",\n        \"supportPhoneTel\": \"+994123456789\",\n        \"supportEmail\": \"support@loya.az\",\n        \"supportHours\": \"Mon–Fri, 9:00–18:00\"\n    }\n}"}],"_postman_id":"12bae2b5-69c9-4f5e-aa57-677edf41d8be"},{"name":"FAQ (question answers)","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"c08cfa07-26ef-415a-a8db-b0ca1827e4bf"}}],"id":"62d90b0b-d6c3-4972-8750-22890995abda","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/question-answers","description":"<h2 id=\"summary\">Summary</h2>\n<p>Active FAQ items for Support page, ordered by <code>sortOrder</code> asc.</p>\n<h2 id=\"response-fields\">Response fields</h2>\n<p><code>id</code>, <code>question</code>, <code>answer</code>, <code>sortOrder</code></p>\n<h2 id=\"auth\">Auth</h2>\n<p>None</p>\n","urlObject":{"path":["question-answers"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"09230f99-9169-40f3-87b5-c8d6a06417e3","name":"FAQ list","originalRequest":{"method":"GET","header":[],"url":"https://api.loya.cc/api/v1/question-answers"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"question\": \"How do I redeem a promo?\",\n            \"answer\": \"Tap Redeem and show the QR code.\",\n            \"sortOrder\": 1\n        }\n    ]\n}"}],"_postman_id":"62d90b0b-d6c3-4972-8750-22890995abda"},{"name":"Custom pages","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"f7719b8f-e012-478b-a476-e0edf4f1f944"}}],"id":"94b9dcaf-f4e0-4488-93bc-6deb6ede765d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/custom-pages","description":"<h2 id=\"summary\">Summary</h2>\n<p>Published CMS pages (<code>about</code>, <code>privacy</code>, <code>custom</code>) for profile links.</p>\n<h2 id=\"response-fields\">Response fields</h2>\n<p><code>id</code>, <code>slug</code>, <code>type</code>, <code>title</code>, <code>body</code></p>\n","urlObject":{"path":["custom-pages"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"1f029637-5771-421a-b987-96d820897a41","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/custom-pages"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"slug\": \"about\",\n            \"type\": \"about\",\n            \"title\": \"About Loya\",\n            \"body\": \"Loya connects customers with partner offers.\"\n        }\n    ]\n}"}],"_postman_id":"94b9dcaf-f4e0-4488-93bc-6deb6ede765d"},{"name":"Custom page by slug","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"1526428e-d360-4168-868a-c19a5ac9e030"}}],"id":"801f4876-91fc-48d5-8328-2d03a32a8d6a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/custom-pages/about","description":"<h2 id=\"summary\">Summary</h2>\n<p>Single published CMS page by slug (e.g. <code>about</code>, <code>privacy</code>).</p>\n<h2 id=\"path\">Path</h2>\n<p><code>customPageSlug</code> collection variable</p>\n","urlObject":{"path":["custom-pages","about"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"aebd3745-8472-477a-a011-6cbd6064deb4","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/custom-pages/about"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"slug\": \"about\",\n        \"type\": \"about\",\n        \"title\": \"About Loya\",\n        \"body\": \"Loya connects customers with partner offers.\"\n    }\n}"}],"_postman_id":"801f4876-91fc-48d5-8328-2d03a32a8d6a"},{"name":"Active locales","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"fa3b5452-8f1d-4395-beb8-56ae5408820d"}}],"id":"da43f6e4-7de2-41f4-a058-6b684cfa678c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/localizations","description":"<h2 id=\"summary\">Summary</h2>\n<p>Enabled site locales for language picker (<code>code</code>, <code>name</code>, <code>nativeName</code>, <code>isDefault</code>).</p>\n","urlObject":{"path":["localizations"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"a9e31d03-84cd-4adb-93a6-8f2a7b69f032","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/localizations"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"code\": \"en\",\n            \"name\": \"English\",\n            \"nativeName\": \"English\",\n            \"isActive\": true,\n            \"isDefault\": true,\n            \"sortOrder\": 0\n        }\n    ]\n}"}],"_postman_id":"da43f6e4-7de2-41f4-a058-6b684cfa678c"},{"name":"Media file","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"b06de83a-93d6-4374-9bce-a5ed8ce17a85"}}],"id":"7e5dbbf8-4aa9-43dd-958c-e020a6f300e0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/media/branches/logos/kfc-narimanov.png","description":"<h2 id=\"summary\">Summary</h2>\n<p>Proxy/serve a storage file when CDN is unavailable.</p>\n<h2 id=\"path-variable\">Path variable</h2>\n<p><code>mediaPath</code> — storage path without <code>storage/</code> prefix, e.g. <code>branches/logos/kfc-narimanov.png</code></p>\n","urlObject":{"path":["media","branches/logos/kfc-narimanov.png"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"a438fdb2-6514-4b97-bb17-3f07911790d7","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/media/branches/logos/kfc-narimanov.png"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"7e5dbbf8-4aa9-43dd-958c-e020a6f300e0"}],"id":"895d95a0-fb6a-4a2e-9911-569599264f1e","description":"<p>Catalog endpoints used on home, search, category, and branch screens. <strong>No auth required.</strong></p>\n","_postman_id":"895d95a0-fb6a-4a2e-9911-569599264f1e"},{"name":"Promos","item":[{"name":"Activate promo","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('activationId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"26fb0ae0-bb21-4450-b86e-ec0508197af7"}}],"id":"4afa79c2-867d-47a7-a61a-628a74359a23","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/promos/1/activate","description":"<h2 id=\"summary\">Summary</h2>\n<p>Start a promo activation. Returns QR <code>code</code> for validator scan.</p>\n<h2 id=\"auth\">Auth</h2>\n<p>Bearer <code></code></p>\n<h2 id=\"variables\">Variables</h2>\n<p>Saves <code>activationId</code> from response when present</p>\n","urlObject":{"path":["promos","1","activate"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"212563b5-8871-4df5-ab08-fc386c326c3b","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/promos/1/activate"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"code\": \"PAPADEMO\",\n        \"status\": \"pending\"\n    }\n}"}],"_postman_id":"4afa79c2-867d-47a7-a61a-628a74359a23"},{"name":"Get activation","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"3e432a5d-96be-46b6-9ed6-0c6884781d3d"}}],"id":"62c17417-970e-4dac-88ef-dfd910a4f230","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/promo-activations/1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Poll activation status (<code>pending</code>, <code>confirmed</code>, <code>rejected</code>, <code>expired</code>).</p>\n","urlObject":{"path":["promo-activations","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"7ad196fd-57a7-4ba3-b3bb-838995bc1017","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/promo-activations/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"code\": \"PAPADEMO\",\n        \"status\": \"pending\"\n    }\n}"}],"_postman_id":"62c17417-970e-4dac-88ef-dfd910a4f230"}],"id":"e2fbb6a4-6a01-4ac0-aa7b-44bf02d71d42","description":"<p>Customer promo activation flow (QR code generation). Requires <code>customerToken</code>.</p>\n","_postman_id":"e2fbb6a4-6a01-4ac0-aa7b-44bf02d71d42"},{"name":"Profile","item":[{"name":"Stats","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"fc778f7c-af25-4be1-954b-264a91ff922f"}}],"id":"21be6a49-aebb-461e-96f7-3ae169c1ff88","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/stats","description":"<h2 id=\"summary\">Summary</h2>\n<p>Dashboard counters (favorites, loyalty, visits).</p>\n","urlObject":{"path":["customer","stats"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"5beb1ee9-0c6d-460a-99e2-f90e2361dde8","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/stats"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"21be6a49-aebb-461e-96f7-3ae169c1ff88"},{"name":"History","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"f4bd4520-58f6-4e38-9f39-f7f4e060cde8"}}],"id":"e383ad02-58bc-4e9f-885d-1eb4ac269a0b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/history","description":"<h2 id=\"summary\">Summary</h2>\n<p>Promo activations and loyalty events timeline.</p>\n","urlObject":{"path":["customer","history"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"1d1ae771-5a97-49fb-a7ff-15e1586286cd","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/history"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"e383ad02-58bc-4e9f-885d-1eb4ac269a0b"},{"name":"Favorites","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"6a4e0b44-35aa-458e-b89c-032a3d55df71"}}],"id":"7c95b24e-7c3f-4268-8899-1683da5c5d4e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/favorites","description":"<h2 id=\"summary\">Summary</h2>\n<p>Saved branches with nested <code>branch</code> resource.</p>\n","urlObject":{"path":["customer","favorites"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"3854e4e8-0bfe-4657-adaf-0181736579bc","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/favorites"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"branchId\": 1,\n            \"branch\": {\n                \"id\": 1,\n                \"name\": \"Papa John's Narimanov\",\n                \"slug\": \"papa-johns-narimanov\",\n                \"logo\": \"https://cdn.loya.cc/branches/logos/example.png\",\n                \"coverImage\": \"https://cdn.loya.cc/branches/covers/example.png\",\n                \"isOpen\": true,\n                \"distanceKm\": 1.2\n            }\n        }\n    ]\n}"}],"_postman_id":"7c95b24e-7c3f-4268-8899-1683da5c5d4e"},{"name":"Add favorite","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"6eb15587-67fa-4206-8d96-64f5520bd431"}}],"id":"cc9793b9-87fb-4f25-82d4-1b3504473975","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"branchId\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/customer/favorites","description":"<h2 id=\"body\">Body</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>branchId</td>\n<td>integer</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["customer","favorites"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"93989e42-aa7a-40a3-ae7a-1bd6cb115f25","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/customer/favorites"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"branchId\": 1\n    }\n}"}],"_postman_id":"cc9793b9-87fb-4f25-82d4-1b3504473975"},{"name":"Remove favorite","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"ab635be8-42bb-4ef4-8e19-1c3bb1d1dae3"}}],"id":"0b8775dc-e1b2-4e44-a8de-eedcb5c56db5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/favorites/1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Remove branch from favorites.</p>\n","urlObject":{"path":["customer","favorites","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"4a43447c-05c8-42b4-9f59-4a96eedea704","name":"No Content","originalRequest":{"method":"DELETE","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/favorites/1"},"status":"No Content","code":204,"_postman_previewlanguage":"text","header":[],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"0b8775dc-e1b2-4e44-a8de-eedcb5c56db5"},{"name":"My loyalty cards","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"bb5861f4-1765-491c-993e-2bba744e227f"}}],"id":"3b353968-d787-47e4-9ff5-a8a806f22f34","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/loyalty-cards","description":"<h2 id=\"summary\">Summary</h2>\n<p>Customer enrollments with punch progress.</p>\n","urlObject":{"path":["customer","loyalty-cards"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"efc6567f-2a31-4aee-afc8-0daadbf58ee7","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/loyalty-cards"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"3b353968-d787-47e4-9ff5-a8a806f22f34"},{"name":"Update profile","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"079f079f-d11b-43ca-a2d2-1ede3bf4cafc"}}],"id":"4032024c-6904-401d-ab65-a7f82e222762","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"firstName\": \"James\",\n    \"lastName\": \"Updated\",\n    \"locale\": \"en\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/customer/profile","description":"<h2 id=\"summary\">Summary</h2>\n<p>Update profile fields. Send <code>multipart/form-data</code> for avatar upload.</p>\n<h2 id=\"json-body-fields\">JSON body fields</h2>\n<p><code>firstName</code>, <code>lastName</code>, <code>gender</code>, <code>birthday</code>, <code>locale</code></p>\n","urlObject":{"path":["customer","profile"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"47a54f88-fe6c-485e-b659-7bdba730124c","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/customer/profile"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"firstName\": \"James\",\n        \"lastName\": \"Updated\",\n        \"locale\": \"en\"\n    }\n}"}],"_postman_id":"4032024c-6904-401d-ab65-a7f82e222762"}],"id":"bfaeb108-0ed2-41fe-bbca-097982ab41e1","description":"<p>Account, favorites, history, and enrolled loyalty cards.</p>\n","_postman_id":"bfaeb108-0ed2-41fe-bbca-097982ab41e1"},{"name":"Loyalty","item":[{"name":"Get branch invite","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"e98df97b-5914-4732-912a-f01d953735af"}}],"id":"a768e56c-9ba9-41b1-b922-69c4bac499af","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/branches/1/loyalty-invites","description":"<h2 id=\"summary\">Summary</h2>\n<p>Invitation metadata before joining a branch loyalty program.</p>\n","urlObject":{"path":["customer","branches","1","loyalty-invites"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"0438f4a3-4ab2-4621-8ed4-cf314e7d73b3","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/branches/1/loyalty-invites"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"a768e56c-9ba9-41b1-b922-69c4bac499af"},{"name":"Accept branch invite","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"be156ca4-6484-4370-ba1e-a8df7ac9232c"}}],"id":"89c6a643-66c8-4dda-a51f-047bf1390e56","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/branches/1/loyalty-invites","description":"<h2 id=\"summary\">Summary</h2>\n<p>Accept invite and link customer to branch loyalty.</p>\n","urlObject":{"path":["customer","branches","1","loyalty-invites"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"51f8a914-840b-478c-b4d9-c70182e07d0a","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/branches/1/loyalty-invites"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"89c6a643-66c8-4dda-a51f-047bf1390e56"},{"name":"Enroll in card","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"07f1b81b-e059-4a04-813e-ce58264272f7"}}],"id":"e2bd679b-0786-49e1-8fe5-c9e19d8da04c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/loyalty-cards/1/enroll","description":"<h2 id=\"summary\">Summary</h2>\n<p>Enroll in a specific loyalty card program.</p>\n","urlObject":{"path":["customer","loyalty-cards","1","enroll"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"4a48e5d2-904c-46ba-8c63-683143463ccc","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/loyalty-cards/1/enroll"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"e2bd679b-0786-49e1-8fe5-c9e19d8da04c"},{"name":"Get enrollment","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"5ef69e28-a7d7-4e2e-8d75-5ed9cb3bb3c2"}}],"id":"e52ddcc6-b91a-41e1-aca6-dcb648e52b20","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/loyalty-cards/1/enrollment","description":"<h2 id=\"summary\">Summary</h2>\n<p>Current punch count and reward eligibility.</p>\n","urlObject":{"path":["customer","loyalty-cards","1","enrollment"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"131d28e5-3129-46c0-84d0-8c0ce5e6da44","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/loyalty-cards/1/enrollment"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"e52ddcc6-b91a-41e1-aca6-dcb648e52b20"},{"name":"Check in","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('loyaltyCheckInId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"be618a7d-2f11-445a-b15e-fdb6e863c134"}}],"id":"e743cd98-4f0a-468b-a8b7-39880c2468f4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/loyalty-cards/1/check-in","description":"<h2 id=\"summary\">Summary</h2>\n<p>Record a visit punch. Returns QR code for validator confirmation.</p>\n","urlObject":{"path":["customer","loyalty-cards","1","check-in"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"c1119051-1e43-4be2-b6e6-8f0a04a10cbf","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/loyalty-cards/1/check-in"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"status\": \"pending\",\n        \"punches\": 1\n    }\n}"}],"_postman_id":"e743cd98-4f0a-468b-a8b7-39880c2468f4"},{"name":"Get check-in","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"dcaba851-8a13-42b5-8fa2-9e628ddbad90"}}],"id":"3a836481-d2b0-4112-93ba-2fabee9cbf29","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/loyalty-check-ins/1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Check-in status after validator scan.</p>\n","urlObject":{"path":["customer","loyalty-check-ins","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"81d1f11f-9da2-4838-86c0-c53665f62de2","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/loyalty-check-ins/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"status\": \"pending\",\n        \"punches\": 1\n    }\n}"}],"_postman_id":"3a836481-d2b0-4112-93ba-2fabee9cbf29"},{"name":"Redeem reward","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('loyaltyRedemptionId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"9c48c91a-ed59-49ae-80a7-89839244a8a0"}}],"id":"a2e16985-2075-4b05-809e-1f82bcfa63e2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/loyalty-cards/1/redeem","description":"<h2 id=\"summary\">Summary</h2>\n<p>Redeem completed punch card. Returns QR for validator.</p>\n","urlObject":{"path":["customer","loyalty-cards","1","redeem"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"5af53994-2b93-41d4-8541-f9f53997652d","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/loyalty-cards/1/redeem"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"status\": \"pending\"\n    }\n}"}],"_postman_id":"a2e16985-2075-4b05-809e-1f82bcfa63e2"},{"name":"Get redemption","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"ff20cc49-b190-4250-96c4-3e0d2959949e"}}],"id":"8f24cc94-07a2-4da9-9355-50f088a8acb9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/loyalty-redemptions/1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Redemption status (<code>pending</code>, <code>confirmed</code>, <code>rejected</code>).</p>\n","urlObject":{"path":["customer","loyalty-redemptions","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"92f36f93-c020-42d8-984a-041d529947f5","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/loyalty-redemptions/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"status\": \"pending\"\n    }\n}"}],"_postman_id":"8f24cc94-07a2-4da9-9355-50f088a8acb9"}],"id":"b16da9d9-f21a-4d86-a8f9-a2daa590a11b","description":"<p>Invite → enroll → check-in → redeem flow.</p>\n","_postman_id":"b16da9d9-f21a-4d86-a8f9-a2daa590a11b"},{"name":"Notifications & devices","item":[{"name":"List notifications","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"3edf2e08-d660-4741-9d75-34ce8bf842e4"}}],"id":"70e875ba-42a5-4853-b330-d5d8dc54f386","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/notifications","description":"<h2 id=\"summary\">Summary</h2>\n<p>In-app notification feed.</p>\n","urlObject":{"path":["customer","notifications"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"072a9cbb-7053-44d8-93c8-4498f91abaea","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/notifications"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1\n        }\n    ]\n}"}],"_postman_id":"70e875ba-42a5-4853-b330-d5d8dc54f386"},{"name":"Mark notification read","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"5d9b8b37-186e-47b1-a2bc-19c9302e8fca"}}],"id":"7106eb37-f12d-478d-930e-ad3018a68902","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/notifications/1/read","description":"<h2 id=\"summary\">Summary</h2>\n<p>Mark a single notification as read.</p>\n","urlObject":{"path":["customer","notifications","1","read"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"2f710b72-1d08-4119-8724-8664f97dbd8f","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/customer/notifications/1/read"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"7106eb37-f12d-478d-930e-ad3018a68902"},{"name":"Register push device","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"a4454559-4a29-46d3-b2fd-111bc61fa980"}}],"id":"a9ae3623-62d3-4156-a941-3f26c7bd67c8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"pushToken\": \"fcm-token-example\",\n    \"platform\": \"ios\",\n    \"deviceId\": \"UUID-DEVICE\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/customer/devices","description":"<h2 id=\"body\">Body</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>pushToken</td>\n<td>string</td>\n<td>FCM token</td>\n</tr>\n<tr>\n<td>platform</td>\n<td>string</td>\n<td><code>ios</code> · <code>android</code></td>\n</tr>\n<tr>\n<td>deviceId</td>\n<td>string</td>\n<td>Unique device ID</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["customer","devices"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"dfb84b19-64d2-4d95-905b-c5e9b0f2a394","name":"Created","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/customer/devices"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"pushToken\": \"fcm-token-example\",\n        \"platform\": \"ios\",\n        \"deviceId\": \"UUID-DEVICE\"\n    }\n}"}],"_postman_id":"a9ae3623-62d3-4156-a941-3f26c7bd67c8"}],"id":"a40b1e0e-c6a8-41ac-8649-3ff2a7287945","_postman_id":"a40b1e0e-c6a8-41ac-8649-3ff2a7287945","description":""},{"name":"Security","item":[{"name":"Change password","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"5ee046b3-922c-41c0-9e87-5b825074def5"}}],"id":"5c9b53ce-2e7f-495a-bc6d-907866a53694","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"currentPassword\": \"password\",\n    \"password\": \"newpassword\",\n    \"password_confirmation\": \"newpassword\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/auth/customer/password/change","description":"<h2 id=\"summary\">Summary</h2>\n<p>Change password while logged in.</p>\n","urlObject":{"path":["auth","customer","password","change"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"24292701-0f4f-4c6f-aecd-9656d974486f","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/auth/customer/password/change"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Password updated.\"\n}"}],"_postman_id":"5c9b53ce-2e7f-495a-bc6d-907866a53694"},{"name":"Change phone","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"c4df5ad3-0870-4c97-aa17-d030c8b060dc"}}],"id":"4a7f56d6-011e-4657-86b9-279cdbaeeacc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"phone\": \"+994509876544\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/auth/customer/phone","description":"<h2 id=\"summary\">Summary</h2>\n<p>Change phone number (must be OTP-verified first).</p>\n","urlObject":{"path":["auth","customer","phone"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"c5f1d2e8-0438-443d-9818-bd1900f87ecb","name":"OK","originalRequest":{"method":"PATCH","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/auth/customer/phone"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Phone updated.\"\n}"}],"_postman_id":"4a7f56d6-011e-4657-86b9-279cdbaeeacc"}],"id":"4691762a-44e6-4b1a-911b-555ff2f1a0d4","_postman_id":"4691762a-44e6-4b1a-911b-555ff2f1a0d4","description":""},{"name":"Partner dashboard","item":[{"name":"My branches","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"182d2525-872f-426e-98b0-a81704b4c7f8"}}],"id":"c6906209-74ae-4461-b6ee-e43410159e4b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/branches","description":"<h2 id=\"summary\">Summary</h2>\n<p>Branches owned by the logged-in partner.</p>\n","urlObject":{"path":["branches"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"57fc1044-a7f4-451e-8d53-e35168c2b898","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/branches"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"name\": \"Papa John's Narimanov\",\n            \"slug\": \"papa-johns-narimanov\",\n            \"logo\": \"https://cdn.loya.cc/branches/logos/example.png\",\n            \"coverImage\": \"https://cdn.loya.cc/branches/covers/example.png\",\n            \"isOpen\": true,\n            \"distanceKm\": 1.2\n        }\n    ]\n}"}],"_postman_id":"c6906209-74ae-4461-b6ee-e43410159e4b"},{"name":"Branch detail","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"b49b8d47-9bad-4295-a772-63f0406bfe87"}}],"id":"8bccd30e-b0ca-4914-a861-14d086aff1e7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/branches/1","description":"<h2 id=\"summary\">Summary</h2>\n<p>Partner branch detail (same resource as public).</p>\n","urlObject":{"path":["branches","1"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"fdc7e071-4fe8-4722-b963-a70e495da73f","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/branches/1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"name\": \"Papa John's Narimanov\",\n        \"slug\": \"papa-johns-narimanov\",\n        \"logo\": \"https://cdn.loya.cc/branches/logos/example.png\",\n        \"coverImage\": \"https://cdn.loya.cc/branches/covers/example.png\",\n        \"isOpen\": true,\n        \"distanceKm\": 1.2\n    }\n}"}],"_postman_id":"8bccd30e-b0ca-4914-a861-14d086aff1e7"},{"name":"My promos","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"8b098e52-44a2-45c3-ba4f-b63c09234bd8"}}],"id":"ce74c616-bf37-4971-a811-3b1ff25b8eee","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/promos","description":"<h2 id=\"summary\">Summary</h2>\n<p>Promos for partner branches.</p>\n","urlObject":{"path":["promos"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"d4ef3e7f-94fd-4474-9fe6-6d08a840d5b4","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/promos"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"title\": \"20% off\",\n            \"discountType\": \"percentage\",\n            \"discountValue\": 20,\n            \"isActive\": true\n        }\n    ]\n}"}],"_postman_id":"ce74c616-bf37-4971-a811-3b1ff25b8eee"}],"id":"2ad94aea-2c6d-474d-8b27-3e1e1049e54a","description":"<p>Read-only views when <code>role</code> is <code>partner</code>. Use <code>partnerToken</code>.</p>\n","_postman_id":"2ad94aea-2c6d-474d-8b27-3e1e1049e54a"},{"name":"Realtime (Reverb)","item":[{"name":"Broadcasting auth","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"7c79e612-e1eb-4278-a990-3b224968bb42"}}],"id":"516b8b8d-ac68-4faf-8d3a-d89ec75fa607","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"socket_id\": \"1234.5678\",\n    \"channel_name\": \"private-customer.1\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/broadcasting/auth","description":"<h2 id=\"summary\">Summary</h2>\n<p>Authorize a private Reverb channel subscription for the logged-in customer.</p>\n<h2 id=\"auth\">Auth</h2>\n<p>Bearer <code></code></p>\n<h2 id=\"body\">Body</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>socket_id</td>\n<td>string</td>\n<td>From Pusher/Reverb client</td>\n</tr>\n<tr>\n<td>channel_name</td>\n<td>string</td>\n<td>Format: <code>private-customer.{customerId}</code></td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"events\">Events</h2>\n<ul>\n<li><code>.promo.activation.updated</code> — promo QR confirmed/rejected\\n- <code>.loyalty.check-in.updated</code> — loyalty punch confirmed/rejected</li>\n</ul>\n","urlObject":{"path":["broadcasting","auth"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"f641b429-024c-42a5-ba93-2c1343ca8979","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/broadcasting/auth"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"socket_id\": \"1234.5678\",\n        \"channel_name\": \"private-customer.1\"\n    }\n}"}],"_postman_id":"516b8b8d-ac68-4faf-8d3a-d89ec75fa607"}],"id":"b1a00517-422e-4c98-92b8-d67a36146c9e","description":"<p>Laravel Reverb WebSocket private channel auth. Used when promo/check-in status updates arrive in the user app.</p>\n","_postman_id":"b1a00517-422e-4c98-92b8-d67a36146c9e"},{"name":"UI messages","item":[{"name":"Get user-panel messages","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"42e15183-f73b-4210-9574-920b2e0491bc"}}],"id":"f9513864-f98a-41e3-b7af-3704cb5e17d1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/ui-messages/user-panel/en","description":"<h2 id=\"summary\">Summary</h2>\n<p>Localized UI strings for the mobile app (<code>nav.*</code>, <code>auth.*</code>, etc.).</p>\n","urlObject":{"path":["ui-messages","user-panel","en"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"6ab1d193-02a5-4e03-a712-93d426ab06b2","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"}],"url":"https://api.loya.cc/api/v1/ui-messages/user-panel/en"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1\n    }\n}"}],"_postman_id":"f9513864-f98a-41e3-b7af-3704cb5e17d1"}],"id":"85921d0b-001c-4064-bc39-d0163bafb1c1","_postman_id":"85921d0b-001c-4064-bc39-d0163bafb1c1","description":""}],"id":"df332f9b-037e-4179-adec-892edabaa074","description":"<p>Frontend: <strong>user-panel</strong> (Next.js, port 3002)\nAPI base: <code>https://api.loya.cc/api/v1</code>\nAuth guards: <strong>customer</strong> · <strong>partner</strong></p>\n<h3 id=\"recommended-test-flow\">Recommended test flow</h3>\n<ol>\n<li><strong>Auth → OTP send</strong> then <strong>OTP verify</strong> (<code>111111</code> — currently fixed in all environments; treat as insecure for production)</li>\n<li><strong>Auth → Register</strong> or <strong>Auth → Login</strong> (saves token automatically)</li>\n<li><strong>Browse → Branches nearby</strong> then open <strong>Branch detail</strong></li>\n<li>Use <strong>Promos → Activate promo</strong> with <code>1</code></li>\n</ol>\n<h3 id=\"response-format\">Response format</h3>\n<ul>\n<li>Plain JSON (<code>application/json</code>), camelCase keys</li>\n<li>Lists return <code>{ \"data\": [ ... ] }</code></li>\n<li>Image fields are full CDN URLs (<code>logo</code>, <code>coverImage</code>, <code>logoUrl</code>, etc.)</li>\n<li>Send <code>Accept-Language: en</code> (<code>en</code>, <code>az</code>, <code>ru</code>) on every request</li>\n</ul>\n<p><strong>Endpoints:</strong> 56\n<strong>Methods:</strong> GET 37 · POST 16 · PATCH 2 · DELETE 1</p>\n<p><strong>Sections:</strong></p>\n<ul>\n<li>Auth: 7</li>\n<li>Browse (public): 22</li>\n<li>Promos: 2</li>\n<li>Profile: 7</li>\n<li>Loyalty: 8</li>\n<li>Notifications &amp; devices: 3</li>\n<li>Security: 2</li>\n<li>Partner dashboard: 3</li>\n<li>Realtime (Reverb): 1</li>\n<li>UI messages: 1</li>\n</ul>\n","_postman_id":"df332f9b-037e-4179-adec-892edabaa074"},{"name":"Validator Application (@validator-partner-for-worker)","item":[{"name":"Auth","item":[{"name":"Login","event":[{"listen":"test","script":{"type":"text/javascript","exec":["if ([200, 201].includes(pm.response.code)) {","  const json = pm.response.json();","  if (json.access_token) pm.collectionVariables.set('employeeToken', json.access_token);","}","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"bda79aff-ffbd-436a-a47e-6515dd50a3ac"}}],"id":"6b68bc22-2e10-4dc1-a947-25efa1e412b8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"email\": \"validator@papajohns.az\",\n    \"password\": \"password\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/auth/employee/login","description":"<h2 id=\"summary\">Summary</h2>\n<p>Employee login for validator app. Demo: <code>validator@papajohns.az</code> / <code>password</code>.</p>\n","urlObject":{"path":["auth","employee","login"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"57e7b680-ec5f-4ade-b476-1367dbe5af6e","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/auth/employee/login"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"token_type\": \"Bearer\",\n    \"access_token\": \"\",\n    \"role\": \"employee\",\n    \"user\": {\n        \"id\": 1,\n        \"name\": \"Validator\",\n        \"email\": \"validator@papajohns.az\",\n        \"phone\": \"+994501111111\",\n        \"isActive\": true\n    }\n}"}],"_postman_id":"6b68bc22-2e10-4dc1-a947-25efa1e412b8"},{"name":"Me","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is 200', function () {","  pm.response.to.have.status(200);","});"],"id":"3a6dcb83-13d1-4703-926e-f9aa0b64f0a6"}}],"id":"50bd47f7-40b1-4840-be19-803528f501ff","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/auth/employee/me","description":"<h2 id=\"auth\">Auth</h2>\n<p>Bearer <code></code></p>\n","urlObject":{"path":["auth","employee","me"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"75b0ce65-99b2-4609-9cd5-cca0c7dcce81","name":"OK","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/auth/employee/me"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"user\": {\n        \"id\": 1,\n        \"name\": \"Validator\",\n        \"email\": \"validator@papajohns.az\",\n        \"phone\": \"+994501111111\",\n        \"isActive\": true\n    }\n}"}],"_postman_id":"50bd47f7-40b1-4840-be19-803528f501ff"},{"name":"Logout","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"e0cf2196-2285-472c-9e33-b3b7f4fcaf92"}}],"id":"a2303e8a-10f4-4cd9-9487-c4d8355e32d7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/auth/employee/logout","description":"<h2 id=\"summary\">Summary</h2>\n<p>End employee session.</p>\n","urlObject":{"path":["auth","employee","logout"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"7bf289cd-134a-41cd-8b3e-5a0f8678faf6","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/auth/employee/logout"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Logged out.\"\n}"}],"_postman_id":"a2303e8a-10f4-4cd9-9487-c4d8355e32d7"}],"id":"79112ff0-ce19-4c7d-a59c-b18f16fe8705","_postman_id":"79112ff0-ce19-4c7d-a59c-b18f16fe8705","description":""},{"name":"Promo validation","item":[{"name":"Scan code","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('activationId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"3b010479-073d-4d54-9470-946c95de2151"}}],"id":"915927cc-4369-4a08-8d23-249b68c944d4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"code\": \"PAPADEMO\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/promo-activations/scan","description":"<h2 id=\"summary\">Summary</h2>\n<p>Look up a promo activation by QR code string.</p>\n","urlObject":{"path":["promo-activations","scan"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"45b4c5d9-39f6-4ad8-bff1-5b5d841dada6","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/promo-activations/scan"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"code\": \"PAPADEMO\",\n        \"status\": \"pending\"\n    }\n}"}],"_postman_id":"915927cc-4369-4a08-8d23-249b68c944d4"},{"name":"Confirm activation","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"fe08485f-1267-499c-a458-9cf1abf8a1ee"}}],"id":"fb1a9879-6e96-4bb3-b624-3088a66257de","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/promo-activations/1/confirm","description":"<h2 id=\"summary\">Summary</h2>\n<p>Confirm scanned promo — marks activation as used.</p>\n","urlObject":{"path":["promo-activations","1","confirm"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"fadaa2b5-f335-4e7c-a111-62254652a2fa","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/promo-activations/1/confirm"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"code\": \"PAPADEMO\",\n        \"status\": \"confirmed\"\n    }\n}"}],"_postman_id":"fb1a9879-6e96-4bb3-b624-3088a66257de"},{"name":"Reject activation","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"182122a0-db63-4ee8-9bb7-a4ff76f0d7ce"}}],"id":"c081074d-af8c-4a1f-9f4e-8650585c9d75","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"reason\": \"Invalid promo code\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/promo-activations/1/reject","description":"<h2 id=\"body\">Body</h2>\n<p><code>reason</code> (optional string)</p>\n","urlObject":{"path":["promo-activations","1","reject"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"06d78f35-0655-4e68-bb48-7d8d75f352b6","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/promo-activations/1/reject"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"code\": \"PAPADEMO\",\n        \"status\": \"rejected\"\n    }\n}"}],"_postman_id":"c081074d-af8c-4a1f-9f4e-8650585c9d75"}],"id":"d1be5426-1de6-49ac-add4-68b844566594","description":"<p>Scan customer promo QR codes and confirm or reject activations.</p>\n","_postman_id":"d1be5426-1de6-49ac-add4-68b844566594"},{"name":"Loyalty check-in validation","item":[{"name":"Scan check-in","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('loyaltyCheckInId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"01c51ddd-be0c-4376-bf2d-f4f3e3414687"}}],"id":"5365a30e-224a-4476-a579-c46ad1b5c268","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"code\": \"CHECKIN-DEMO\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/loyalty-check-ins/scan","description":"<h2 id=\"summary\">Summary</h2>\n<p>Scan loyalty check-in QR from customer app.</p>\n","urlObject":{"path":["loyalty-check-ins","scan"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"f031843a-90eb-44a2-839e-c0546346ff39","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/loyalty-check-ins/scan"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"status\": \"pending\",\n        \"punches\": 1\n    }\n}"}],"_postman_id":"5365a30e-224a-4476-a579-c46ad1b5c268"},{"name":"Confirm check-in","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"e3db5e25-8085-4e8d-a2da-517954deb8dd"}}],"id":"e70987e9-a978-458e-af96-8a10881322fa","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/loyalty-check-ins/1/confirm","description":"<h2 id=\"summary\">Summary</h2>\n<p>Confirm punch / visit.</p>\n","urlObject":{"path":["loyalty-check-ins","1","confirm"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"d9691ca6-aa35-49c8-9d6b-15c70c092a6a","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/loyalty-check-ins/1/confirm"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"status\": \"pending\",\n        \"punches\": 1\n    }\n}"}],"_postman_id":"e70987e9-a978-458e-af96-8a10881322fa"},{"name":"Reject check-in","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"2fa21d03-52d8-4080-97cb-92a6553bca95"}}],"id":"1928eeec-b4d2-4538-bf22-397bd33f3417","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"reason\": \"Invalid code\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/loyalty-check-ins/1/reject","description":"<h2 id=\"summary\">Summary</h2>\n<p>Reject invalid check-in.</p>\n","urlObject":{"path":["loyalty-check-ins","1","reject"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"a54328a9-3f9e-4647-9c20-5cc19c956d4c","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/loyalty-check-ins/1/reject"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"status\": \"pending\",\n        \"punches\": 1\n    }\n}"}],"_postman_id":"1928eeec-b4d2-4538-bf22-397bd33f3417"}],"id":"a454224d-7b17-4d7e-80e9-2f08395c8bf8","_postman_id":"a454224d-7b17-4d7e-80e9-2f08395c8bf8","description":""},{"name":"Loyalty redemption validation","item":[{"name":"Scan redemption","event":[{"listen":"test","script":{"type":"text/javascript","exec":["const json = pm.response.json();","const rows = Array.isArray(json.data) ? json.data : (Array.isArray(json) ? json : []);","if (rows.length && rows[0].id) pm.collectionVariables.set('loyaltyRedemptionId', String(rows[0].id));","pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"ed63753d-d4d3-4274-9f0a-f56919b4dd00"}}],"id":"89adc7b7-6556-4e94-b67a-6f85259e4a6e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"code\": \"REDEEM-DEMO\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/loyalty-redemptions/scan","description":"<h2 id=\"summary\">Summary</h2>\n<p>Scan loyalty reward redemption QR.</p>\n","urlObject":{"path":["loyalty-redemptions","scan"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"467d9172-7f68-46b8-85f2-58ca41fa73f1","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/loyalty-redemptions/scan"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"status\": \"pending\"\n    }\n}"}],"_postman_id":"89adc7b7-6556-4e94-b67a-6f85259e4a6e"},{"name":"Confirm redemption","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"509edade-b096-4fac-9cc4-6347d6bf0f71"}}],"id":"6cf6a8b2-48b5-41b8-ab24-3632d985b4e0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/loyalty-redemptions/1/confirm","description":"<h2 id=\"summary\">Summary</h2>\n<p>Confirm reward handover.</p>\n","urlObject":{"path":["loyalty-redemptions","1","confirm"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"2b251570-9b08-46c6-9573-6b2be2d015be","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "}],"url":"https://api.loya.cc/api/v1/loyalty-redemptions/1/confirm"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"status\": \"pending\"\n    }\n}"}],"_postman_id":"6cf6a8b2-48b5-41b8-ab24-3632d985b4e0"},{"name":"Reject redemption","event":[{"listen":"test","script":{"type":"text/javascript","exec":["pm.test('Status code is successful (200, 201, 204)', function () {","  pm.expect(pm.response.code).to.be.oneOf([200, 201, 204]);","});"],"id":"3461b3f7-2d9d-44d1-832e-211c1a78eabf"}}],"id":"3ccfb7be-0de1-419f-98c3-4891a9d9f786","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"reason\": \"Invalid code\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.loya.cc/api/v1/loyalty-redemptions/1/reject","description":"<h2 id=\"summary\">Summary</h2>\n<p>Reject invalid redemption.</p>\n","urlObject":{"path":["loyalty-redemptions","1","reject"],"host":["https://api.loya.cc/api/v1"],"query":[],"variable":[]}},"response":[{"id":"96ad0a88-b271-4cc9-afb1-5bcc1c65d108","name":"OK","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json"},{"key":"Accept-Language","value":"en"},{"key":"Authorization","value":"Bearer "},{"key":"Content-Type","value":"application/json"}],"url":"https://api.loya.cc/api/v1/loyalty-redemptions/1/reject"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"id\": 1,\n        \"status\": \"pending\"\n    }\n}"}],"_postman_id":"3ccfb7be-0de1-419f-98c3-4891a9d9f786"}],"id":"b3734555-8953-4997-b0b6-a9bca04677ee","_postman_id":"b3734555-8953-4997-b0b6-a9bca04677ee","description":""}],"id":"220587d3-7fd5-46f5-baa1-4c9901ccfb7c","description":"<p>Frontend: <strong>validator-partner-for-worker</strong> (port 3004)\nAPI base: <code>https://api.loya.cc/api/v1</code>\nAuth guard: <strong>employee</strong></p>\n<h3 id=\"flow\">Flow</h3>\n<ol>\n<li><strong>Auth → Login</strong> as branch employee</li>\n<li><strong>Promo validation → Scan code</strong> (customer QR)</li>\n<li><strong>Confirm</strong> or <strong>Reject</strong> activation</li>\n<li>Same pattern for <strong>Loyalty check-ins</strong> and <strong>Loyalty redemptions</strong></li>\n</ol>\n<p><strong>Endpoints:</strong> 12\n<strong>Methods:</strong> GET 1 · POST 11</p>\n<p><strong>Sections:</strong></p>\n<ul>\n<li>Auth: 3</li>\n<li>Promo validation: 3</li>\n<li>Loyalty check-in validation: 3</li>\n<li>Loyalty redemption validation: 3</li>\n</ul>\n","_postman_id":"220587d3-7fd5-46f5-baa1-4c9901ccfb7c"}],"variable":[{"key":"baseUrl","value":"https://api.loya.cc/api/v1","description":"API base URL including /api/v1. Local: https://loya-cc-new2.test/api/v1"},{"key":"locale","value":"en","description":"Accept-Language header value"},{"key":"adminToken","value":"","description":"Admin JWT from Auth → Panel login / Login"},{"key":"ownerToken","value":"","description":"Owner JWT from Auth → Owner login"},{"key":"customerToken","value":"","description":"Customer JWT from register/login"},{"key":"userToken","value":"","description":"Active customer or partner token for /auth/me"},{"key":"partnerToken","value":"","description":"Partner JWT from unified login"},{"key":"employeeToken","value":"","description":"Employee JWT for validator app"},{"key":"ownersId","value":"1","description":"Owner account ID"},{"key":"activityId","value":"1","description":"Partner activity log entry ID"},{"key":"serviceGroupId","value":"1","description":"Branch service group ID"},{"key":"promoId","value":"1","description":"Promo ID for activation"},{"key":"activationId","value":"1","description":"Promo activation ID"},{"key":"customerId","value":"1","description":"Customer record ID"},{"key":"languageId","value":"1","description":"UI message language ID"},{"key":"loyaltyRedemptionId","value":"1","description":"Loyalty redemption ID"},{"key":"loyaltyCheckInId","value":"1","description":"Loyalty check-in ID"},{"key":"serviceId","value":"1","description":"Service unit ID"},{"key":"notificationId","value":"1","description":"Customer notification ID"},{"key":"mediaPath","value":"branches/logos/kfc-narimanov.png","description":"Storage path for /media/{path}"},{"key":"appSettingId","value":"1","description":"Admin app setting ID (alias for app-settingsId)"},{"key":"customPageSlug","value":"about","description":"CMS custom page slug for /custom-pages/{slug}"},{"key":"menuId","value":"1","description":"Branch or service menu ID"},{"key":"menuPageId","value":"1","description":"Service menu page ID"},{"key":"translationId","value":"1","description":"Admin translation record ID"},{"key":"iconsId","value":"1","description":"Admin library icon ID"},{"key":"categoriesId","value":"1","description":"Resource ID for categories endpoints"},{"key":"subcategoriesId","value":"1","description":"Resource ID for subcategories endpoints"},{"key":"category-filter-groupsId","value":"1","description":"Resource ID for category-filter-groups endpoints"},{"key":"category-filter-fieldsId","value":"1","description":"Resource ID for category-filter-fields endpoints"},{"key":"category-filter-optionsId","value":"1","description":"Resource ID for category-filter-options endpoints"},{"key":"countriesId","value":"1","description":"Resource ID for countries endpoints"},{"key":"statesId","value":"1","description":"Resource ID for states endpoints"},{"key":"citiesId","value":"1","description":"Resource ID for cities endpoints"},{"key":"districtsId","value":"1","description":"Resource ID for districts endpoints"},{"key":"partnersId","value":"1","description":"Resource ID for partners endpoints"},{"key":"country-entitiesId","value":"1","description":"Resource ID for country-entities endpoints"},{"key":"branchesId","value":"1","description":"Resource ID for branches endpoints"},{"key":"branch-about-sectionsId","value":"1","description":"Resource ID for branch-about-sections endpoints"},{"key":"amenitiesId","value":"1","description":"Resource ID for amenities endpoints"},{"key":"promosId","value":"1","description":"Resource ID for promos endpoints"},{"key":"promo-typesId","value":"1","description":"Resource ID for promo-types endpoints"},{"key":"promo-activationsId","value":"1","description":"Resource ID for promo-activations endpoints"},{"key":"promo-activation-logsId","value":"1","description":"Resource ID for promo-activation-logs endpoints"},{"key":"loyalty-cardsId","value":"1","description":"Resource ID for loyalty-cards endpoints"},{"key":"adminsId","value":"1","description":"Resource ID for admins endpoints"},{"key":"customersId","value":"1","description":"Resource ID for customers endpoints"},{"key":"employeesId","value":"1","description":"Resource ID for employees endpoints"},{"key":"customer-devicesId","value":"1","description":"Resource ID for customer-devices endpoints"},{"key":"partner-customersId","value":"1","description":"Resource ID for partner-customers endpoints"},{"key":"home-bannersId","value":"1","description":"Resource ID for home-banners endpoints"},{"key":"cms-pagesId","value":"1","description":"Resource ID for cms-pages endpoints"},{"key":"question-answersId","value":"1","description":"Resource ID for question-answers endpoints"},{"key":"app-settingsId","value":"1","description":"Resource ID for app-settings endpoints"},{"key":"translationsId","value":"1","description":"Resource ID for translations endpoints"}]}