
실제로 되는 것
- API 키 발급콘솔 설정 › 개발자에서 한 번 발급
- 요청 · 조회 · 다운로드콘솔에서 되는 것은 API 로도 된다
- 웹훅 HMAC-SHA256서명 시크릿으로 검증
- ChatGPT MCP대화로 서명 요청
REST API
서명 요청 생성·조회·취소·재발송·완료본 다운로드까지 콘솔에서 하는 일을 전부 호출할 수 있습니다. JSON만 주고받습니다.
Webhook
문서가 완료되면 지정한 URL로 이벤트를 보냅니다. HMAC 서명 헤더로 위조를 걸러내고, 실패하면 재시도합니다.
MCP (ChatGPT/Claude)
ChatGPT 등 MCP를 지원하는 앱에 서버를 등록하면 "○○에게 △△ 템플릿으로 서명 요청해줘"가 그대로 실행됩니다.
시작하기
API 키 하나로 시작합니다
콘솔 설정 › 개발자에서 키를 발급받아 Authorization 헤더에 넣으면 됩니다. 키는 발급 시 한 번만 표시되고, 베이직 요금제부터 발급·사용할 수 있습니다.

- Base URL
https://api.pindersign.net/v1- 인증
Authorization: Bearer psk_…: 워크스페이스 단위 API 키- 형식
- 요청·응답 모두 JSON. 파일은 base64 문자열로 보내고, 완료본은 바이너리로 내려받습니다.
- 권한
- 키마다 읽기/쓰기 범위를 둡니다. 쓰기 범위가 있어야 발송·취소·재발송이 가능합니다.
- 건수 차감
- 발송 성공 시 문서 1건당 1건. 취소하면 환불됩니다. 콘솔 발송과 같은 잔여 건수를 씁니다.
템플릿으로 서명 요청 보내기curl
curl -X POST https://api.pindersign.net/v1/requests/with-template \
-H "Authorization: Bearer psk_xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"templateId": "tpl_…",
"title": "2026년 프리랜서 용역계약서",
"participants": [
{ "name": "김하늘", "contact": "haneul@partner.co" }
],
"ordered": true,
"dueDays": 14
}'엔드포인트
콘솔의 모든 API가 제공됩니다
| 메서드 | 경로 | 설명 |
|---|---|---|
| POST | /documents | PDF(base64)·서명자·입력란으로 서명 요청 생성·발송 |
| GET | /documents | 워크스페이스 문서 목록(상태·서명자·마지막 활동일) |
| GET | /documents/:id | 문서 상세 · 서명자 상태 · 진행 이력 |
| POST | /documents/:id/remind | 미서명자에게 재발송 |
| POST | /documents/:id/cancel | 요청 취소(건수 환불) |
| GET | /documents/:id/files/:kind | 완료본(completed) · 감사추적인증서(audit) · 원본(source) 다운로드 |
| GET / POST | /templates | 템플릿 목록 · 생성 |
| POST | /requests/with-template | 템플릿으로 서명 요청(서명자만 지정) |
| POST | /requests/bulk | 템플릿으로 여러 명에게 각각 발송 |
| GET / POST | /links | 링크서명 생성 · 목록 |
| GET / POST | /contacts | 주소록 |
| GET / POST | /verify | 검증키 또는 PDF로 원본 확인 |
Webhook
웹훅 제공
콘솔에서 URL을 등록하면 서명 시크릿이 발급됩니다. 요청 본문을 그 시크릿으로 HMAC-SHA256 서명해 헤더에 실어 보냅니다.
이벤트
발송·열람·서명·완료·거절·취소·만료 7종 중에 골라 구독합니다. 전송 이력과 실패 건 재전송도 콘솔에서 봅니다.
검증
X-PinderSign-Signature 헤더의 sha256= 값을 같은 방식으로 계산해 비교하세요. 다르면 버립니다.
Webhook 요청 예시
POST https://your-app.com/webhooks/pindersign
X-PinderSign-Signature: sha256=3f1c… // HMAC-SHA256(secret, body)
{
"event": "document.completed",
"document": { "id": "…", "title": "…", "status": "completed",
"verificationKey": "…", "completedAt": "…" }
}MCP
MCP로 AI 자동화
MCP 서버를 등록하면 ChatGPT가 템플릿 목록을 보고, 서명자를 되묻고, 최종 확인을 받은 뒤 발송합니다. 확정 전에는 실제 발송이 일어나지 않습니다.
MCP 클라이언트 설정
{
"mcpServers": {
"pindersign": {
"url": "https://mcp.pindersign.net/mcp",
"headers": { "Authorization": "Bearer psk_xxxxxxxx" }
}
}
} 제공 도구
- · 서식 목록 · 서식으로 서명 요청
- · 문서 목록 · 진행 상태 · 완료본 링크
- · 미서명자 재발송 · 요청 취소
- · 주소록 검색 · 잔여 건수 조회
- · 발송 전 확인(confirm) 단계 강제
레퍼런스
개발자 문서를 참조하세요
엔드포인트별 파라미터, 응답 예시, 오류 코드, 웹훅 서명 검증 코드를 모아 뒀습니다.