Skip to main content

Host Actions

This chapter is the host-side companion to Space Actions. The participant chapter explains what an Action looks like to someone who shows up to engage; this one walks you, the host, through creating and editing each Action type.

Creating an Action

Open your Space's actions page at /spaces/:space_id/actions and click the + Create affordance on the action carousel — the modal that opens is the entry point for every Action you'll author.

The modal asks one question first: what kind of Action? You pick from four tiles:

TileWhat it makes
PollA quick vote — single choice, multi-select, subjective text, or a linear scale.
QuizScored questions with a passing threshold.
DiscussionA host prompt with rich-text replies.
Follow FollowA campaign that asks participants to follow a curated set of accounts.

Pick a tile, see a live Preview of the empty card on the right, then click Create. Ratel takes you straight to the new Action's editor URL where you fill in the rest.

About Meets. The fifth Action type — Meet (a scheduled event with RSVP) — exists in the platform and has its own viewer at /spaces/:space_id/actions/meets/:meet_id, but a host editor entry point is (Coming soon). Today Meets are typically created via the MCP API (create_meet tool) and then surface in the participant carousel like any other Action.

How an editor URL works

Every Action editor lives under a stable URL pattern:

TypeURL
Discussion/spaces/:space_id/actions/discussions/:discussion_id/edit
Poll/spaces/:space_id/actions/polls/:poll_id (admin view)
Quiz/spaces/:space_id/actions/quizzes/:quiz_id (admin view)
Follow/spaces/:space_id/actions/follows/:follow_id (admin view)
Meet/spaces/:space_id/actions/meets/:meet_id (admin view)

Discussions have a dedicated /edit URL; Poll / Quiz / Follow / Meet share their URL between admin and participant views — Ratel detects whether you're an admin and flips the page into editor mode for those four. Participants visiting the URL see the participation card; you see the editor.

Edits autosave with a debounce; the Save button in the footer flushes pending saves and fires a Saved toast. There is no separate "Publish" button — saving and publishing are the same gesture.

Common Configuration

Every editor is split into a Content card on top and a Configuration card below. The Configuration card has the same set of sections across all four Action types:

SectionWhat you set
ScheduleStarts at and Ends at date-times. Outside this window the Action isn't active.
Participation & RewardsThe reward in Credits (CR) drawn from the Space's Incentive Pool. Credits convert to participant points on completion.
Dependency ActionsOther Actions in the Space a participant must complete first to unlock this one.
StatusToggle the Action between draft / live / closed.
Danger zoneDelete the Action. Submissions/responses go with it; rewards already paid are not refunded.

Discussions add a Moderation section (assigning who can hide replies); Polls add a Voting rules section (see below).

Who can edit rewards and credits

Configuration is Creator-only. The role check happens server-side on every save:

RoleWhat they can do
CreatorFull editor access — content, schedule, rewards, dependencies, status, deletion. The Creator is whoever created the Space (the post author who promoted their post into a Space).
Member (team Spaces)Can author and edit their own Actions inside a team Space, but cannot change reward amounts or pull from the Incentive Pool — those stay locked to the Creator.
ParticipantRead-only on Action pages. They never see the Configuration card.
ViewerRead-only on the Space splash + Overview. Cannot open Action editors.

The Credits (CR) field is the most common place where this matters: changing reward amounts moves money out of the Space's Incentive Pool, so only the Creator (or an explicitly-elevated team admin) can touch it. If you don't see the Configuration card or the Credits field is greyed out, you're not in a role that can edit rewards.

Anonymous participation

The Space has a General → Anonymous participation toggle (under Settings → Apps → General → Settings) that flips two things at once:

  • Identity binding. When off (default), every vote, comment, and submission is attached to the participant's handle. When on, the participant is shown an anonymous handle on the action carousel, and their submissions are recorded against that anonymous identity. The Creator can still see aggregate counts but not individual mappings.
  • Consent copy. The ConsentModal that participants see on first join switches to the anonymous variant — it makes clear that responses are not personally attributable, but that aggregate analysis (Panels, Analyzes) is still on.
When to enable

Turn anonymous participation on for sensitive surveys (workplace satisfaction, health screenings, internal critique) where attribution would chill honest answers. Leave it off for community polls where social signal — who voted for what — is part of the value.

Anonymous mode does not turn off the Panels demographic capture — anonymity is per-submission, but if the host has enabled the Panels app, participants are still asked for their age band, gender, region, etc. so the Creator can run aggregate slicing. Both can coexist because Panel attributes are stored separately from submission identity.

Publishing the Space

Editing Actions doesn't automatically publish the Space. A draft Space is only visible to its Creator and team admins until it's published — at which point the Index page, Overview, Dashboard, and action carousel become reachable by participants (and, if set to Public, by anonymous visitors).

The Publish button

