Skip to content

For Developers + Partners

Arizona Events API.
Free. Open. Yours.

Pull live Arizona events into your hotel concierge app, Arizona blog, tour-operator site, or Slack bot. No API key, no rate-limit hassle, no nonsense.

One-line embed widget

Drop this on any HTML page. Renders 6 upcoming Arizona events styled to fit your site. Auto-updates.

<div data-alohacalendar-widget
     data-island="phoenix"
     data-limit="6"
     data-theme="light">
</div>
<script src="https://zonahaps.com/embed/widget.js" async></script>

Options

AttributeValuesDefault
data-islandphoenix, scottsdale, tucson, sedona, flagstaff, west-valley(all)
data-categoryany category slug (e.g. concerts, festivals)(all)
data-fromYYYY-MM-DDtoday
data-toYYYY-MM-DD(no limit)
data-freetrue / (omit)(omit)
data-limit1-206
data-themelight / darklight
data-refany stringembed

Raw REST API

JSON, CORS open, no auth required for v1.

GET https://zonahaps.com/api/v1/events
    ?island=phoenix
    &category=concerts
    &from=2026-07-01
    &to=2026-07-31
    &free=true
    &q=symphony
    &limit=20

Response shape

{
  "version": "v1",
  "count": 20,
  "events": [
    {
      "id": "...",
      "slug": "phoenix-symphony-classics",
      "title": "Phoenix Symphony Classics",
      "shortDesc": "Brahms + Ravel at Symphony Hall.",
      "startDate": "2026-07-04T19:30:00.000Z",
      "startTime": "19:30",
      "endDate": null,
      "imageUrl": "https://...",
      "isFree": false,
      "isFeatured": true,
      "priceMin": 25,
      "priceMax": 95,
      "priceNote": null,
      "ticketUrl": "https://...",
      "island": { "slug": "phoenix", "name": "Phoenix" },
      "location": { "name": "Symphony Hall", "address": "...", "city": "Phoenix" },
      "categories": [{ "slug": "concerts", "name": "Concerts" }],
      "url": "https://zonahaps.com/events/phoenix-symphony-classics"
    }
  ]
}

Get in touch

Building something cool with this?

Drop us a line at hello@zonahaps.com — we'll feature you on this page + put your project in the next newsletter.