BENGALURU.FYI IS IN BETA — STILL BUILDING. LIKE THEPINK LINE.
terminalBENGALURU.FYISUBMIT SPOT
DEVELOPER

API
Reference.

Build on top of Bengaluru's most honest dataset. No paywalls for personal projects.

Base URLhttps://bengaluru.fyi/api/v1
info

The API is free to usefor now. As usage grows we'll be evaluating infrastructure costs — if pricing ever changes, existing users will get fair notice before anything kicks in.

Authentication

Read endpoints are public and require no authentication. Write endpoints (POST, DELETE) require a Bearer token passed in the Authorization header.

Authorization: Bearer YOUR_API_KEY

API keys are currently in closed beta. Email api@bengaluru.fyi to request access.

Rate Limits

Unauthenticated
60 req/min
API Key (Free)
300 req/min
API Key (Partner)
Unlimited

Endpoints

GET/api/v1/spots

List all spots with optional filters.

Parameters

categorystringFilter by category slug (e.g. eats, roads)
areastringFilter by neighbourhood name
limitnumberMax results per page (default: 20, max: 100)
offsetnumberPagination offset (default: 0)

Example

GET /api/v1/spots?category=eats&area=indiranagar&limit=10

{
  "total": 84,
  "offset": 0,
  "limit": 10,
  "data": [
    {
      "id": "spot_01J...",
      "name": "CTR",
      "category": "eats",
      "area": "Malleshwaram",
      "description": "The masala dosa that started wars.",
      "submitted_by": "anonymous",
      "created_at": "2024-11-14T08:22:11Z"
    }
  ]
}
GET/api/v1/spots/:id

Get a single spot by ID.

Parameters

idstringSpot ID (e.g. spot_01J...)

Example

GET /api/v1/spots/spot_01Jabc123

{
  "id": "spot_01Jabc123",
  "name": "Toit Brewpub",
  "category": "breweries",
  "area": "Indiranagar",
  "description": "Windmill Wit on tap, always.",
  "maps_url": "https://maps.google.com/?q=Toit+Brewpub",
  "submitted_by": "anonymous",
  "created_at": "2024-10-05T19:01:44Z"
}
GET/api/v1/categories

List all available categories with spot counts.

Example

GET /api/v1/categories

{
  "data": [
    { "slug": "roads", "label": "Roads", "count": 2140 },
    { "slug": "eats",  "label": "Eats",  "count": 4820 },
    { "slug": "breweries", "label": "Breweries", "count": 384 }
  ]
}
POST/api/v1/spots

Submit a new spot. Requires an API key.

Parameters

namestringSpot name (required)
categorystringCategory slug (required)
areastringNeighbourhood name (required)
descriptionstringYour take on the spot (required)
maps_urlstringGoogle Maps URL (optional)

Example

POST /api/v1/spots
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json

{
  "name": "VV Puram Food Street",
  "category": "eats",
  "area": "Basavanagudi",
  "description": "Obbattu, chaat, and chaos. Perfect.",
  "maps_url": "https://maps.google.com/?q=VV+Puram+Food+Street"
}

// Response 201
{
  "id": "spot_01Jxyz789",
  "status": "pending_review"
}