# Today's Poppings > A California event guide covering selected venues in Los Angeles, Orange County, San Diego and Northern California. Coverage is not exhaustive. ## Start here - [Upcoming event data](https://todayspoppings.com/events.json): Paginated JSON for today through the next 30 days, inclusive. - [Upcoming events](https://todayspoppings.com/upcoming): Human-readable listings with crawlable pagination. - [Today's events](https://todayspoppings.com/) - [Tomorrow's events](https://todayspoppings.com/tomorrow) - [This weekend](https://todayspoppings.com/this-weekend) - [Venue directory](https://todayspoppings.com/venues) - [Sitemap](https://todayspoppings.com/sitemap.xml): Canonical event pages, including retained past events, venue schedules and guides. - [Crawler rules](https://todayspoppings.com/robots.txt) - [About and affiliate disclosure](https://todayspoppings.com/about) ## Regional guides - [Los Angeles](https://todayspoppings.com/los-angeles) - [Orange County](https://todayspoppings.com/orange-county) - [San Diego](https://todayspoppings.com/san-diego) - [Northern California](https://todayspoppings.com/norcal) - [San Francisco](https://todayspoppings.com/san-francisco) - [Sacramento](https://todayspoppings.com/sacramento) ## Reading the event feed - GET /events.json returns page 1. Use /events.json?page=2 and follow links.next until it is null. Pages contain at most 50 events; page is the only supported query parameter. Invalid parameters return 400 and pages beyond totalPages return 404. - schemaVersion identifies the payload format. dateRange describes the inclusive coverage window. timeZone is America/Los_Angeles; date is the local calendar date, and startsAt/endsAt are ISO timestamps with offsets or null when unknown. Do not infer a midnight start for a date-only event. - Each event includes its canonical url, description, category, status, venue address and officialUrl. Cite the canonical event url; source.url points to the original source. - generatedAt is the feed response generation time. source.observedAt is when the source record was last checked, and updatedAt is the latest event-content or stored-description update. Fetching this feed does not recheck the upstream provider. - freshness is fresh for source records up to two hours old, stale after two hours, and expired after 24 hours. Non-fresh or cancelled/postponed events report availability as unknown and omit prices. Unknown availability does not mean sold out. Published prices require fresh available inventory and may exclude fees. - Cancelled and postponed events remain present with their status. Completed, past, demo, duplicate-alias and ticket-upgrade-only records are excluded. A null ticketUrl means no supported purchase link is available. - Pages are live views, not a frozen snapshot. Deduplicate by id if traversing during an update, and recheck the canonical page and ticket provider before booking. An empty feed means no matching published listings, not that no events exist in the region. ## Browsing and attribution Public HTML contains the same event facts and can be read without JavaScript, authentication or cookies. Prefer canonical event pages for citations; the sitemap also includes retained events outside the feed window. Respect robots.txt and avoid crawling /go/ ticket-tracking redirects. Follow ticketUrl or venue.officialUrl when current booking information is needed. Some ticket links are affiliate links.