Skip Main Navigation
Page Content

Event Series

POST /series/

Creates a new repeating event series. The POST data must include information for at least one event date in the series.

Parameters

Name Type Required Description
series_parent.name.html string Yes The name of the event
series_parent.description.html string No The description on the event page
series_parent.organizer_id string No The ID of the organizer of this event
series_parent.start.utc datetime Yes The start time of the event
series_parent.start.timezone string Yes Start time timezone (Olson format)
series_parent.end.utc datetime Yes The end time of the event
series_parent.end.timezone string Yes End time timezone (Olson format)
series_parent.hide_start_date boolean No Whether the start date should be hidden
series_parent.hide_end_date boolean No Whether the end date should be hidden
series_parent.currency string Yes Event currency (3 letter code)
series_parent.venue_id string No ID of the venue
series_parent.online_event boolean No Is the event online-only (no venue)?
series_parent.listed boolean No If the event is publicly listed and searchable. Defaults to true.
series_parent.logo.id string No (Deprecated) The logo for the event
series_parent.logo_id string No The logo for the event
series_parent.category_id string No The category (vertical) of the event
series_parent.subcategory_id string No The subcategory of the event (US only)
series_parent.format_id string No The format (general type) of the event
series_parent.shareable boolean No If users can share the event on social media
series_parent.invite_only boolean No Only invited users can see the event page
series_parent.password string No Password needed to see the event in unlisted mode
series_parent.capacity integer No Set specific capacity (if omitted, sums ticket capacities)
series_parent.show_remaining boolean No If the remaining number of tickets is publicly visible on the event page
create_children objectlist Yes

A list of dates for which child events should be created. In the format:

[
    { "start": { "utc": "2015-06-15T12:00:00Z", "timezone": "America/Los_Angeles" },
        "end": { "utc": "2015-06-15T13:00:00Z", "timezone": "America/Los_Angeles" } },
    { ... },
    ...
]

Errors

  • DIFFERENT_TIMEZONES: The start and end dates for one or more event dates do not have matching time zones. All time zones must be the same across all start and end dates.
  • INVITE_CONFLICT: You have set both listed and invite_only; these two options are mutually exclusive, and you are only allowed to set one.
  • NO_DEFAULT_ORGANIZER: The event does not have an organizer ID, and no default organizer could be found for the user.
  • NO_VENUE: You must set a venue in order to post this event.
  • PASSWORD_CONFLICT: You have set both listed and password; these two options are mutually exclusive, and you are only allowed to set one.
  • SHARE_INVITE_CONFLICT: You have set both shareable and invite_only; these two options are mutually exclusive, and you are only allowed to set one.
  • UNSUPPORTED_TIMEZONE: The time zone for one or more event dates does not exist.
  • VENUE_AND_ONLINE: You have set both online_event and venue_id; an event can either have a venue or be online, but not both at the same time

GET /series/:id/

Returns a repeating event series parent object for the specified repeating event series.

Parameters

Name Type Required Description
tracking_code string No Append the given tracking_code to the event URLs returned.

Errors

No endpoint-specific errors

POST /series/:id/

Updates a repeating event series parent object, and optionally also creates more event dates or updates or deletes existing event dates in the series. In order for a series date to be deleted or updated, there must be no pending or completed orders for that date.

Parameters

Name Type Required Description
series_parent.name.html string No The name of the event
series_parent.description.html string No The description on the event page
series_parent.organizer_id string No The ID of the organizer of this event
series_parent.start.utc datetime No The start time of the event
series_parent.start.timezone string No Start time timezone (Olson format)
series_parent.end.utc datetime No The end time of the event
series_parent.end.timezone string No End time timezone (Olson format)
series_parent.hide_start_date boolean No Whether the start date should be hidden
series_parent.hide_end_date boolean No Whether the end date should be hidden
series_parent.currency string No Event currency (3 letter code)
series_parent.venue_id string No ID of the venue
series_parent.online_event boolean No Is the event online-only (no venue)?
series_parent.listed boolean No If the event is publicly listed and searchable. Defaults to true.
series_parent.logo.id string No (Deprecated) The logo for the event
series_parent.logo_id string No The logo for the event
series_parent.category_id string No The category (vertical) of the event
series_parent.subcategory_id string No The subcategory of the event (US only)
series_parent.format_id string No The format (general type) of the event
series_parent.shareable boolean No If users can share the event on social media
series_parent.invite_only boolean No Only invited users can see the event page
series_parent.password string No Password needed to see the event in unlisted mode
series_parent.capacity integer No Set specific capacity (if omitted, sums ticket capacities)
series_parent.show_remaining boolean No If the remaining number of tickets is publicly visible on the event page
create_children objectlist No

