EventEspresso.com just got a fresh makeover; enjoy the new brew. ☕️

Event Espresso 4 REST API Add-on Now Available

Event Espresso provides read access to all EE4 data. That means you can build client-side code, mobile apps, and programs.

Posted by Michael Nelson  


Earlier this year we announced we started work on the EE4 REST API addon. Well its ready-for-use and now bundled with Event Espresso 4 core!

We’ve reached the first milestone which provides read access to all EE4 data. That means you can build client-side Javascript code, mobile apps, and programs  in any language (and on any server) that can read data used in Event Espresso 4.

So what’s great about the EE4 REST API and what can you do with it? Here’s a start:

  • Unlike its predecessor, the EE3 JSON API, this addon is compatible with Event Espresso 4 (not Event Espresso 3)
  • It’s built using the WordPress REST API (aka WP API). That means many plugins that work with the WP API work with it too. WP API gives the EE4 REST API a solid foundation by handling authentication, providing endpoint discovery, and supplying lots of the “behind-the-scenes” code.
  • It provides read access to all Event Espresso 4 data: events, tickets, datetimes, registrations, custom questions and answers, payment methods, and configuration data. Even Event Espresso 4 addons’ data, like from the Mailchimp Addon or the People Addon, is available by default. If we’ve missed something tell us in the github issue tracker!
  • It uses Event Espresso’s models system for querying the database. This gives API clients nearly as much querying abilities as server-side plugins. Here are some of the crazier queries we thought of:
  • Names of events events happening at venues with a name containing the string “boat”:
    demoee.org/use-cases/wp-json/ee/v4.8.36/events?where[Venue.VNU_name][]=LIKE&where[Venue.VNU_name][]=%boat%&include=EVT_name
  • all approved payments for events created by the user “Eddie”:
    demoee.org/use-cases/wp-json/ee/v4.8.36/payments?filter[where][STS_ID]=PAP&filter[where][Transaction.Registration.Event.WP_User.user_nicename]=Eddie
    (requires authentication to see payments though) all answers to the question “shirt size” for the event “Star Wars Con 2015”:
    demoee.org/use-cases/wp-json/ee/v4.8/36/answers?filter[where][Question.QST_admin_name]=shirt%20size&filter[where][Registration.Event.EVT_name]=Star Wars Con 2015
    (again requires authentication) Request as much as or as little data you want by specifying what fields and related objects to return. For example, request only event names (and don’t bother with all the extra data)
    demoee.org/use-cases/wp-json/ee/v4.8.36/events?include=EVT_name

    or for each registrant, include its attendee info and answers to custom questions, and the custom questions also, all in one request

    demoee.org/use-cases/wp-json/ee/v4.8.36/registrations?include=Attendee,Answer.Question

    (again requires authentication)

    Want to learn more? Checkout our documentation and tutorials hosted on Github, including:

    If you still have questions about how to build your killer app that works with the EE4 REST API, open a ticket on our github repo. We’ll try our best to answer it, and improve our documentation too.

    Also you should stay tuned to our developer-specific blog at developer.eventespresso.com so you’ll know about any important changes regarding backwards compatibility or other developments.

    And what if you’re wanting to create/edit EE4 data over the API? Or have some other feature request? We want to focus on what matters most to you, so let us know! Chime in on our github repo’s issue tracker to let us know it matters to you!

    And if you do build something great with the EE4 REST API, consider listing it on our 3rd party addons page.

    Powering the EventSmart.com API

    In addition to being made available for all Event Espresso users, the Event Espresso REST API Add-on will also power the Event Smart API. That means that Event Smart users will be able to do the same things with their event data on as they can with Event Espresso.

    Event application developers who build applications for the Event Espresso API will also have the advantage of accessing the Event Smart users and event data. We invite application developers who use or consume event data to integrate their applications with the Event Espresso/Event Smart API. As has been mentioned before, if you create a great third-party extension/app for Event Espresso/Smart data we will do our best to introduce it to our event organizing and attendee audiences.