PUBLIC API

Read-only JSON access to the FlyerScene archive. 24,034 underground music flyers across punk, rave, DIY, metal, hardcore, techno, and more. Browse, search, look up venues and artists, reverse-lookup by image. JSON over HTTPS.

Pricing

Free
$0/forever
100 requests / day
No auth, no signup. Perfect for hobbyist scripts, one-off lookups, or trying the API.
Starter
$9/month
10,000 requests / day
Small apps, bots, side projects, and low-traffic sites.
Unlimited
$99/month
No daily cap
Heavy integrations, commercial resale, academic research.

All tiers include the full catalog. Cancel any time. Annual billing - email support@flyerscene.com.

Manage your subscription

Three things you can do once you're subscribed:

Billing portal

Update card, download invoices, cancel. Opens Stripe's self-service portal scoped to your email.

Lost your API key?

We'll generate a new one and email it to you. Your old key stops working immediately.

Check your usage

Paste your key to see today's usage, remaining quota, and your 7-day history.

Try it

Make a live API call from this page. No auth is added automatically - paste a fs_xxx key into the field if you want to use your paid tier limits.

Authentication

Paid tiers use a Bearer token header:

curl -H "Authorization: Bearer fs_xxxxxxxxxxxxxxxxxxxx" \
  https://flyerscene.com/api/flyers?limit=10

Free tier requires no authentication - just hit the endpoint. Every response includes rate-limit headers:

When you hit the limit, the server returns 429 with a JSON body describing the limit and an upgrade link. Window resets 24h after your first request of the day.

Endpoints

GET /api/flyers - Browse flyers. Query params: limit, page, genre, city, decade, featured.
GET /api/flyers/:id - Single flyer with linked artists, venues, and media.
GET /api/flyers/random - One random flyer.
GET /api/flyers/this-week - Flyers whose event dates fall near today's calendar week across any year.
GET /api/search?q=… - Full-text search across flyers, artists, and venues.
GET /api/venues/:id - Venue with stories, artists who played there, and flyers.
GET /api/artists/:slug - Artist with flyer history, cities, and connected artists.
GET /api/sitemap.xml - Complete sitemap with every public URL.

Example response

GET /api/flyers?limit=2&genre=punk

{
  "flyers": [
    {
      "id": "3f2e9c8a-...",
      "image_url": "https://f004.backblazeb2.com/.../abc.jpg",
      "city": "Los Angeles",
      "state": "CA",
      "event_date": "1982-07-11",
      "genre_tags": ["punk", "hardcore"],
      "bands_json": "[\"Black Flag\", \"Saccharine Trust\"]"
    }
  ],
  "total": 3042,
  "page": 1,
  "limit": 2
}

JavaScript example

const res = await fetch('https://flyerscene.com/api/search?q=black+flag', {
  headers: { 'Authorization': 'Bearer fs_xxx...' }  // optional for free tier
});
const data = await res.json();
console.log(data.flyers.length, 'flyers found');

OpenAPI spec

Full machine-readable OpenAPI 3.1 spec at /api/openapi.json. Import into Postman, Insomnia, or any OpenAPI-aware client to get typed requests and autocomplete.

curl https://flyerscene.com/api/openapi.json > flyerscene.json
# Postman: Import → File → flyerscene.json
# Insomnia: Application → Import Data → From File → flyerscene.json

Terms