---
title: "Bulk update dynamic fields"
method: PUT
path: "/documents/{document}/dynamic-fields"
tags: ["Document Operations"]
---

# Bulk update dynamic fields

`PUT /documents/{document}/dynamic-fields`

<small>Requires an API token with the **Document Manager** role.</small>

Updates the value of one or more [dynamic fields](/#dynamic-fields) for a [document](/#documents).

The `values` parameter should be an object with up to 20 entries whose keys identify the document's dynamic
fields and whose values are the new values to set. Valid identifiers to use as keys are a dynamic field's `uuid`,
`ref_uuid` or `name`. Values should follow the same rules as described for the [update dynamic
field](/operations/v1.documents.dynamic-fields.update) request.

Returns the dynamic fields that were changed by the request.

## Path parameters

- `document` string, required

## Request body

- BulkUpdateDynamicFieldRequest
  - `values` object, required — New values for up to 20 of the document's dynamic fields. Each key must identify a dynamic field on the document - by either its `ref_uuid`, `uuid` or `name`. Values expect the same format as the [Update dynamic field](/operations/v1.documents.dynamic-fields.update) endpoint.

## Response `200`

Array of `DynamicFieldResource`

- object
  - `data` DynamicFieldResource[], required
    - `uuid` string, required
    - `ref_uuid` string, required — A static reference identifier, allowing dynamic fields in documents to be matched their corresponding field in the document's source template.
    - `type` 'id' | 'uuid' | 'bool' | 'date' | 'duration' | 'email' | 'list' | 'number' | 'currency' | 'currency_duration' | 'clause' | 'select' | 'multi_select' | 'text' | 'textarea' | 'timestamp' | 'array' | 'enum', required
    - `name` string, required
    - `scope` 'internal' | 'internal_and_external', required
    - `settings` MultiFieldSettingsResource, required
      - `currencies` string[], required — For `currency` or `currency_duration` fields, defines the currencies that can be assigned to the field's values
    - `autofill_type` 'document_created_date' | 'document_review_date' | 'document_signing_date', required
    - `format` DynamicFieldFormatResource, required
      - `decimals` integer, required
      - `decimal_separator` string, required
      - `thousands_separator` string, required
    - `select_values` string[], nullable, required — When `type` is "select" or "multi_select", defines the possible values for `value`
    - `is_mandatory` boolean, required
    - `question` string, nullable, required
    - `question_external` string, nullable, required — Question variant for external users
    - `value` union, required — The field's value, if it has been set
      - string
      - boolean
      - unknown[]
        - unknown
    - `order` integer, nullable, required

## Other responses

- `401` — Unauthenticated
- `403` — Authorization error
- `404` — Not found
- `422` — Validation error

---

[API](https://skmtc.dev/fynk/apis/fynk-api-reference.md) · [All operations](https://skmtc.dev/fynk/apis/fynk-api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/fynk/fynk-api-reference/revisions/9657a6757f59/schema)
