swarmtix_events_update
Changes an event's details - name, text, place, visibility, fees and timezone - and returns them as they stand afterwards
swarmtix_events_update
Changes the details of an event and returns them as they stand afterwards. Only the fields you give are changed. Fields you leave out keep their values. It never publishes the event.
When you would reach for it
- Filling in a new draft - name, summary, description, venue and address after
swarmtix_events_create. - Setting the timezone before the dates are set.
- Fixing a typo in the description or the venue.
- Making an event private so it is kept off public listings.
Scope
events:write
It is idempotent: sending the same arguments twice leaves the same event, so a client may safely retry.
There is no way to clear a field. A blank value is refused, not saved as empty. To change a field, send a new value.
Parameters
Only event is required, and at least one other field must be given.
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
event | string | Yes | - | The event's id (a GUID) or its URL slug. |
name | string | No | keeps current | The event's name. Up to 400 characters. |
slug | string | No | keeps current | The URL slug: lowercase letters, digits and hyphens, 3 to 100 characters, unique across Swarmtix. |
category | string | No | keeps current | The event category by name, for example "Conference". An unknown name is refused with the list of valid ones. |
summary | string | No | keeps current | A one-line summary. Up to 150 characters. |
description | string | No | keeps current | The full description. Basic HTML is kept, anything unsafe is stripped. Up to 20,000 characters. |
venue | string | No | keeps current | The venue name. Up to 500 characters. |
address | string | No | keeps current | The street address. Up to 500 characters. |
city, state, country | string | No | keeps current | Up to 250 characters each. |
zipCode | string | No | keeps current | The postal code. Up to 7 characters. |
latitude, longitude | number | No | keeps current | The venue position. Give both or neither. Latitude from -90 to 90, longitude from -180 to 180. |
showMap | boolean | No | keeps current | Whether the event page shows a map. |
hideName | boolean | No | keeps current | Whether the event name is hidden in the event page header. |
website | string | No | keeps current | The event's own website, an http or https URL. Up to 250 characters. |
seoDescription | string | No | keeps current | The search engine description. Up to 150 characters. |
visibility | string | No | keeps current | "public" lists the event on Swarmtix once it is published. "private" keeps it off public listings. |
absorbFees | boolean | No | keeps current | Whether the organizer pays the booking fee instead of the buyer. Only applies to events with reserved seating. |
timezone | string | No | keeps current | The event's IANA timezone, for example "Europe/Berlin". |
Changing the slug changes the public URL
Links already shared stop working. The new slug must not be used by another event, and it cannot look like an id.
Set the timezone before the dates
Setting timezone keeps the local time of every date and moves its UTC time. So set the timezone first, then call swarmtix_event_dates_set. An event with no timezone is read as UTC.
Example call
{
"name": "swarmtix_events_update",
"arguments": {
"event": "spring-summit-2027",
"summary": "Two days of talks on practical machine learning.",
"venue": "Messe Berlin",
"city": "Berlin",
"country": "Germany",
"timezone": "Europe/Berlin"
}
}What comes back
The event as stored, after the change: id, slug, name, category, summary, description, venue, address, city, state, country, zipCode, latitude, longitude, showMap, hideName, website, seoDescription, visibility, absorbFees, timezone, timezoneName, published and status.
When you changed the timezone, the answer also has dates: each date with its local start and end and its startUtc and endUtc, so you can see the UTC times moved.
It is read back from the stored row, not echoed from your arguments.
What happens when you call it
- The event is resolved through the edit gate.
- Every given field is checked. Text is cleaned: tags are removed from plain fields and unsafe HTML from the description.
- The slug, category and timezone are checked against what exists.
- Only the columns you gave are written. The event's published state, its status, its organisation and everything else on the row are left alone.
- If the timezone changed, the UTC time of every date is recalculated from its local time.
- The stored row is read back and returned.
This tool writes column by column on purpose. The dashboard save rewrites the whole event from a form, which is not safe for a caller that only knows a few fields.
Troubleshooting
"fields is not valid: no field to change was given. Expected at least one field this tool can change."
Only event was sent. Add at least one field.
"slug is not valid: ... is already used by another event. Expected an unused slug."
Pick another slug.
"category is not valid: ... is not an event category. Expected one of: ..."
The message lists the valid names. Use one of them.
"timezone is not valid: ... is not a known timezone."
Use an IANA name such as Europe/Berlin or America/New_York.
"latitude is not valid: latitude and longitude must be given together."
Send both or neither.
"Swarmtix applied part of this request and then stopped."
The details were saved but the UTC time of one or more dates could not be recalculated. The message says so. Send the same timezone again to retry.
"Event not found, or this connection does not have access to it."
The event does not exist, it belongs to another organisation, or this organizer may read it but not edit it.
Use cases
- Filling in a draft from a brief, in one call
- Moving an event to another timezone before setting its dates
- Making an event private before it is published
- Fixing the venue after a change of location