> For the complete documentation index, see [llms.txt](https://api-kit.prix.im/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://api-kit.prix.im/signature-template/form.md).

# 전자서명 템플릿 등록/편집 페이지 API

전자서명 템플릿은 기본적으로 프릭스 서비스를 통해 등록할 수 있지만, API를 통해서 페이지를 조회하여 사용할 수도 있습니다.

API 응답으로 전자서명 템플릿을 등록 및 편집할 수 있는 페이지의 url을 내려주며, 해당 경로를 새 창이나 새 탭으로 띄워서 템플릿을 등록/편집할 수 있습니다.

* 계약 문서를 등록하고 전자서명 정보(서명 참여자 역할 및 서명 위치)와 변경될 입력값에 대한 내용을 입력하면 전자서명 템플릿이 등록됩니다.
* 추후 등록한 전자서명 템플릿을 이용하여 간편하게 서명을 요청할 수 있습니다.

<br>

## `GET` kit-api/v1/signature-templates/form-url

Method: GET\
Endpoint: kit-api/v1/signature-templates/form-url

<br>

## Example

```
...kit-api/v1/signature-templates/form-url?disabledInputs=SLUG,MANAGER&contractSampleDisabledInputs=PERMISSION&disabledFeatures=CONTRACT_SAMPLE_CREATION&participantRoles=서명자,검토자
```

템플릿 편집 페이지를 호출하는 경우 templateId를 query로 전달합니다.

```
...kit-api/v1/signature-templates/form-url?templateId=123&disabledInputs=SLUG,MANAGER
```

<br>

## Request Query

| Key                          | Description                                                   | Required |
| ---------------------------- | ------------------------------------------------------------- | -------- |
| successUrl                   | 템플릿 등록을 완료한 이후 이동되는 url (encode된 url값 사용)                     | no       |
| templateId                   | 편집할 템플릿의 id를 등록하여 편집 페이지 호출                                   | no       |
| tagIds                       | 템플릿 생성 시 태그 input의 기본값 (쉼표로 구분: ex. tagIds=2,3)               | no       |
| slug                         | 템플릿 생성 시 slug input의 기본값 (string)                             | no       |
| participantRoles             | 템플릿 생성 시 서명 참여자 역할 기본값 (쉼표로 구분: ex. participantRoles=서명자,검토자) | no       |
| disabledInputs               | 템플릿 등록/편집 페이지에서 사용하지 않을 input 목록                              | no       |
| contractSampleDisabledInputs | 양식 생성/편집 페이지에서 사용하지 않을 input 목록                               | no       |
| disabledFeatures             | 템플릿 등록/편집 페이지에서 사용하지 않을 기능 목록                                 | no       |

tagIds, slug, participantRoles는 템플릿 생성 페이지에서만 기본값으로 적용됩니다. templateId를 전달한 편집 페이지에서는 적용되지 않습니다. disabledInputs, contractSampleDisabledInputs, disabledFeatures는 템플릿 등록/편집 페이지 모두에 적용됩니다.

## Request Query : disabledInputs

disabledInputs으로 전달할 수 있는 value 목록 (쉼표로 구분)

| Key         | Description | Required |
| ----------- | ----------- | -------- |
| PERMISSION  | 권한 인풋       | no       |
| TAG         | 태그 인풋       | no       |
| SLUG        | Slug 인풋     | no       |
| MANAGER     | 담당자 인풋      | no       |
| ATTACHMENT  | 서명 참고자료 인풋  | no       |
| CC\_EMAIL   | 참조자 인풋      | no       |
| OPTION      | 상세설정 토글     | no       |
| PARTICIPANT | 서명 참여자 섹션   | no       |

<br>

## Request Query : contractSampleDisabledInputs

contractSampleDisabledInputs으로 전달할 수 있는 value 목록 (쉼표로 구분)

| Key        | Description        | Required |
| ---------- | ------------------ | -------- |
| PERMISSION | 양식 생성/편집 페이지 권한 인풋 | no       |

<br>

## Request Query : disabledFeatures

disabledFeatures로 전달할 수 있는 value 목록 (쉼표로 구분)

| Key                        | Description | Required |
| -------------------------- | ----------- | -------- |
| CONTRACT\_EDITOR\_OPTION   | 에디터 옵션 버튼   | no       |
| CONTRACT\_SAMPLE\_CREATION | 양식 생성하기 버튼  | no       |

<br>

## Response

```json
{
  "ok": true, // api 성공 여부
  "message": undefined, // Error가 존재하면 message(string)로 전달
  "data": {
    "url": "https://www.prix.im/..." // 전자서명 템플릿을 등록/편집할 수 있는 페이지 주소
  }
}
```

<br>

| Status Code | Error Code                                 | Description                             |
| ----------- | ------------------------------------------ | --------------------------------------- |
| 401         | INVALID\_BUSINESS                          | 전자서명 템플릿에 권한이 없는 경우                     |
| 404         | NOT\_FOUND\_SIGNATURE\_TEMPLATE            | 전자서명 템플릿이 존재하지 않는 경우                    |
| 404         | NOT\_FOUND\_BUSINESS\_TAG                  | 비즈니스에 등록하지 않은 태그가 포함되어 있는 경우            |
| 400         | SIGNATURE\_TEMPLATE\_SLUG\_ALREADY\_EXISTS | 이미 존재하는 템플릿 slug인 경우 (템플릿 간 slug 중복 불가) |

<br>
