Eventmaker Rest API
Eventmaker API documentation - version 1
The Eventmaker API is implemented as vanilla JSON and XML over HTTP using all four verbs (GET/POST/PUT/DELETE). Every resource, like Event, Guest, or Check-in, has their own URL and are manipulated in isolation. In other words, we’ve tried to make the API follow the REST principles.
You can explore the view part of the API (everything that’s fetched with GET) through a regular browser. Using Firefox for this is particularly nice as it has a good, simple XML renderer. You can also get a nice view of the JSON version of the API by installing JSON View.
Testing the API
With curl
You can test Eventmaker API using the command line tool curl
. If you need to update (PUT
) or create (POST
) a JSON resource, use the following template:
Where the {json_resource}
is the payload to send to the API to create/update a resource.
With a REST client
If you prefer to test the API with a more visual tool, you can use REST Client, an open-source debugger for RESTful web services, like Eventmaker API! A handy Firefox add-on is available, and the Chrome and Safari extensions are on the way.
API Endpoints
A Swagger documentation is available here: https://app.eventmaker.io/swagger
Authentication
When you’re using the API, it’s always through an existing user in Eventmaker. There’s no special API user. So when you use the API as “john@company.org”, you get to see and work with what John is allowed to. Authenticating is done with an authentication token, which you’ll found in your user profil (you must be logged in).
Then you just need to append the auth_token
as a query parameter of the URL. For instance, you can retrieve a JSON array of all the events you manage by issuing the following request:
Format
The Eventmaker API supports both XML and JSON. You can choose the format you prefer by simply appending .xml
or .json
at the end of the resource URL you query.
And for the XML version:
In the endpoints documentation, we’ll use .format
to refer to .xml
or .json
.
When you want to write some data to the API with POST
(creation) or PUT
(update), you’ll need to specify a content-type request header.
And for the XML version, you get the idead.
API Return Codes
The API uses the following HTTP status code in the response. Pay attention to them as they will tell you if an error occurred.
200 OK - For any
GET
method which succeds.201 Created - For any
POST
method which succeds.204 No Content - For any
PUT
orDELETE
method which succeds.400 Bad Request - Check your request body.
403 Forbidden - You might have forgotten the
auth_token
.404 Not Found - The resource does not exist.
406 Not Acceptable - You might have forgotten the
.format
or the requestContent-Type
.422 Unprocessable Entity - Check your request body, the JSON or XML might be malformed.
Error messages
If you don’t receive a 2xx
HTTP status code in the response, it means that there is an error. You can look at the response body to get more insight about why your API call was not successful.
JSON
If there is a general error, we’ll send you this:
Now if there is an error with the payload provided to create (POST
) or update (PUT
) a resource, we’ll detail the validation errors like this:
HTTP Request
XML
For the same exemple above, you will have the following responses:
Last updated