{
  "info": {
    "name": "Zayuno Provider Contract v1",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "variable": [
    {
      "key": "baseUrl",
      "value": "https://api.yourbusiness.uz/zayuno"
    },
    {
      "key": "zayunoApiUrl",
      "value": "https://api.zayuno.uz"
    },
    {
      "key": "providerSlug",
      "value": "shopla"
    },
    {
      "key": "providerApiKey",
      "value": ""
    },
    {
      "key": "offeringId",
      "value": "item_coffee_latte"
    },
    {
      "key": "actionId",
      "value": "act_12345"
    },
    {
      "key": "webhookSecret",
      "value": "zy_whsec_sample123"
    },
    {
      "key": "webhookHmacSignature",
      "value": ""
    },
    {
      "key": "isoTimestamp",
      "value": "2026-08-24T10:00:00.000Z"
    }
  ],
  "item": [
    {
      "name": "GET /provider-info",
      "request": {
        "method": "GET",
        "header": [
          {
            "key": "content-type",
            "value": "application/json"
          },
          {
            "key": "x-provider-api-key",
            "value": "{{providerApiKey}}"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/provider-info",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "provider-info"
          ]
        }
      }
    },
    {
      "name": "GET /health",
      "request": {
        "method": "GET",
        "header": [
          {
            "key": "content-type",
            "value": "application/json"
          },
          {
            "key": "x-provider-api-key",
            "value": "{{providerApiKey}}"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/health",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "health"
          ]
        }
      }
    },
    {
      "name": "GET /locations",
      "request": {
        "method": "GET",
        "header": [
          {
            "key": "content-type",
            "value": "application/json"
          },
          {
            "key": "x-provider-api-key",
            "value": "{{providerApiKey}}"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/locations",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "locations"
          ]
        }
      }
    },
    {
      "name": "GET /catalog",
      "request": {
        "method": "GET",
        "header": [
          {
            "key": "content-type",
            "value": "application/json"
          },
          {
            "key": "x-provider-api-key",
            "value": "{{providerApiKey}}"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/catalog",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "catalog"
          ]
        }
      }
    },
    {
      "name": "GET /offerings/:id",
      "request": {
        "method": "GET",
        "header": [
          {
            "key": "content-type",
            "value": "application/json"
          },
          {
            "key": "x-provider-api-key",
            "value": "{{providerApiKey}}"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/offerings/{{offeringId}}",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "offerings",
            "{{offeringId}}"
          ]
        }
      }
    },
    {
      "name": "GET /search",
      "request": {
        "method": "GET",
        "header": [
          {
            "key": "content-type",
            "value": "application/json"
          },
          {
            "key": "x-provider-api-key",
            "value": "{{providerApiKey}}"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/search",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "search"
          ]
        }
      }
    },
    {
      "name": "POST /quote",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "content-type",
            "value": "application/json"
          },
          {
            "key": "x-provider-api-key",
            "value": "{{providerApiKey}}"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/quote",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "quote"
          ]
        },
        "body": {
          "mode": "raw",
          "raw": "{\n  \"providerSlug\": \"shopla\",\n  \"locationId\": \"loc_main\",\n  \"items\": [\n    {\n      \"offeringId\": \"item_coffee_latte\",\n      \"variantId\": \"var_standard\",\n      \"quantity\": 2,\n      \"selectedOptions\": [\n        {\n          \"groupId\": \"grp_milk\",\n          \"optionId\": \"opt_whole\",\n          \"quantity\": 1\n        }\n      ]\n    }\n  ]\n}"
        }
      }
    },
    {
      "name": "POST /actions",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "content-type",
            "value": "application/json"
          },
          {
            "key": "x-provider-api-key",
            "value": "{{providerApiKey}}"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/actions",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "actions"
          ]
        },
        "body": {
          "mode": "raw",
          "raw": "{\n  \"idempotencyKey\": \"idemp_unique_98765\",\n  \"providerSlug\": \"shopla\",\n  \"quoteId\": \"quote_123\",\n  \"customer\": {\n    \"name\": \"Ali Valiyev\",\n    \"phone\": \"+998901234567\"\n  },\n  \"destination\": {\n    \"raw\": \"Tashkent, Amir Temur 1\"\n  },\n  \"items\": [\n    {\n      \"offeringId\": \"item_coffee_latte\",\n      \"quantity\": 2\n    }\n  ],\n  \"userConfirmed\": true\n}"
        }
      }
    },
    {
      "name": "GET /actions/:id",
      "request": {
        "method": "GET",
        "header": [
          {
            "key": "content-type",
            "value": "application/json"
          },
          {
            "key": "x-provider-api-key",
            "value": "{{providerApiKey}}"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/actions/{{actionId}}",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "actions",
            "{{actionId}}"
          ]
        }
      }
    },
    {
      "name": "GET /actions/:id/payment-options",
      "request": {
        "method": "GET",
        "header": [
          {
            "key": "content-type",
            "value": "application/json"
          },
          {
            "key": "x-provider-api-key",
            "value": "{{providerApiKey}}"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/actions/{{actionId}}/payment-options",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "actions",
            "{{actionId}}",
            "payment-options"
          ]
        }
      }
    },
    {
      "name": "POST /actions/:id/cancel",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "content-type",
            "value": "application/json"
          },
          {
            "key": "x-provider-api-key",
            "value": "{{providerApiKey}}"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/actions/{{actionId}}/cancel",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "actions",
            "{{actionId}}",
            "cancel"
          ]
        },
        "body": {
          "mode": "raw",
          "raw": "{\n  \"reason\": \"Foydalanuvchi buyurtmani bekor qildi\"\n}"
        }
      }
    },
    {
      "name": "POST /api/v1/webhooks/:providerSlug",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "content-type",
            "value": "application/json"
          },
          {
            "key": "x-zayuno-signature",
            "value": "{{webhookHmacSignature}}"
          },
          {
            "key": "x-provider-slug",
            "value": "{{providerSlug}}"
          },
          {
            "key": "x-timestamp",
            "value": "{{isoTimestamp}}"
          }
        ],
        "url": {
          "raw": "{{zayunoApiUrl}}/api/v1/webhooks/{{providerSlug}}",
          "host": [
            "{{zayunoApiUrl}}"
          ],
          "path": [
            "api",
            "v1",
            "webhooks",
            "{{providerSlug}}"
          ]
        },
        "body": {
          "mode": "raw",
          "raw": "{\n  \"eventId\": \"evt_123\",\n  \"eventType\": \"action.status_updated\",\n  \"providerSlug\": \"shopla\",\n  \"actionId\": \"act_12345\",\n  \"newStatus\": \"COMPLETED\",\n  \"timestamp\": \"2026-08-24T10:00:00.000Z\"\n}"
        }
      }
    }
  ]
}