Available Methods
attachments.remove
Remove an attachment
DELETE /api/v1/attachments/{id}
Signature: lb.events.attachments.remove({ path: \{ id \} })
Parameters:
templates.list
List all registered event templates
GET /api/v1/event-templates
Signature: lb.events.templates.list()
No parameters.
Returns:
templates.get
Get the latest version of a single event template
GET /api/v1/event-templates/{id}
Signature: lb.events.templates.get({ path: \{ id \} })
Parameters:
Returns:
list
List events
GET /api/v1/events
Signature: lb.events.list({ query?: \{ page, size, search, sort_by, sort_dir, status, visibility, start_dt_after, start_dt_before, space_ids, template, template_in \} })
Parameters:
Returns:
create
Create an event
POST /api/v1/events
Signature: lb.events.create({ body: \{ ... \} })
Parameters:
Returns:
calendar
List events overlapping a date range (calendar view)
GET /api/v1/events/calendar
Signature: lb.events.calendar({ query?: \{ start_date, end_date, sort_by, sort_order \} })
Parameters:
Returns:
managerPermissions
List all assignable event manager permissions
GET /api/v1/events/manager-permissions
Signature: lb.events.managerPermissions()
No parameters.
Returns:
acceptManagerInvite
Accept an event manager invite via token
POST /api/v1/events/managers/accept
Signature: lb.events.acceptManagerInvite({ body: \{ ... \} })
Parameters:
Returns:
listPendingManagerInvites
List pending event manager invites for the current user
GET /api/v1/events/managers/pending
Signature: lb.events.listPendingManagerInvites()
No parameters.
Returns:
createWithSeries
Create an event and optionally a recurring series in one atomic call
POST /api/v1/events/with-series
Signature: lb.events.createWithSeries({ body: \{ ... \} })
Parameters:
Returns:
activity.list
List activity for an event
GET /api/v1/events/{event_id}/activity
Signature: lb.events.activity.list({ path: \{ event_id \}, query?: \{ kind, limit \} })
Parameters:
Returns:
activity.append
Append an activity row
POST /api/v1/events/{event_id}/activity
Signature: lb.events.activity.append({ path: \{ event_id \}, body: \{ ... \} })
Parameters:
Returns:
attachments.list
List attachments on an event
GET /api/v1/events/{event_id}/attachments
Signature: lb.events.attachments.list({ path: \{ event_id \}, query?: \{ kind \} })
Parameters:
Returns:
attachments.add
Attach a file / reference to an event
POST /api/v1/events/{event_id}/attachments
Signature: lb.events.attachments.add({ path: \{ event_id \}, body: \{ ... \} })
Parameters:
Returns:
delete
Delete an event
DELETE /api/v1/events/{id}
Signature: lb.events.delete({ path: \{ id \} })
Parameters:
get
Get an event
GET /api/v1/events/{id}
Signature: lb.events.get({ path: \{ id \} })
Parameters:
Returns:
patch
Partial-update an event (merge-patch)
PATCH /api/v1/events/{id}
Signature: lb.events.patch({ path: \{ id \}, query?: \{ scope \}, body: \{ ... \} })
Parameters:
Returns:
update
Update an event
PUT /api/v1/events/{id}
Signature: lb.events.update({ path: \{ id \}, body: \{ ... \} })
Parameters:
Returns:
archive
Archive an event
POST /api/v1/events/{id}/archive
Signature: lb.events.archive({ path: \{ id \} })
Parameters:
listAttendees
List event attendees
GET /api/v1/events/{id}/attendees
Signature: lb.events.listAttendees({ path: \{ id \}, query?: \{ page, size \} })
Parameters:
Returns:
addAttendee
Add an attendee to an event
POST /api/v1/events/{id}/attendees
Signature: lb.events.addAttendee({ path: \{ id \}, body: \{ ... \} })
Parameters:
Returns:
bulkRemoveAttendees
Bulk remove attendees from an event
DELETE /api/v1/events/{id}/attendees/bulk
Signature: lb.events.bulkRemoveAttendees({ path: \{ id \}, body: \{ ... \} })
Parameters:
bulkAddAttendees
Bulk add attendees to an event
POST /api/v1/events/{id}/attendees/bulk
Signature: lb.events.bulkAddAttendees({ path: \{ id \}, body: \{ ... \} })
Parameters:
bulkUpdateAttendeeStatus
Bulk update attendee statuses
PATCH /api/v1/events/{id}/attendees/bulk/status
Signature: lb.events.bulkUpdateAttendeeStatus({ path: \{ id \}, body: \{ ... \} })
Parameters:
removeAttendee
Remove an attendee from an event
DELETE /api/v1/events/{id}/attendees/{contact_id}
Signature: lb.events.removeAttendee({ path: \{ id, contact_id \} })
Parameters:
updateAttendeeStatus
Update attendee status
PATCH /api/v1/events/{id}/attendees/{contact_id}
Signature: lb.events.updateAttendeeStatus({ path: \{ id, contact_id \}, body: \{ ... \} })
Parameters:
Returns:
checkInAttendee
Check in an attendee
POST /api/v1/events/{id}/attendees/{contact_id}/check-in
Signature: lb.events.checkInAttendee({ path: \{ id, contact_id \}, body: \{ ... \} })
Parameters:
listAutomations
List automations attached to an event
GET /api/v1/events/{id}/automations
Signature: lb.events.listAutomations({ path: \{ id \}, query?: \{ page, size \} })
Parameters:
Returns:
createAutomation
Create an automation attached to an event
POST /api/v1/events/{id}/automations
Signature: lb.events.createAutomation({ path: \{ id \}, body: \{ ... \} })
Parameters:
Returns:
automationTemplates
List event automation templates
GET /api/v1/events/{id}/automations/templates
Signature: lb.events.automationTemplates({ path: \{ id \} })
Parameters:
Returns:
Response:
['array', 'null']
deleteAutomation
Delete an event automation
DELETE /api/v1/events/{id}/automations/{rule_id}
Signature: lb.events.deleteAutomation({ path: \{ id, rule_id \} })
Parameters:
getAutomation
Get an event automation
GET /api/v1/events/{id}/automations/{rule_id}
Signature: lb.events.getAutomation({ path: \{ id, rule_id \} })
Parameters:
Returns:
updateAutomation
Update an event automation
PUT /api/v1/events/{id}/automations/{rule_id}
Signature: lb.events.updateAutomation({ path: \{ id, rule_id \}, body: \{ ... \} })
Parameters:
Returns:
executeAutomation
Run an event automation now
POST /api/v1/events/{id}/automations/{rule_id}/execute
Signature: lb.events.executeAutomation({ path: \{ id, rule_id \} })
Parameters:
listAutomationExecutions
List execution history for an event automation
GET /api/v1/events/{id}/automations/{rule_id}/executions
Signature: lb.events.listAutomationExecutions({ path: \{ id, rule_id \}, query?: \{ page, size \} })
Parameters:
Returns:
uploadCover
Upload event cover image (multipart/form-data, field: file)
PUT /api/v1/events/{id}/cover
Signature: lb.events.uploadCover({ path: \{ id \}, body: \{ ... \} })
Parameters:
Returns:
discard
Discard draft, keep published version
POST /api/v1/events/{id}/discard
Signature: lb.events.discard({ path: \{ id \} })
Parameters:
listDocuments
List documents linked to an event
GET /api/v1/events/{id}/documents
Signature: lb.events.listDocuments({ path: \{ id \} })
Parameters:
Returns:
Response:
['array', 'null']
removeDocument
Unlink a document from an event
DELETE /api/v1/events/{id}/documents/{document_id}
Signature: lb.events.removeDocument({ path: \{ id, document_id \} })
Parameters:
addDocument
Link a document to an event
POST /api/v1/events/{id}/documents/{document_id}
Signature: lb.events.addDocument({ path: \{ id, document_id \}, body: \{ ... \} })
Parameters:
Returns:
Response: Created
getDraft
Get draft version of an event
GET /api/v1/events/{id}/draft
Signature: lb.events.getDraft({ path: \{ id \} })
Parameters:
Returns:
startEdit
Start editing (creates draft clone)
POST /api/v1/events/{id}/edit
Signature: lb.events.startEdit({ path: \{ id \} })
Parameters:
Returns:
listLinks
List cross-reference links for this event
GET /api/v1/events/{id}/links
Signature: lb.events.listLinks({ path: \{ id \} })
Parameters:
Returns:
Response:
['array', 'null']
addLink
Link another event as a cross-reference
POST /api/v1/events/{id}/links
Signature: lb.events.addLink({ path: \{ id \}, body: \{ ... \} })
Parameters:
Returns:
removeLink
Remove a cross-reference link
DELETE /api/v1/events/{id}/links/{target_id}
Signature: lb.events.removeLink({ path: \{ id, target_id \} })
Parameters:
listManagers
List managers for an event
GET /api/v1/events/{id}/managers
Signature: lb.events.listManagers({ path: \{ id \}, query?: \{ page, size \} })
Parameters:
Returns:
addManager
Add a manager to an event
POST /api/v1/events/{id}/managers
Signature: lb.events.addManager({ path: \{ id \}, body: \{ ... \} })
Parameters:
Returns:
inviteManager
Invite a manager to an event by email
POST /api/v1/events/{id}/managers/invite
Signature: lb.events.inviteManager({ path: \{ id \}, body: \{ ... \} })
Parameters:
Returns:
removeManager
Remove a manager from an event
DELETE /api/v1/events/{id}/managers/{user_id}
Signature: lb.events.removeManager({ path: \{ id, user_id \} })
Parameters:
getManager
Get a single event manager
GET /api/v1/events/{id}/managers/{user_id}
Signature: lb.events.getManager({ path: \{ id, user_id \} })
Parameters:
Returns:
updateManager
Update an event manager’s permissions
PUT /api/v1/events/{id}/managers/{user_id}
Signature: lb.events.updateManager({ path: \{ id, user_id \}, body: \{ ... \} })
Parameters:
Returns:
listMilestones
List milestones for an event
GET /api/v1/events/{id}/milestones
Signature: lb.events.listMilestones({ path: \{ id \}, query?: \{ page, size \} })
Parameters:
Returns:
addMilestone
Add a milestone event to a base event
POST /api/v1/events/{id}/milestones
Signature: lb.events.addMilestone({ path: \{ id \}, body: \{ ... \} })
Parameters:
Returns:
removeMilestone
Remove a milestone from an event
DELETE /api/v1/events/{id}/milestones/{milestone_event_id}
Signature: lb.events.removeMilestone({ path: \{ id, milestone_event_id \} })
Parameters:
patchMilestoneLifecycle
Update milestone lifecycle status or reset to automatic mode
PATCH /api/v1/events/{id}/milestones/{milestone_event_id}
Signature: lb.events.patchMilestoneLifecycle({ path: \{ id, milestone_event_id \}, body: \{ ... \} })
Parameters:
Returns:
updateMilestone
Update milestone sequence
PUT /api/v1/events/{id}/milestones/{milestone_event_id}
Signature: lb.events.updateMilestone({ path: \{ id, milestone_event_id \}, body: \{ ... \} })
Parameters:
Returns:
publish
Publish an event
POST /api/v1/events/{id}/publish
Signature: lb.events.publish({ path: \{ id \}, body: \{ ... \} })
Parameters:
deleteSeries
Remove from series (scope: this | future | all)
DELETE /api/v1/events/{id}/series
Signature: lb.events.deleteSeries({ path: \{ id \}, query?: \{ scope \} })
Parameters:
getSeries
Get series rule and all occurrences for a recurring event
GET /api/v1/events/{id}/series
Signature: lb.events.getSeries({ path: \{ id \}, query?: \{ page, limit \} })
Parameters:
Returns:
patchSeries
Update series fields. Cascades to occurrences without overrides.
PATCH /api/v1/events/{id}/series
Signature: lb.events.patchSeries({ path: \{ id \}, body: \{ ... \} })
Parameters:
Returns:
createSeries
Convert an event into the anchor of a new recurring series
POST /api/v1/events/{id}/series
Signature: lb.events.createSeries({ path: \{ id \}, body: \{ ... \} })
Parameters:
Returns:
Response:
['array', 'null']
inviteSeriesManager
Invite series manager
POST /api/v1/events/{id}/series/manager
Signature: lb.events.inviteSeriesManager({ path: \{ id \}, body: \{ ... \} })
Parameters:
Returns:
listOccurrences
List occurrences of the series this event belongs to (paginated)
GET /api/v1/events/{id}/series/occurrences
Signature: lb.events.listOccurrences({ path: \{ id \}, query?: \{ page, limit \} })
Parameters:
Returns:
publishSeries
Publish series
POST /api/v1/events/{id}/series/publish
Signature: lb.events.publishSeries({ path: \{ id \}, body: \{ ... \} })
Parameters:
listSpaces
List spaces this event belongs to
GET /api/v1/events/{id}/spaces
Signature: lb.events.listSpaces({ path: \{ id \}, query?: \{ page, size \} })
Parameters:
Returns:
addSpace
Add event to a space
POST /api/v1/events/{id}/spaces
Signature: lb.events.addSpace({ path: \{ id \}, body: \{ ... \} })
Parameters:
Returns:
removeSpace
Remove event from a space
DELETE /api/v1/events/{id}/spaces/{space_id}
Signature: lb.events.removeSpace({ path: \{ id, space_id \} })
Parameters:
transition
Transition an event to a new state per its template’s state machine
POST /api/v1/events/{id}/transition
Signature: lb.events.transition({ path: \{ id \}, body: \{ ... \} })
Parameters:
Returns: