Skip to main content
POST
Create an idea on the board

Authorizations

Authorization
string
header
required

Pass Authorization: Bearer scripe_sk_live_<...> (or scripe_sk_test_<...> for test keys) on every request. Keys are scoped to a single workspace and can be revoked from the Scripe dashboard.

The same header also accepts an OAuth 2.1 access token (scripe_oat_*); both credentials share one scope vocabulary and every operation below documents the scope it requires. An API key can hold every scope named on this surface except webhooks:manage, which is grantable to OAuth tokens only today — the webhook-endpoint operations answer 403 scope_missing to every API key. Operations that name no scope accept any valid token of the workspace.

Headers

Scripe-Api-Version
string

Pin the API version. Format YYYY-MM-DD. Omit to receive the currently rolling default. Unknown versions return 400 version_unsupported.

Example:

"2026-08-10"

Idempotency-Key
string

Opaque string (1–64 chars, [A-Za-z0-9_-]) used to dedup retried writes. Within 24h of the first request, the same key

  • same body returns the original response (Idempotent-Replayed: true). Same key + different body returns 409 idempotency_key_conflict.

Strongly recommended for every write — see /docs/api/v1/idempotency.

Pattern: ^[A-Za-z0-9_-]{1,64}$

Body

application/json
projectId
string
required
Example:

"proj_a1b2c3d4e5f6g7h8"

title
string
required
Maximum string length: 255
content
string
Maximum string length: 65535
status
enum<string>

Writable workflow statuses only (default inbox) — not the board column, which a status never moves. review/done are DERIVED from the linked post and rejected on every write.

Available options:
inbox,
in_production
pillar
string
Maximum string length: 32
postType
string
Maximum string length: 64
assetFormat
string
Maximum string length: 32
hook
string
Maximum string length: 500
topic
string
Maximum string length: 255

Response

Idea created (or replayed via Idempotency-Key).

data
object
required