Event Reference
An event post points to an
eventId returned by event creation. The reference is immutable — a post can never be repointed at a different event.Feed Delivery
Publish to a user feed or a community feed. Private-community events are locked to their own community server-side.
Data Type
Event posts use a dedicated content type:
Publishing an event post with both
title and text blank is valid — the event card is the payload.
Parameters
The event-post SDK surface is available in TypeScript, iOS, and Android. Flutter and React Native do not expose these event-post APIs.
Create an Event Post
Creating an event post publishes the post and returns the created post once the server has accepted it.eventId is required; title and text are the author’s own copy and may both be empty.
Target Rules
The target is constrained by the event’s origin:The private-community lock is a server-side rule. If your app builds a custom target picker, honour the same rule client-side to avoid surprising
400 errors after the user has already drafted a post.Rejected Combinations
The backend rejects the following with400:
Editing an Event Post
Editing updatesdata.title and data.text only. The event itself is never changed by a post edit, and sibling posts referencing the same event are unaffected.
Resolve the Event from a Post
There are two ways to resolve the event — pick one: a snapshot (post.getEvent()) that returns the event cached with the post, or a live observer (EventRepository.getEvent) that keeps the card in sync with changes.
On iOS,
post.getEvent() is the recommended path — it’s shipped, and the SDK links the event to the post during serialization, so it returns the event directly, with no repository call and without inspecting child posts yourself (this is what AmityUIKit does).
On Android, resolve the event through the repository instead: read the eventId from the child post — the parent post’s data is TEXT and the EVENT data sits on the child — then observe it with EventRepository.getEvent(eventId).
post.getEvent() returns nil when the post is not an event post, or when the event entry is not in the payload (for example, the event was deleted).
On Android, getEvent(eventId) is a live stream that emits again whenever the event changes. A deleted or unavailable event surfaces as an error on the Flowable, not a null emission — handle it in the error callback. A cancelled event still resolves normally and must be treated as deleted by the consumer; the SDK does not normalise it.
Query Event Posts
Event posts are excluded from the default results ofv3 and v4 post queries so that older clients never receive a dataType they cannot render. Reads for event-aware clients must use GET /api/v5/posts.
To include event posts on any version, filter explicitly:
Related Topics
Create Event
Create the event that an event post will reference.
Events Overview
Event model, statuses, and RSVP APIs.
Posts Overview
Post targets, structure types, and platform APIs.