Direct URL Method

This tool is a customizable link that can be used to create an event on-the-fly, or send your users to their calendar service where they can add your event, or even attach your event to an email you send to your users. Read more

Essentially we’re doing our best to go overboard on the number of ways you can get your events in front of your users. Specifically on their calendars. Because that’s what we do.

Use it in newsletters, as event attachments in newsletters, in web apps, on websites or in mobile/tablet development.

Please notice: The API examples below and on this page requires a client ID to work.
Please sign in or create an account to use your accounts API client ID.

  • Create an "Add to Calendar" link in e.g. newsletters. The link redirects your user to an event page.
    Add event to your calendar
  • Create an "Add to Calendar" link in e.g. newsletters. The link redirects to the specified service.
    Add event to your calendar:
    Apple  •  Google  •  Outlook  •  Outlook.com  •  Yahoo
  • Attach an event file in e.g. newsletters/reminders using your existing Mail API. See example below for details.

Create an event on-the-fly (endpoint: event page)

Creates an event on-the-fly. The users end up on an event page.

https://www.addevent.com/dir/?client=CLIENT&start=start&end=end&title=title&timezone=timezone
									
https://www.addevent.com/dir/?client=USER-CLIENT-ID&start=12%2F05%2F2017+09%3A00+AM&end=12%2F05%2F201711%3A00+AM&title=Title+of+the+event&description=Description+of+the+event&location=1600+Amphitheatre+Pkwy%2C+Mountain+View%2C+CA+94043&timezone=America%2FLos_Angeles 
										

Create an event on-the-fly (endpoint: calendar service)

Creates an event on-the-fly. Downloads an event file or redirects the user to the calendar client.

https://www.addevent.com/dir/?client=CLIENT&start=start&end=end&title=title&timezone=timezone&service=service
									
https://www.addevent.com/dir/?client=USER-CLIENT-ID&start=12%2F05%2F2017+09%3A00+AM&end=12%2F05%2F201711%3A00+AM&title=Title+of+the+event&description=Description+of+the+event&location=1600+Amphitheatre+Pkwy%2C+Mountain+View%2C+CA+94043&timezone=America%2FLos_Angeles&service=google
										

Attach an event in newsletters

If you send emails using a Mail API or your own code you can attach an event in an email.
In the example you'll find an example on how to attach an event using the Mandrill Mail API.

https://www.addevent.com/dir/?client=CLIENT&start=start&end=end&title=title&description=description&timezone=timezone&service=stream
									