A list of dates for which child events should be created. In the format:

[
    { "start": { "utc": "2015-06-15T12:00:00Z", "timezone": "America/Los_Angeles" },
        "end": { "utc": "2015-06-15T13:00:00Z", "timezone": "America/Los_Angeles" } },
    { ... },
    ...
]
update_children dict No

A map of event IDs to modified date objects for updating child events. In the format:

{
    "1234": { "start": { "utc": "2015-06-15T12:00:00Z", "timezone": "America/Los_Angeles" },
                "end": { "utc": "2015-06-15T13:00:00Z", "timezone": "America/Los_Angeles" } },
    "5678": { ... },
    ...
}
delete_children list No A list of IDs for child events that should be deleted. In the format: 1234,5678,9012

Errors

  • DIFFERENT_TIMEZONES: The start and end dates for one or more event dates do not have matching time zones. All time zones must be the same across all start and end dates.
  • INVITE_CONFLICT: You have set both listed and invite_only; these two options are mutually exclusive, and you are only allowed to set one.
  • NO_DEFAULT_ORGANIZER: The event does not have an organizer ID, and no default organizer could be found for the user.
  • NO_PAYMENT_OPTIONS: You must set payment options in order to post this event.
  • NO_VENUE: You must sest a venue in order to post this event.
  • PASSWORD_CONFLICT: You have set both listed and password; these two options are mutually exclusive, and you are only allowed to set one.
  • PAYMENT_OPTIONS_DEPRECATED_SPLIT_FEES: Split fee functionality is being deprecated.
  • PAYMENT_OPTIONS_NO_COUNTRY: You must select a country when setting payment options.
  • PAYMENT_OPTIONS_NO_PAYMENT_TYPE: You must select a payment type when setting payment options
  • PAYMENT_OPTIONS_PAYPAL_NO_EMAIL: You must provide your paypal email when selecting paypal as a payment option.
  • SHARE_INVITE_CONFLICT: You have set both shareable and invite_only; these two options are mutually exclusive, and you are only allowedto set one.
  • UNSUPPORTED_TIMEZONE: The time zone for one or more event dates does not exist.
  • VENUE_AND_ONLINE: You have set both online_event and venue_id; an event can either have a venue or be online, but not both at the same time.

POST /series/:id/publish/

Publishes a repeating event series and all of its occurrences that are not already canceled or deleted. Once a date is cancelled it can still be uncancelled and can be viewed by the public. A deleted date cannot be undeleted and cannot by viewed by the public. In order for publish to be permitted, the event must have all necessary information, including a name and description, an organizer, at least one ticket, and valid payment options. This API endpoint will return argument errors for event fields that fail to validate the publish requirements. Returns a boolean indicating success or failure of the publish.

Parameters

Takes no parameters

Errors

  • ALREADY_PUBLISHED_OR_DELETED: This series has already been published or deleted.
  • NO_PAYMENT_OPTIONS: This series has paid tickets but no payment options configured.
  • PAYMENT_OPTIONS_DEPRECATED_SPLIT_FEES: This series has split fees configured. Split fees are no longer supported, and you cannot publish events with split fees enabled.
  • PAYMENT_OPTIONS_NO_COUNTRY: This series has paid tickets but no payment country configured.
  • PAYMENT_OPTIONS_NO_PAYMENT_TYPE: This series has paid tickets but no payment type configured.
  • PAYMENT_OPTIONS_PAYPAL_NO_EMAIL: This series has paid tickets and is configured to use PayPal, but no PayPal email address has been specified.

