FindLocal Events API

The Events API from FindLocal — 2 operation(s) for events.

Operations 2

GET /events Search upcoming events #
GET /events/{id} One event #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/findlocal:findlocal-events-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

findlocal-events-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: FindLocal Events API
  version: 1.0.0
  description: Hyper-local events for 83 US metros — concerts, readings, classes, community nights — with venues and coordinates.
servers:
- url: /api/playground
  description: Playground — no key, real data, 5 rows per call (100 when logged in)
- url: https://findlocal.community/api
  description: Production — needs your API key
security:
- apiKey: []
tags:
- name: Events
paths:
  /events:
    get:
      tags:
      - Events
      operationId: listEvents
      summary: Search upcoming events
      description: Upcoming events in one metro, filtered. Every parameter is optional; with none you get Boston, chronological.
      parameters:
      - name: city
        in: query
        description: Metro slug (or name). One of 83 US metros.
        schema:
          type: string
          enum:
          - ann-arbor
          - atlanta
          - austin
          - baltimore
          - bangor
          - bloomington
          - boise
          - boston
          - brattleboro
          - buffalo
          - burlington
          - cape-cod
          - charleston
          - charlotte
          - chicago
          - cincinnati
          - cleveland
          - columbia-mo
          - columbus
          - dallas
          - denver
          - des-moines
          - detroit
          - duluth
          - fort-collins
          - grand-rapids
          - green-bay
          - hanover
          - harrisburg
          - hartford
          - hilton-head
          - houston
          - hudson-valley
          - indianapolis
          - iowa-city
          - jersey-shore
          - kansas-city
          - lansing
          - las-vegas
          - lincoln
          - los-angeles
          - madison
          - manchester
          - miami
          - milwaukee
          - minneapolis
          - nashville
          - new-haven
          - new-orleans
          - new-york
          - northampton
          - oklahoma-city
          - orlando
          - philadelphia
          - phoenix
          - pittsburgh
          - pittsfield
          - portland
          - portland-me
          - portsmouth
          - providence
          - raleigh
          - rochester
          - rockland
          - rutland
          - sacramento
          - salt-lake-city
          - san-antonio
          - san-diego
          - san-francisco
          - santa-barbara
          - seattle
          - sonoma
          - spokane
          - st-louis
          - stamford
          - tampa
          - traverse-city
          - tucson
          - washington
          - wenatchee
          - wilmington-nc
          - worcester
          default: boston
        example: boston
      - name: when
        in: query
        description: Date window, resolved in the metro's own time zone — or one day as YYYY-MM-DD.
        schema:
          type: string
          examples:
          - anytime
          - today
          - tomorrow
          - weekend
          - week
          - '2026-10-31'
        example: weekend
      - name: cat
        in: query
        description: Comma list of category slugs. `literary` also matches everything at bookstores and libraries.
        schema:
          type: string
          examples:
          - music
          - comedy
          - theater
          - dance
      - name: free
        in: query
        description: Free events only.
        schema:
          type: string
          enum:
          - '1'
      - name: paid
        in: query
        description: Paid events only.
        schema:
          type: string
          enum:
          - '1'
      - name: max
        in: query
        description: Maximum price in USD (events with a parsed price).
        schema:
          type: number
          minimum: 0
      - name: tod
        in: query
        description: Comma list of times of day.
        schema:
          type: string
          examples:
          - morning
          - afternoon
          - evening
      - name: region
        in: query
        description: Neighborhood / sub-area inside the metro, e.g. Cambridge.
        schema:
          type: string
      - name: q
        in: query
        description: Free text over title, venue and performer names.
        schema:
          type: string
          maxLength: 100
      - name: performer
        in: query
        description: Substring match on performer names only.
        schema:
          type: string
          maxLength: 100
      - name: authors
        in: query
        description: Only events with a known author on the bill.
        schema:
          type: string
          enum:
          - '1'
      - name: near
        in: query
        description: 'Proximity search: `<lat>,<lng>`. Orders by distance and overrides `sort`.'
        schema:
          type: string
          pattern: ^-?\d+(\.\d+)?,-?\d+(\.\d+)?$
      - name: radius_km
        in: query
        description: Radius for `near` (default 25, max 200).
        schema:
          type: number
          minimum: 1
          maximum: 200
          default: 25
      - name: sort
        in: query
        description: '`date` is chronological; `featured` is the site''s editorial ranking.'
        schema:
          type: string
          enum:
          - featured
          - date
          default: date
      - name: page
        in: query
        description: 1-based page (100 per page). Ignored by the playground server.
        schema:
          type: integer
          minimum: 1
          default: 1
      - name: limit
        in: query
        description: Rows per call (max 500). The playground server caps this at 5 (100 signed in).
        schema:
          type: integer
          minimum: 1
          maximum: 500
      - name: venue
        in: query
        description: 'A venue uuid: upcoming events at that venue (the metro comes from the venue).'
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Events plus paging metadata.
          headers:
            X-RateLimit-Remaining:
              description: Calls left this MONTH on this key.
              schema:
                type: integer
            X-RateLimit-Limit:
              description: Requests allowed per MINUTE, shared by all of the account's keys.
              schema:
                type: integer
            X-RateLimit-Reset:
              description: When the per-minute window reopens (Unix seconds).
              schema:
                type: integer
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/Event'
                  meta:
                    type: object
                    properties:
                      city:
                        type: string
                      count:
                        type: integer
                      total:
                        type: integer
                      page:
                        type: integer
                      page_size:
                        type: integer
                      sort:
                        type: string
        '401':
          description: Missing or invalid API key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '429':
          description: Per-minute rate limit or monthly quota exceeded. `Retry-After` is the seconds until the minute window reopens, or until the quota refills on the 1st.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /events/{id}:
    get:
      tags:
      - Events
      operationId: getEvent
      summary: One event
      description: A single event by id — past and delisted events included (`is_deleted`).
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: The event.
          headers:
            X-RateLimit-Remaining:
              description: Calls left this MONTH on this key.
              schema:
                type: integer
            X-RateLimit-Limit:
              description: Requests allowed per MINUTE, shared by all of the account's keys.
              schema:
                type: integer
            X-RateLimit-Reset:
              description: When the per-minute window reopens (Unix seconds).
              schema:
                type: integer
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/Event'
        '401':
          description: Missing or invalid API key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Unknown id.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '429':
          description: Per-minute rate limit or monthly quota exceeded. `Retry-After` is the seconds until the minute window reopens, or until the quota refills on the 1st.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    Error:
      type: object
      properties:
        error:
          type: string
    Event:
      type: object
      properties:
        id:
          type: string
          format: uuid
        title:
          type: string
        description:
          type:
          - string
          - 'null'
        event_date:
          type: string
          format: date
          description: Calendar day in the venue's own time zone.
        start_time:
          type:
          - string
          - 'null'
          description: HH:MM, 24-hour, venue-local.
        end_time:
          type:
          - string
          - 'null'
        category:
          type:
          - string
          - 'null'
          description: music | comedy | theater | dance | literary | art | food_drink | family | market | workshop | fitness | nightlife | community | festival | parks
        event_type:
          type: array
          items:
            type: string
        performers:
          type: array
          items:
            type: object
            properties:
              name:
                type: string
              role:
                type: string
              url:
                type: string
              image:
                type: string
        price:
          type:
          - string
          - 'null'
          description: Price label as published, e.g. "$18 adv / $22 door".
        price_amount:
          type:
          - number
          - 'null'
          description: Parsed lowest price in USD; 0 = free.
        detail_page_url:
          type:
          - string
          - 'null'
        ticket_page_url:
          type:
          - string
          - 'null'
        image_url:
          type:
          - string
          - 'null'
        city:
          type: string
        region:
          type:
          - string
          - 'null'
        venue_id:
          type: string
          format: uuid
        venue_name:
          type: string
        venue_address:
          type:
          - string
          - 'null'
        venue_lat:
          type:
          - number
          - 'null'
        venue_lng:
          type:
          - number
          - 'null'
        venue_type:
          type:
          - string
          - 'null'
        author_ids:
          type: array
          items:
            type: string
        book_ids:
          type: array
          items:
            type: string
        series_count:
          type: integer
          description: Upcoming dates of the same recurring event at this venue.
        is_deleted:
          type: integer
          enum:
          - 0
          - 1
        updated_at:
          type: string
  securitySchemes:
    apiKey:
      type: http
      scheme: bearer
      description: 'Your FindLocal API key (`Authorization: Bearer <key>`; `X-API-Key` also works). Not needed on the Playground server.'
x-provenance:
  method: harvested
  publisher: FindLocal
  source: https://findlocal.community/openapi.json
  note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
    stamped by stamp-openapi-provenance.py (roadmap#793)