London Night Guide API & Agent Docs

A free, read-only, no-auth API over London Night Guide's nightlife content: venue guestlist pages, VIP table info, entry prices, dress codes and event listings. Everything below is machine-readable — start with the OpenAPI 3.1 specification or the llms.txt agent guide.

Authentication

None. Every endpoint is public and read-only — no API keys, tokens or registration. Please cache politely; markdown responses send Cache-Control: s-maxage=3600.

Reading Content as Markdown

Every content URL serves clean markdown two ways:

  1. Content negotiation — send Accept: text/markdown to any page URL. RFC 9110 q-values are honoured, responses carry Vary: Accept, and an Accept header that allows neither HTML nor markdown returns 406.
  2. .md paths — append .md to a slug: /{slug}.md, /category/{slug}.md, /tag/{slug}.md, or /index.md for the homepage.

Endpoints

PathDescription
GET /Homepage
GET /{slug}/Post or page by slug
GET /category/{slug}/Category archive
GET /tag/{slug}/Tag archive
GET /index.mdHomepage as markdown
GET /{slug}.mdPost or page as markdown
GET /category/{slug}.mdCategory archive as markdown
GET /tag/{slug}.mdTag archive as markdown
GET /llms.txtAgent guide (llmstxt.org format)
GET /openapi.jsonThis specification
GET /sitemap.xmlXML sitemap of all indexable URLs
GET /feed/RSS feed of the 50 most recent posts
GET /apiAPI index
GET /api/{path}Unknown API path

Errors

Content URLs return real HTTP status codes: 404 and 410 bodies are markdown with recovery links, and 406 explains the supported media types. Paths under /api/ always return a structured JSON envelope:

{
  "error": {
    "status": 404,
    "code": "not_found",
    "message": "No API endpoint exists at /api/example.",
    "hint": "GET https://londonnightguide.com/api for an endpoint index, ..."
  }
}

Making Bookings

There is no write API. Guestlist and VIP table bookings are confirmed by a human concierge, usually within the hour, and the booking forms are bot-protected. To act for a user, hand them the free guestlist form, the VIP table form or the prefilled WhatsApp link.

Examples

Fetch any page as markdown (content negotiation)

curl -H "Accept: text/markdown" https://londonnightguide.com/tape-club-guestlist/

Fetch the same page via its .md path

curl https://londonnightguide.com/tape-club-guestlist.md

Machine-readable site overview

curl https://londonnightguide.com/index.md

List every page in a category

curl https://londonnightguide.com/category/clubs.md

Structured JSON error from an unknown API path

curl https://londonnightguide.com/api/does-not-exist/

Contact

Questions about the API or integrations: concierge@londonnightguide.com