Argument Errors

  • event.name - MISSING: Your event must have a name to be published.
  • event.start - MISSING: Your event must have a start date to be published.
  • event.end - MISSING: Your event must have an end date to be published.
  • event.start.timezone - MISSING: Your event start and end dates must have matching time zones to be published.
  • event.organizer - MISSING: Your event must have an organizer to be published.
  • event.currency - MISSING: Your event must have a currency to be published.
  • event.currency - INVALID: Your event must have a valid currency to be published.
  • event.tickets - MISSING: Your event must have at least one ticket to be published.
  • event.tickets.N.name - MISSING: All tickets must have names in order for your event to be published. The N will be the ticket class ID with the error.
  • event.tickets.N.quantity_total - MISSING: All non-donation tickets must have an available quantity value in order for your event to be published. The N will be the ticket class ID with the error.
  • event.tickets.N.cost - MISSING: All non-donation tickets must have a cost (which can be 0.00 for free tickets) in order for your event to be published. The N will be the ticket class ID with the error.

POST /series/:id/unpublish/

Unpublishes a repeating event series and all of its occurrences that are not already completed, canceled, or deleted. In order for a free series to be unpublished, it must not have any pending or completed orders for any dates, even past dates. In order for a paid series to be unpublished, it must not have any pending or completed orders for any dates, except that completed orders for past dates that have been completed and paid out do not prevent an unpublish. Returns a boolean indicating success or failure of the unpublish.

Parameters

Takes no parameters

Errors

  • CANNOT_UNPUBLISH: You have attempted to unpublish a repeating event series that has pending or completed sales of paid tickets for one or more of its dates (and those dates are not in the past, completed, and paid out), or has pending or completed sales of free tickets (any date, ever).
  • NOT_PUBLISHED: This series is not currently published and cannot be unpublished.

POST /series/:id/cancel/

Cancels a repeating event series and all of its occurrences that are not already canceled or deleted. In order for cancel to be permitted, there must be no pending or completed orders for any dates in the series. Returns a boolean indicating success or failure of the cancel.

Parameters

Takes no parameters

Errors

  • ALREADY_CANCELED: This series has already been canceled.
  • CANNOT_CANCEL: You have attempted to cancel a repeating event series that has pending or completed sales of paid tickets for one or more of its dates. The series cannot be canceled until all of these sales are refunded for all dates.

DELETE /series/:id/

Deletes a repeating event series and all of its occurrences if the delete is permitted. In order for a delete to be permitted, there must be no pending or completed orders for any dates in the series. Returns a boolean indicating success or failure of the delete.

Parameters

Takes no parameters

Errors

  • ALREADY_DELETED
  • CANNOT_DELETE

GET /series/:id/events/

Returns all of the events that belong to this repeating event series.

Parameters

Name Type Required Description
time_filter string No Limits results to either past or current & future events. (Valid choices are: all, past, or current_future)
tracking_code string No Append the given tracking_code to the event URLs returned.
order_by string No How to order the results (Valid choices are: start_asc, start_desc, created_asc, or created_desc)

Errors

No endpoint-specific errors

POST /series/:id/events/

Creates more event dates or updates or deletes existing event dates in a repeating event series. In order for a series date to be deleted or updated, there must be no pending or completed orders for that date.

Parameters

Name Type Required Description
create_children objectlist No

A list of dates for which child events should be created. In the format:

[
    { "start": { "utc": "2015-06-15T12:00:00Z", "timezone": "America/Los_Angeles" },
        "end": { "utc": "2015-06-15T13:00:00Z", "timezone": "America/Los_Angeles" } },
    { ... },
    ...
]
update_children dict No

A map of event IDs to modified date objects for updating child events. In the format:

{
    "1234": { "start": { "utc": "2015-06-15T12:00:00Z", "timezone": "America/Los_Angeles" },
                "end": { "utc": "2015-06-15T13:00:00Z", "timezone": "America/Los_Angeles" } },
    "5678": { ... },
    ...
}
delete_children list No A list of IDs for child events that should be deleted. In the format: 1234,5678,9012

Errors

  • SERIES_NO_DATE_CHANGES_MADE