{
  "info": {
    "name": "PrepPort Customer API v1",
    "_postman_id": "1b426c4c-4d30-4c28-ae67-4db6df12f4d8",
    "description": "Customer-owned API starter collection for PrepPort Global. Uses placeholder variables only. Do not store production API keys in shared workspaces.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "variable": [
    { "key": "baseUrl", "value": "https://api.prepportglobal.com" },
    { "key": "apiKey", "value": "pp_live_REPLACE_WITH_PORTAL_KEY", "type": "secret" },
    { "key": "quoteId", "value": "QUOTE_ID" },
    { "key": "invoiceId", "value": "INVOICE_ID" }
  ],
  "auth": {
    "type": "bearer",
    "bearer": [
      { "key": "token", "value": "{{apiKey}}", "type": "string" }
    ]
  },
  "item": [
    {
      "name": "Status - Customer API summary",
      "request": {
        "method": "GET",
        "header": [],
        "url": "{{baseUrl}}/api/v1",
        "description": "Returns account context, receiving profile, first shipment readiness, action center, inventory, wallet, Shopify sync, and API links."
      }
    },
    {
      "name": "Status - Control Tower",
      "request": {
        "method": "GET",
        "header": [],
        "url": "{{baseUrl}}/api/v1/control-tower",
        "description": "Customer-safe health view across first shipment readiness, actions, exceptions, inbound/QC, fulfillment, inventory, sourcing, quotes, invoices, integrations, and support."
      }
    },
    {
      "name": "Receiving - Warehouse profile",
      "request": {
        "method": "GET",
        "header": [],
        "url": "{{baseUrl}}/api/v1/receiving-profile",
        "description": "Returns the customer-safe warehouse receiving profile, customer code, receiving reference format, carton marking format, pre-shipment checklist, and shipping hold/ready state."
      }
    },
    {
      "name": "Inbound ASN - Create",
      "request": {
        "method": "POST",
        "header": [
          { "key": "Content-Type", "value": "application/json" }
        ],
        "url": "{{baseUrl}}/api/v1/asns",
        "description": "Create a test inbound ASN before supplier or forwarder handoff.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"asnNumber\": \"ASN-SANDBOX-1001\",\n  \"supplierName\": \"Supplier One\",\n  \"trackingNumber\": \"TEST123456789\",\n  \"expectedArrival\": \"2026-07-05\",\n  \"items\": [\n    {\"sku\": \"BOTTLE-750\", \"quantity\": 240, \"cartonCount\": 12}\n  ],\n  \"serviceNotes\": \"Inbound QC, FNSKU labels, carton marks\"\n}"
        }
      }
    },
    {
      "name": "Fulfillment Order - Create drop shipping",
      "request": {
        "method": "POST",
        "header": [
          { "key": "Content-Type", "value": "application/json" }
        ],
        "url": "{{baseUrl}}/api/v1/fulfillment-orders",
        "description": "Create a drop-shipping, sample, marketplace, or manual outbound order.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"platform\": \"shopify\",\n  \"orderType\": \"drop_shipping\",\n  \"orderNumber\": \"SHOP-SANDBOX-1001\",\n  \"shipToCountry\": \"United States\",\n  \"addressSummary\": \"Seattle WA 98101\",\n  \"shippingService\": \"Standard tracked\",\n  \"items\": [\n    {\"sku\": \"BOTTLE-750\", \"quantity\": 2, \"name\": \"Insulated bottle\"}\n  ]\n}"
        }
      }
    },
    {
      "name": "QC Inspection - Create",
      "request": {
        "method": "POST",
        "header": [
          { "key": "Content-Type", "value": "application/json" }
        ],
        "url": "{{baseUrl}}/api/v1/qc-inspections",
        "description": "Create a product inspection request for pre-shipment, inbound, FBA prep, or defect evidence workflows.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"inspectionNumber\": \"QC-SANDBOX-1001\",\n  \"inspectionType\": \"pre_shipment\",\n  \"sku\": \"BOTTLE-750\",\n  \"productName\": \"Insulated bottle\",\n  \"sampleSize\": 80,\n  \"inspectionCriteria\": \"Check quantity, logo, barcode, packaging, carton marks\"\n}"
        }
      }
    },
    {
      "name": "Sourcing RFQ - Create",
      "request": {
        "method": "POST",
        "header": [
          { "key": "Content-Type", "value": "application/json" }
        ],
        "url": "{{baseUrl}}/api/v1/sourcing-rfqs",
        "description": "Create a product sourcing, supplier quote, sample, procurement support, or fulfillment handoff RFQ.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"product\": \"Insulated bottle\",\n  \"quantity\": \"500\",\n  \"targetUnitPrice\": \"USD 4.50\",\n  \"destination\": \"United States\",\n  \"platform\": \"Shopify and Amazon FBA\",\n  \"requirements\": \"Supplier quotes, samples, QC plan, and fulfillment handoff\",\n  \"needProcurement\": true,\n  \"needDropShipping\": true\n}"
        }
      }
    },
    {
      "name": "CSV Intake - Preflight",
      "request": {
        "method": "POST",
        "header": [
          { "key": "Content-Type", "value": "application/json" }
        ],
        "url": "{{baseUrl}}/api/v1/csv-intake",
        "description": "Preflight marketplace, ASN, QC, sourcing, SKU, or supplier CSV rows before records are created.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"importType\": \"bulk_orders\",\n  \"mode\": \"preflight\",\n  \"sourceNote\": \"Shopify manual export test\",\n  \"csvText\": \"platform,order_number,sku,quantity,ship_to_country,address_summary\\nshopify,SHOP-SANDBOX-1001,BOTTLE-750,2,US,Seattle WA 98101\"\n}"
        }
      }
    },
    {
      "name": "Integration Center - Connection planner",
      "request": {
        "method": "GET",
        "header": [],
        "url": "{{baseUrl}}/api/v1/integration-center",
        "description": "Returns channel readiness, Shopify/API/webhook/CSV fallback status, and planCards for the recommended start path."
      }
    },
    {
      "name": "Quote - Respond",
      "request": {
        "method": "POST",
        "header": [
          { "key": "Content-Type", "value": "application/json" }
        ],
        "url": "{{baseUrl}}/api/v1/quotes/{{quoteId}}/response",
        "description": "Accept, request changes, or decline an approved customer-visible quote.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"decision\": \"accepted\",\n  \"message\": \"Accepted for first batch.\"\n}"
        }
      }
    },
    {
      "name": "Invoice - Submit payment evidence",
      "request": {
        "method": "POST",
        "header": [
          { "key": "Content-Type", "value": "application/json" }
        ],
        "url": "{{baseUrl}}/api/v1/invoices/{{invoiceId}}/payment-evidence",
        "description": "Submit payment evidence for staff verification. This does not mark invoice paid or credit wallet balance automatically.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"paymentMethod\": \"bank_transfer\",\n  \"paidAmount\": \"100.00\",\n  \"currency\": \"USD\",\n  \"payerName\": \"Customer Finance\",\n  \"message\": \"Evidence submitted for review.\"\n}"
        }
      }
    }
  ]
}
