---
title: "Ask a question"
method: POST
path: "/workspaces/{id}/questions"
tags: ["questions"]
---

# Ask a question

`POST /workspaces/{id}/questions`

## Request

- Base URL: `https://api.swingfactor.ai/v1`
- URL: `https://api.swingfactor.ai/v1/workspaces/{id}/questions`
- Auth: HTTP bearer

## Path parameters

- `id` string, uuid, required

## Headers

- `Idempotency-Key` string

## Request body

- AskQuestionBody
  - `title` string, required
  - `framing` string
  - `visibility` 'public' | 'private': Defaults from the plan.
  - `depth` 'standard' | 'full': standard (the default) or full: what is shown up front and what a draft proposes.
  - `options` object[]
    - `label` string, required
    - `description` string
    - `position` integer
    - `suggested` boolean: SwingFactor suggested it while the question was asked, and the person accepted it.
  - `scenarios` object[]
    - `label` string, required
    - `description` string
    - `suggested` boolean: SwingFactor suggested it while the question was asked, and the person accepted it.
  - `rejectedOptions` object[]: Suggestions the person rejected while asking: kept, rejected by them.
    - `label` string, required
    - `description` string
  - `rejectedScenarios` object[]
    - `label` string, required
    - `description` string
  - `dimensions` object[]: The factors every option is compared on.
    - `label` string, required
    - `description` string
    - `suggested` boolean: SwingFactor suggested it while the question was asked, and the person accepted it.
  - `rejectedDimensions` object[]
    - `label` string, required
    - `description` string
  - `scenariosStated` 'none': Said as it is asked: no scenarios apply. Refused with scenarios.
  - `sourceIds` string[]: Library items — documents and pages — to argue it from.

## Response `201`

The question, with whatever it was asked with.

- Question
  - `id` string, uuid, required
  - `workspaceId` string, uuid, required
  - `createdBy` string, uuid
  - `title` string, required
  - `framing` string
  - `visibility` 'public' | 'private', required: Public is readable by anybody signed in; private by the workspace alone.
  - `evidenceCutoff` string: The evidence cut-off, YYYY-MM-DD: what came after it is listed apart.
  - `constraintKind` 'time' | 'money' | 'people' | 'access' | 'deadline': What limits the investigation. Only with one may a person prioritise the open matters.
  - `constraintNote` string
  - `constraintDeadline` string: For a deadline: YYYY-MM-DD.
  - `availability` 'engaged' | 'not-material': engaged: whether each option could be had and kept is examined here; not-material: the question raises no material availability issue. Absent: not stated.
  - `scenariosStated` 'none': none: the question says no scenarios apply. Absent: not stated.
  - `depth` 'standard' | 'full', required: standard or full: what is shown up front and what a draft proposes.
  - `askingStep` 'options' | 'scenarios' | 'dimensions' | 'sources' | 'view' | 'ask': Still being asked: the furthest step the wizard reached. Its workspace’s alone, and not drafted, until it is asked. Absent once asked.
  - `createdAt` string, required
  - `updatedAt` string, required
  - `links` QuestionLinks, required: Relative /v1 URLs to follow.
    - `self` string, required
    - `options` string, required
    - `propositions` string, required
    - `evidence` string, required
    - `dependencies` string, required
    - `variables` string, required
    - `investigation` string, required
    - `challenges` string, required
    - `history` string, required
    - `bearings` string, required
    - `symmetry` string, required
    - `briefing` string, required
    - `snapshots` string, required
    - `sources` string, required
    - `workspace` string, required

## Other responses

- `400`: The plan does not allow it: `plan_limit`.
- `401`: No token, or not a valid one: `unauthorized`.
- `403`: Viewers cannot ask.

---

[API](https://skmtc.dev/swingfactor/apis/swingfactor-api.md) · [All operations](https://skmtc.dev/swingfactor/apis/swingfactor-api/llms.txt) · [OpenAPI document](https://skmtc.dev/swingfactor/apis/swingfactor-api/revisions/c2fe881a39c3?raw)
