Skip to main content

Events

The Events API allows you to create, retrieve, update, and delete events. Events are the main entity in the iEvents system and can include occurrences, categories, publishing channels, and notifications.

Authentication

All requests to the Events API must be authenticated using the ONLIVE.SITE authentication scheme. Please refer to the Authentication Guide for detailed instructions.

Base URL

https://openapi.onlive.site/api/v1/events

Endpoints


Create Event

Creates a new event with the provided information.

HTTP Request

POST /api/v1/events

Request Body

FieldTypeRequiredDescription
namestringYesThe name of the event (max 255 characters)
typestringNoThe type of the event: PHYSICAL or VIRTUAL
shortDescriptionstringNoThe short description of the event in plain text
descriptionstringNoThe description of the event
imagestringNoThe image URL for the event
locationNamestringNoThe name of the location (max 255 characters)
locationAddressstringNoThe address of the location
locationLinkstringNoThe link to the location
externalLinkstringNoAn external link related to the event
templateIdstring (uuid)NoThe template identifier to use for this event
extraFieldsobjectNoAdditional fields for the event in JSON format
categoryIdsarray of strings (uuid)NoArray of category IDs to associate with this event
occurrencesarray of objectsNoArray of event occurrences to create with the event
publishingChannelsarray of objectsNoArray of publishing channels where the event will be published
notificationsarray of objectsNoArray of notifications to create for the event

Occurrence Object (CreateEventOccurrenceDto)

FieldTypeRequiredDescription
startDatestring (date-time)YesThe start date and time of the event occurrence
endDatestring (date-time)NoThe end date and time of the event occurrence
capacitynumber (min: 0)YesThe capacity of the event occurrence

Publishing Channel Object

FieldTypeRequiredDescription
namestringNoName of the publishing channel
channelTypestringNoType of channel: WIDGET, WEBSITE, or SOCIAL
externalIdstringNoExternal id provided by the channel
publishDatestring (date-time)NoPublish date for the channel

Notification Object

FieldTypeRequiredDescription
timingstringNoNotification timing: BEFORE or AFTER (default: BEFORE)
timeUnitstringNoTime unit: MINUTES, HOURS, or DAYS
timeValuenumberNoTime value for notification timing (integer)
channelstringNoNotification channel: EMAIL or SMS
notificationTypestringNoNotification type to use for notification

Example Request Body

{
"name": "Annual Tech Conference 2025",
"description": "Join us for the biggest tech conference of the year featuring keynote speakers, workshops, and networking opportunities.",
"image": "https://example.com/images/conference-2025.jpg",
"templateId": "456e7890-e89b-12d3-a456-426614174001",
"extraFields": {
"title": "Conference 2025",
"description": "Annual tech conference"
},
"categoryIds": [
"123e4567-e89b-12d3-a456-426614174004",
"456e7890-e89b-12d3-a456-426614174005"
],
"occurrences": [
{
"startDate": "2025-12-25T10:00:00.000Z",
"endDate": "2025-12-25T18:00:00.000Z",
"capacity": 100
}
],
"publishingChannels": [
{
"name": "Widget",
"channelType": "WIDGET",
"externalId": "ext-123",
"publishDate": "2025-12-25T10:00:00.000Z"
}
],
"notifications": [
{
"timing": "BEFORE",
"timeUnit": "MINUTES",
"timeValue": 30,
"channel": "EMAIL",
"notificationType": "EVENT_REMINDER"
}
]
}

Response

Returns the created Event object.

Example Response

{
"id": "123e4567-e89b-12d3-a456-426614174000",
"name": "Annual Tech Conference 2025",
"slug": "annual-tech-conference-2025",
"description": "Join us for the biggest tech conference of the year featuring keynote speakers, workshops, and networking opportunities.",
"image": "https://example.com/images/conference-2025.jpg",
"extraFields": {
"title": "Conference 2025",
"description": "Annual tech conference"
},
"occurrences": [
{
"id": "789e0123-e89b-12d3-a456-426614174006",
"startDate": "2025-12-25T10:00:00.000Z",
"endDate": "2025-12-25T18:00:00.000Z"
}
],
"categories": [
{
"id": "123e4567-e89b-12d3-a456-426614174004",
"name": "Technology"
}
],
"template": {
"id": "456e7890-e89b-12d3-a456-426614174001",
"name": "Conference Template"
},
"eventPublishingChannels": [
{
"id": "890e1234-e89b-12d3-a456-426614174007",
"name": "Widget",
"channelType": "SLACK",
"externalId": "ext-123",
"publishDate": "2025-12-25T10:00:00.000Z"
}
],
"notifications": [
{
"id": "901e2345-e89b-12d3-a456-426614174008",
"timing": "BEFORE",
"timeUnit": "MINUTES",
"timeValue": 30,
"channel": "EMAIL",
"notificationType": "EVENT_REMINDER"
}
],
"createdAt": "2025-10-12T10:30:00.000Z",
"updatedAt": "2025-10-12T10:30:00.000Z"
}

