Survey Commands¶
All canviq survey subcommands require authentication. See Authentication. Every subcommand also accepts the global --json/--quiet flags; see Scripting and CI.
survey list¶
List surveys in your workspace.
Options
| Flag | Default | Description |
|---|---|---|
--status <status> | (all) | Filter by status: draft, published, paused, archived |
--limit <n> | 50 | Maximum results (max 200) |
--json | off | Output raw JSON |
--quiet | off | Suppress output except errors |
Example: list only published surveys
--json prints a bare array, so index it directly with .[] rather than .surveys[]:
survey get <survey-id>¶
Get a single survey by ID.
Options
| Flag | Description |
|---|---|
--json | Output raw JSON |
survey create¶
Create a new survey. Pass --title directly or let the CLI prompt you when running on a TTY.
canviq survey create --title "Q3 PMF Survey"
canviq survey create --title "Q3 PMF Survey" --type pmf --json
canviq survey create --title "Custom Survey" --questions ./questions.json
Options
| Flag | Description |
|---|---|
--title <title> | Survey title (interactive prompt if omitted on TTY) |
--type <type> | Survey type: generic, pmf |
--description <description> | Survey description |
--questions <file> | Path to a JSON file with question definitions |
--json | Output raw JSON |
!!! note --title is required in non-TTY contexts (CI, piped). The CLI exits with code 2 if it is absent.
survey update <survey-id>¶
Update an existing survey's title, description, or settings.
canviq survey update srv_abc123 --title "Q3 PMF Survey (revised)"
canviq survey update srv_abc123 --settings '{"welcome_message":"Thanks!"}'
Options
| Flag | Description |
|---|---|
--title <title> | New title |
--description <description> | New description |
--settings <json> | Settings JSON, deep-merged server-side |
--json | Output raw JSON |
survey publish <survey-id>¶
Publish a draft or paused survey so it can collect responses.
Options
| Flag | Description |
|---|---|
--json | Output raw JSON |
--quiet | Suppress output except errors |
survey pause <survey-id>¶
Pause a published survey. Responses stop being collected.
Options
| Flag | Description |
|---|---|
--json | Output raw JSON |
--quiet | Suppress output except errors |
survey archive <survey-id>¶
Archive a survey. Archived surveys are no longer active and are excluded from the default list.
Options
| Flag | Description |
|---|---|
--reason <reason> | Archive reason |
--json | Output raw JSON |
--quiet | Suppress output except errors |
survey pmf-score <survey-id>¶
Get the PMF score and cohort breakdown. A score of 40% or above indicates product-market fit (40% PMF benchmark).
canviq survey pmf-score srv_abc123
# PMF Score: 43% (218 responses)
# Very disappointed: 94
# Somewhat disappointed: 82
# Not disappointed: 42
canviq survey pmf-score srv_abc123 --json
Options
| Flag | Description |
|---|---|
--json | Output raw JSON |
--quiet | Suppress output except errors |
When fewer than 30 responses have been collected, the command prints a message explaining that the score is not yet reliable rather than returning an incomplete number.
survey segments <survey-id>¶
Get the PMF cohort breakdown as tabular data.
Options
| Flag | Description |
|---|---|
--json | Output raw JSON |
survey responses <survey-id>¶
List responses for a survey.
canviq survey responses srv_abc123
canviq survey responses srv_abc123 --limit 50 --offset 100 --json
Options
| Flag | Default | Description |
|---|---|---|
--limit <n> | 100 | Maximum results |
--offset <n> | 0 | Pagination offset |
--json | off | Output raw JSON |
survey pmf-create¶
Create and publish a complete PMF survey (the 4 standard questions) in a single call, optionally with an event trigger. Published immediately unless --no-publish is passed.
canviq survey pmf-create
canviq survey pmf-create --product-name "Acme" --trigger-event signup --trigger-min-count 3
canviq survey pmf-create --no-publish --json
Options
| Flag | Default | Description |
|---|---|---|
--product-name <name> | your product | Product name used to personalize question text |
--no-publish | (publishes) | Create the survey as a draft instead of publishing immediately |
--trigger-event <event> | (none) | Event name that triggers the survey; creates a trigger in the same call |
--trigger-min-count <n> | 1 | Minimum event count before the survey fires (used with --trigger-event) |
--cooldown-days <n> | 90 | Days before the same user can be surveyed again (used with --trigger-event) |
--json | off | Output raw JSON |
Note
organization in the current environment (live or test). Each organization can have at most one PMF survey per environment; use survey update or survey publish to modify the existing one instead.