# Whoop Lab — FPV drone simulator > Whoop Lab is an FPV simulator with real flight physics, in two editions: Abandoned Works, a hyper-realistic factory for Mac, and Whoop Lab for iPhone, iPad and Mac with bright, playful places to fly. This is the brand's own website. The host also serves the brand's live campaign pages and machine-readable data for agents, listed after the pages. ## Pages - [Whoop Lab — FPV drone simulator](https://whooplab.com/): Whoop Lab is an FPV simulator with real flight physics, in two editions: Abandoned Works, a hyper-realistic factory for Mac, and Whoop Lab for iPhone, iPad and Mac with bright, playful places to fly. ## Discovery - [Sitemap](https://whooplab.com/sitemap.xml): every page of this site and all public campaign pages. - Campaign page URLs follow the shape https://whooplab.com/c/{campaign-id}/{slug}. ## Machine-readable campaign data - Every campaign page and the brand home also serve text/markdown: request the same URL with "Accept: text/markdown" for a token-lean variant carrying the same facts (headline, brand, call to action) front-loaded. - GET https://whooplab.com/api/embed/v1/content?campaign={campaign-uuid} returns campaign content as JSON. On a brand domain the host identifies the organization; on shared hosts add organization={org-uuid}. AI agents receive the campaign's canonical variant — the same creative the campaign page shows; live display surfaces may rotate variants. - GET https://whooplab.com/c/{campaign-id}/manifest.json returns the public Campaign Manifest: campaign facts, offer/product terms, calls to action, and the analytics contract, stamped with a content hash (manifestHash) for citation. Public campaigns only. ## Ask - POST https://whooplab.com/ask with JSON body {"question": "...", "campaign": "{campaign-uuid}"} returns JSON {"answer", "campaign": {"id","name","url"}, "links", "homeCampaignId", "session"} — grounded answers about that campaign. - The campaign UUID is the {campaign-id} segment of any campaign page URL (see the sitemap). On a brand domain "campaign" may be omitted — the question then runs against the brand's whole live roster (a brand concierge): the response carries "campaign" and "links" only when the answer recommends a specific campaign, and no "homeCampaignId". "organization": "{org-uuid}" is accepted but never required. - Fetch-only clients: GET https://whooplab.com/ask?q={url-encoded question} takes the same fields as query parameters (&campaign={campaign-uuid}, &session={session}) and returns the same JSON. Meant for assistants fetching on a person's behalf; robots.txt keeps crawlers off question URLs. - Multi-turn: echo the response's "session" in the next request body to continue the same conversation with history. Brand-scope conversations (no "campaign") move across campaigns without losing history. - With a pinned campaign, the answer may recommend a sibling campaign of the same brand; the response's "campaign" and "links" then carry that recommended campaign's identity, page URL, and call to action, while "homeCampaignId" keeps naming the campaign the conversation is grounded in. ## Agent card - [Agent card](https://whooplab.com/.well-known/agent-card.json): machine-readable description of this site and its /ask skill for AI agents. ## Agent discovery - [API catalog](https://whooplab.com/.well-known/api-catalog): RFC 9727 linkset of this host's public APIs; OpenAPI at https://whooplab.com/.well-known/openapi.json. - [Agent skills](https://whooplab.com/.well-known/agent-skills/index.json): task-oriented SKILL.md guides for asking, fetching content, and discovery. - [MCP server card](https://whooplab.com/.well-known/mcp/server-card.json): the platform MCP server behind this site (campaign management, analytics; OAuth-protected). - [AI catalog](https://whooplab.com/.well-known/ai-catalog.json): ARD / AI Catalog manifest of every machine-readable entry point on this host (agent card, MCP server card, OpenAPI, skills, llms.txt), with sample queries per entry. - [Authentication guide](https://whooplab.com/auth.md): this host needs no auth; the guide covers OAuth registration for the platform MCP server.