Open the Space's Index page (/spaces/:space_id/). The arena topbar surfaces a Publish button with the paper-plane icon. Clicking it opens the Space visibility modal:

OptionWho can see the Space
Public (공개)Anyone with the URL — including logged-out visitors. Hot-Spaces ranking, search, and shared links all surface it. Required for Spaces you want listed in the public discovery feeds.
Private (비공개)Only invited members and team admins. Visitors without an invitation see a "not found" page; the URL works as an unlisted link only for people you've added through the General app's Invite Participant flow.

Pick a visibility, hit Publish, and the modal flips the Space from Draft to the corresponding state. The topbar's Publish button is replaced by a Start button (which transitions the Space from OpenOngoing once you're ready for active participation), and an In progress status chip appears next to the title.

Changing visibility after publish

The visibility flag is editable post-publish — re-open the modal from the topbar's Settings → Status entry and pick a different option. Switching from Private → Public retroactively makes the Space discoverable; switching Public → Private hides it from new visitors immediately but doesn't kick out anyone who already joined.

Publishing is the trigger for invitation emails

If you've used the General app's Invite Participant flow to add emails before publishing, those invitations are dispatched at publish time — not when you add the email. So make sure your Content / Apps / Actions are ready before flipping the switch; published-then-edited Spaces show a stale picture in the invitation emails participants receive.

Discussion editor

URL: /spaces/:space_id/actions/discussions/:discussion_id/edit

The Content card holds:

  • Title — what people see at the top of the discussion card.
  • Description / body — Markdown-supported rich text. This is the prompt participants reply to.
  • Attachments — drag-and-drop dropzone. Accepted extensions: .pdf, .docx, .pptx, .xlsx, .png, .jpg, .jpeg, .mp4, .mov. Each upload becomes a row under the editor (icon · name · size · remove button) and is auto-linked to the Files app's Boards tab so participants can find it from the file library too.

The Configuration card adds Moderation alongside the common sections. Use Moderation to set who can hide off-topic replies once the discussion is live.

Poll editor

URL: /spaces/:space_id/actions/polls/:poll_id

The Content card holds:

  • Title — the headline of the poll.
  • Questions — add as many as you want. Each card carries its own title + optional description, and one of four types picked from the + Add question menu:
    • Single — radio list, one option per response.
    • Multi — same option list as Single, but multiple options can be selected.
    • Subjective — long-form free-text response. The question's description acts as a placeholder hint.
    • Linear — numeric scale with min_value / max_value bounds and optional anchor labels (min_label, max_label) shown at each end of the scale.
  • Allow "Other" option (Single / Multi only) — adds a free-text "Other" choice that participants can type into; responses without Other text are rejected when the toggle is off.

The Configuration card adds Voting rules alongside the common sections:

  • Allow response editing — when on, participants can update their answers while the poll is open. Off makes responses final on submit. Auto-disabled when Encrypted upload is enabled.
  • Encrypted upload — when on, vote results are encrypted and stored on-chain (canister upload); responses cannot be edited after submission. Use this for high-stakes votes where auditability matters.

Quiz editor

URL: /spaces/:space_id/actions/quizzes/:quiz_id

The Content card holds:

  • Title and Description — the framing shown before participants start.
  • Questions — between 3 and 20 questions, each Single or Multi choice with a marked correct answer.
  • Pass Score — minimum score (out of total questions) to clear the quiz.
  • Retry Count — how many attempts each participant gets.
  • Attachments — reference materials participants can consult: PDF / PNG / JPG up to 25 MB each.

Pass and the reward unlocks; fail and (if Retry Count allows) the participant can try again.

Follow Follow editor

URL: /spaces/:space_id/actions/follows/:follow_id

The Targets card holds:

  • Title — what the campaign is called.
  • Targets — between 1 and 20 user accounts the participant should follow. Each target is rendered as an inline row in the participant view with a Follow button right there.

The Configuration card has the common sections only — Schedule, Participation & Rewards, Dependencies, Status, Danger zone.

Meet editor (Coming soon)

URL: /spaces/:space_id/actions/meets/:meet_id (admin view)

A scheduled event — livestream, video call, workshop, in-person gathering. The participant view at this URL is live, but a host editor entry point in the create-modal is (Coming soon). Today, hosts who need a Meet can create one via the MCP API (create_meet tool — see Connect via MCP).

Tips

  • Save your reward budget for the right Actions. Credits come out of the Space's Incentive Pool. A Quiz for onboarding can be reward-free; the deep Discussion that anchors your final Report is where Credits earn their keep.
  • Use Dependencies to build a sequence. A common pattern: a quick Sample Poll → a deep Final Poll. Make the Final depend on the Sample so participants warm up before the headline question.
  • Test with the participant view. Open the same URL in a private window or a different browser session — that's exactly what your participants see. The admin / participant flip is automatic.

What's next