Presdo API

Introduction

The Presdo API provides a very simple way for web developers to create integrations with Presdo and their favorite web services, applications and even mobile devices.

With the API, web developers can create Presdo events through a programmatic interface. The API allows you to specify all the details of an event, such as the time or possible times, guests, location and description. After an event is created, notifications can even be sent automatically to guests. Event participants can then use all of Presdo’s capabilities to negotiate the final details of the event.

Many integrations are possible with this relatively simple API. For example, the Presdo Doodad was created using the Presdo API.

The following are some examples of integrations that the Presdo API enables, but there are sure to be many more which we have not thought of:

Creating Events

With the API, it’s very simple to create a Presdo event. Let’s start with an example:

http://api.presdo.com/events/create?phrase=breakfast+with+amy@sparkle.com&description=Let's+catch+up!

The above URL creates a breakfast event with a guest having an email address of amy@sparkle.com. After the event is created, the user is taken to the event page that looks like the following:

event page example

Who’s the sender, you ask? Presdo creates an event assuming the current session user. In the browser context, this is the user who was last signed into Presdo. If a user has previously signed in and his session is still valid, the event will be created assuming that he is the event organizer. If a user has a persistent “remember me” cookie stored in his browser, he will also become the organizer of new events. (There is currently no way to authenticate a certain user using the API.)

If no such user has signed in, Presdo creates a temporary event, and the user must either sign in or sign up for Presdo to claim the event before sending the invite. If a temporary event is not claimed, they are cleaned up from the system, usually on a daily basis.

Once again, to create an event, invoke the following URI with either a GET or POST action:

http://api.presdo.com/events/create?<parameters>

The following parameters are accepted:

Please ensure as much as possible that the input parameters that your application generates will result in a properly validated event.

Recall also that all parameters values must be URL encoded. The encodeURIComponent() JavaScript function provides a convenient way to do this.

Note that in almost all cases, an event will be created when you invoke the above URI and the user is then redirected to the resulting event page.

Limits

Presdo observes certain limits on the creation of events. For example, every user is limited to 50 active events, and each event is limited to 100 people. An “active event” is defined as an event that has not already passed. Every event can include 99 guests, since the organizer is always part of the event.

If you have an integration which would benefit from increased limits, please contact us. We would be happy to discuss your ideas with you.

Badges

If you publish your integration with the Presdo API, all we ask (and require) is that you include one of our logos somewhere on your integration where it’s visible to users. Here are some logos you can use!

Presdo Logo Black Small Presdo Logo Black Small
Presdo Logo Black Large Presdo Logo White Large

Resources

Finally, we’re here to help! Contact us if you have questions or feedback regarding the API.

At some point, we may want to set up a Google Group to enable developers to discuss issues related to the API. Please contact us and let us know if this is something you would be interested in.

End Notes

Insightful developers will realize that there are many limitations to the current version of the API. Do not be discouraged! Even though the API is very simple, it already enables you to create events for many interesting and different types of applications. We have envisioned many possibilities, but the wisdom of crowds will envision even more.

Because the API enables events to be created programmatically, it also enables you to enact potentially very different user interfaces for event creation, not only ones that are strictly text-based like the one Presdo has.

At the same time, the API very much a work in progress, so we encourage you to write in and let us know how it should be improved so it can support the kinds of interactions you want.

Finally, we encourage you to be creative and think “out of the box” when using the Presdo API. What will you come up with?