Get Event

Retrieves a specific event by its ID.

HTTP Request

GET /api/v1/events/{id}

Path Parameters

ParameterTypeRequiredDescription
idstring (uuid)YesThe unique identifier of the event

Query Parameters

ParameterTypeRequiredDescription
withTrashedbooleanNoInclude trashed events

Response

Returns the Event object.

Example Response

{
"id": "123e4567-e89b-12d3-a456-426614174000",
"name": "Annual Tech Conference 2025",
"slug": "annual-tech-conference-2025",
"description": "Join us for the biggest tech conference of the year featuring keynote speakers, workshops, and networking opportunities.",
"image": "https://example.com/images/conference-2025.jpg",
"extraFields": {
"title": "Conference 2025",
"description": "Annual tech conference"
},
"occurrences": [],
"categories": [],
"template": null,
"eventPublishingChannels": [],
"notifications": [],
"createdAt": "2025-10-12T10:30:00.000Z",
"updatedAt": "2025-10-12T10:30:00.000Z"
}

Update Event

Updates an existing event.

HTTP Request

PUT /api/v1/events/{id}

Path Parameters

ParameterTypeRequiredDescription
idstring (uuid)YesThe unique identifier of the event

Request Body

All fields are optional. Only the fields you want to update need to be included.

FieldTypeDescription
namestringThe name of the event (max 255 characters)
typestringThe type of the event: PHYSICAL or VIRTUAL
shortDescriptionstringThe short description of the event in plain text
descriptionstringThe description of the event
imagestringThe image URL for the event
locationNamestringThe name of the location (max 255 characters)
locationAddressstringThe address of the location
locationLinkstringThe link to the location
externalLinkstringAn external link related to the event
templateIdstring (uuid)The template identifier to use for this event
extraFieldsobjectAdditional fields for the event in JSON format
categoryIdsarray of strings (uuid)Array of category IDs to associate with this event
occurrencesarray of UpdateEventOccurrenceDtoArray of event occurrences to manage (create, update, or delete)
publishingChannelsarray of UpdateEventPublishingChannelDtoArray of publishing channels to manage (create, update, or delete)
notificationsarray of UpdateEventNotificationDtoArray of notifications to manage (create, update, or delete)

UpdateEventOccurrenceDto

FieldTypeRequiredDescription
idstring (uuid)NoThe unique identifier of the event occurrence to update (optional for new occurrences)
startDatestring (date-time)YesThe start date and time of the event occurrence
endDatestring (date-time)NoThe end date and time of the event occurrence
capacitynumber (min: 0)YesThe capacity of the event occurrence

UpdateEventPublishingChannelDto

FieldTypeRequiredDescription
idstring (uuid)NoThe unique identifier of the publishing channel to update (optional for new channels)
namestringNoName of the publishing channel
channelTypestringNoType of channel: WIDGET, WEBSITE, or SOCIAL
externalIdstringNoExternal id provided by the channel
publishDatestring (date-time)NoPublish date for the channel

UpdateEventNotificationDto

FieldTypeRequiredDescription
idstring (uuid)NoThe unique identifier of the notification to update (optional for new notifications)
timingstringNoNotification timing: BEFORE or AFTER (default: BEFORE)
timeUnitstringNoTime unit: MINUTES, HOURS, or DAYS
timeValuenumberNoTime value for notification timing (integer)
channelstringNoNotification channel: EMAIL or SMS
notificationTypestringNoNotification type to use for notification

Note on nested arrays:

  • Without id: Creates a new item
  • With id: Updates existing item
  • Existing items not included: Will be deleted

Example Request Body

