{
  "about": "Print-on-demand merch for humans and the agents who shop for them. Every price is all-in except sales tax; nothing ships until it is paid.",
  "agents": "Idempotency-Key is required on POST /api/orders; a retry with the same key returns the same order. A missing size, colour or address field is refused by name, never guessed. Docs for agents: /llms.txt",
  "base": "https://botsandborgs.com",
  "buy": [
    "GET /api/catalog — products, variants (sizes/colours) and prices in cents",
    "POST /api/quotes {items:[{variant,qty}], ship_to?, email?} — the all-in price, held for a while (expires_at)",
    "POST /api/orders {quote, email?, channel?} + header Idempotency-Key — returns checkout_url (Stripe) and an order token",
    "GET /api/orders/{id}?token= — status, tracking, history",
    "POST /api/orders/{id}/cancel?token= — before payment only"
  ],
  "currency": "usd",
  "errors": {
    "codes": [
      "bad_request",
      "unknown_param",
      "unauthorized",
      "not_found",
      "conflict",
      "quote_expired",
      "payments_unavailable",
      "upstream",
      "internal"
    ],
    "shape": {
      "code": "code",
      "error": "message"
    }
  },
  "name": "Bots & Borgs",
  "order_statuses": [
    "awaiting_payment",
    "paid",
    "in_production",
    "shipped",
    "expired",
    "canceled",
    "payment_failed",
    "fulfillment_failed",
    "refunded"
  ],
  "routes": {
    "admin": [
      "GET /api/admin/status",
      "GET /api/admin/products",
      "POST /api/admin/products",
      "PATCH /api/admin/products/{slug}",
      "POST /api/admin/products/{slug}/variants",
      "POST /api/admin/images",
      "GET /api/admin/orders?status=&limit=",
      "GET /api/admin/orders/{id}",
      "POST /api/admin/orders/{id}/fulfill",
      "GET /api/admin/ads/stats?days=",
      "GET /api/admin/ads/stats/{ad}?days="
    ],
    "public": [
      "GET /api",
      "GET /api/health",
      "GET /api/catalog?collection=&q=",
      "GET /api/collections",
      "GET /api/products/{slug}",
      "POST /api/quotes",
      "GET /api/quotes/{id}",
      "POST /api/orders",
      "GET /api/orders/{id}",
      "POST /api/orders/{id}/cancel",
      "POST /api/webhooks/stripe",
      "POST /api/webhooks/printful/{secret}",
      "GET /img/{file}"
    ]
  },
  "ship_countries": [
    "US"
  ],
  "version": "0.1.0"
}