{
  "info": {
    "name": "Zippex Delivery API",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
    "description": "Reference Postman collection for the Zippex Delivery API. Set the {{api_key}} and {{base_url}} variables to get started.",
    "_postman_id": "zippex-delivery-api"
  },
  "auth": {
    "type": "bearer",
    "bearer": [{ "key": "token", "value": "{{api_key}}", "type": "string" }]
  },
  "variable": [
    { "key": "base_url", "value": "https://api.zippex.com" },
    { "key": "api_key", "value": "zx_test_replace_me" }
  ],
  "item": [
    {
      "name": "Merchants",
      "item": [
        {
          "name": "Register merchant",
          "request": {
            "method": "POST",
            "header": [{ "key": "Content-Type", "value": "application/json" }],
            "url": "{{base_url}}/v1/merchants/register",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"business_name\": \"Coastal Bites\",\n  \"email\": \"hello@coastalbites.ca\",\n  \"phone\": \"+16045550123\",\n  \"address\": {\n    \"street\": \"350 W Georgia St\",\n    \"city\": \"Vancouver\",\n    \"province\": \"BC\",\n    \"postal_code\": \"V6B 6B1\"\n  }\n}"
            }
          }
        }
      ]
    },
    {
      "name": "Quotes",
      "item": [
        {
          "name": "Create quote",
          "request": {
            "method": "POST",
            "header": [{ "key": "Content-Type", "value": "application/json" }],
            "url": "{{base_url}}/v1/quotes",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"pickup_address\": \"350 W Georgia St, Vancouver, BC V6B 6B1\",\n  \"dropoff_address\": \"2085 Main St, Vancouver, BC V5T 3C3\"\n}"
            }
          }
        },
        {
          "name": "Retrieve quote",
          "request": {
            "method": "GET",
            "url": "{{base_url}}/v1/quotes/qt_REPLACE"
          }
        }
      ]
    },
    {
      "name": "Deliveries",
      "item": [
        {
          "name": "Create delivery",
          "request": {
            "method": "POST",
            "header": [{ "key": "Content-Type", "value": "application/json" }],
            "url": "{{base_url}}/v1/deliveries",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"quote_id\": \"qt_REPLACE\",\n  \"pickup_name\": \"Coastal Bites\",\n  \"pickup_phone\": \"+16045550123\",\n  \"dropoff_name\": \"Jane Smith\",\n  \"dropoff_phone\": \"+16045550456\",\n  \"description\": \"1x Birthday cake\",\n  \"metadata\": { \"order_id\": \"ORD-4521\" }\n}"
            }
          }
        },
        {
          "name": "List deliveries",
          "request": {
            "method": "GET",
            "url": "{{base_url}}/v1/deliveries?limit=20"
          }
        },
        {
          "name": "Retrieve delivery",
          "request": {
            "method": "GET",
            "url": "{{base_url}}/v1/deliveries/del_REPLACE"
          }
        },
        {
          "name": "Cancel delivery",
          "request": {
            "method": "POST",
            "url": "{{base_url}}/v1/deliveries/del_REPLACE/cancel"
          }
        }
      ]
    },
    {
      "name": "Tracking",
      "item": [
        {
          "name": "Get delivery tracking",
          "request": {
            "method": "GET",
            "url": "{{base_url}}/v1/deliveries/del_REPLACE/tracking"
          }
        }
      ]
    },
    {
      "name": "Webhooks",
      "item": [
        {
          "name": "Register webhook",
          "request": {
            "method": "POST",
            "header": [{ "key": "Content-Type", "value": "application/json" }],
            "url": "{{base_url}}/v1/webhooks",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"url\": \"https://example.com/zippex/webhook\",\n  \"events\": [\"delivery.driver_assigned\", \"delivery.delivered\"]\n}"
            }
          }
        },
        {
          "name": "List webhooks",
          "request": { "method": "GET", "url": "{{base_url}}/v1/webhooks" }
        },
        {
          "name": "Delete webhook",
          "request": { "method": "DELETE", "url": "{{base_url}}/v1/webhooks/wh_REPLACE" }
        }
      ]
    }
  ]
}
