Skip to main content
A venue is a location associated with a tour day — the room, hall, or site for an event. Venue IDs are integers. All endpoints require the standard authentication headers.

List venues

Returns the venues for a tour. Scope: venues.read Example
Path parameters Response data — array of venues:

Get one venue

Returns a single venue in full — including its custom fields, contact details, age restriction and visibility flags. List venues returns a leaner projection, so use this when you need the whole record. Scope: venues.read Path parameters Response data — the list-venue fields, plus:
venueCustomFields, venueEmails, venuePhoneNumbers and venueUrls are read-only here — manage them through Custom Fields and Contacts.

Create a venue

Scope: venues.write Body
A valid venueCategoryId (see Field Reference) is required in practice — creating a venue without one, or with an unknown value, fails.
The image field does not host your image. When you pass image, the API stores a generated S3 path derived from the venue title (e.g. …/venue/<title>_<timestamp>.jpeg) instead of your URL, and it does not upload any image bytes — so the path points to an object that doesn’t exist and the image renders blank. To attach an image (or any file) to a venue, upload it with POST /v1/attachments and pass the returned link in attachments instead. The dedicated image field itself remains app-only — omit it. (Known gap for the image field — flagged to the Daysync team.)
Response data: { "id": 512 }.

Update a venue

Scope: venues.write Path parameters Body — all create fields except tour_id and day_id (which are set at creation time only). All fields are optional on update; send only the fields you want to change.
The venueId is taken from the URL path — do not send it in the request body.
Response data: { "id": 512 }.

Visibility

Venues use the same visibility model as schedule items, with one naming difference: the per-user list is visibility_list (snake_case) on venues, not visibilityList.
Restricting a venue’s audience adds every tour admin unless you send explicitVisibility: true.When you name a restricted audience via visibility_list and/or invitesVisibilityList, Daysync assumes an older client that treats admin access as implicit and merges the tour’s current admin list into the audience you sent. Send explicitVisibility: true in the same request to mean the list literally:
This applies to create and update alike, including an update that only narrows an existing venue’s audience. Do not send it with isAdminsOnly: true — that flag is implemented by the same merge, so opting out would store an empty audience. Full explanation in Schedule → Visibility.

Delete a venue

Scope: venues.write Path parameters Response data: none.
See also: Tours, Accommodation.