One-to-one messaging
createDirect is idempotent for a pair. Direct chats do not accept a retention policy write. Senders can use persistent, after-duration, or after-read when the type policy allows it. See conversations and messages.
Recipes
GozWire supplies membership, messages, threads, reactions, media, and moderation. Discovery feeds, votes, ranking, account authentication, and product UI remain host application concerns. These recipes match the public engine API.
createDirect is idempotent for a pair. Direct chats do not accept a retention policy write. Senders can use persistent, after-duration, or after-read when the type policy allows it. See conversations and messages.
createGroup assigns owner to the creator. Additional users are members unless you add them as admin or moderator. Only owners and admins can add participants. Direct conversations cannot add participants. See groups.
createChannel uses the same membership model. Access is membership-based. Workspace directories and channel browsers belong in your application. Default retention is persistent only until staff expand policy. See community.
createForum plus messages.history with rootsOnly lists posts. messages.thread pages a reply tree. Upvotes, ranking, and subreddit discovery are not engine features. See channels, forums, and threads.
Clients upload directly to S3-compatible storage after media.createUpload. messages.send stores object keys, not bytes. Audio and video skip the moderation pipeline. SVG is not allowed. See storage.
Send still commits in PostgreSQL first. Text and images can be held until the sidecar returns scores. textPolicy and imagePolicy in engine config decide allow, review, or block. See moderation.
Optional Web Push, FCM HTTP v1, and APNs HTTP/2. Default push.enabled is false. A provider 2xx is acceptance, not device display. Missed events recover with messages.sync. See push.
Expiration is a field on every message: persistent, after_duration, or after_read. Channel and forum default to persistent only. Integrators own who may change modes. See retention.