{
  "service": "Agent Outposts",
  "logging": "Intent registrations are logged in aggregate (brand, intent, result counts, hashed caller id) for demand statistics. No raw IP addresses are stored; free-text fields are stored only as provided.",
  "disclaimer": "Agent Outposts is not affiliated with Subway. This Outpost is a demand registry operated by Agent Outposts; door-state data is compiled from public sources (evidence linked per claim) and is not provided, reviewed, or endorsed by Subway.",
  "outpost": "subway",
  "brand": "Subway",
  "category": "QSR",
  "status": "collecting_demand",
  "headline": "No public API or agent-native surface; a fully franchised system reachable externally only via subway.com/app or DoorDash/Uber Eats.",
  "wall_summary": "Subway has no public API and no agent-native surface, and its restaurants are independently operated by franchisees. Externally it is reachable only via human subway.com/app ordering or via DoorDash and Uber Eats, which carry menus, ordering and tracking.",
  "door_state_version": "census-2026-11-01",
  "door_state": {
    "inventory": {
      "state": "aggregator_only",
      "via": "DoorDash / Uber Eats",
      "evidence_url": "https://www.subway.com/en-us/legal/terms-of-use",
      "checked_at": "2026-11-01",
      "note": "Only per-store availability proxy (franchisees independently operate restaurants, per official Terms); no inventory API. SubwayPOS inventory tooling is franchisee-internal."
    },
    "menu_browse": {
      "state": "aggregator_only",
      "via": "DoorDash / Uber Eats",
      "evidence_url": "https://www.subway.com/en-us/legal/terms-of-use",
      "checked_at": "2026-11-01",
      "note": "No developer portal/API found. Official Terms confirm site/app features incl. online ordering are human channels; DoorDash Subway stores show full menus with merchant-set prices."
    },
    "ordering": {
      "state": "aggregator_only",
      "via": "DoorDash / Uber Eats",
      "evidence_url": "https://www.subway.com/en-us/legal/terms-of-use",
      "checked_at": "2026-11-01",
      "note": "Ordering via subway.com/app (human) or DoorDash/Uber Eats, both offering delivery and pickup for Subway in listings checked; no ordering API."
    },
    "prices": {
      "state": "aggregator_only",
      "via": "DoorDash / Uber Eats",
      "evidence_url": "https://www.subway.com/en-us/legal/terms-of-use",
      "checked_at": "2026-11-01",
      "note": "DoorDash Subway listings note prices higher on third-party delivery and refer to subway.com for info; no price API."
    },
    "tracking": {
      "state": "aggregator_only",
      "via": "DoorDash / Uber Eats",
      "evidence_url": "https://www.subway.com/en-us/legal/terms-of-use",
      "checked_at": "2026-11-01",
      "note": "Tracking in Subway app/web or aggregator used; no tracking API found."
    }
  },
  "official_channels": [
    {
      "name": "DoorDash marketplace",
      "kind": "aggregator",
      "covers": [
        "menu_browse",
        "prices",
        "inventory",
        "ordering",
        "tracking"
      ],
      "gate": "Ordering requires a DoorDash account; DoorDash listings note prices are higher on third-party delivery.",
      "evidence_url": "https://www.subway.com/en-us/legal/terms-of-use"
    },
    {
      "name": "Uber Eats marketplace",
      "kind": "aggregator",
      "covers": [
        "menu_browse",
        "prices",
        "inventory",
        "ordering",
        "tracking"
      ],
      "gate": "Ordering requires an Uber Eats account.",
      "evidence_url": "https://www.subway.com/en-us/legal/terms-of-use"
    },
    {
      "name": "Subway app / web ordering",
      "kind": "human_channel",
      "covers": [
        "menu_browse",
        "ordering",
        "tracking"
      ],
      "gate": "Human-operated site/app channels only, with no ordering API; tracking is in the Subway app/web or the aggregator used.",
      "evidence_url": "https://www.subway.com/en-us/legal/terms-of-use"
    }
  ],
  "agent_native": {
    "api_catalog": false,
    "llms_txt": false,
    "mcp_server": false
  },
  "bot_posture": {
    "summary": "robots.txt 200 with Crawl-delay 10, sitemaps, and disallows for menu/order/profile paths; llms.txt and api-catalog 404 (S3 NoSuchKey)",
    "evidence_url": "https://www.subway.com/robots.txt"
  },
  "alternatives": {
    "menu_browse": {
      "count": 0,
      "access": "register_intent"
    },
    "prices": {
      "count": 0,
      "access": "register_intent"
    },
    "inventory": {
      "count": 0,
      "access": "register_intent"
    },
    "ordering": {
      "count": 0,
      "access": "register_intent"
    },
    "tracking": {
      "count": 0,
      "access": "register_intent"
    }
  },
  "alternatives_policy": "Ranked by fit only. Placement is never sold.",
  "register_intent": {
    "method": "POST",
    "url": "https://api.agentoutposts.com/outposts/subway/intent",
    "body": {
      "intent": "one of: menu_browse | prices | inventory | ordering | tracking",
      "detail": "optional context for the brand (max 500 chars), e.g. the task you were trying to complete. Never include personal data — no names, addresses, or order details.",
      "agent_label": "optional self-declared agent name (max 80 chars). Never put personal data in this field.",
      "est_frequency": "optional, e.g. '40/day'",
      "notify": "'poll' (default) or 'webhook'",
      "notify_url": "required when notify = 'webhook'"
    },
    "returns": "A receipt: ticket, queue position, live demand snapshot, alternatives for your intent, and (poll mode) a notify URL that reports door-state changes.",
    "limits": "100 intent registrations per caller per day"
  }
}