Skip to main content

Event details

Mutations that edit the event itself — name, description, registration deadline — plus the unpublish and delete lifecycle transitions. Dates, locations, ticket specifications, and inspectors live on their own pages.

All mutations on this page require a JWT — get one from the homepage first. The API key needs the events:write scope.

Lifecycle gating: most edits are blocked once the event is isActive: true (published) or isCompleted: true. See the Events concept for the full matrix.

Edit name

Renames the event. Only allowed while the event is draft (not published, not completed).

mutation editName($input: EditNameInput!) {
editName(input: $input) {
success
}
}

Errors:

  • Event not found — wrong ID, or the event belongs to another organization.
  • Cannot edit name for an event, which is completed.
  • Cannot edit name for an event, which has already been published.

Add or edit description

Sets the event's free-text description. Allowed while draft or published — only blocked once isCompleted: true.

mutation addOrEditDescription($input: AddOrEditDescriptionInput!) {
addOrEditDescription(input: $input) {
success
}
}

Add or edit registration end

Sets the deadline after which ticket purchases close. Only allowed while draft.

mutation addOrEditRegistrationEnd($input: AddOrEditRegistrationEndInput!) {
addOrEditRegistrationEnd(input: $input) {
success
}
}

registrationEnd is an ISO 8601 datetime. Pick a moment after which no further ticket purchases will be accepted.

Unpublish event

Reverts a published event to draft. Refused if any tickets have been sold or reserved against the event or any of its ticket specifications. After unpublishing, the event's ticket specifications are also automatically deactivated (isActive: false).

mutation unpublishEvent($input: UnpublishEventInput!) {
unpublishEvent(input: $input) {
success
}
}

Errors:

  • Event with given id not found.
  • Event is already unpublishedisActive was already false.
  • Event is already completed and cannot be unpublished.
  • Tickets for this event have already been sold or reserved.

Delete event

Permanently removes a draft event. Only allowed when the event is draft (not published, not completed), has no sold or reserved tickets, and no refunds in progress.

mutation deleteEvent($input: DeleteEventInput!) {
deleteEvent(input: $input) {
eventId
}
}

The payload returns the deleted eventId for confirmation.

Errors:

  • Event not found.
  • Cannot delete completed event / Cannot delete published event.
  • Cannot delete event that has tickets with refund in progress.
  • Tickets for this event have already been sold or reserved.