It’s official, now that the WordPress REST API (WP-API) has been rolled into WordPress core, we’ve added our own REST API into the Event Espresso 4 (EE4) core plugin.
Since we already have the READ endpoints available in a plugin version of the EE4 REST API, on January 4th, 2016 we released an update (version 4.8.29) with the READ REST API endpoints in EE4 core.
However, we still have more work to do to get the WRITE endpoints done. Once the WRITE endpoints are completed, developer’s will have the ability to directly interface with your event website using the REST API to make updates directly to the database, such as checking-in attendees, creating/updating events, tickets, and attendees.
What Is An API?
In layman’s terms, an API or Application Programming Interface is an agreed set of standardized ways that a particular piece of software can be used; the rules defined for its interaction with the wider world, which govern how other pieces of software can talk to a program and how it will respond.
A few good examples of APIs in action would be:
- Anytime an app uses Google Maps to display its location information.
- A mobile or desktop twitter client.
- A game/service that integrates Facebook features such as login, messaging, etc.
In these instances, and all others like them, the APIs “expose” certain internal functions of the primary applications (Google Maps, Twitter, etc) so that outside developers can use them in their own applications or websites. In these examples, app developers have been given the ability to tap into the powerful features (and/or content) of major web services so that they can build on top of them and/or integrate key content and features into their own products, in clearly defined ways. This allows open collaboration to walk hand in hand with security.
What Is A REST API?
REST or REpresentational State Transfer is an architectural style of building APIs; not a code language or description of its function. A REST API is designed to provide a lightweight form of communication (less bandwidth) between a producer (ex: Twitter) and a consumer (ex: Twitter client), making it a reliable solution for high volume web services like Facebook, Google Apps, Twitter, WordPress, and now Event Espresso.
In this case, you are the producer of content (event information and event data), and the applications you build can consume or use that data through the Event Espresso 4 REST API.
This Will Affect Everyone Who Works With Event Espresso
The EE4 REST API is a simple but powerful way to interact with Event Espresso. Even though the EE4 REST API is not readily visible to users, over time user’s will experience the benefits of more interactive Event Espresso websites. Once we roll out the WRITE endpoints Mobile, desktop and web applications can get data from Event Espresso and do anything you can do via the admin panel. It’s like the admin panel, minus the user interface (UI).
The availability of the EE4 REST API as a core feature also means less time spent by developers creating something similar, and more time spent creating features and custom applications.
How Will The EE4 REST API Be Used?
The Event Espresso 4 (EE4) REST API in Core is intended to allow client-side applications, and apps on different servers, to be able to interact with the WordPress Plugin Event Espresso. It is included in Event Espresso since version 4.8.29, and is built on the WP REST API included in WordPress since version 4.4.
The EE4 REST API can, and will be used in a multitude of different ways, such as:
- Custom mobile apps
- Custom admin interfaces
- Integrating your events with other application platforms
- Provide interoperability with many different programming languages
- and much more!
By providing an agreed, standardized programmatic interface between Event Espresso and the outside world, Event Espresso opens itself up to every other application and development environment on earth.
Information for Developers
Now that the REST API is in Event Espresso 4 Core, you can start developing great integration’s for your customers. All you need to get started is review the documentation and start building something GREAT!
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 if you do build something great with the EE4 REST API, consider listing it on our 3rd party addons page.
If you have an REST API feature request, or bug to report, please let us know on our github repo.
Building a WordPress Plugin? Use the EE4 Database Models Instead
If you are building a WordPress plugin that will use Event Espresso 4 data server-side (in the PHP code), generally you do not need to use the API, and can instead use Event Espresso 4’s database models, config, and other modules directly. Check out developer.eventespresso.com for tutorials on how to use many of these systems.
We hope you enjoy using the Event Espresso 4 modern REST API, let us know what you think.
I can’t wait to be able to integrate EE with Freshbooks and Highrise. That’d save me SO MUCH TIME!