// Get event file for attachment
										$attachment = file_get_contents('https://www.addevent.com/dir/?
										client=USER-CLIENT-ID&start=12%2F05%2F2017+09%3A00+AM&
										end=12%2F05%2F201711%3A00+AM&title=Title+of+the+event&
										description=Description+of+the+event&timezone=America%2FLos_Angeles&
										service=stream');

										// Base 64 encode the event file
										$attachment_encoded = base64_encode($attachment);

										// Set message object
										$compose = array(
										   'html' => 'Email content',
										   'subject' => 'Email subject',
										   'from_email' => 'from@example.com',
										   'to' => array(
										       array(
										           'email' => 'to@example.com'
										       )
										   ),
										   'attachments' => array(
										       array(
										           'content' => $attachment_encoded,
										           'type' => 'text/calendar',
										           'name' => 'event.ics',
										       )
										   )
										);

										// Send
										$response = $mandrill->messages->send($compose);
										

Parameters

Parameter
Description
client
Required

Account client ID. The account client ID is available in the Account section and is incorporated in all code examples on this page.
start
Required

Start date of the event. Accepts most date/time formats, e.g. 11/21/2017 03:00 PM (12-hour format) or 21-11-2017 15:00 (24-hour format).

Use numeric date values, e.g. "03/24/2017" and not textual, e.g. "March 24th, 2017". Dates seperated with "/" are interpreted as "mm/dd/yyyy". Dates seperated with "-" are interpreted as "dd/mm/yyyy".

Date examples:
11/21/2017 03:00 PM or 21-11-2017 15:00 or 2017/11/21 03:00 PM or 2017-11-21 15:00
end
End date of the event. Accepts most date/time formats, e.g. 11/21/2017 05:00 PM (12-hour format) or 21-11-2017 17:00 (24-hour format).

Use numeric date values, e.g. "03/24/2017" and not textual, e.g. "March 24th, 2017". Dates seperated with "/" are interpreted as "mm/dd/yyyy". Dates seperated with "-" are interpreted as "dd/mm/yyyy".

Date examples:
11/21/2017 05:00 PM or 21-11-2017 17:00 or 2017/11/21 05:00 PM or 2017-11-21 17:00

If end is not defined, the end date is automatically set to start date plus one hour.
duration
Duration of the event in minutes, e.g. "30". Ignores the end date if set and adds the minutes to the start date.
title
Required

Title of the event. Single line string.
description
Description of the event. Use <br> or \n to seperate lines.

The field accepts plain text or simplified HTML. Simplified HTML is supported by calendar clients like Outlook and Apple Calendar. If the calendar client does accept HTML, the content of the field is automatically converted into readable text.

Keep the description short and to the point. Link to a website for further details if the event description is long. Maximum 500 characters recommended.

Reason: Most modern browsers allow an unlimited number of characters to be transfered by the browser. Internet Explorer / Edge only allows ~2000 characters. A 500 characters maximum is recommended to make sure your event is cross browser compatible.
location
Event location, eg. "Eiffel Tower, Paris".
organizer
Event organizer, e.g. "John Johnson".

If you fill out organizer you must also include the organizer_email field.

If you include an organizer and an organizer_email, the event is considered to be a "meeting" by calendar clients like Outlook. If you don't include the fields, the event is considered to be an "appointment".
organizer_email
Event organizer e-mail, e.g. "your@email.com".

If you fill out organizer_email you must also include the organizer field.

If you include an organizer and an organizer_email, the event is considered to be a "meeting" by calendar clients like Outlook. If you don't include the fields, the event is considered to be an "appointment".
all_day_event
All day event. Accepts true or false.
date_format
The format of the date in start and end. Accepts the values MM/DD/YYYY or DD/MM/YYYY only. Lets the engine know how to handle the date, e.g. 12-hour format (MM/DD/YYYY) or 24-hour format (DD/MM/YYYY).

The date_format used to be mandatory but is optional today.
timezone
The events time zone, e.g. Europe/Paris or America/Los_Angeles.

If timezone is applied (recommended), date/time will be converted to Zulu time / GMT / UTC. If timezone is not applied, date/time will be parsed as is (fluid date/time).

Explanation: The timezone parameter makes sure the date/time is correct no matter if you are in New York or Sydney. If your event has users from multiple time zones in the world, it's highly recommended to use the parameter.
reference
Value to keep track of events. Used for statistics. E.g. "iPhone" or "Newsletter Oct 2016" or URL reference.
service
Accepts: apple or google or outlook or outlookcom or yahoo or stream.

If a service is specified, e.g. "apple" the event will be downloaded immediately to the users computer/device. If service isn't defined, the user will be redirected to an event page. Example: https://www.addevent.com/event/?db52444.

Use the value stream if you want to attach event files in your existing Mail API.
template
Id of a "Custom Landing Page" template, e.g. "lm2015e14o720j11". Uses the "AddEvent default" template if template is not defined.
alarm
Event reminder. Trigger an event reminder e.g. "15" minutes before the event starts.
Accepted input: Number

Example: Reminder "15" minutes before event starts = 15 or
one day before event starts : 60 minutes x 24 hours = 1440.

Event reminders are currently supported by:
- Apple Calendar
- Google Calendar
- Outlook
recurring
Make the event repeat for a number of times.

Recurring rules are advanced and needs to be tested before you publish it. Generate your recurring rules with tools like TextMagic RRule Generator. Then make sure they work in calendar clients like Outlook and Apple Calendar.

Recurring rules are currently supported by:
- Apple Calendar
- Outlook

We recommend that you use the subscription calendar if you want your series of events to be supported by all calendar clients.
calname
Custom filenaming of the .ics file used for e.g. Outlook and Apple Calendar. If not defined the name defaults to "event.ics". Use the phrase use-title to use the title from the title parameter or enter a custom filename.
uid
Define your own UID for the event. If not defined, a system UID is generated. Please notice; Yahoo Calendar reports error 404 if an UID is defined. We therefore don't include UID's in Yahoo Calendar.

Warning. Use this option only if it serves a purpose in your coding.
status
Define the status parameter in the .ics file used for e.g. Outlook and Apple Calendar. The options can be CONFIRMED, TENTATIVE, CANCELLED, NEEDS-ACTION, COMPLETED, IN-PROCESS according to the iCalendar guidelines.
If the value is not defined (recommended), the system defaults to "CONFIRMED".

Warning. Use this option only if it serves a purpose in your coding.
method
If defined, a method parameter is added in the .ics file used by e.g. Outlook and Apple Calendar. If not defined, no method parameter is added in the .ics file. http://www.kanzaki.com/docs/ical/method.html + https://tools.ietf.org/html/rfc2446

Examples of usage:
PUBLISH, REQUEST, CANCEL, "REFRESH".

Warning. Use this option only if it serves a purpose in your coding.