The Trumba component connects your integration flows with the Trumba Calendar platform. It enables polling for new, updated, and canceled events; tracking attendee registrations; querying calendar metadata and feeds; creating, updating, and canceling calendar events using standard iCalendar (.ics) protocols; and executing arbitrary raw HTTP requests against the Trumba API.
To authenticate with the Trumba API, configure the following credentials:
mycalendar in https://www.trumba.com/calendars/mycalendar.json). Used during credentials verification to confirm access to the calendar.https://www.trumba.com.Please Note: The Trumba account used must either own the calendar or be granted “Can add, delete and change content” permissions for that calendar.
Regularly polls the Trumba calendar JSON feed (/calendars/{calendarWebname}.json) specifically for events that have been marked as canceled (canceled: true). Tracks previously emitted cancellations in the execution snapshot to avoid duplicate emissions.
Emit individually (default): Emits each canceled event as a separate message downstream.Emit pages: Emits canceled events in pages of a configurable size, each formatted as { results: [...] }.Emit all (array): Emits all canceled events in a single message { results: [...] }.100) – Number of events per page when using Emit pages mode.20260901 or 2026-09-01T00:00:00Z). Defaults to the current date.4) – Number of weeks ahead to query events for.category and customFields with Category/Categories label, supporting comma-separated multi-choice values).{
"eventID": 1042,
"title": "Strategy Workshop (Canceled)",
"startDateTime": "2026-10-15T14:00:00",
"endDateTime": "2026-10-15T16:00:00",
"description": "Quarterly planning session - canceled due to scheduling conflicts.",
"location": "Conference Room B",
"webLink": "https://www.trumba.com/event/1042",
"category": "Workshops",
"canceled": true,
"openSignUp": false,
"registration": {},
"customFields": [
{
"fieldID": 101,
"label": "Presenter",
"value": "Jane Doe"
}
]
}
{
"results": [
{
"eventID": 1042,
"title": "Strategy Workshop (Canceled)",
"startDateTime": "2026-10-15T14:00:00",
"endDateTime": "2026-10-15T16:00:00",
"category": "Workshops",
"canceled": true
}
]
}
Regularly polls the Trumba calendar JSON feed (/calendars/{calendarWebname}.json) for new and updated events. Tracks event IDs and last-modified timestamps in the execution snapshot to avoid duplicate emissions.
Emit individually (default): Emits each new or updated event as a separate message downstream.Emit pages: Emits events in chunks/pages of a configurable size, each formatted as { results: [...] }.Emit all (array): Emits all new or updated events as a single array inside { results: [...] }.100) – Number of events per page when using Emit pages mode.20260901 or 2026-09-01T00:00:00Z). Defaults to current date.4) – Number of weeks ahead to query events for.category and customFields with Category/Categories label, supporting comma-separated multi-choice values).{
"eventID": 1001,
"title": "Quarterly Planning Workshop",
"startDateTime": "2026-10-01T09:00:00",
"endDateTime": "2026-10-01T17:00:00",
"description": "Cross-team quarterly planning session.",
"location": "Conference Room A",
"webLink": "https://www.trumba.com/event/1001",
"category": "Meetings",
"canceled": false,
"openSignUp": true,
"registration": {},
"customFields": [
{
"fieldID": 101,
"label": "Location Room",
"value": "Room 402"
}
]
}
{
"results": [
{
"eventID": 1001,
"title": "Quarterly Planning Workshop",
"startDateTime": "2026-10-01T09:00:00",
"endDateTime": "2026-10-01T17:00:00",
"category": "Meetings",
"canceled": false
}
]
}
Periodically polls Trumba’s Registration Service (/regservice/{calendarWebname}.csv) for new and updated attendee registrations. Utilizes Trumba’s changedate parameter and execution snapshots to incrementally deliver sign-ups without duplicates.
Emit individually (default): Emits each registration as an individual message downstream.Emit pages: Emits registrations in pages of a configurable size { results: [...] }.Emit all (array): Emits all registrations in a single message { results: [...] }.100) – Number of registrations per page when using Emit pages.20260901 or 2026-09-01T00:00:00Z).{
"eventID": 6001,
"eventDescription": "Tech Conference 2026",
"eventDateTime": "11/01/2026 10:00 AM",
"attendeeName": "Carol Danvers",
"emailAddress": "carol@example.com",
"response": "Registered",
"numberOfAttendees": 1,
"organization": "Avengers Corp"
}
{
"results": [
{
"eventID": 6001,
"eventDescription": "Tech Conference 2026",
"eventDateTime": "11/01/2026 10:00 AM",
"attendeeName": "Carol Danvers",
"emailAddress": "carol@example.com",
"response": "Registered",
"numberOfAttendees": 1
}
]
}
Create a new event or update an existing event on a Trumba calendar by submitting standard JSON fields. The action formats the event into an RFC 5545 iCalendar (.ics) payload and submits it via HTTP PUT with delta=true to Trumba’s calendar service (https://www.trumba.com/service/{calendarWebname}.ics?delta=true). Using delta=true ensures existing calendar events are preserved rather than overwritten.
There are no configuration fields for this action.
string) – The title / summary of the event.string) – Start timestamp (e.g. 2026-11-15T10:00:00Z or 2026-11-15).string) – End timestamp. Defaults to start time + 1 hour if omitted (+ 1 day for all-day events).boolean) – Set to true for all-day events.string) – Detailed description or notes.string) – Room, address, or venue name.string) – Category or tag for the event.string) – Web link associated with the event.string) – Unique event identifier. If provided, updates the existing event matching this UID; if omitted, generates a new UUID.Input Message:
{
"title": "Quarterly Strategy Session",
"startDateTime": "2026-11-15T10:00:00Z",
"endDateTime": "2026-11-15T12:00:00Z",
"location": "Boardroom B",
"description": "Executive strategy alignment.",
"category": "Meetings"
}
Output Message:
{
"uid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"title": "Quarterly Strategy Session",
"startDateTime": "2026-11-15T10:00:00.000Z",
"endDateTime": "2026-11-15T12:00:00.000Z",
"statusCode": 200,
"response": "<Response><ResponseMessage>Success</ResponseMessage></Response>"
}
Input Message:
{
"title": "Company Holiday - Founder's Day",
"startDateTime": "2026-12-01",
"allDay": true,
"description": "All offices closed in observance of Founder's Day.",
"category": "Holidays"
}
Input Message:
{
"uid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"title": "Quarterly Strategy Session (Rescheduled)",
"startDateTime": "2026-11-15T13:00:00Z",
"endDateTime": "2026-11-15T15:00:00Z",
"location": "Main Auditorium"
}
Permanently deletes / cancels an event from a Trumba calendar by submitting its unique identifier (uid). The action formats an RFC 5545 cancellation payload (METHOD:CANCEL, STATUS:CANCELLED) and submits it via HTTP PUT with delta=true to Trumba’s calendar service (https://www.trumba.com/service/{calendarWebname}.ics?delta=true). Using delta=true ensures only the targeted event is canceled while preserving all other events on the calendar.
string) – The unique identifier of the event to delete.{
"uid": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}
{
"uid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"statusCode": 200,
"response": "<Response><ResponseMessage>Success</ResponseMessage></Response>"
}
Query event attendee and registration records from the Trumba Registration Service (/regservice/{calendarWebname}.csv). Parses CSV records into normalized JSON objects, preserving all custom form questions and answers.
Emit individually (default): Emits each attendee registration as a separate message.Emit pages: Emits attendees in chunks/arrays based on the configured Page Size.Emit all (array): Emits all attendees matching the criteria in a single message { "results": [...] }.100) – Number of attendee records per page when using Emit pages.All input fields are optional:
string / number) – Unique ID of the event to retrieve attendee registrations for.string) – Limits records to events starting on or after this date (YYYYMMDD or ISO 8601 date).string) – Limits records to events ending on or before this date (YYYYMMDD or ISO 8601 date).string) – Limits records to a specific attendee’s email address.string) – Limits records to registrations added or updated after this timestamp (yyyymmddThhmm in UTC, or ISO date).{
"eventId": 5001,
"startDate": "20261001",
"endDate": "20261031"
}
{
"eventID": 5001,
"eventDescription": "Leadership Summit",
"eventDateTime": "10/15/2026 09:00 AM",
"attendeeName": "Alice Smith",
"emailAddress": "alice@example.com",
"response": "Registered",
"numberOfAttendees": 1,
"dietaryRequirement": "Vegetarian",
"tshirtSize": "Large"
}
{
"results": [
{
"eventID": 5001,
"eventDescription": "Leadership Summit",
"eventDateTime": "10/15/2026 09:00 AM",
"attendeeName": "Alice Smith",
"emailAddress": "alice@example.com",
"response": "Registered",
"numberOfAttendees": 1
}
]
}
Inspects a Trumba calendar’s event feed (/calendars/{calendarWebname}.json) to dynamically discover its metadata: active categories, custom fields (fieldID and label), timezones, event count, and a sample event.
number / string) – Number of weeks of calendar data to inspect (defaults to 4).{
"weeks": 8
}
{
"calendarWebname": "mycalendar",
"eventCount": 42,
"categories": [
"Community",
"Education",
"Workshops"
],
"customFields": [
{ "fieldID": 101, "label": "Audience" },
{ "fieldID": 102, "label": "Location Room" },
{ "fieldID": 103, "label": "Presenter" }
],
"timezones": [
"America/Los_Angeles"
],
"sampleEvent": {
"eventID": 1001,
"title": "Quarterly Planning Workshop",
"startDateTime": "2026-10-01T09:00:00"
}
}
Lookup a single Trumba event by its unique ID.
false) – When checked, if no event matches the specified ID, an empty message body {} is emitted instead of throwing an error."12345" or 12345).{
"eventId": "12345"
}
{
"eventID": 12345,
"title": "Board Meeting",
"startDateTime": "2026-09-10T10:00:00",
"endDateTime": "2026-09-10T12:00:00",
"location": "Boardroom A",
"description": "Annual strategic alignment."
}
{}
Query calendar events matching dynamic search filters, custom fields, and date ranges on-demand.
category and customFields with Category/Categories label, supporting comma-separated multi-choice values).Emit individually (default): Emits each event as an individual message.Emit pages: Emits events in chunks/arrays based on the configured Page Size.Emit all (array): Emits all events matching the criteria in a single message { "results": [...] }.100) – Number of events per page when using Emit pages.All input fields are optional:
string) – Date to start querying events from in YYYYMMDD format (e.g., 20260901) or ISO 8601 date. Defaults to current date.string / number) – Number of weeks forward from the start date (defaults to 4 if months/days are not specified).string / number) – Number of months forward from the start date.string / number) – Number of days forward from the start date.string / number) – Number of previous weeks prior to the start date to query.string / number) – Number of previous months prior to the start date to query.string) – Search text to filter events by keyword.string) – Filter events by category name.string) – Name of the Trumba filter view.string) – Custom field name to filter by.string) – Value for the custom filter field.{
"startDate": "20261001",
"weeks": 4,
"category": "Education",
"filterfield": "Presenter",
"filtervalue": "Dr. Smith"
}
{
"eventID": 2045,
"title": "Advanced Integration Architectures",
"startDateTime": "2026-10-12T13:00:00",
"endDateTime": "2026-10-12T15:00:00",
"location": "Lecture Hall 1",
"category": "Education",
"canceled": false,
"openSignUp": true,
"customFields": [
{
"fieldID": 201,
"label": "Presenter",
"value": "Dr. Smith"
},
{
"fieldID": 202,
"label": "Difficulty",
"value": "Advanced"
}
]
}
{
"results": [
{
"eventID": 2045,
"title": "Advanced Integration Architectures",
"startDateTime": "2026-10-12T13:00:00",
"endDateTime": "2026-10-12T15:00:00",
"category": "Education"
}
]
}
Manually construct and execute HTTP requests against any Trumba endpoint.
GET, POST, PATCH, PUT, or DELETE./calendars/yourcalendar.json or /calendars/yourcalendar.json?weeks=4&startdate=20260901).{"Content-Type": "text/calendar; charset=utf-8", "Accept": "application/xml, text/xml, */*"}). Defaults to application/json.POST, PATCH, or PUT requests (JSON object or raw string, such as an iCalendar .ics payload).Input Message:
{
"method": "GET",
"url": "/calendars/mycalendar.json?weeks=4"
}
Input Message:
{
"method": "PUT",
"url": "/service/mycalendar.ics?delta=true",
"headers": {
"Content-Type": "text/calendar; charset=utf-8",
"Accept": "application/xml, text/xml, */*"
},
"data": "BEGIN:VCALENDAR\r\nMETHOD:PUBLISH\r\nVERSION:2.0\r\nPRODID:-//elastic.io//Trumba Test//EN\r\nBEGIN:VEVENT\r\nUID:test-event-001\r\nDTSTAMP:20260921T120000Z\r\nDTSTART:20261101T090000Z\r\nDTEND:20261101T100000Z\r\nSUMMARY:Test Event\r\nDESCRIPTION:Created with Make Raw Request.\r\nEND:VEVENT\r\nEND:VCALENDAR"
}
number) – HTTP status code returned by the Trumba API (e.g., 200, 201).object) – HTTP response headers received from Trumba.object / array) – Parsed response body returned by Trumba.Output Message Structure:
{
"statusCode": 200,
"headers": {
"content-type": "application/json; charset=utf-8"
},
"responseBody": [
{
"eventID": 1001,
"title": "Quarterly Planning Workshop",
"start": "2026-10-01T09:00:00",
"end": "2026-10-01T17:00:00"
}
]
}
Click here to learn more about the elastic.io iPaaS