Features
Feature List
| Feature | Overview | Roles | Status |
|---|---|---|---|
| Survey management | Creating, listing, updating, duplicating, archiving, deleting, and favoriting surveys | Survey designer / Reviewer | Implemented |
| Theme assist | Suggests related categories, similar questions, and recommended sections from the theme input | Survey designer | Implemented |
| Section management | Adding, updating, deleting, reordering, duplicating, and importing sections | Survey designer | Implemented |
| Question management | Adding, updating, deleting, duplicating, and importing questions. Six question types. Automatic question-code renumbering | Survey designer | Implemented |
| Branch logic | Routing questions based on answers, screening out, exclusive settings | Survey designer | Implemented |
| Visibility logic | Hiding choices when a condition holds | Survey designer | Implemented |
| Preview | Verifying screen transitions and branch behavior from the respondent's point of view | Survey designer / Reviewer | Implemented |
| Versioning | Creating versions on save, version history, rollback, duplicating from a version | Survey designer / Reviewer | Implemented |
| Permission management | Setting view / edit permissions per survey | Survey designer | Implemented |
| Question library | Accumulating, searching, reusing, and deleting past question data | Survey designer | Implemented |
| JSON export | Exporting the questionnaire as JSON and registering it into the question library | Survey designer | Implemented |
| Push into CS | The Chrome extension pushes the questionnaire JSON into Creative Survey | Survey designer | Implemented |
| Import from CS | The Chrome extension fetches existing CS questionnaires in bulk and imports them | Survey designer | Implemented |
Feature Details
Survey Management
Manages the "survey" that holds a questionnaire. A survey carries a theme (title, client name, research objective, delivery area, category, free text) and a status; the questionnaire content lives in version snapshots.
Roles: Survey designer (create / update / delete), Reviewer (view / duplicate)
Statuses:
| Status | Description |
|---|---|
| Draft | Initial state; design in progress |
| In Review | Awaiting review |
| Exported | JSON export has been performed; set automatically by the export operation |
| Archived | A finished survey; hidden from the list by default |
Use cases:
- Find a survey in the list by keyword, status, and sort order
- Create a survey from "New" by entering a theme (initial sections and questions are generated)
- Export the JSON once the design is finished; the status becomes Exported
- Archive the survey once it is no longer in use
Notes: Survey deletion is a soft delete and can be performed only by the creator and administrators. Favorites are tracked per user and sorted to the top of the list.
Theme Assist
Suggests related categories, similar past questions, and a recommended section structure from the theme entered when creating a survey. It can be called before a survey is created.
Roles: Survey designer
Scoring:
| Match location | Points |
|---|---|
| Prompt text | 4 |
| Category | 3 |
| Section title | 2 |
Use cases:
- Enter the title, client name, research objective, and so on in the create screen
- The input is matched against the question library, and the top five questions by score are shown
- Adopt the suggested categories and section structure and create the survey
Section Management
Manages the "sections" that divide a questionnaire into major groups. Sections belong to the latest version's snapshot; adding, updating, and deleting all target the latest version.
Roles: Survey designer
Use cases:
- Enter a title from "Add section" in the section list (draft questions are generated)
- Reorder by dragging
- Import a section, with its questions, from another survey
- Choose section candidates from a questionnaire imported from CS and insert them as one section
Notes: On duplication and import, question codes are re-assigned so that they stay unique within the survey.
Question Management
Manages the questions inside a section. Choices, matrix rows and columns, free-text fields, sub-questions, branch rules, and visibility logic are all configured through the question update.
Roles: Survey designer
Question types (six):
| Type | Internal value | Description |
|---|---|---|
| SA (single answer) | single |
Pick one choice |
| MA (multiple answers) | multi |
Pick several choices. Minimum and maximum selection counts can be set |
| FA (free answer) | free_text |
Text input. Can hold several labelled input fields |
| TM (text matrix) | matrix |
A table of rows ร columns. Single or multiple selection can be toggled |
| PD (pulldown) | pulldown |
Pick from a dropdown. One question can hold several fields |
| Intro step | intro |
Explanatory text with no answer field. Cannot be used as a branch condition source |
Choice attributes:
| Attribute | Description |
|---|---|
| Exclusive | Selecting it disables the other choices (e.g. "none in particular") |
| Other input | Shows a free input field when selected |
| None of the above | Added as a special choice |
Use cases:
- Add a question in the section detail and enter the answer type, prompt text, and choices
- Set selection limits for MA, rows and columns for TM, or input fields for FA
- Save with "Update question"
Automatic question-code renumbering:
After any operation that changes the question order (reordering, deleting, duplicating, importing, and auto-creating an "other" follow-up question), the survey's question codes are renumbered into a clean sequence. Intro steps become T1 / T2 โฆ and everything else becomes Q1 / Q2 โฆ, numbered across the whole survey rather than per section. Branch conditions, branch destinations, and visibility conditions are re-pointed at the same time, so nothing has to be fixed by hand.
Pasting multiple lines:
Pasting text containing newlines into the prompt field opens a dialog asking whether to split it into one question per line or keep it as a single prompt. The default is to keep it as one prompt without splitting.
Notes: Setting an exclusive choice or "other" auto-generates the corresponding branch rules (exclusive setting, follow-up question). Changing a choice label also updates the conditions of the auto-generated rules.
Branch Logic
Switches which question comes next based on the answers. Rules are evaluated in order and the first one that holds is applied (first match wins).
Roles: Survey designer
Condition operators:
| Operator | UI label | Main targets | Description |
|---|---|---|---|
equals |
equals | SA | The specified choice is selected |
includes |
includes | MA / TM / PD / FA | Includes the specified choice. For FA, a partial match on the entered text |
not_includes |
does not include | MA / TM / PD / FA | Does not include the specified choice. Also holds when unanswered |
only |
is only | MA / TM | Only the specified choice is selected |
not_only |
is not only | MA / TM | Something other than the specified choice is also selected (also holds when unanswered) |
has_other |
has other than | MA / TM | Something other than the specified choice is selected |
answered |
answered | FA | Some input is present |
Special destination codes:
| Code | Meaning |
|---|---|
SO |
Survey complete |
SC |
Section complete (jump to the head of the next section) |
SX |
Screen out |
| The question's own code | Exclusive setting: stay on the question and show a message (cannot proceed) |
Use cases:
- Select a question and add a rule in the branch panel
- Choose AND / OR and specify the source question and conditions (choice chips, matrix cells, FA text)
- Choose the destination
- Verify the actual transitions in the preview
Notes: Matrix conditions work at the cell level (row ร column), and SA / MA / PD conditions can target a specific sub-question. Conditions reference choices by label string rather than by ID, because choice IDs are re-assigned on every update.
Visibility Logic
Hides specific choices when a condition holds. It is a separate system from branching, but the condition structure is exactly the same as a branch condition.
Roles: Survey designer
Use cases:
- Add a rule in the question's visibility panel
- Specify the condition (e.g. Q1 includes "Male") and the choices to hide (e.g. "products for women")
- Verify in the preview that the choices disappear when the condition holds
Notes: For matrices, rows and columns can be hidden separately.
Preview
Runs the questionnaire from the respondent's point of view to verify branch and visibility behavior. Branch evaluation happens on the frontend.
Roles: Survey designer / Reviewer
Behavior reproduced:
- First-match-wins rule evaluation
- Page grouping of questions linked to the previous one
- The survey-complete / section-complete / screen-out screens
- Message display and blocked progress from exclusive settings
- Choice filtering by visibility logic, and removal of answers for hidden choices
- Going back (history stack)
Versioning
Creates a version on every save and keeps it as history. The questionnaire content is stored as snapshots belonging to a version rather than to the survey.
Roles: Survey designer (save / rollback), Reviewer (view / duplicate)
Use cases:
- "Save" after editing creates a new version copying the latest version's content
- Check the content of earlier versions from the version history
- "Roll back" creates a new version restoring the given version (earlier versions are not deleted)
- "Duplicate" creates a separate survey initialized with the given version's content
Notes: So that sections and questions can be tracked across versions, snapshots carry stable IDs in addition to row IDs, and these are carried over when a version is copied.
Permission Management
Sets who a survey is shared with and at which permission level (view / edit).
Roles: Survey designer
Use cases:
- Choose the people to share with in the permission panel of the survey detail
- Specify view or edit and save (the list is replaced wholesale)
Notes: The creator automatically receives edit permission at creation. On duplication, the source survey's permissions are carried over. Administrators can access every survey without a permission record.
Question Library
Accumulates previously designed questions and questions imported from CS, so that they can be searched and reused in new surveys.
Roles: Survey designer
Registration paths:
| Path | Contents |
|---|---|
| Survey JSON export | All of the survey's questions are registered. Existing entries from the same survey are replaced |
| Import from CS | Questions of the imported questionnaire are registered as external-origin data |
Use cases:
- Find questions in the library by keyword and category
- Choose a destination section and reuse the question
- Delete past question data that is no longer needed (administrators only)
Notes: Only the prompt text and choice structure are stored; branch rules and visibility logic are not carried over.
JSON Export
Exports the questionnaire as JSON. This is the input the Chrome extension uses when pushing into CS.
Roles: Survey designer
Side effects:
- The status of the survey and of the latest version becomes Exported
- All of the survey's questions are registered into the question library (existing entries are replaced)
Push into CS
The Chrome extension reads the questionnaire JSON and converts it into CS questions, choices, branch logic, and visibility logic before pushing it in.
Roles: Survey designer
Use cases:
- Export the survey as JSON in the design tool
- Open the CS question editing screen and load the JSON from the extension panel
- The extension creates the questions and sets the order, page links, branches, and visibility logic
- Run answers in the CS preview and verify that the transitions are as intended
Import from CS
The Chrome extension fetches existing CS questionnaires in bulk and imports them as external data. The imported questions become material for the question library.
Roles: Survey designer
Use cases:
- Fetch CS questionnaires in bulk from the extension
- Send them to the import API to store them in the external data tables and the question library
- Check the section candidates split at "intro step" questions in the preview
- Choose the questions you need and insert them as one section of your own survey