5분 만에 첫 서명 요청 보내기
테스트 키 하나면 5분 안에 첫 서명 요청을 보낼 수 있습니다.
시작 전 확인:
- 베이스 URL은 현재 https://pactery.com/v1 입니다(정식 https://api.pactery.com/v1 은 매핑 준비 중).
- API 키는 조직 관리자에게 요청하세요 — sk_test_ 는 개발용(사용량 차감·실발송 없음), sk_live_ 는 운영용입니다. 운영 키도 발송 시에는 차감되지 않고 상대방 서명 완료 시 사용량이 반영됩니다. 키는 Authorization: Bearer 헤더로 보냅니다.
- 문서·서명자·필드 ID는 모두 UUID이고, 응답엔 object 필드가 함께 옵니다.
- 아래 예제의 키와 문서 ID 자리만 본인 값으로 바꾸면 그대로 동작합니다.
1. 문서 생성
curl https://pactery.com/v1/documents \
-H "Authorization: Bearer sk_test_..." \
-H "Content-Type: application/json" \
-d '{
"title": "업무 위탁 계약서",
"content": "<h1>업무 위탁 계약서</h1><p>본 계약은 ...</p>"
}'
응답으로 doc_로 시작하는 문서 ID가 옵니다.
{ "id": "4859ccb5-1baf-41f6-...", "status": "draft", "title": "업무 위탁 계약서" }
2. 서명자 지정
curl https://pactery.com/v1/documents/4859ccb5-1baf-41f6-.../participants \
-H "Authorization: Bearer sk_test_..." \
-H "Content-Type: application/json" \
-d '{
"name": "홍길동",
"phone": "01012345678",
"role": "signer",
"auth": "sms_pin"
}'
3. 발송
curl https://pactery.com/v1/documents/4859ccb5-1baf-41f6-.../send \
-H "Authorization: Bearer sk_test_..." \
-X POST
문서 상태가 sent로 바뀌고 서명자에게 링크가 전달됩니다.
4. 상태 확인
curl https://pactery.com/v1/documents/4859ccb5-1baf-41f6-... \
-H "Authorization: Bearer sk_test_..."
participants[].status가 signed가 되고, 모두 끝나면 문서 status가 completed가 됩니다. 폴링 대신 웹훅을 쓰면 완료 시점에 즉시 통지받습니다.
흔한 함정
- 발송(send) 후에는 문서 수정·서명자/필드 변경이 막힙니다(409). 모든 준비를 draft에서 끝내고 마지막에 send 하세요.
- 필드 좌표 x/y/width/height 는 페이지 대비 0
100(%) 값입니다(01 아님). - file 내려받기: 업로드/서명완료 PDF는 그대로, 콘텐츠(HTML) 문서는 제목+본문으로 PDF를 즉석 생성해 받습니다(한글 폰트 임베드).
- 서명자에게 SMS가 자동 발송되는 건 phone 이 있는 경우입니다.