---
title: "Update Form"
method: PUT
path: "/forms/{form_id}"
tags: ["provider", "forms"]
---

# Update Form

`PUT /forms/{form_id}`

## Path parameters

- `form_id` string, required

## Headers

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

## Request body

- FormDetailInput
  - `id` string, required
  - `name` string, required
  - `pathName` string, required
  - `description` string, nullable
  - `blocks` BlockDetailInput[]
    - `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` QuestionDetailUnionAddressDateTextSingleSelectMultiSelectToggleSignatureFileUploadPaymentMethodTagDisclaimerStatementDocumentNumberCalculatedScoreInput[]
      - `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
        - DateInput
          - `name` string, required
          - `description` string, nullable
          - `minDate` string, date, nullable
          - `maxDate` string, date, 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

## Response `200`

Successful Response

- FormDetailOutput
  - `id` string, required
  - `name` string, required
  - `pathName` string, required
  - `description` string, nullable
  - `blocks` 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)
