Skip to main content
POST
Preview publishing an opinion (step 1 of 2)

Authorizations

Authorization
string
header
required

Personal API key issued per SeeSaw user account: Authorization: Bearer sspat_…. Manage keys on the app API (/v1/users/me/api-keys). Revocation propagates within ~60 seconds (validation cache window).

The key's scopes decide what it may do: every key has read; a key created with ["read","write"] may also use the six write operations (marked x-required-scope: write in this document). Scopes are fixed at creation — to gain write access, create a new key. A read-only key calling a write operation gets 403 FORBIDDEN_SCOPE.

Path Parameters

id
string<uuid>
required

Topic UUID.

Body

application/json
content
string
required
Required string length: 1 - 500
reply_to_opinion_id
string<uuid>

Omit for a top-level opinion.

Response

The preview (check can_publish before confirming)

can_publish
boolean
required
summary
object
required

What the user confirms before POST /opinions. side_option_label is the owner's staked side, resolved server-side.

reason
enum<string>

Present only when can_publish is false. TOPIC_CLOSED takes priority; CONTENT_INVALID means empty or over 500 characters.

Available options:
TOPIC_CLOSED,
NO_POSITION,
CONTENT_INVALID
confirm_token
string
expires_at
string<date-time>