Eventric exposes certain functionality via a REST API. The API is open to the public and does not require registration. If you do something interesting using the API, we would be interested in hearing about it and possibly even featuring your app. Please contact Eventric support with any questions or information about API integrations.
For testing and debugging purposes you may make requests with your own credentials using our API Request Utility.
NOTE: When sending requests to the API or API Request Utility, be sure to include version=7
in the params if you are receiving a "426 Upgrade Required" error message.
The Eventric API is accessed using REST HTTP requests and returns data in JSON format.
GET requests are used for reading data. Ids are generally included in the endpoint and additional parameters are included in the querystring. DELETE requests require an Id as part of the endpoint. PUT (update) and POST (insert) requests will include an Id (if relevant) in the endpoint and the object being inserted/updated must be included in the HTTP request body as JSON. If you are working with a client application that does not support HTTP PUT or DELETE requests, you can alternately pass the method in the querystring, for example: _method=PUT
All requests must be signed with an oAuth 1.0 signature. A public/secret keypair must be be obtained
either using the getkeys
endpoint or your application can request the API Key/Secret directly from
the user. The user can visit their API Key/Secret Page to obtain this information. Every request will be
made on behalf of the owner of the signing key and the server will validate permissions.
All responses from the API are returned as JSON string and have three consistent properties: success, message and data.
A successful response will return an HTTP status of "200 OK" and contain a response body similar to the example below. If records were requested then the "data" property will contain an array of objects or a single object, depending on the request being made. For write operations the data property may either contain no information, a primary key of a newly inserted record, or a partial version of the object that was affected.
{ "success": true, "message": "Success message suitable for display to user", "data": {} }
A failure response will return an HTTP status of "400 Bad Request" and contain a response body similar to the example below. Your application should be prepared to check the status property and handle this response. This type of response does not necessarily indicate a problem, but rather that invalid data was entered by the user or an unknown action was requested.
{ "success": false, "message": "Error message suitable for display to user", "data": "Technical debugging information such as a stack trace or error message" }
If the server responds with an HTTP status of 500, or the response body contains non-JSON content, that potentially indicates a fatal server error or bug and should be reported to Eventric Support. For stability purposes your app should be prepared to gracefully fail when receiving such a response.
Returns a collection of public/private keypairs that are used for oAuth signing for all other API calls. The
querystring must contain the parameters username
and password
. The response wil contain
a collection of one or more API keys that can be used for oAuth signing:
{ success: true, message: "1 key(s) found", data: { account: { id: "xxxxxxxxxxxxxxxxxxxxxxxxxx", fullName: "", company: "", email: "" }, keys: [ { id: "yyyyyyyyyyyyyyyyyyyyyyy", secret: "zzzzzzzzzzzzzzzzzzzzzzzzzzzz", keyType: "MASTERTOUR", createdDate: "2013-01-01 00:00:00", expirationDate: "2023-01-01 00:00:00" } ] } }
Returns all tours to which the authenticated user has access
Returns the tour with the given Id, including tour dates.
5
) Specifies how many calendar dates in the
past to include when querying Day objects for the tour. By default this endpoint will return only Day records
that are no older than 5
days in the past. Increasing this number will include
Day records that are further in the past. To bypass this filter and include all Days, set numPastDays to
0
.Returns the crew/personnel assigned to the tour with the given Id.
Return the Day with the given Id
Return a quick summary of the itinerary for the given calendar date (replace YYYY-MM-DD with the desired date)
Update the Day with the given Id (currently only updates notes fields). The body of the request must contain a JSON encoded object with all of the following properties
{ "generalNotes": "", "travelNotes": "", "hotelNotes": "" }
Insert a new schedule item into the itinerary. Note that currently only standard schedule items can be inserted, which excludes travel, publicity, etc. The body of the request must contain a JSON encoded object with all of the following properties:
{ "parentDayId": "", "title": "", "details": "", "isConfirmed": true, "isComplete": false, "startDatetime": "2015-01-01 08:30:00", "endDatetime": "2015-01-01 09:00:00", "timePriority": "" }
Update an existing schedule item in the itinerary. Note that travelDetail is only relevant if a travel item is being edited. The body of the request must contain a JSON encoded object with all of the following properties:
{ "title": "", "details": "", "travelDetail": "", "isConfirmed": true, "isComplete": false, "startDatetime": "2015-01-01 08:30:00", "endDatetime": "2015-01-01 09:00:00", "timePriority": "" }
Deletes the schedule item with the given Id
Returns a collection of Event objects for the Day with the given Id.
Returns a collection of Contact objects that are attached to the Company with the given Id.
Returns a collection of Hotel objects that are attached to the Day with the given Id.
Returns all people/contacts attached to the hotel with the given Hotel Id.
Returns the Room List for the hotel with the given Hotel Id.
Returns a collecion of guest list requests for the Event with the given Id.
Insert a new guest list request. The body of the request must contain a JSON encoded object with all of the following properties:
{ "eventId": "", "guestFirstName": "", "guestLastName": "", "contactEmail": "", "quantity": "", "instructions": "", "paymentStatusCode": "", "passTypeRequested": "", "requestedBy": "" }
Updates an existing guest list request. The body of the request must contain a JSON encoded object with all of the following properties:
{ "guestFirstName": "", "guestLastName": "", "contactEmail": "", "quantity": "", "instructions": "", "paymentStatusCode": "", "passTypeRequested": "", "requestedBy": "" }
Return the set list for the Event with the given Id.
Returns the received push notifications for the authenticated user. One parameter includeSent
is optional and,
if true, will also return notifications that were sent by the authenticated user.