---
title: "Insert Question"
method: PUT
path: "/forms/block/{block_id}/insert-question"
tags: ["provider", "forms"]
---

# Insert Question

`PUT /forms/block/{block_id}/insert-question`

## Path parameters

- `block_id` string, required

## Headers

- `TENANT` string, required
- `API-KEY` string, required

## Request body

- QuestionDetailInput
  - `id` string, required
  - `blockId` string, required
  - `formId` string, required
  - `position` integer, required
  - `questionType` 'ADDRESS' | 'DATE' | 'TEXT' | 'NUMBER' | 'TEXT_AREA' | 'SINGLE_SELECT' | 'RADIAL_SINGLE_SELECT' | 'MULTI_SELECT' | 'RADIAL_MULTI_SELECT' | 'TOGGLE' | 'SIGNATURE' | 'FILE_UPLOAD' | 'PHONE_NUMBER' | 'EMAIL' | 'PAYMENT_METHOD' | 'TAG' | 'DISCLAIMER' | 'STATEMENT' | 'DOCUMENT' | 'FEET_INCHES_HEIGHT' | 'POUNDS_WEIGHT' | 'CALCULATED_SCORE', required
  - `required` boolean, required
  - `isArchived` boolean
  - `mappingKey` string, nullable
  - `data` QuestionData, required
    - `name` string, required
    - `description` string, nullable
  - `conditions` QuestionConditionDetail[]
    - `id` string, required
    - `questionId` string, required
    - `dependentQuestionId` string, required
    - `operator` 'EQUALS' | 'NOT_EQUALS' | 'CONTAINS' | 'YEARS_AGO_MINIMUM' | 'YEARS_AGO_MAXIMUM' | 'SUM', required
    - `value` string, required
    - `groupId` string, nullable

## Response `200`

Successful Response

- BlockDetailOutput
  - `id` string, required
  - `formId` string, required
  - `position` integer, required
  - `description` string, nullable
  - `blockType` 'DYNAMIC' | 'DEMOGRAPHICS' | 'INSURANCE' | 'PAYMENT_METHODS' | 'MEDICAL_HISTORY', required
  - `name` string, required
  - `questions` QuestionDetailUnionAddressDateTextSingleSelectMultiSelectToggleSignatureFileUploadPaymentMethodTagDisclaimerStatementDocumentNumberCalculatedScoreOutput[]
    - `id` string, required
    - `blockId` string, required
    - `formId` string, required
    - `position` integer, required
    - `questionType` 'ADDRESS' | 'DATE' | 'TEXT' | 'NUMBER' | 'TEXT_AREA' | 'SINGLE_SELECT' | 'RADIAL_SINGLE_SELECT' | 'MULTI_SELECT' | 'RADIAL_MULTI_SELECT' | 'TOGGLE' | 'SIGNATURE' | 'FILE_UPLOAD' | 'PHONE_NUMBER' | 'EMAIL' | 'PAYMENT_METHOD' | 'TAG' | 'DISCLAIMER' | 'STATEMENT' | 'DOCUMENT' | 'FEET_INCHES_HEIGHT' | 'POUNDS_WEIGHT' | 'CALCULATED_SCORE', required
    - `required` boolean, required
    - `isArchived` boolean
    - `mappingKey` string, nullable
    - `data` union, required
      - Address
        - `name` string, required
        - `description` string, nullable
      - DateOutput
        - `name` string, required
        - `description` string, nullable
        - `minDate` string, nullable
        - `maxDate` string, nullable
        - `minTimeAgo` RelativeDate
          - `years` integer, nullable
          - `months` integer, nullable
          - `days` integer, nullable
      - Text
        - `name` string, required
        - `description` string, nullable
        - `placeholder` string, required
      - SingleSelect
        - `name` string, required
        - `description` string, nullable
        - `options` string[], required
      - MultiSelect
        - `name` string, required
        - `description` string, nullable
        - `options` string[], required
        - `maxSelections` integer, nullable
        - `minSelections` integer, nullable
      - Toggle
        - `name` string, required
        - `description` string, nullable
      - Signature
        - `name` string, required
        - `description` string, nullable
        - `text` string, nullable
      - FileUpload
        - `name` string, required
        - `description` string, nullable
        - `allowedFileTypes` string, required
        - `maxFileSize` integer, required
        - `maxFileCount` integer, required
      - PaymentMethod
        - `name` string, required
        - `description` string, nullable
      - Tag
        - `name` string, required
        - `description` string, nullable
        - `placeholder` string, required
        - `allowedTags` string[], nullable
      - Disclaimer
        - `name` string, required
        - `description` string, nullable
        - `content` string, required
      - Statement
        - `name` string, required
        - `description` string, nullable
        - `points` string[], required
      - Document
        - `name` string, required
        - `description` string, nullable
        - `docs` DocumentDetails[], required
          - `name` string, required
          - `path` string, required
      - Number
        - `name` string, required
        - `description` string, nullable
        - `placeholder` string, required
      - CalculatedScore
        - `name` string, required
        - `description` string, nullable
        - `displayFormat` string
        - `calculationType` string
    - `conditions` QuestionConditionDetail[]
      - `id` string, required
      - `questionId` string, required
      - `dependentQuestionId` string, required
      - `operator` 'EQUALS' | 'NOT_EQUALS' | 'CONTAINS' | 'YEARS_AGO_MINIMUM' | 'YEARS_AGO_MAXIMUM' | 'SUM', required
      - `value` string, required
      - `groupId` string, nullable
  - `isArchived` boolean

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/decodahealth/apis/decoda-api.md) · [All operations](https://skmtc.dev/decodahealth/apis/decoda-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/decodahealth/decoda-api/revisions/4939a65a89d2/schema)
