---
updatedAt: 2026-07-15T16:35:24.000Z
agentTools:
  projectIndex: https://developers.modusign.co.kr/llms.txt
---

# 내용 수정 중 문서 데이터 조회

# OpenAPI definition

```json
{
  "openapi": "3.0.0",
  "paths": {
    "/documents/{documentId}/modification": {
      "get": {
        "operationId": "DocumentController_getModification",
        "parameters": [
          {
            "name": "documentId",
            "required": true,
            "in": "path",
            "description": "문서 ID",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DocumentModificationDto"
                }
              }
            }
          },
          "422": {
            "description": "수정 중 상태가 아님",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableEntityResponseDto"
                },
                "examples": {
                  "notModifying": {
                    "summary": "수정 중 상태가 아님",
                    "value": {
                      "instance": "/documents/8b6c2f40-7a1e-11f1-9c3a-0b1e2d3c4f5a/modification",
                      "type": "UnprocessableEntityException",
                      "title": "Unprocessable entity"
                    }
                  }
                }
              }
            }
          }
        },
        "security": [
          {
            "Basic": []
          },
          {
            "Bearer": []
          }
        ],
        "summary": "내용 수정 중 문서 데이터 조회",
        "tags": [
          "USER API"
        ]
      }
    }
  },
  "info": {
    "title": "MODUSIGN API",
    "description": "",
    "version": "1.0.0",
    "contact": {}
  },
  "servers": [
    {
      "url": "https://api.modusign.co.kr",
      "description": "production"
    }
  ],
  "components": {
    "securitySchemes": {
      "Bearer": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "JWT"
      },
      "Basic": {
        "type": "http",
        "scheme": "basic"
      }
    },
    "schemas": {
      "PositionInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "x": {
            "type": "number",
            "description": "입력란의 가로 좌표",
            "minimum": 0,
            "maximum": 1
          },
          "y": {
            "type": "number",
            "description": "입력란의 세로 좌표",
            "minimum": 0,
            "maximum": 1
          },
          "page": {
            "type": "integer",
            "description": "입력란이 위치할 페이지",
            "minimum": 1
          }
        },
        "required": [
          "x",
          "y",
          "page"
        ]
      },
      "SizeInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "width": {
            "type": "number",
            "description": "입력란의 너비",
            "minimum": 0,
            "maximum": 1
          },
          "height": {
            "type": "number",
            "description": "입력란의 높이",
            "minimum": 0,
            "maximum": 1
          }
        },
        "required": [
          "width",
          "height"
        ]
      },
      "TextFieldStyleInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "size": {
            "type": "number",
            "description": "텍스트 크기",
            "enum": [
              4,
              5,
              6,
              7,
              8,
              9,
              10,
              11,
              12,
              13,
              14,
              15,
              16,
              17,
              18,
              24,
              30,
              36,
              48,
              60
            ],
            "default": 12
          },
          "font": {
            "type": "string",
            "description": "텍스트 글자체",
            "enum": [
              "NOTO_SANS",
              "NOTO_SERIF"
            ]
          },
          "align": {
            "type": "string",
            "description": "텍스트 정렬",
            "enum": [
              "LEFT",
              "CENTER",
              "RIGHT"
            ],
            "default": "LEFT"
          }
        },
        "required": [
          "size",
          "font"
        ]
      },
      "TextInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "dataLabel": {
            "type": "string",
            "description": "데이터 라벨",
            "minLength": 1,
            "maxLength": 100,
            "example": "기타사항"
          },
          "type": {
            "type": "string",
            "example": "TEXT",
            "description": "요청자 입력 타입 (예시 값으로 고정되어 있습니다)"
          },
          "position": {
            "description": "입력란의 위치",
            "allOf": [
              {
                "$ref": "#/components/schemas/PositionInCreateDocumentRequestDto"
              }
            ]
          },
          "size": {
            "description": "입력란의 크기",
            "allOf": [
              {
                "$ref": "#/components/schemas/SizeInCreateDocumentRequestDto"
              }
            ]
          },
          "textStyle": {
            "description": "텍스트 스타일",
            "allOf": [
              {
                "$ref": "#/components/schemas/TextFieldStyleInCreateDocumentRequestDto"
              }
            ]
          },
          "value": {
            "type": "string",
            "maxLength": 1000,
            "example": "기타사항입니다",
            "description": "텍스트 박스에 입력될 값"
          }
        },
        "required": [
          "type",
          "position",
          "size",
          "textStyle",
          "value"
        ]
      },
      "SigningDateFieldSizeInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "width": {
            "type": "number",
            "description": "입력란의 너비",
            "minimum": 0,
            "maximum": 1
          },
          "height": {
            "type": "number",
            "description": "입력란의 높이",
            "minimum": 0,
            "maximum": 1
          }
        },
        "required": [
          "width",
          "height"
        ]
      },
      "ConditionalRuleTriggerInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "dataLabel": {
            "type": "string",
            "description": "조건 입력란의 데이터 라벨 (드롭다운 또는 개별 체크박스). 그룹에 속한 체크박스는 그 멤버의 dataLabel(생략했다면 그룹 안 위치순 번호)을 지정하고 groupLabel 에 그룹 라벨을 함께 지정합니다.",
            "minLength": 1,
            "maxLength": 100
          },
          "groupLabel": {
            "type": "string",
            "description": "조건 입력란이 체크박스 그룹에 속할 때 그 그룹의 라벨. 드롭다운이 조건이면 null 입니다.",
            "nullable": true
          },
          "value": {
            "type": "string",
            "description": "조건이 성립하는 값. 드롭다운은 옵션 값, 체크박스는 TRUE(선택됨)만 허용합니다.",
            "example": "TRUE",
            "minLength": 1
          }
        },
        "required": [
          "dataLabel",
          "value"
        ]
      },
      "ConditionalRuleInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "triggers": {
            "description": "규칙을 성립시키는 조건 목록. 현재는 1개만 지원합니다.",
            "minItems": 1,
            "maxItems": 1,
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConditionalRuleTriggerInCreateDocumentRequestDto"
            }
          }
        },
        "required": [
          "triggers"
        ]
      },
      "SigningDateInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "dataLabel": {
            "type": "string",
            "description": "데이터 라벨",
            "minLength": 1,
            "maxLength": 100,
            "example": "기타사항"
          },
          "type": {
            "type": "string",
            "description": "필드 타입 (SIGNING_DATE로 요청해야 합니다)",
            "default": "SIGNING_DATE",
            "example": "SIGNING_DATE"
          },
          "size": {
            "description": "입력란의 크기",
            "allOf": [
              {
                "$ref": "#/components/schemas/SigningDateFieldSizeInCreateDocumentRequestDto"
              }
            ]
          },
          "position": {
            "description": "입력란의 위치",
            "allOf": [
              {
                "$ref": "#/components/schemas/PositionInCreateDocumentRequestDto"
              }
            ]
          },
          "textStyle": {
            "description": "텍스트 스타일",
            "allOf": [
              {
                "$ref": "#/components/schemas/TextFieldStyleInCreateDocumentRequestDto"
              }
            ]
          },
          "displayFormat": {
            "type": "string",
            "description": "날짜 표기 형식",
            "enum": [
              "YYYY-MM-DD",
              "YYYY/DD/MM",
              "YYYY.MM.DD",
              "YYYYMMDD",
              "YYYY년 MM월 DD일",
              "DD-MM-YYYY",
              "DD/MM/YYYY",
              "DD.MM.YYYY",
              "DDMMYYYY",
              "DD일 MM월 YYYY년",
              "MM-DD-YYYY",
              "MM/DD/YYYY",
              "MM.DD.YYYY",
              "MMDDYYYY",
              "MM월 DD일 YYYY년",
              "YYYY/MM/DD",
              "YYYY-DD-MM",
              "YYYY.DD.MM",
              "YYYYDDMM",
              "YYYY년 DD일 MM월",
              "YY-MM-DD",
              "YY/MM/DD",
              "YY.MM.DD",
              "YYMMDD",
              "YY년 MM월 DD일",
              "DD-MM-YY",
              "DD/MM/YY",
              "DD.MM.YY",
              "DDMMYY",
              "DD일 MM월 YY년",
              "MM-DD-YY",
              "MM/DD/YY",
              "MM.DD.YY",
              "MMDDYY",
              "MM월 DD일 YY년",
              "YY-DD-MM",
              "YY/DD/MM",
              "YY.DD.MM",
              "YYDDMM",
              "YY년 DD일 MM월"
            ],
            "example": "YYYY-MM-DD"
          },
          "conditionalRule": {
            "description": "조건부 표시 규칙. 조건이 성립할 때만 이 입력란을 서명자에게 보여줍니다.",
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/ConditionalRuleInCreateDocumentRequestDto"
              }
            ]
          }
        },
        "required": [
          "type",
          "size",
          "position",
          "textStyle",
          "displayFormat"
        ]
      },
      "CheckboxInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "dataLabel": {
            "type": "string",
            "description": "데이터 라벨",
            "minLength": 1,
            "maxLength": 100,
            "example": "기타사항"
          },
          "type": {
            "type": "string",
            "example": "CHECKBOX",
            "description": "요청자 입력 타입 (예시 값으로 고정되어 있습니다)"
          },
          "position": {
            "description": "입력란의 위치",
            "allOf": [
              {
                "$ref": "#/components/schemas/PositionInCreateDocumentRequestDto"
              }
            ]
          },
          "size": {
            "description": "입력란의 크기",
            "allOf": [
              {
                "$ref": "#/components/schemas/SizeInCreateDocumentRequestDto"
              }
            ]
          },
          "value": {
            "type": "boolean",
            "description": "체크 여부",
            "example": true
          }
        },
        "required": [
          "type",
          "position",
          "size",
          "value"
        ]
      },
      "RequesterImageInfoInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "base64": {
            "type": "string",
            "description": "이미지 데이터를 base64로 인코딩한 문자열"
          }
        },
        "required": [
          "base64"
        ]
      },
      "ImageInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "dataLabel": {
            "type": "string",
            "description": "데이터 라벨",
            "minLength": 1,
            "maxLength": 100,
            "example": "기타사항"
          },
          "type": {
            "type": "string",
            "example": "IMAGE",
            "description": "요청자 입력 타입 (예시 값으로 고정되어 있습니다)"
          },
          "position": {
            "description": "입력란의 위치",
            "allOf": [
              {
                "$ref": "#/components/schemas/PositionInCreateDocumentRequestDto"
              }
            ]
          },
          "size": {
            "description": "입력란의 크기",
            "allOf": [
              {
                "$ref": "#/components/schemas/SizeInCreateDocumentRequestDto"
              }
            ]
          },
          "value": {
            "description": "3MB 이하의 jpg 또는 png 이미지 정보",
            "allOf": [
              {
                "$ref": "#/components/schemas/RequesterImageInfoInCreateDocumentRequestDto"
              }
            ]
          }
        },
        "required": [
          "type",
          "position",
          "size",
          "value"
        ]
      },
      "PhoneNumberFormatInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "휴대폰 번호 입력 형식 타입",
            "enum": [
              "PHONE_NUMBER"
            ]
          }
        },
        "required": [
          "type"
        ]
      },
      "BankAccountNumberFormatInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "계좌 번호 입력 형식 타입",
            "enum": [
              "BANK_ACCOUNT_NUMBER"
            ]
          }
        },
        "required": [
          "type"
        ]
      },
      "BizNumberFormatInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "사업자 등록 번호 입력 형식 타입",
            "enum": [
              "BIZ_NUMBER"
            ]
          }
        },
        "required": [
          "type"
        ]
      },
      "RegexFormatInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "정규 표현식 입력 형식 타입",
            "enum": [
              "REGEX"
            ]
          },
          "name": {
            "type": "string",
            "description": "정규식 형식 이름 (예: 휴대폰)",
            "minLength": 1,
            "maxLength": 50
          },
          "pattern": {
            "type": "string",
            "description": "정규식 패턴 (최대 50자)",
            "minLength": 1,
            "maxLength": 50
          }
        },
        "required": [
          "type",
          "name",
          "pattern"
        ]
      },
      "TextFieldSizeInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "width": {
            "type": "number",
            "description": "입력란의 너비",
            "minimum": 0,
            "maximum": 1
          },
          "height": {
            "type": "number",
            "description": "입력란의 높이",
            "minimum": 0,
            "maximum": 1
          }
        },
        "required": [
          "width",
          "height"
        ]
      },
      "TextFieldInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "dataLabel": {
            "type": "string",
            "description": "데이터 라벨",
            "minLength": 1,
            "maxLength": 100,
            "example": "기타사항"
          },
          "type": {
            "type": "string",
            "description": "필드 타입 (TEXT로 요청해야 합니다)",
            "default": "TEXT",
            "example": "TEXT"
          },
          "required": {
            "type": "boolean",
            "description": "필수 여부",
            "default": true
          },
          "size": {
            "description": "입력란의 크기",
            "allOf": [
              {
                "$ref": "#/components/schemas/TextFieldSizeInCreateDocumentRequestDto"
              }
            ]
          },
          "position": {
            "oneOf": [
              {
                "title": "COORDINATE",
                "$ref": "#/components/schemas/CoordinatePositionInCreateDocumentRequestDto"
              },
              {
                "title": "ANCHOR",
                "$ref": "#/components/schemas/AnchorPositionInCreateDocumentRequestDto"
              }
            ],
            "description": "입력란의 위치. 좌표(x,y,page) 또는 anchor 중 하나만 지정"
          },
          "textStyle": {
            "description": "텍스트 스타일",
            "allOf": [
              {
                "$ref": "#/components/schemas/TextFieldStyleInCreateDocumentRequestDto"
              }
            ]
          },
          "format": {
            "description": "입력 형식 (정규 표현식 등)",
            "oneOf": [
              {
                "title": "PHONE_NUMBER",
                "$ref": "#/components/schemas/PhoneNumberFormatInCreateDocumentRequestDto"
              },
              {
                "title": "BANK_ACCOUNT_NUMBER",
                "$ref": "#/components/schemas/BankAccountNumberFormatInCreateDocumentRequestDto"
              },
              {
                "title": "BIZ_NUMBER",
                "$ref": "#/components/schemas/BizNumberFormatInCreateDocumentRequestDto"
              },
              {
                "title": "REGEX",
                "$ref": "#/components/schemas/RegexFormatInCreateDocumentRequestDto"
              }
            ],
            "nullable": true
          },
          "valueDescription": {
            "type": "string",
            "description": "입력란 가이드",
            "nullable": true,
            "minLength": 1,
            "maxLength": 40
          },
          "prefilledValue": {
            "type": "string",
            "nullable": true,
            "description": "사전 입력값",
            "default": null
          },
          "conditionalRule": {
            "description": "조건부 표시 규칙. 조건이 성립할 때만 이 입력란을 서명자에게 보여줍니다.",
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/ConditionalRuleInCreateDocumentRequestDto"
              }
            ]
          }
        },
        "required": [
          "type",
          "size",
          "position",
          "textStyle"
        ]
      },
      "CheckboxFieldSizeInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "width": {
            "type": "number",
            "description": "입력란의 너비",
            "minimum": 0,
            "maximum": 1
          }
        },
        "required": [
          "width"
        ]
      },
      "CheckboxFieldInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "dataLabel": {
            "type": "string",
            "description": "데이터 라벨. 같은 그룹 안에서는 중복될 수 없습니다.",
            "minLength": 1,
            "maxLength": 100,
            "example": "기타사항"
          },
          "type": {
            "type": "string",
            "description": "필드 타입 (CHECKBOX로 요청해야 합니다)",
            "default": "CHECKBOX",
            "example": "CHECKBOX"
          },
          "required": {
            "type": "boolean",
            "description": "필수 여부\n- 체크박스가 그룹에 속하는 경우 무시됩니다.",
            "default": false
          },
          "size": {
            "description": "입력란의 크기",
            "allOf": [
              {
                "$ref": "#/components/schemas/CheckboxFieldSizeInCreateDocumentRequestDto"
              }
            ]
          },
          "position": {
            "description": "입력란의 위치",
            "allOf": [
              {
                "$ref": "#/components/schemas/PositionInCreateDocumentRequestDto"
              }
            ]
          },
          "valueDescription": {
            "type": "string",
            "description": "체크박스 내용, 체크박스를 호버하거나 한번에 선택할때 서명자에게 노출됩니다.",
            "minLength": 1,
            "maxLength": 40
          },
          "enableOneClick": {
            "type": "boolean",
            "description": "체크박스를 한번에 선택(체크) 할 수 있는 여부, 문서 서명시 활성화된 체크박스는 서명자가 확인 후 한번에 체크할 수 있습니다.",
            "default": false
          },
          "prefilledValue": {
            "type": "boolean",
            "nullable": true,
            "description": "사전 입력값",
            "default": null
          },
          "groupLabel": {
            "type": "string",
            "description": "그룹 라벨",
            "minLength": 1,
            "maxLength": 100
          },
          "conditionalRule": {
            "description": "조건부 표시 규칙. 조건이 성립할 때만 이 입력란을 서명자에게 보여줍니다.",
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/ConditionalRuleInCreateDocumentRequestDto"
              }
            ]
          }
        },
        "required": [
          "type",
          "size",
          "position"
        ]
      },
      "SignatureFieldSizeInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "width": {
            "type": "number",
            "description": "입력란의 너비",
            "minimum": 0.01,
            "maximum": 1
          },
          "height": {
            "type": "number",
            "description": "입력란의 높이",
            "minimum": 0.01,
            "maximum": 1
          }
        },
        "required": [
          "width",
          "height"
        ]
      },
      "SignatureFieldInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "dataLabel": {
            "type": "string",
            "description": "데이터 라벨",
            "minLength": 1,
            "maxLength": 100,
            "example": "기타사항"
          },
          "type": {
            "type": "string",
            "description": "필드 타입 (SIGNATURE로 요청해야 합니다)",
            "default": "SIGNATURE",
            "example": "SIGNATURE"
          },
          "required": {
            "type": "boolean",
            "description": "필수 여부\n- type이 `SIGNATURE`일 경우는 무조건 true가 됩니다.\n",
            "default": true
          },
          "signatureTypes": {
            "type": "array",
            "description": "서명 타입",
            "minItems": 1,
            "maxItems": 2,
            "items": {
              "type": "string",
              "enum": [
                "SIGN",
                "STAMP"
              ]
            }
          },
          "allowedGenerationMethods": {
            "type": "array",
            "description": "서명 생성 방식",
            "maxItems": 2,
            "items": {
              "type": "string",
              "enum": [
                "STAMP_IMAGE",
                "SIGN_DRAWING"
              ]
            }
          },
          "size": {
            "description": "입력란의 크기",
            "allOf": [
              {
                "$ref": "#/components/schemas/SignatureFieldSizeInCreateDocumentRequestDto"
              }
            ]
          },
          "position": {
            "oneOf": [
              {
                "title": "COORDINATE",
                "$ref": "#/components/schemas/CoordinatePositionInCreateDocumentRequestDto"
              },
              {
                "title": "ANCHOR",
                "$ref": "#/components/schemas/AnchorPositionInCreateDocumentRequestDto"
              }
            ],
            "description": "입력란의 위치. 좌표(x,y,page) 또는 anchor 중 하나만 지정"
          },
          "enableOneClick": {
            "type": "boolean",
            "description": "한번에 서명 활성화 여부",
            "default": false
          },
          "conditionalRule": {
            "description": "조건부 표시 규칙. 조건이 성립할 때만 이 입력란을 서명자에게 보여줍니다.",
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/ConditionalRuleInCreateDocumentRequestDto"
              }
            ]
          }
        },
        "required": [
          "type",
          "required",
          "signatureTypes",
          "position"
        ]
      },
      "SigningMethodInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "KAKAO",
              "EMAIL",
              "SECURE_LINK"
            ],
            "example": "EMAIL",
            "description": "참여 수단 종류"
          },
          "value": {
            "type": "string",
            "example": "modu.kim@modusign.co.kr / 01012345678",
            "description": "참여자의 참여 수단 (이메일 또는 휴대전화번호)"
          }
        },
        "required": [
          "type",
          "value"
        ]
      },
      "AttachmentRequestInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "example": "첨부파일 1",
            "description": "첨부파일 이름 (특수문자 /?<>\\\":*|₩ 이 포함된 이름은 사용할 수 없습니다)",
            "minLength": 1,
            "maxLength": 100
          },
          "message": {
            "type": "string",
            "example": "2개월 내에 발급받은 회사 직인이 찍힌 원천징수영수증",
            "description": "첨부파일에 대한 설명",
            "nullable": true,
            "minLength": 1,
            "maxLength": 100
          },
          "required": {
            "type": "boolean",
            "description": "필수 여부",
            "example": true,
            "default": false
          }
        },
        "required": [
          "name"
        ]
      },
      "PasswordInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "example": "thisIsPassword",
            "description": "비밀번호 (4~20자, 한글 불가 — 영문/숫자/특수문자만 허용)",
            "minLength": 4,
            "maxLength": 20
          },
          "hint": {
            "type": "string",
            "nullable": true,
            "description": "비밀번호 힌트",
            "minLength": 1,
            "maxLength": 100
          }
        },
        "required": [
          "value"
        ]
      },
      "MobileIdentificationInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "example": "김모두",
            "description": "휴대폰 본인 인증의 명의자 이름",
            "minLength": 1,
            "maxLength": 30
          },
          "phoneNumber": {
            "type": "string",
            "example": "01012345678",
            "description": "휴대폰 본인 인증의 명의자 전화번호"
          },
          "allowOptions": {
            "type": "array",
            "description": "휴대폰 본인 인증 옵션",
            "items": {
              "type": "string",
              "enum": [
                "SMS_OR_PASS",
                "SIMPLE_AUTH"
              ]
            }
          }
        },
        "required": [
          "name",
          "phoneNumber"
        ]
      },
      "DCertInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "example": "주식회사 모두싸인",
            "description": "법인 공동인증서 인증 법인명",
            "minLength": 1,
            "maxLength": 30
          },
          "bizNumber": {
            "type": "string",
            "example": "1231212315",
            "description": "법인 공동인증서 인증 사업자등록번호",
            "minLength": 1
          }
        },
        "required": [
          "name",
          "bizNumber"
        ]
      },
      "VerificationInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "password": {
            "description": "접근 암호",
            "allOf": [
              {
                "$ref": "#/components/schemas/PasswordInCreateDocumentRequestDto"
              }
            ]
          },
          "mobileIdentification": {
            "description": "휴대폰 본인 인증",
            "allOf": [
              {
                "$ref": "#/components/schemas/MobileIdentificationInCreateDocumentRequestDto"
              }
            ]
          },
          "dCert": {
            "description": "법인 공동인증서 인증",
            "allOf": [
              {
                "$ref": "#/components/schemas/DCertInCreateDocumentRequestDto"
              }
            ]
          }
        }
      },
      "CheckboxGroupInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "groupLabel": {
            "type": "string",
            "description": "그룹 라벨",
            "minLength": 1,
            "maxLength": 100
          },
          "minCheckRequired": {
            "type": "number",
            "description": "최소 선택 개수. 현재는 0 또는 1만 지원합니다.",
            "enum": [
              0,
              1
            ]
          },
          "maxCheckLimit": {
            "type": "number",
            "nullable": true,
            "default": null,
            "example": 1,
            "description": "최대 선택 개수. 현재는 1또는 null만 지원합니다. null은 최대 개수까지 선택가능함을 뜻합니다."
          },
          "conditionalRule": {
            "description": "조건부 표시 규칙. 조건이 성립할 때만 이 체크박스 그룹을 서명자에게 보여줍니다.",
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/ConditionalRuleInCreateDocumentRequestDto"
              }
            ]
          }
        },
        "required": [
          "groupLabel",
          "minCheckRequired"
        ]
      },
      "ParticipantInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "SIGNER",
              "VIEWER"
            ],
            "description": "참여자 타입",
            "default": "SIGNER"
          },
          "role": {
            "type": "string",
            "example": "근로자",
            "description": "참여자의 역할",
            "minLength": 1,
            "maxLength": 36
          },
          "name": {
            "type": "string",
            "example": "김모두",
            "description": "참여자 이름 (특수문자 /?<>\\\":*|₩ 이 포함된 이름은 사용할 수 없습니다)",
            "minLength": 2,
            "maxLength": 30
          },
          "requesterMessage": {
            "type": "string",
            "description": "참여자에게 전달할 남길말",
            "minLength": 1,
            "maxLength": 1000,
            "example": "서명해 주세요",
            "nullable": true
          },
          "locale": {
            "type": "string",
            "description": "참여자가 사용할 언어",
            "default": "ko",
            "enum": [
              "ko",
              "en",
              "zh-CN",
              "ja",
              "vi",
              "fr"
            ]
          },
          "signingOrder": {
            "type": "integer",
            "description": "참여 순서. 순서 없이 참여하려면 모두 1로 설정하세요.",
            "example": 1,
            "minimum": 1,
            "maximum": 30
          },
          "signingDuration": {
            "type": "integer",
            "description": "참여자의 참여 유효 기간 (분)\n * 미지정시 기본값 20160분 (14일)",
            "minimum": 60,
            "maximum": 525600,
            "example": 20160,
            "default": 20160
          },
          "signingMethod": {
            "description": "참여자의 참여 수단",
            "allOf": [
              {
                "$ref": "#/components/schemas/SigningMethodInCreateDocumentRequestDto"
              }
            ]
          },
          "attachmentRequests": {
            "description": "첨부파일 요청 정보",
            "default": [],
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AttachmentRequestInCreateDocumentRequestDto",
              "maxLength": 30
            }
          },
          "verification": {
            "description": "참여자의 추가 인증 (휴대폰 본인 인증과 법인 공동인증서 인증서는 함께 설정할 수 없습니다)",
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/VerificationInCreateDocumentRequestDto"
              }
            ]
          },
          "fields": {
            "type": "array",
            "items": {
              "oneOf": [
                {
                  "title": "TEXT",
                  "$ref": "#/components/schemas/TextFieldInCreateDocumentRequestDto"
                },
                {
                  "title": "CHECKBOX",
                  "$ref": "#/components/schemas/CheckboxFieldInCreateDocumentRequestDto"
                },
                {
                  "title": "SIGNATURE",
                  "$ref": "#/components/schemas/SignatureFieldInCreateDocumentRequestDto"
                },
                {
                  "title": "SIGNING_DATE",
                  "$ref": "#/components/schemas/SigningDateInCreateDocumentRequestDto"
                },
                {
                  "title": "IMAGE",
                  "$ref": "#/components/schemas/ImageFieldInCreateDocumentRequestDto"
                },
                {
                  "title": "DATE",
                  "$ref": "#/components/schemas/DateFieldInCreateDocumentRequestDto"
                },
                {
                  "title": "DROPDOWN",
                  "$ref": "#/components/schemas/DropdownFieldInCreateDocumentRequestDto"
                },
                {
                  "title": "NAME",
                  "$ref": "#/components/schemas/NameFieldInCreateDocumentRequestDto"
                },
                {
                  "title": "COMPANY_NAME",
                  "$ref": "#/components/schemas/CompanyNameFieldInCreateDocumentRequestDto"
                },
                {
                  "title": "ADDRESS",
                  "$ref": "#/components/schemas/AddressFieldInCreateDocumentRequestDto"
                }
              ]
            },
            "description": "참여자 필드 정보 (VIEWER 타입 참여자는 필드를 가질 수 없음)",
            "default": []
          },
          "checkboxFieldGroups": {
            "description": "체크박스 그룹",
            "default": [],
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CheckboxGroupInCreateDocumentRequestDto"
            }
          }
        },
        "required": [
          "name",
          "signingOrder",
          "signingMethod"
        ]
      },
      "ImageFieldInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "dataLabel": {
            "type": "string",
            "minLength": 1,
            "maxLength": 100,
            "description": "데이터 라벨"
          },
          "type": {
            "type": "string",
            "description": "필드 타입 (IMAGE로 요청해야 합니다)",
            "default": "IMAGE",
            "example": "IMAGE"
          },
          "required": {
            "type": "boolean",
            "description": "필수 여부",
            "default": true
          },
          "size": {
            "description": "입력란 크기",
            "allOf": [
              {
                "$ref": "#/components/schemas/SizeInCreateDocumentRequestDto"
              }
            ]
          },
          "position": {
            "description": "입력란의 위치",
            "allOf": [
              {
                "$ref": "#/components/schemas/PositionInCreateDocumentRequestDto"
              }
            ]
          },
          "conditionalRule": {
            "description": "조건부 표시 규칙. 조건이 성립할 때만 이 입력란을 서명자에게 보여줍니다.",
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/ConditionalRuleInCreateDocumentRequestDto"
              }
            ]
          }
        },
        "required": [
          "type",
          "size",
          "position"
        ]
      },
      "DateFieldInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "dataLabel": {
            "type": "string",
            "description": "데이터 라벨",
            "minLength": 1,
            "maxLength": 100,
            "example": "기타사항"
          },
          "type": {
            "type": "string",
            "description": "필드 타입 (DATE로 요청해야 합니다)",
            "default": "DATE",
            "example": "DATE"
          },
          "required": {
            "type": "boolean",
            "description": "필수 여부",
            "default": true
          },
          "size": {
            "description": "입력란의 크기",
            "allOf": [
              {
                "$ref": "#/components/schemas/SizeInCreateDocumentRequestDto"
              }
            ]
          },
          "position": {
            "description": "입력란의 위치",
            "allOf": [
              {
                "$ref": "#/components/schemas/PositionInCreateDocumentRequestDto"
              }
            ]
          },
          "textStyle": {
            "description": "텍스트 스타일",
            "allOf": [
              {
                "$ref": "#/components/schemas/TextFieldStyleInCreateDocumentRequestDto"
              }
            ]
          },
          "displayFormat": {
            "type": "string",
            "description": "날짜 표기 형식",
            "enum": [
              "YYYY-MM-DD",
              "YYYY/DD/MM",
              "YYYY.MM.DD",
              "YYYYMMDD",
              "YYYY년 MM월 DD일",
              "DD-MM-YYYY",
              "DD/MM/YYYY",
              "DD.MM.YYYY",
              "DDMMYYYY",
              "DD일 MM월 YYYY년",
              "MM-DD-YYYY",
              "MM/DD/YYYY",
              "MM.DD.YYYY",
              "MMDDYYYY",
              "MM월 DD일 YYYY년",
              "YYYY/MM/DD",
              "YYYY-DD-MM",
              "YYYY.DD.MM",
              "YYYYDDMM",
              "YYYY년 DD일 MM월",
              "YY-MM-DD",
              "YY/MM/DD",
              "YY.MM.DD",
              "YYMMDD",
              "YY년 MM월 DD일",
              "DD-MM-YY",
              "DD/MM/YY",
              "DD.MM.YY",
              "DDMMYY",
              "DD일 MM월 YY년",
              "MM-DD-YY",
              "MM/DD/YY",
              "MM.DD.YY",
              "MMDDYY",
              "MM월 DD일 YY년",
              "YY-DD-MM",
              "YY/DD/MM",
              "YY.DD.MM",
              "YYDDMM",
              "YY년 DD일 MM월"
            ],
            "example": "YYYY-MM-DD"
          },
          "prefilledValue": {
            "type": "string",
            "nullable": true,
            "description": "사전 입력값 (ISO 8601 형식)",
            "default": null
          },
          "conditionalRule": {
            "description": "조건부 표시 규칙. 조건이 성립할 때만 이 입력란을 서명자에게 보여줍니다.",
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/ConditionalRuleInCreateDocumentRequestDto"
              }
            ]
          }
        },
        "required": [
          "type",
          "size",
          "position",
          "textStyle",
          "displayFormat"
        ]
      },
      "DropdownFieldInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "dataLabel": {
            "type": "string",
            "description": "데이터 라벨",
            "minLength": 1,
            "maxLength": 100,
            "example": "기타사항"
          },
          "type": {
            "type": "string",
            "description": "필드 타입 (DROPDOWN으로 요청해야 합니다)",
            "default": "DROPDOWN",
            "example": "DROPDOWN"
          },
          "required": {
            "type": "boolean",
            "description": "필수 여부",
            "default": true
          },
          "size": {
            "description": "입력란 크기, 입력란 크기가 텍스트 크기보다 작은 경우, 예상치 못한 동작이 발생될 수 있습니다. 충분한 width를 지정해주세요.",
            "allOf": [
              {
                "$ref": "#/components/schemas/SizeInCreateDocumentRequestDto"
              }
            ]
          },
          "position": {
            "description": "입력란의 위치",
            "allOf": [
              {
                "$ref": "#/components/schemas/PositionInCreateDocumentRequestDto"
              }
            ]
          },
          "options": {
            "type": "array",
            "description": "드롭다운 옵션 목록",
            "items": {
              "$ref": "#/components/schemas/DropdownOptionInCreateDocumentRequestDto"
            },
            "minItems": 1,
            "maxItems": 100
          },
          "textStyle": {
            "description": "텍스트 스타일",
            "allOf": [
              {
                "$ref": "#/components/schemas/TextFieldStyleInCreateDocumentRequestDto"
              }
            ]
          },
          "prefilledValue": {
            "type": "string",
            "nullable": true,
            "description": "사전 입력값",
            "default": null
          },
          "conditionalRule": {
            "description": "조건부 표시 규칙. 조건이 성립할 때만 이 입력란을 서명자에게 보여줍니다.",
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/ConditionalRuleInCreateDocumentRequestDto"
              }
            ]
          }
        },
        "required": [
          "type",
          "size",
          "position",
          "options",
          "textStyle"
        ]
      },
      "DropdownOptionInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "description": "드롭다운 옵션 값",
            "minLength": 1,
            "maxLength": 50
          }
        },
        "required": [
          "value"
        ]
      },
      "NameFieldInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "dataLabel": {
            "type": "string",
            "description": "데이터 라벨",
            "minLength": 1,
            "maxLength": 100,
            "example": "기타사항"
          },
          "type": {
            "type": "string",
            "description": "필드 타입 (NAME으로 요청해야 합니다)",
            "default": "NAME",
            "example": "NAME"
          },
          "required": {
            "type": "boolean",
            "description": "필수 여부",
            "default": true
          },
          "size": {
            "description": "입력란 크기",
            "allOf": [
              {
                "$ref": "#/components/schemas/SizeInCreateDocumentRequestDto"
              }
            ]
          },
          "position": {
            "description": "입력란의 위치",
            "allOf": [
              {
                "$ref": "#/components/schemas/PositionInCreateDocumentRequestDto"
              }
            ]
          },
          "textStyle": {
            "description": "텍스트 스타일",
            "allOf": [
              {
                "$ref": "#/components/schemas/TextFieldStyleInCreateDocumentRequestDto"
              }
            ]
          },
          "conditionalRule": {
            "description": "조건부 표시 규칙. 조건이 성립할 때만 이 입력란을 서명자에게 보여줍니다.",
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/ConditionalRuleInCreateDocumentRequestDto"
              }
            ]
          }
        },
        "required": [
          "type",
          "size",
          "position",
          "textStyle"
        ]
      },
      "CompanyNameFieldInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "dataLabel": {
            "type": "string",
            "description": "데이터 라벨",
            "minLength": 1,
            "maxLength": 100,
            "example": "기타사항"
          },
          "type": {
            "type": "string",
            "description": "필드 타입 (COMPANY_NAME으로 요청해야 합니다)",
            "default": "COMPANY_NAME",
            "example": "COMPANY_NAME"
          },
          "required": {
            "type": "boolean",
            "description": "필수 여부",
            "default": true
          },
          "size": {
            "description": "입력란 크기",
            "allOf": [
              {
                "$ref": "#/components/schemas/SizeInCreateDocumentRequestDto"
              }
            ]
          },
          "position": {
            "description": "입력란의 위치",
            "allOf": [
              {
                "$ref": "#/components/schemas/PositionInCreateDocumentRequestDto"
              }
            ]
          },
          "textStyle": {
            "description": "텍스트 스타일",
            "allOf": [
              {
                "$ref": "#/components/schemas/TextFieldStyleInCreateDocumentRequestDto"
              }
            ]
          },
          "prefilledValue": {
            "type": "string",
            "nullable": true,
            "description": "사전 입력값",
            "default": null
          },
          "conditionalRule": {
            "description": "조건부 표시 규칙. 조건이 성립할 때만 이 입력란을 서명자에게 보여줍니다.",
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/ConditionalRuleInCreateDocumentRequestDto"
              }
            ]
          }
        },
        "required": [
          "type",
          "size",
          "position",
          "textStyle"
        ]
      },
      "AddressPrefilledValueInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "address1": {
            "type": "string",
            "description": "기본 주소"
          },
          "address2": {
            "type": "string",
            "description": "상세 주소",
            "nullable": true
          },
          "city": {
            "type": "string",
            "description": "시군구",
            "nullable": true
          },
          "province": {
            "type": "string",
            "description": "도시"
          },
          "zip": {
            "type": "string",
            "description": "우편번호"
          },
          "country": {
            "type": "string",
            "description": "나라",
            "enum": [
              "KR"
            ]
          }
        },
        "required": [
          "address1",
          "province",
          "zip",
          "country"
        ]
      },
      "AddressFieldInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "dataLabel": {
            "type": "string",
            "description": "데이터 라벨",
            "minLength": 1,
            "maxLength": 100,
            "example": "기타사항"
          },
          "type": {
            "type": "string",
            "description": "필드 타입 (ADDRESS로 요청해야 합니다)",
            "default": "ADDRESS",
            "example": "ADDRESS"
          },
          "required": {
            "type": "boolean",
            "description": "필수 여부",
            "default": true
          },
          "size": {
            "description": "입력란 크기",
            "allOf": [
              {
                "$ref": "#/components/schemas/SizeInCreateDocumentRequestDto"
              }
            ]
          },
          "position": {
            "description": "입력란의 위치",
            "allOf": [
              {
                "$ref": "#/components/schemas/PositionInCreateDocumentRequestDto"
              }
            ]
          },
          "textStyle": {
            "description": "텍스트 스타일",
            "allOf": [
              {
                "$ref": "#/components/schemas/TextFieldStyleInCreateDocumentRequestDto"
              }
            ]
          },
          "prefilledValue": {
            "nullable": true,
            "description": "사전 입력값",
            "default": null,
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressPrefilledValueInCreateDocumentRequestDto"
              }
            ]
          },
          "conditionalRule": {
            "description": "조건부 표시 규칙. 조건이 성립할 때만 이 입력란을 서명자에게 보여줍니다.",
            "nullable": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/ConditionalRuleInCreateDocumentRequestDto"
              }
            ]
          }
        },
        "required": [
          "type",
          "size",
          "position",
          "textStyle"
        ]
      },
      "IntegritySealPosition": {
        "type": "string",
        "enum": [
          "TOP_LEFT",
          "TOP_RIGHT",
          "BOTTOM_LEFT",
          "BOTTOM_RIGHT"
        ],
        "description": "진본 증명 도장 위치"
      },
      "CoordinatePositionInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "x": {
            "type": "number",
            "description": "입력란의 가로 좌표",
            "minimum": 0,
            "maximum": 1
          },
          "y": {
            "type": "number",
            "description": "입력란의 세로 좌표",
            "minimum": 0,
            "maximum": 1
          },
          "page": {
            "type": "integer",
            "description": "입력란이 위치할 페이지",
            "minimum": 1
          }
        },
        "required": [
          "x",
          "y",
          "page"
        ]
      },
      "AnchorOffsetInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "x": {
            "type": "number",
            "description": "anchor 기준 가로 오프셋 (양수: 우측, 음수: 좌측)",
            "minimum": -1,
            "maximum": 1
          },
          "y": {
            "type": "number",
            "description": "anchor 기준 세로 오프셋 (양수: 하단, 음수: 상단)",
            "minimum": -1,
            "maximum": 1
          }
        },
        "required": [
          "x",
          "y"
        ]
      },
      "AnchorInPositionDto": {
        "type": "object",
        "properties": {
          "text": {
            "type": "string",
            "description": "PDF에서 찾을 anchor 텍스트 (1~200자, 특수문자 허용, 대소문자 구분)",
            "minLength": 1,
            "maxLength": 200
          },
          "offset": {
            "description": "anchor 기준 오프셋 (미지정 시 anchor text 위치에 정렬)",
            "allOf": [
              {
                "$ref": "#/components/schemas/AnchorOffsetInCreateDocumentRequestDto"
              }
            ]
          }
        },
        "required": [
          "text"
        ]
      },
      "AnchorPositionInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "anchor": {
            "description": "anchor 기반 필드 배치 설정. PDF 내 해당 텍스트 위치에 필드가 자동 배치됩니다.",
            "allOf": [
              {
                "$ref": "#/components/schemas/AnchorInPositionDto"
              }
            ]
          }
        },
        "required": [
          "anchor"
        ]
      },
      "FileInfoInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "fileId": {
            "type": "string",
            "description": "파일 업로드 API 를 통해 얻은 파일 ID"
          },
          "token": {
            "type": "string",
            "description": "파일 업로드 API 를 통해 얻은 파일 토큰"
          },
          "name": {
            "type": "string",
            "example": "첨부파일_1",
            "description": "첨부파일명 (확장자 제외, 특수문자 /?<>\\\":*|₩ 이 포함된 이름은 사용할 수 없습니다)",
            "minLength": 1,
            "maxLength": 100
          }
        },
        "required": [
          "fileId",
          "token",
          "name"
        ]
      },
      "RequesterAttachmentInCreateDocumentRequestDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "example": "첨부파일 1",
            "description": "첨부파일 이름 (특수문자 /?<>\\\":*|₩ 이 포함된 이름은 사용할 수 없습니다)",
            "minLength": 1,
            "maxLength": 100
          },
          "file": {
            "description": "파일 정보",
            "example": {
              "fileId": "2752f600-c6fc-11ed-b2e3-b5476bd20f82",
              "token": "01GVZ3BGGT2D9BSEVXJJ2V00SP",
              "name": "첨부파일_1"
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/FileInfoInCreateDocumentRequestDto"
              }
            ]
          }
        },
        "required": [
          "name",
          "file"
        ]
      },
      "CarbonCopy": {
        "type": "object",
        "properties": {
          "contact": {
            "type": "string",
            "minLength": 1,
            "maxLength": 100,
            "example": "01000000000 or example@modusign.co.kr",
            "description": "참조자 연락처 (이메일 주소 또는 휴대전화번호)"
          },
          "locale": {
            "type": "string",
            "enum": [
              "ko",
              "en",
              "zh-CN",
              "ja",
              "vi",
              "fr"
            ],
            "example": "ko",
            "description": "참조자 언어"
          }
        },
        "required": [
          "contact"
        ]
      },
      "RequesterInDocumentResponseDto": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "description": "요청자 이메일"
          },
          "name": {
            "type": "string",
            "description": "요청자 이름"
          }
        },
        "required": [
          "email",
          "name"
        ]
      },
      "SigningInDocumentResponseDto": {
        "type": "object",
        "properties": {
          "participantId": {
            "type": "string",
            "description": "참여한 참여자 ID"
          },
          "signedAt": {
            "format": "date-time",
            "type": "string",
            "description": "참여한 시간"
          }
        },
        "required": [
          "participantId",
          "signedAt"
        ]
      },
      "AbortInDocumentResponseDto": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "중단 종류:\n* `REJECTION` - 거절됨\n* `SIGNING_CANCELLATION` - 참여 취소됨\n* `REQUEST_CANCELLATION` - 요청 취소됨",
            "enum": [
              "REJECTION",
              "SIGNING_CANCELLATION",
              "REQUEST_CANCELLATION"
            ]
          },
          "message": {
            "type": "string",
            "description": "중단 사유"
          },
          "abortedAt": {
            "format": "date-time",
            "type": "string",
            "description": "중단 시점"
          },
          "participantId": {
            "type": "string",
            "nullable": true,
            "description": "중단한 참여자 ID (거절 또는 참여 취소 시)"
          }
        },
        "required": [
          "type",
          "message",
          "abortedAt",
          "participantId"
        ]
      },
      "PdfFileInDocumentResponseDto": {
        "type": "object",
        "properties": {
          "downloadUrl": {
            "type": "string",
            "description": "다운로드 링크(유효시간: 10분)"
          }
        },
        "required": [
          "downloadUrl"
        ]
      },
      "IntegritySealInDocumentResponseDto": {
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "진본 증명 도장 활성화 여부",
            "default": false
          },
          "position": {
            "description": "진본 증명 도장 위치",
            "nullable": true,
            "example": "TOP_RIGHT",
            "allOf": [
              {
                "$ref": "#/components/schemas/IntegritySealPosition"
              }
            ]
          }
        },
        "required": [
          "enabled",
          "position"
        ]
      },
      "DocumentSealInDocumentResponseDto": {
        "type": "object",
        "properties": {
          "integritySeal": {
            "description": "진본 증명 도장 설정",
            "allOf": [
              {
                "$ref": "#/components/schemas/IntegritySealInDocumentResponseDto"
              }
            ]
          }
        },
        "required": [
          "integritySeal"
        ]
      },
      "UnprocessableEntityResponseDto": {
        "type": "object",
        "properties": {
          "instance": {
            "type": "string",
            "description": "오류가 발생한 API 경로"
          },
          "type": {
            "type": "string",
            "enum": [
              "UnprocessableEntityException"
            ]
          },
          "title": {
            "type": "string",
            "description": "Error 명칭",
            "example": "Unprocessable entity"
          },
          "detail": {
            "type": "string",
            "description": "Error 상세 설명"
          }
        },
        "required": [
          "instance",
          "type",
          "title"
        ]
      },
      "DocumentModificationDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "문서 ID"
          },
          "title": {
            "type": "string",
            "description": "문서의 제목"
          },
          "status": {
            "type": "string",
            "enum": [
              "MODIFYING"
            ],
            "description": "수정중 문서 상태"
          },
          "fileOpenPassword": {
            "type": "string",
            "nullable": true,
            "description": "완료문서(.pdf) 비밀번호"
          },
          "file": {
            "nullable": true,
            "description": "문서 PDF 파일 정보 (다운로드 URL)",
            "allOf": [
              {
                "$ref": "#/components/schemas/PdfFileInDocumentResponseDto"
              }
            ]
          },
          "participants": {
            "type": "array",
            "description": "참여자 정보 (POST /documents 페이로드와 동일 구조 + 각 항목에 id)",
            "items": {
              "allOf": [
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "description": "기존 항목의 서버 ID. PATCH 시 생략하면 신규 항목으로 처리됨. 응답에는 항상 포함."
                    }
                  }
                },
                {
                  "$ref": "#/components/schemas/ParticipantInCreateDocumentRequestDto"
                }
              ]
            }
          },
          "requesterInputs": {
            "type": "array",
            "description": "요청자의 입력 (POST /documents 페이로드와 동일 구조 + 각 항목에 id)",
            "items": {
              "oneOf": [
                {
                  "title": "TEXT",
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "description": "기존 항목의 서버 ID. PATCH 시 생략하면 신규 항목으로 처리됨. 응답에는 항상 포함."
                        }
                      }
                    },
                    {
                      "$ref": "#/components/schemas/TextInCreateDocumentRequestDto"
                    }
                  ]
                },
                {
                  "title": "CHECKBOX",
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "description": "기존 항목의 서버 ID. PATCH 시 생략하면 신규 항목으로 처리됨. 응답에는 항상 포함."
                        }
                      }
                    },
                    {
                      "$ref": "#/components/schemas/CheckboxInCreateDocumentRequestDto"
                    }
                  ]
                },
                {
                  "title": "IMAGE",
                  "allOf": [
                    {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "description": "기존 항목의 서버 ID. PATCH 시 생략하면 신규 항목으로 처리됨. 응답에는 항상 포함."
                        }
                      }
                    },
                    {
                      "$ref": "#/components/schemas/ImageInCreateDocumentRequestDto"
                    }
                  ]
                }
              ]
            }
          },
          "requesterAttachments": {
            "type": "array",
            "description": "요청자 첨부파일 정보 (POST /documents 페이로드와 동일 구조 + 각 항목에 id)",
            "items": {
              "allOf": [
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "description": "기존 항목의 서버 ID. PATCH 시 생략하면 신규 항목으로 처리됨. 응답에는 항상 포함."
                    }
                  }
                },
                {
                  "$ref": "#/components/schemas/RequesterAttachmentInCreateDocumentRequestDto"
                }
              ]
            }
          },
          "carbonCopies": {
            "description": "참조자 연락처 정보 (POST /documents 페이로드와 동일 구조)",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CarbonCopy"
            }
          },
          "seal": {
            "description": "문서 봉인 설정 정보",
            "allOf": [
              {
                "$ref": "#/components/schemas/DocumentSealInDocumentResponseDto"
              }
            ]
          },
          "requester": {
            "description": "문서 요청자 정보 (read-only — PATCH 미지원)",
            "allOf": [
              {
                "$ref": "#/components/schemas/RequesterInDocumentResponseDto"
              }
            ]
          },
          "currentSigningOrder": {
            "type": "integer",
            "description": "현재 참여 차례 (read-only — PATCH 미지원)"
          },
          "signings": {
            "description": "입력된 서명, 열람 완료된 참여자 리스트 (read-only — PATCH 미지원)",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SigningInDocumentResponseDto"
            }
          },
          "abort": {
            "nullable": true,
            "description": "문서의 중단 정보 (read-only — PATCH 미지원)",
            "allOf": [
              {
                "$ref": "#/components/schemas/AbortInDocumentResponseDto"
              }
            ]
          },
          "createdAt": {
            "type": "string",
            "format": "date",
            "description": "문서 생성 시간 (read-only)"
          },
          "updatedAt": {
            "type": "string",
            "format": "date",
            "description": "마지막 업데이트 시간 (read-only)"
          },
          "startedAt": {
            "type": "string",
            "format": "date",
            "nullable": true,
            "description": "참여 요청 시간 (read-only)"
          }
        },
        "required": [
          "id",
          "title",
          "status",
          "fileOpenPassword",
          "file",
          "participants",
          "requesterInputs",
          "requesterAttachments",
          "carbonCopies",
          "seal",
          "requester",
          "currentSigningOrder",
          "signings",
          "abort",
          "createdAt",
          "updatedAt",
          "startedAt"
        ]
      }
    }
  }
}
```