---
title: "템플릿으로 서명 요청"
method: POST
path: "/documents/request-with-template"
tags: ["USER API"]
---

# 템플릿으로 서명 요청

`POST /documents/request-with-template`

미리 만들어둔 템플릿으로 서명요청을 보냅니다.  
템플릿에 문서 이름, 서명자 정보, 추가 인증, 추가내용 입력 값을 추가로 적용해 서명요청을 할 수 있습니다.

## Request body

- CreateDocumentWithTemplateRequestDto
  - `templateId` string, required — 모두싸인에 미리 만들어 둔 템플릿의 ID
  - `document` DocumentInCreateDocumentWithTemplateRequestDto, required
    - `labelIds` string[], nullable — 문서 생성 시 문서가 적용 될 라벨 ID List
    - `folderId` string, nullable — (deprecated) 문서 생성 시 문서가 보관 될 폴더의 ID (labelIds 로 대체)
    - `title` string, required — 문서의 제목
    - `fileOpenPassword` string, nullable — 완료문서(.pdf) 비밀번호
    - `participantMappings` ParticipantMappingInCreateDocumentWithTemplateRequestDto[] — 템플릿에 동적으로 적용할 참여자 정보
      - `role` string, required — 템플릿에 적용해둔 참여자의 역할
      - `excluded` boolean — 템플릿에 적용해 둔 참여자를 제외시킬지 여부
      - `name` string, nullable — 적용할 참여자 이름 (특수문자 /?<>\":*|₩ 이 포함된 이름은 사용할 수 없습니다)
      - `signingMethod` SigningMethodInCreateDocumentWithTemplateRequestDto
        - `type` 'KAKAO' | 'EMAIL' | 'SECURE_LINK', required — 참여 수단 종류
        - `value` string, required — 참여자의 참여 수단 (이메일 또는 휴대전화번호)
      - `signingDuration` integer, nullable — 참여자의 참여 유효 기간 (분) * 미지정시 기본값 20160분 (14일)
      - `requesterMessage` string, nullable — 참여자에게 전달할 남길말
      - `verification` VerificationInCreateDocumentWithTemplateRequestDto
        - `password` PasswordInCreateDocumentWithTemplateRequestDto
          - `value` string, required — 비밀번호
          - `hint` string, nullable — 비밀번호 힌트
        - `mobileIdentification` MobileIdentificationInCreateDocumentWithTemplateRequestDto
          - `name` string, required — 휴대폰 본인 인증의 명의자 이름
          - `phoneNumber` string, required — 휴대폰 본인 인증의 명의자 전화번호
          - `allowOptions` string[] — 휴대폰 본인 인증 옵션
        - `dCert` DCert
          - `name` string, required — 법인 공동인증서 인증 법인명
          - `bizNumber` string, required — 법인 공동인증서 인증 사업자 등록번호
      - `attachmentRequests` AttachmentRequestInCreateDocumentWithTemplateRequestDto[] — 첨부파일 요청 정보
        - `dataLabel` string, required — 데이터 라벨 (기존 customId는 deprecated)
        - `excluded` boolean — 문서에 해당 첨부파일 요청을 제외할지 여부
        - `required` boolean, nullable — 필수 여부
      - `locale` 'ko' | 'en' | 'zh-CN' | 'ja' | 'vi' — 참여자가 사용할 언어
      - `fieldMappings` ParticipantFieldMappingInCreateDocumentWithTemplateRequestDto[] — 필드 매핑 정보, 서명자인 경우에만 적용됩니다.
        - `dataLabel` string, required — 데이터 라벨, 그룹 라벨을 지정한 경우 그룹 단위로 지정됩니다.
        - `excluded` boolean, required — 필드 제외 여부, 제외 할 경우 서명자 필드로 적용되지 않습니다.
        - `prefilledValue` object, nullable — 사전 입력값. 템플릿에 설정된 기본 프리필 값을 오버라이드합니다. TEXT, COMPANY_NAME: string, CHECKBOX: boolean, DATE: ISO 8601 string, DROPDOWN: 옵션 값 string, ADDRESS: { address1, address2, city, province, zip, country } 객체
    - `requesterInputMappings` RequesterInputMappingInCreateDocumentWithTemplateRequestDto[] — 추가 내용 입력
      - `dataLabel` string, required — 데이터 라벨 (기존 customId는 deprecated)
      - `value` union, required — 요청자 입력 매핑 정보
        - string — 텍스트 필드인 경우, 필드에 입력될 문자열
        - boolean — 체크박스인 경우, 체크 여부
        - ImageInCreateDocumentWithTemplateRequestDto
          - `base64` string, required — 3MB 이하의 jpg 또는 png 이미지를 base64로 인코딩한 문자열
    - `requesterAttachmentMappings` RequesterAttachmentMappingInCreateDocumentWithTemplateRequestDto[] — 요청자 첨부파일 매핑 정보. 최대 30개까지 지정 가능
      - `dataLabel` string, required — 데이터 라벨
      - `excluded` boolean — 문서에 해당 요청자 첨부파일을 제외할지 여부
      - `file` FileInfoInCreateDocumentWithTemplateRequestDto
        - `fileId` string, required — 파일 업로드 API 를 통해 얻은 파일 ID
        - `token` string, required — 파일 업로드 API 를 통해 얻은 파일 토큰
        - `name` string, required — 첨부파일명 (확장자 제외, 특수문자 /?<>\":*|₩ 이 포함된 이름은 사용할 수 없습니다)
    - `carbonCopies` CarbonCopy[] — 문서의 참조자들 정보
      - `contact` string, required — 참조자 연락처 (이메일 주소 또는 휴대전화번호)
      - `locale` 'ko' | 'en' | 'zh-CN' | 'ja' | 'vi' — 참조자 언어
    - `auditTrail` AuditTrailRequestDto
      - `locales` string[], required — 감사 추적 인증서 제공 언어
    - `metadatas` MetadataInCreateDocumentWithTemplateRequestDto[] — 메타데이터 리스트. 최대 10개까지 등록 가능 (응답의 메타데이터는 순서가 보장되지 않습니다)
      - `key` string, required — 메타데이터 키
      - `value` string — 메타데이터 값
    - `seal` DocumentSealInCreateDocumentWithTemplateRequestDto
      - `integritySeal` IntegritySealInCreateDocumentWithTemplateRequestDto, required
        - `enabled` boolean, required — 진본 증명 도장 활성화 여부
        - `position` 'TOP_LEFT' | 'TOP_RIGHT' | 'BOTTOM_LEFT' | 'BOTTOM_RIGHT', required — 진본 증명 도장 위치
  - `brandId` string — 브랜드 ID

## Response `201`

- CreateDocumentWithTemplateResponseDto
  - `id` string, required — 문서 ID
  - `title` string, required — 문서 제목
  - `status` 'ON_GOING' | 'MODIFYING' | 'APPROVAL_PENDING' | 'DRAFT' | 'ON_PROCESSING' | 'PROCESSING_FAILED' | 'ABORTED' | 'COMPLETED' | 'SCHEDULED', required — 문서 상태: * `DRAFT` - 작성 중* `SCHEDULED` - 전송 예약 중 * `ON_GOING` - 서명/열람 진행 중 * `MODIFYING` - 수정 중 * `APPROVAL_PENDING` - 결재 대기 중 * `ON_PROCESSING` - 문서 처리 중 * `PROCESSING_FAILED` - 문서 처리 실패 * `ABORTED` - 서명/열람 중단됨 * `COMPLETED` - 모든 서명/열람 완료
  - `requester` RequesterInDocumentResponseDto, required
    - `email` string, required — 요청자 이메일
    - `name` string, required — 요청자 이름
  - `participants` union[], required — 참여자 리스트
    - union
      - SignerInDocumentResponseDto
        - `id` string, required — 참여자 ID
        - `type` 'SIGNER' | 'VIEWER', required — 참여자 타입
        - `name` string, required — 참여자 이름
        - `signingOrder` number, required — 참여자의 참여 순서
        - `signingDue` SigningDueInDocumentResponseDto, required
          - `valid` boolean, required — 현재 참여 가능 여부
          - `datetime` string, date-time, nullable, required — 참여자의 참여 유효일
        - `signingMethod` SigningMethodInDocumentResponseDto, required
          - `type` 'EMAIL' | 'KAKAO' | 'SECURE_LINK' | 'IN_PERSON', required — 참여 수단 종류
          - `value` string, required — 참여 수단 값
        - `locale` 'ko' | 'en' | 'zh-CN' | 'ja' | 'vi', required — 참여자가 사용할 언어
      - ViewerInDocumentResponseDto
        - `id` string, required — 참여자 ID
        - `type` 'VIEWER', required — 참여자 타입
        - `name` string, required — 참여자 이름
        - `signingOrder` number, required — 참여자의 참여 순서
        - `signingDue` SigningDueInDocumentResponseDto, required
          - `valid` boolean, required — 현재 참여 가능 여부
          - `datetime` string, date-time, nullable, required — 참여자의 참여 유효일
        - `signingMethod` SigningMethodInDocumentResponseDto, required
          - `type` 'EMAIL' | 'KAKAO' | 'SECURE_LINK' | 'IN_PERSON', required — 참여 수단 종류
          - `value` string, required — 참여 수단 값
        - `locale` 'ko' | 'en' | 'zh-CN' | 'ja' | 'vi', required — 참여자가 사용할 언어
        - `manuallyViewing` boolean, required — 상세 열람 여부
  - `currentSigningOrder` integer, required — 현재 참여 차례
  - `signings` SigningInDocumentResponseDto[], required — 입력된 서명, 열람 완료된 참여자 리스트
    - `participantId` string, required — 참여한 참여자 ID
    - `signedAt` string, date-time, required — 참여한 시간
  - `accessibleByParticipant` boolean, required — 문서 중단 시 요청자 외의 참여자들의 문서 파일 접근 가능 여부
  - `abort` AbortInDocumentResponseDto, required
    - `type` 'REJECTION' | 'SIGNING_CANCELLATION' | 'REQUEST_CANCELLATION', required — 중단 종류: * `REJECTION` - 거절됨 * `SIGNING_CANCELLATION` - 참여 취소됨 * `REQUEST_CANCELLATION` - 요청 취소됨
    - `message` string, required — 중단 사유
    - `abortedAt` string, date-time, required — 중단 시점
    - `participantId` string, nullable, required — 중단한 참여자 ID (거절 또는 참여 취소 시)
  - `updatedAt` string, date, required — 마지막 업데이트 시간
  - `createdAt` string, date, required — 문서 생성 시간
  - `startedAt` string, date, nullable, required — 참여 요청 시간
  - `file` PdfFileInDocumentResponseDto, required
    - `downloadUrl` string, required — 다운로드 링크(유효시간: 10분)
  - `auditTrail` AuditTrailInDocumentResponseDto, required
    - `downloadUrl` string, required — 다운로드 링크(유효시간: 10분)
    - `locales` AuditTrailLocale[], required — 감사추적인증서 제공 언어
  - `seal` DocumentSealInDocumentResponseDto, required
    - `integritySeal` IntegritySealInDocumentResponseDto, required
      - `enabled` boolean, required — 진본 증명 도장 활성화 여부
      - `position` 'TOP_LEFT' | 'TOP_RIGHT' | 'BOTTOM_LEFT' | 'BOTTOM_RIGHT', required — 진본 증명 도장 위치
  - `metadatas` MetadataDtoInDocumentResponseDto[], required — 메타데이터 리스트(응답의 메타데이터는 순서가 보장되지 않습니다)
    - `key` string, required — 메타 데이터 키
    - `value` string, required — 메타 데이터 값
  - `brandId` string — 브랜드 ID

---

[API](https://skmtc.net/modusign/apis/modusign-api.md) · [All operations](https://skmtc.net/modusign/apis/modusign-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/modusign/modusign-api/versions/5772e872cbf9/schema)
