What Is a Picnic?
Picnics are built around a broadcast model: a small group of admins writes posts, and the wider membership comments on them. Every Picnic has:- A name (up to 30 characters) and an optional description (up to 50 characters).
- An optional custom link — once set,
/@/<link>redirects anyone straight to your Picnic. - A member count visible to everyone.
- An optional comments layer — controlled by the
support_commentsflag at creation or edit time. - A single pinned post slot for important announcements.
POST /api/picnic/search ({name: string}).
Roles
Owner
Owner
The user who created the Picnic holds the Owner role. The owner is automatically an admin and cannot be banned or demoted.Owner capabilities:
- Everything an Admin can do
- Edit Picnic name, link, description, and
support_commentstoggle viaPOST /api/picnic/edit - Manage the admin list (add or remove admins, as long as the owner stays in the list)
- Upload the Picnic avatar (
POST /api/cdn/picnics/avatars/upload, max 5 MB) - Delete the entire Picnic via
POST /api/picnic/delete
Admin
Admin
Admins are appointed by the owner. There can be multiple admins. Admins drive the content.Admin capabilities:
- Post new messages to the Picnic (
POST /api/pm/create) - Edit any Picnic post (
POST /api/pm/edit) - Delete any Picnic post (
POST /api/pm/delete) - Pin or unpin a post (
POST /api/pm/pin_message) - Upload files to the Picnic CDN (
POST /api/cdn/picnics/upload, max 30 MB) - Ban and unban members (
POST /api/picnic/ban/POST /api/picnic/unban) - View the real author behind any anonymous comment or post
- Access the management panel (
POST /api/picnic/manage) — returns members, admins, owner, and bans
Member
Member
Anyone who has joined the Picnic and has not been banned is a member.Member capabilities:
- View all posts and comment threads
- Post comments on posts (when
support_commentsis enabled) - Mark posts as read (
POST /api/pm/mark_read) - Leave the Picnic (
POST /api/picnic/leave)
Creating a Picnic
You must have fewer than three active warnings on your account to create a Picnic.
Joining a Picnic
Any logged-in user can join an existing Picnic withPOST /api/picnic/join:
added_picnic Socket.IO event to your session.
Custom Links
Setting alink on your Picnic (up to 30 characters, must be unique) lets users navigate to /@/<link> and be redirected to the Picnic page automatically. You can add or change the link at any time from POST /api/picnic/edit (owner only).
Comment Threads
Whensupport_comments is true, members can post comments on individual messages. If you later set support_comments to false via POST /api/picnic/edit, the comments column is cleared and new comments are blocked.
Comments are anonymous from the members’ perspective. Admins can always identify the comment author.
Pinned Message
Admins can pin any single post so it surfaces prominently to members. Pinning and unpinning both usePOST /api/pm/pin_message:
pinned field in data) is broadcast via update_picnic to all members.
Moderation
Admins can ban members withPOST /api/picnic/ban by supplying the Picnic ID and the target member’s user ID. A banned user:
- Is removed from the member list immediately.
- Receives a system notification and a
banned_from_picnicSocket.IO event. - Can still read existing posts but cannot join, post, or comment.
- Cannot be re-admitted until an admin calls
POST /api/picnic/unban.
Real-Time Events
All Picnic activity arrives through the Socket.IO/ namespace. See Real-Time Events for connection details.