> ## Documentation Index
> Fetch the complete documentation index at: https://apidoc.sign.plus/llms.txt
> Use this file to discover all available pages before exploring further.

# Set envelope dynamic fields



## OpenAPI

````yaml put /envelope/{envelope_id}/dynamic_fields
openapi: 3.0.0
info:
  title: Sign.plus Developer API v2
  description: Integrate legally-binding electronic signature to your workflow
  version: 2.8.0
  contact:
    name: Sign.Plus
    url: https://sign.plus
    email: support@alohi.com
servers:
  - url: https://restapi.sign.plus/v2
    description: Sign.Plus API - Production
security: []
tags:
  - name: signplus
    description: Sign.plus API
paths:
  /envelope/{envelope_id}/dynamic_fields:
    put:
      tags:
        - signplus
      summary: Set envelope dynamic fields
      operationId: set_envelope_dynamic_fields
      parameters:
        - in: path
          name: envelope_id
          required: true
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SetEnvelopeDynamicFieldsRequest'
      responses:
        '200':
          description: Dynamic fields added successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Envelope'
      security:
        - BearerAuth:
            - SIGN_ALL_EDIT
components:
  schemas:
    SetEnvelopeDynamicFieldsRequest:
      type: object
      properties:
        dynamic_fields:
          type: array
          description: List of dynamic fields
          items:
            $ref: '#/components/schemas/DynamicField'
      required:
        - dynamic_fields
    Envelope:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the envelope
        name:
          type: string
          description: Name of the envelope
        comment:
          type: string
          description: Comment for the envelope
        pages:
          type: integer
          description: Total number of pages in the envelope
        flow_type:
          $ref: '#/components/schemas/EnvelopeFlowType'
        legality_level:
          $ref: '#/components/schemas/EnvelopeLegalityLevel'
        status:
          $ref: '#/components/schemas/EnvelopeStatus'
        created_at:
          type: integer
          description: Unix timestamp of the creation date
        updated_at:
          type: integer
          description: Unix timestamp of the last modification date
        expires_at:
          type: integer
          description: Unix timestamp of the expiration date
        num_recipients:
          type: integer
          description: Number of recipients in the envelope
        is_duplicable:
          type: boolean
          description: Whether the envelope can be duplicated
        signing_steps:
          type: array
          items:
            $ref: '#/components/schemas/SigningStep'
        documents:
          type: array
          items:
            $ref: '#/components/schemas/Document'
        notification:
          $ref: '#/components/schemas/EnvelopeNotification'
        attachments:
          $ref: '#/components/schemas/EnvelopeAttachments'
          description: >-
            Requested attachments for the envelope. See [Set Attachment Requests
            guide](/guides/set-attachment-requests) for more details.
    DynamicField:
      type: object
      properties:
        name:
          type: string
          description: Name of the dynamic field
        value:
          type: string
          description: Value of the dynamic field
    EnvelopeFlowType:
      type: string
      description: >-
        Flow type of the envelope (REQUEST_SIGNATURE is a request for signature,
        SIGN_MYSELF is a self-signing flow)
      enum:
        - REQUEST_SIGNATURE
        - SIGN_MYSELF
    EnvelopeLegalityLevel:
      type: string
      description: >-
        Legal level of the envelope (SES is Simple Electronic Signature,
        QES_EIDAS is Qualified Electronic Signature, QES_ZERTES is Qualified
        Electronic Signature with Zertes)
      enum:
        - SES
        - QES_EIDAS
        - QES_ZERTES
    EnvelopeStatus:
      type: string
      description: Status of the envelope
      enum:
        - DRAFT
        - IN_PROGRESS
        - COMPLETED
        - EXPIRED
        - DECLINED
        - VOIDED
        - PENDING
    SigningStep:
      type: object
      properties:
        recipients:
          type: array
          description: List of recipients
          items:
            $ref: '#/components/schemas/Recipient'
    Document:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the document
        name:
          type: string
          description: Name of the document
        filename:
          type: string
          description: Filename of the document
        page_count:
          type: integer
          description: Number of pages in the document
        pages:
          type: array
          description: List of pages in the document
          items:
            $ref: '#/components/schemas/Page'
    EnvelopeNotification:
      type: object
      properties:
        subject:
          type: string
          description: Subject of the notification
        message:
          type: string
          description: Message of the notification
        reminder_interval:
          type: integer
          description: Interval in days to send reminder
    EnvelopeAttachments:
      type: object
      properties:
        settings:
          $ref: '#/components/schemas/AttachmentSettings'
        recipients:
          type: array
          items:
            $ref: '#/components/schemas/AttachmentPlaceholdersPerRecipient'
    Recipient:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the recipient
        uid:
          type: string
          description: Unique identifier of the user associated with the recipient
        name:
          type: string
          description: Name of the recipient
        email:
          type: string
          description: Email of the recipient
        role:
          $ref: '#/components/schemas/RecipientRole'
        verification:
          $ref: '#/components/schemas/RecipientVerification'
      required:
        - name
        - email
        - role
    Page:
      type: object
      properties:
        width:
          type: integer
          description: Width of the page in pixels
        height:
          type: integer
          description: Height of the page in pixels
    AttachmentSettings:
      type: object
      properties:
        visible_to_recipients:
          type: boolean
          description: >-
            Whether the attachment is visible to the recipients or only to the
            sender
    AttachmentPlaceholdersPerRecipient:
      type: object
      properties:
        recipient_id:
          type: string
          description: ID of the recipient
        recipient_name:
          type: string
          description: Name of the recipient
        placeholders:
          type: array
          items:
            $ref: '#/components/schemas/AttachmentPlaceholder'
    RecipientRole:
      type: string
      description: >-
        Role of the recipient (SIGNER signs the document, RECEIVES_COPY receives
        a copy of the document, IN_PERSON_SIGNER signs the document in person,
        SENDER sends the document)
      enum:
        - SIGNER
        - RECEIVES_COPY
        - IN_PERSON_SIGNER
    RecipientVerification:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/RecipientVerificationType'
        value:
          type: string
          description: |-
            Required for `PASSCODE` and `SMS` verification.

            - `PASSCODE`: code required by the recipient to sign the document.
            - `SMS`: recipient's phone number.
            - `ID_VERIFICATION`: leave empty.
    AttachmentPlaceholder:
      type: object
      properties:
        recipient_id:
          type: string
          description: ID of the recipient
        id:
          type: string
          description: ID of the attachment placeholder
        name:
          type: string
          description: Name of the attachment placeholder
        hint:
          type: string
          description: Hint of the attachment placeholder
        required:
          type: boolean
          description: Whether the attachment placeholder is required
        multiple:
          type: boolean
          description: Whether the attachment placeholder can have multiple files
        files:
          type: array
          items:
            $ref: '#/components/schemas/AttachmentPlaceholderFile'
    RecipientVerificationType:
      type: string
      description: >-
        Type of verification the recipient must complete before accessing the
        envelope.


        - `PASSCODE`: requires a code to be entered.  

        - `SMS`: sends a code via SMS.  

        - `ID_VERIFICATION`: prompts the recipient to complete an automated ID
        and selfie check.
      enum:
        - SMS
        - PASSCODE
        - ID_VERIFICATION
    AttachmentPlaceholderFile:
      type: object
      properties:
        id:
          type: string
          description: ID of the file
        name:
          type: string
          description: Name of the file
        size:
          type: integer
          description: Size of the file in bytes
        mimetype:
          type: string
          description: MIME type of the file
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer

````