{
"name": "Updated Annual Tech Conference 2025",
"description": "Join us for the updated biggest tech conference of the year featuring keynote speakers, workshops, and networking opportunities.",
"occurrences": [
{
"startDate": "2025-12-25T10:00:00.000Z",
"endDate": "2025-12-25T18:00:00.000Z",
"capacity": 150
},
{
"id": "567e8901-e89b-12d3-a456-426614174004",
"startDate": "2025-12-26T10:00:00.000Z",
"endDate": "2025-12-26T18:00:00.000Z",
"capacity": 200
}
]
}

Response

Returns the updated Event object.


Search Events

Retrieves a paginated list of events based on query parameters.

HTTP Request

GET /api/v1/events

Query Parameters

ParameterTypeRequiredDescription
limitnumberNoMaximum number of items to return (default: 10, min: 1)
pagenumberNoPage number (starts at 1, default: 1, min: 1)
sortstringNoField name and direction to sort results by (default: "createdAt DESC", example: "createdAt DESC")
searchstringNoSearch term to filter events by name or ID
startDatestring (ISO 8601)NoStart date for filtering events (ISO 8601 format). Returns events with at least one occurrence on or after this date. Example: "2025-10-01T00:00:00.000Z"
endDatestring (ISO 8601)NoEnd date for filtering events (ISO 8601 format). Returns events with at least one occurrence on or before this date. Example: "2025-12-31T23:59:59.999Z"
categoriesarray of strings (uuid)NoArray of category UUIDs to filter events. Returns events that belong to at least one of these categories. Example: ["550e8400-e29b-41d4-a716-446655440000", "550e8400-e29b-41d4-a716-446655440001"]
rangestringNoRange filter for ordering events: all, upcoming, past, today, thisWeek, thisMonth, custom
withTrashedbooleanNoInclude soft-deleted events in the results

Example Request

GET /api/v1/events?search=Conference&startDate=2025-10-01T00:00:00.000Z&endDate=2025-12-31T23:59:59.999Z&categories=550e8400-e29b-41d4-a716-446655440000&categories=550e8400-e29b-41d4-a716-446655440001&page=1&limit=20&sort=name ASC

Response

Returns a paginated response with an array of Event objects.

Example Response

{
"count": 1,
"total": 1,
"currentPage": 1,
"totalPages": 1,
"items": [],
"data": [
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"name": "Annual Tech Conference 2025",
"slug": "annual-tech-conference-2025",
"description": "Join us for the biggest tech conference of the year.",
"image": "https://example.com/images/conference-2025.jpg",
"extraFields": {},
"occurrences": [],
"categories": [],
"template": null,
"eventPublishingChannels": [],
"notifications": [],
"createdAt": "2025-10-12T10:30:00.000Z",
"updatedAt": "2025-10-12T10:30:00.000Z"
}
]
}

Delete Event

Deletes an event by its ID.

HTTP Request

DELETE /api/v1/events/{id}

Path Parameters

ParameterTypeRequiredDescription
idstring (uuid)YesThe unique identifier of the event

Query Parameters

ParameterTypeRequiredDescription
withTrashedbooleanNoInclude trashed events

Response

Returns the deleted Event object.


Event Object

The Event object represents an event with all its associated data.

Properties

PropertyTypeDescription
idstring (uuid)The unique identifier of the event
namestringThe name of the event
slugstringThe slug for the event (URL-friendly identifier)
typestringThe type of the event: PHYSICAL or VIRTUAL
shortDescriptionstring | nullThe short description of the event in plain text
descriptionstring | nullThe description of the event
imagestring | nullThe image URL for the event
locationNamestring | nullThe name of the location
locationAddressstring | nullThe address of the location
locationLinkstring | nullThe link to the location
externalLinkstring | nullAn external link related to the event
extraFieldsobjectAdditional data for the event in JSON format
occurrencesarrayThe event occurrences associated with this event
categoriesarrayThe categories associated with this event
templateobject | nullThe event template associated with this event
eventPublishingChannelsarrayThe publishing channels associated with this event
notificationsarrayThe notifications associated with this event
organizationobjectThe organization associated with the event
createdAtstring (ISO 8601)The date and time the event was created
updatedAtstring (ISO 8601)The date and time the event was last updated
deletedAtstring (ISO 8601)The deletion date of the event (if deleted)