Publish an Event
The preconditions publishing validates, what blocks it, and which edits afterwards are refused
Publishing validates the whole Event, records a published revision in its history, and moves publication from draft to published. There is no path back to draft, and publishing requires events.publish.
Requires
events.publish
Plus the preconditions below
Creates
A published revision
One audit entry in the Event's history
Irreversible
No unpublish
Draft is never reachable again
Freezes
The category
Discovery and buyers have already used it
Work through the checklist
Precondition What it means in practice Authorized member You hold events.publishhereName, category, summary Name and summary are non-empty; the description is optional Timezone and a valid schedule An IANA timezone, and an end after the start Venue or access details A venue or city for in-person, a URL for online, both for hybrid At least one active Pass A named Pass with permitted attendance modes, a valid session scope, order limits within 1–50, and any sale window ending by the Event end KYC and settlement (paid only) Completed KYC and a verified settlement account Sessions belong to the Event Every selected Session is one of this Event's own Selected Sessions resolved Every SELECTEDPass names at least one SessionAttendance modes within the Event Each Pass's subset is permitted by the participation mode Venue state for a paid Indian Event A paid in-person Event on Indian supply needs a venue state A free Event skips the KYC row. Everything else here is evaluated at publish, so an incomplete draft stays editable.
Clear what blocks publishing
- A paid Event without a payment path. KYC and settlement are prerequisites for selling, not drafting. If a paid Event is rejected, check those two in Settings → KYC & Settlement first, then the currency, which is usable only when the platform enables it and the active merchant account supports it.
- A Pass with no reachable Session. A Pass covering all sessions is always valid. A Pass that names sessions becomes invalid the moment its last selected session is removed, and publishing refuses until the reference is resolved.
- A mismatch between Event and Pass. An
in_personPass on an online Event is rejected as a validation problem, not silently corrected.
Moderation is not publishing
Ulsav-controlled moderation — active, under review, suspended, banned — is separate from your publication state. A suspended Event cannot sell and cannot be mutated, but its organizer lifecycle history is not rewritten, and lifting the suspension does not republish anything.
Publish, and know what it did
- Records a revision. Publishing writes one
publishedentry to the Event's history; buyers read the live Event, not a frozen copy. - Starts the sales dimension. Whether the Event can sell derives from publication, schedule state, the manual pause flag, and moderation — not from a value you set. A Pass then adds its own window and capacity to the question.
- Applies visibility. Public by default, listed and indexed in discovery.
- Freezes the category. It cannot change after publication, because discovery and buyers have already used it.
- Puts the terms in force. Prices and windows apply from this moment, and every Order keeps the version it was charged under.
- Records a revision. Publishing writes one
Plan for what changes afterwards
Class Examples Effect Editable, no record Summary, description, FAQs, contacts, sponsors, styling, Topics, visibility, venue Saved immediately Refused Name, category, timezone, participation mode, team mode and size, Event capacity The save fails Through a workflow Start and end dates, a Session's time or room, cancellation A revision is recorded Frozen commercial fields A Pass's price, capacity, quantity limits, sale window, session access The Pass edit is refused Get the commercial shape right before publishing, because you cannot correct it on the live Event. A new Pass can still be added afterwards; an existing Pass's commercial fields cannot be changed, and only Reschedule moves a sale window.
Two more rules finish the picture. A published Event notifies nobody when its details or dates change; cancellation is the only lifecycle action that messages buyers. And a Pass's participation settings — attendance modes, entry kind, pricing basis, capacity basis, roster lock — can only be changed while that Pass has no Registration.
Withdraw only through a lifecycle action
Everything here lives under the Event's Settings → Lifecycle. A published Event has no delete and no return to draft; a draft has both.
- Pause sales — reversible, and the cheapest way to stop new Orders while you fix something.
- Reschedule — moves the Event and its Sessions to new dates, with a reason, and keeps every Registration valid. Each Pass's window must still end by the new Event end.
- Cancel — irreversible, cancels every Registration, closes in-flight payments, refunds paid Orders in full including the Ulsav fee, and invalidates admission.
Reference: cancellation states each obligation.
Related
- Create an Event — the draft that precedes this
- Publishing rules — preconditions and revision behaviour, normatively
- Event status — every state dimension in one place