> For the complete documentation index, see [llms.txt](https://api.esignon.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://api.esignon.net/kor_20210407/workflow/start/nonfacestart.md).

# 비대면 계약 시작

* 비대면 계약 서식을 시작합니다.
* export\_api 값을 따로 설정하여 받아올 값의 형식을 지정할 수 있습니다.(선택사항)
* export\_api 란 고객님이 진행중 승인, 반려를 할 경우 설정된 값을 설정된 URL로 esignon에서 request 해주는 기능입니다.
* ※ Array 타입의 파라미터가 optional 인 경우 사용 시 Array 내부 파라미터 값 중 필수 값은 반드시 입력하셔야합니다. 사용을 하지 않으실 경우엔 입력하지 않으셔도 상관없습니다.
* ※ language 파리미터의 경우 기본값 "ko-KR" ( 설정 안했을경우 )

## API 주소 정보&#x20;

| Url                                                   | Type | **Code** |
| ----------------------------------------------------- | ---- | -------- |
| <https://docs.esignon.net/api/:companyId/startsimple> | POST | 5005Q    |

## Request

### Parameters

#### PathParameters

| **Parameter Name** | DataType | **Description** |
| ------------------ | -------- | --------------- |
| CompID             | String   | 회사아이디           |

#### &#x20;Headers

| **Parameter Name** | DataType | Required | **Description**     |
| ------------------ | -------- | -------- | ------------------- |
| Content-Type       | String   | Required | "application/json"  |
| Authorization      | String   | Required | "esignon ${발급받은토큰}" |

#### &#x20; Body&#x20;

&#x20; Body - Header Parameter

| **Parameter Name** | DataType | Required | **Description**    |
| ------------------ | -------- | -------- | ------------------ |
| request\_code      | String   | Required | "5005Q"(API 고유 코드) |
| version            | String   | Required | "9.9.99"           |

&#x20; Body - Body Parameter

| **Parameter Name**                                   | DataType | Required | **Description**                                                                                                                                     |
| ---------------------------------------------------- | -------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| biz\_id                                              | String   | Required | "0"                                                                                                                                                 |
| workflow\_name                                       | String   | Required | 문서명 ( 계약서 이름 )                                                                                                                                      |
| doc\_id                                              | String   | Required | 시작할 서식 ID                                                                                                                                           |
| memb\_email                                          | String   | Required | 계약 시작자 이메일                                                                                                                                          |
| language                                             | String   | Optional | <p>"ko-KR", "en-US", "ja-JP"</p><p>전달하는 메일 및 플레이화의 표기언어</p><p>카톡의 경우 한글만 제공</p>                                                                     |
| comment                                              | String   | Optional | 전달메시지                                                                                                                                               |
| expireddate                                          | String   | Optional | <p>YYYY-MM-DD형식으로 입력</p><p>문서의 작성기한 설정</p><p>년 - 월 - 일 </p>                                                                                         |
| preview                                              | String   | Optional | <p>"preview" - 입력값 고정</p><p>옵션 설정시 비대면 계약 </p><p>시작이 아닌 미리보기URL</p><p>이 제공됩니다.</p>                                                                  |
| player\_list                                         | Array    | Required | 서명하는 고객의 정보를 입력  서식의 단계에 맞춰서 작성 필수                                                                                                                  |
| player\_list.field\_owner                            | String   | Required | 작성 순서 " 1 " 부터 시작                                                                                                                                   |
| player\_list.email                                   | String   | Required | 이메일 or 전화번호                                                                                                                                         |
| player\_list.name                                    | String   | Required | 계약 진행자 이름                                                                                                                                           |
| player\_list.mobile\_number                          | String   | Optional | 본인인증에 사용할 번호                                                                                                                                        |
| player\_list.password\_hint                          | String   | Optional | 계약 진행시 사용할  비밀번호 힌트                                                                                                                                 |
| player\_list.password                                | String   | Optional | 계약 진행시 사용할 비밀번호                                                                                                                                     |
| field\_list                                          | Array    | Optional | 미리 입력할 값이 있을 경우 추가하는 값 RadioBox,CheckBox,LabelBox ,TextBox,DatePickerBox 만 미리 값 입력가능                                                                |
| field\_list.field\_name                              | String   | Optional | 서식 필드 이름                                                                                                                                            |
| field\_list.field\_value                             | String   | Optional | <p>서식 필드 값 Radio,Check Box 의 경우 값을 (“N” or ”Y”) 로 수신 Label,Text Box 의 경우 텍스트 값을 그대로 수신</p><p>DatePickerBox  ( 날짜박스 )</p><p>의 경우 YYYY-MM-DD 형태로입</p> |
| export\_api\_info                                    | Object   | Optional | 작성 데이터를 내보낼시에 설정하는 값                                                                                                                                |
| export\_api\_info.api\_type                          | String   | Required | "StartAndEnd"(시작과 끝만) or "ALL" (전부)                                                                                                                 |
| export\_api\_info.url                                | String   | Required | 통신 받을 url                                                                                                                                           |
| export\_api\_info.link\_type                         | String   | Optional | <p>embed 전용옵션 <br>문서 완료 시 이력인증서, <br>PDF 문서 URL의 type을 변경<br>default - viewer URL<br>"download"  - download URL</p>                                 |
| export\_api\_info.request\_code                      | String   | Required | 고객이 정의하는 임의의 값 or "embed"( ExportAPI 설명 참조)                                                                                                         |
| export\_api\_info.clientid                           | String   | Optional | esignon 에서 발급받은 ID ( 발급은 문의 )                                                                                                                       |
| export\_api\_info.authorization                      | String   | Optional | <p>데이터를 수신받을때 헤더 authorization 로 설정하고 싶은 값</p><p>(수신측에서 암호토큰을 받아서 보안상 활용하고 싶으신경우)</p>                                                               |
| export\_api\_info.request\_params                    | Array    | Optional | 문서내부에 특정 값을 받아 오고싶을때 사용                                                                                                                             |
| export\_api\_info.request\_params.param\_id          | String   | Required | 받아올 파라미터 이름(사용자 지정)                                                                                                                                 |
| export\_api\_info.request\_params.param\_value       | String   | Required | Params.fields에서 받아올 값이 문서에 없는경우 받아올 기본                                                                                                              |
| export\_api\_info.request\_params.fields             | Array    | Required | 서식 내부에 있는 필드명을 조회하여 필드이름에 해당하는 값이 문서에 존재할 경우 param\_value 대신에 들어가는 값                                                                                |
| export\_api\_info.request\_params.fields.doc\_id     | String   | Required | 서식 ID                                                                                                                                               |
| export\_api\_info.request\_params.fields.field\_name | String   | Required | 값을 가져올 서식 내 필드 명                                                                                                                                    |
| customer\_list                                       | Array    | Optional | 참조자가 있을 경우 추가                                                                                                                                       |
| customer\_list.email                                 | String   | Required | 이메일 or 휴대폰번호                                                                                                                                        |
| customer\_list.name                                  | String   | Required | 참조자 이름                                                                                                                                              |
| customer\_list.language                              | String   | Optional | ko-KR, en-US, ja-JP                                                                                                                                 |

## Request Body Example

```javascript
{
	"header": {
		"request_code": "5005Q",
		"version": "9.9.99"
	},
	"body": {
		"biz_id": "0",
		"workflow_name": "{ 작성할 문서명 }",
		"memb_email":"{ 계약 시작자 이메일 }",
		"doc_id": "{서식 ID}",
		"language": "ko-KR",
		"comment": "",
		"expireddate": "YYYY-MM-DD",
		"player_list": [{
			"field_owner": "1",
			"email": "{ 받는 사람 email or 받는 사람 휴대폰 번호 }",
      "name":"{ 받는 사람 이름 }",
			"mobile_number": "{ 휴대폰 본인인증시 사용할 휴대폰번호 }",
      "password_hint":"{ 비밀번호 힌트 }",
      "password":"{비밀번호}"
		},{
			"field_owner": "2",
			"email": "{}",
      "name":"{}",
			"mobile_number": "{}",
      "password_hint":"{}",
      "password":"{}"
		}],
		"field_list": [{
				"field_name": "{ field_name }", 
				"field_value": "{ field_value }"
			}
		],
		"customer_list": [{
				"email": "{ id_type에 따라서 참조자 이메일 or 휴대폰번호 }",
	      "name":"{ 참조자 이름 }"
		}],
		"export_api_info": {
				"api_type": "{ StartAndEnd or ALL }",
				"url": "{ 통신 받을 url }",
				"link_type": "{download or null}",
				"request_code": "{ 고객이 정의하는 임의 값 }",
				"clientid": "{ 발급받은 UniqueID }",
				"authorization": "{설정 URL로 request 시에 Header - authorization 으로 받아올 값 }",
	      "request_params": [{
								"param_id": "{받아올 파라미터 이름(사용자 지정)}",
								"param_value": "{fields에서 설정한 값이 없을 경우 받아올 기본 값}",
								"fields": [{ 
                            "doc_id":"{ 서식 ID }",
                            "field_name":"{ 값을 가져올 서식 내 필드명 }" 
          			}]
				}]
	   }
	}
}
```

**request\_params** \
서식에 field\_name으로 등록한 필드 박스의 값이 없을경우 param\_id:param\_value return \
값이 있을경우엔 param\_id:field\_value를 return

## Request Body Example - only Required

```javascript
{
	"header": {
		"request_code": "5005Q",
		"version": "9.9.99"
	},
	"body": {
		"biz_id": "0",
		"workflow_name": "{ 작성할 문서명 }",
		"memb_email":"{ 계약 시작자 이메일 }",
		"doc_id": "{서식 ID}",
		"language": "ko-KR",
		"player_list": [{
			"field_owner": "1",
			"email": "{ 받는 사람 email or 받는 사람 번호 }",
			"name": "{ 받는 사람 이름 }"
		}, {
			"field_owner": "2",
			"email": "{}",
			"name": "{}"
		}]
	}
}
```

## Request Body Example - For TEST Account

```javascript
{
	"header": {
		"request_code": "5005Q",
		"version": "9.9.99"
	},
	"body": {
		"biz_id": "0",
		"memb_email": "guide@esignon.net",
		"language": "ko-KR",
		"comment": "",
		"workflow_name": "TEST-NAME",
		"doc_id": "1",
		"player_list": [{
				"field_owner": "1",
				"email": "guide@esignon.net",
				"name": "TEST"
			},
			{
				"field_owner": "2",
				"email": "guide@esignon.net",
				"name": "TEST"
			}
		],
		"field_list": [{
			"field_name": "name",
			"field_value": "name-value"
		}],
		"customer_list": [{
			"email": "guide@esignon.net",
			"name": "TEST"
		}]
	}
}
```

## Response

| Code | **Description** | **Reference**              |
| ---- | --------------- | -------------------------- |
| 200  | 성공              | 형식이 잘못 된 경우 result\_msg 참조 |
| 400  | 연결 실패           |                            |

#### Result\_msg

| Code | **Description** | **Reference**                         |
| ---- | --------------- | ------------------------------------- |
| 00   | 성공              | 성공                                    |
| 10   | 실패              | 실패                                    |
| 99   | 실패              | Unexpected exception ( 잘못된 포맷 )       |
| 12   | 실패              | 수신 메세지의 Body 정보가 잘못된 형태여서 파싱하지 못했습니다. |

## Response Body Example

```javascript
{ 
 "header":{
   "session_id": "S1001", 
   "response_code": "5005A",
   "result_code": "00", 
   "result_msg": "Work Flow가 시작됩니다.", 
   "version": "9.9.99" }, 
 "body":{ 
   "comp_id": "{ 회사 ID }", 
   "biz_id": "0", 
   "memb_email": "{ 계약 시작자 이메일 }", 
   "workflow_id": "{ 문서아이디 }", 
   "workflow_name": "{ 시작된 서식 이름 }", 
   "token": "{ 문서를 시작한 사람이 계약의 첫번째 작성자일 경우 작성페이지에 접근할때 사용하는 토큰값 }", 
   "lang": "ko-KR" }
}
```

Response 로 수신한 토큰을 <https://docs.esignon.net/mail/sign?token=:token> 경로에 token 값을 입력\
한뒤 접근하면 진행중인 계약서에 접근할 수 있습니다. \
( 생성자 기준으로 발급되는 token 입니다. 생성자가 만약 계약 단계에 있을경우 해당 URL로 서명이 가능\
그 외의 경우에는 해당 URL로 진행중인 문서 확인이 가능합니다.  )&#x20;

## Response export\_api Example

```javascript
{
	"header": {
		"api_name": "export",
		"session_id": "S1001",
		"request_code": "{ exportAPI_info 에서 지정한 request_code 값 }",
		"authorization":"{ 비대면 계약 API 사용시 설정했던 authorization 값 }"
	},
	"body": {
		"clientid": "{ eSignonAPI 사용을 위한 Unique ID }",
		"processid": "1", //문서의 진행 단계 구분값
		"requestid": "{ header 의 request_code 값 }",
		"actionid": "1", //문서의 진행 단계 구분값
		"workdatetime": "2020-01-31 04:23:28.0", //작성완료시간
		"worktype": "CF", //CF=승인, RT=반려 ( 처음 계약자가 반려시 문서는 취소 처리됩니다.)
		"wfuid": "{}", //문서의 고유ID
		"useremail": "{ 서명자 이메일or휴대폰번호 }", 
		"opinion": "", //승인, 반려시 고객들이 반려 메세지,전송 메세지를 사용한 경우 출력
		"param_id": "param_value", // fields 값을 설정한 경우 fields_value를 return
	}
}
```

## Response Body Example ( Preview )

```javascript
{
	"header": {
		"response_code": "5005A",
		"result_code": "00",
		"result_msg": "success (preview url)",
		"version": "9.9.99"
	},
	"body": {
		"preview_url": "미리보기 URL"
	}
}
```

preview 옵션 설정시 Response로 비대면 계약 시작이 아닌 미리보기 URL이 제공됩니다.&#x20;


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://api.esignon.net/kor_20210407/workflow/start/nonfacestart.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
