사용 안내서 취소

Adobe Acrobat Sign API - FAQ

 

Adobe Acrobat Sign 안내서

새로운 기능

  1. 릴리스 전 정보
  2. 릴리스 정보
  3. 중요 알림

시작하기

  1. 관리자용 빠른 시작 안내서
  2. 사용자용 빠른 시작 안내서
  3. 개발자용
  4. 비디오 튜토리얼 라이브러리
  5. FAQ

관리

  1. Admin Console 개요
  2. 사용자 관리
    1. 사용자 추가
      1. 사용자 추가
      2. 사용자 일괄 추가
      3. 디렉토리에서 사용자 추가
      4. MS Azure Active Directory에서 사용자 추가
    2. 기능 중심 사용자 생성
      1. 기술 계정 - API 기반
      2. 서비스 계정 - 수동 구동
    3. 프로비저닝 오류가 있는 사용자 확인
    4. 이름/이메일 주소 변경
    5. 사용자의 그룹 멤버십 편집
    6. 그룹 인터페이스를 통해 사용자의 그룹 멤버십 편집
    7. 사용자를 관리자 역할로 승격
    8. 사용자 ID 유형 및 SSO
    9. 사용자 ID 전환
    10. MS Azure로 사용자 인증
    11. Google Federation으로 사용자 인증
    12. 제품 프로필
    13. 로그인 경험 
  3. 계정/그룹 설정
    1. 설정 개요
    2. 전역 설정
      1. 계정 계층 및 ID
      2. 새로운 수신자 환경
      3. [자체 서명] 워크플로우
      4. 대량 전송
      5. 웹 양식
      6. 사용자 지정 전송 워크플로우
      7. Power Automate 워크플로우
      8. 라이브러리 문서
      9. 계약서를 사용하여 양식 데이터 수집
      10. 제한된 문서 표시 여부
      11. 서명된 계약의 PDF 사본 첨부 
      12. 이메일에 링크 포함
      13. 이메일에 이미지 포함
      14. 이메일에 첨부된 파일의 이름 지정
      15. 문서에 감사 보고서 첨부
      16. 여러 문서를 하나로 병합
      17. 개별 문서 다운로드
      18. 서명된 문서 업로드
      19. 내 계정의 사용자에 대한 위임
      20. 외부 수신자의 위임 허용
      21. 서명 권한
      22. 전송 권한
      23. 전자 봉인 추가 권한
      24. 기본 시간대 설정
      25. 기본 날짜 형식 설정
      26. 다중 그룹의 사용자(UMG)
        1. UMG를 사용하도록 업그레이드
      27. 그룹 관리자 권한
      28. 수신자 바꾸기
      29. 감사 보고서
        1. 개요
        2. 트랜잭션 확인 페이지에서 인증되지 않은 액세스 허용
        3. 미리 알림 포함
        4. 보기 이벤트 포함
        5. 계약 페이지/첨부 파일 수 포함
      30. 트랜잭션 꼬리말
      31. 제품 내 메시지 및 지침
      32. 액세스할 수 있는 PDF
      33. 새로운 작성 환경
      34. 의료 고객
    3. 계정 설정
      1. 로고 추가
      2. 회사 호스트 이름/URL 사용자 지정    
      3. 회사 이름 추가
      4. 계약 후 URL 리디렉션
    4. 서명 기본 설정
      1. 서식이 올바르게 지정된 서명
      2. 수신자의 서명 허용
      3. 서명자 이름 변경 가능
      4. 수신자가 자신이 저장한 서명을 사용하도록 허용
      5. 사용자 지정 사용 약관 및 소비자 공개
      6. 폼 필드를 통해 수신자 탐색
      7. 계약 워크플로우 다시 시작
      8. 서명 거부
      9. 스탬프 워크플로우 허용
      10. 서명자에게 직책 또는 회사 제공 요청
      11. 서명자의 자필 서명 인쇄 및 배치 허용
      12. 전자 서명 시 메시지 표시
      13. 서명자가 모바일 장치를 사용하여 서명을 작성하도록 요청
      14. 서명자의 IP 주소 요청
      15. 참여 스탬프에서 회사 이름 및 직책 제외
    5. 디지털 서명
      1. 개요
      2. Acrobat으로 다운로드하고 서명
      3. 클라우드 서명으로 서명
      4. 신원 제공자 메타데이터 포함
      5. 제한된 클라우드 서명 공급자
    6. 전자 봉인
    7. 디지털 신원
      1. 디지털 신원 게이트웨이
      2. ID 확인 정책
    8. 보고서 설정
      1. 새로운 보고서 환경
      2. 기존 보고서 설정
    9. 보안 설정
      1. Single Sign-on 설정
      2. 기억하기 설정
      3. 로그인 암호 정책
      4. 로그인 암호 보안 수준
      5. 웹 세션 기간
      6. PDF 암호화 유형
      7. API
      8. 사용자 및 그룹 정보 액세스
      9. 허용된 IP 범위
      10. 계정 공유
      11. 계정 공유 권한
      12. 계약 공유 컨트롤
      13. 서명자 신원 확인
      14. 계약 서명 암호
      15. 문서 암호 보안 수준
      16. 지리적 위치에 따른 서명자 차단
      17. 전화 인증
      18. 지식 기반 인증(KBA)
      19. 페이지 추출 허용
      20. 문서 링크 만료
      21. Webhook/콜백용 클라이언트 인증서 업로드
      22. 타임스탬프
    10. 전송 설정
      1. 로그인 후 전송 페이지 표시
      2. 전송 시 수신자 이름 필요
      3. 알려진 사용자에 대한 이름 값 잠금
      4. 허용된 수신자 역할
      5. 전자 증명자 허용
      6. 수신자 그룹
      7. CC
      8. 수신자 계약 액세스
      9. 필수 필드
      10. 문서 첨부
      11. 필드 결합
      12. 계약 수정
      13. 계약 이름
      14. 언어
      15. 개인 메시지
      16. 허용되는 서명 유형
      17. 알림 메시지
      18. 서명된 문서 암호 보호
      19. 다음을 통해 계약 알림 전송
      20. 서명자 식별 옵션
        1. 개요
        2. 서명 암호
        3. 이메일을 통한 일회용 암호
        4. Acrobat Sign 인증
        5. 전화 인증
        6. 클라우드 기반 디지털 서명
        7. 지식 기반 인증
        8. 정부 ID
        9. 서명자 신원 보고서
      21. 콘텐츠 보호
      22. Notarize 트랜잭션 활성화
      23. 문서 만료
      24. 서명 미리 보기, 배치 및 필드 추가
      25. 서명 순서
      26. Liquid Mode
      27. 사용자 지정 워크플로우 제어
      28. 전자 서명 페이지 업로드 옵션
      29. 서명 후 확인 URL 리디렉션
    11. 메시지 템플릿
    12. Bio-Pharma 설정
      1. 개요
      2. ID 인증 적용
      3. 서명 이유
    13. 워크플로우 통합
    14. 공증 설정
    15. 결제 통합
    16. 서명자 메시징
    17. SAML 설정
      1. SAML 구성
      2. Microsoft Active Directory Federation 서비스 설치
      3. Okta 설치
      4. OneLogin 설치
      5. Oracle Identity Federation 설치
    18. 데이터 거버넌스
    19. 타임 스탬프 설정
    20. 외부 보관
    21. 계정 언어
    22. 이메일 설정
      1. 이메일 머리글/바닥글 이미지
      2. 개별 사용자 이메일 바닥글 허용
      3. 서명 요청됨 이메일 사용자 지정
      4. 받는 사람 및 참조 필드 사용자 지정
      5. 링크 없음 알림 활성화
      6. 이메일 템플릿 사용자 지정
    23. echosign.com에서 adobesign.com으로 마이그레이션합니다.
    24. 수신자 옵션 구성
  4. 규정 요구 사항 지침
    1. 접근성
      1. 접근성 준수
      2. Acrobat 데스크탑으로 액세스 가능한 폼 만들기
      3. 액세스 가능한 AcroForm 만들기
    2. HIPAA
    3. GDPR
      1. GDPR 개요
      2. 사용자 삭제
      3. 사용자의 계약서 삭제    
    4. 21 CFR Part 11 및 EudraLex Annex 11
      1. 21 CRF Part 11 검증 팩
      2. 21 CFR 및 EudraLex Annex 11 핸드북
      3. 공유된 책임 분석
    5. 의료 고객
    6. IVES 지원
    7. 계약 "보관"
    8. EU/영국 고려 사항
      1. EU/영국 국가 간 트랜잭션 및 eIDAS
      2. 전자 서명 증서에 대한 HMLR 요구 사항
      3. 브렉시트가 영국의 전자 서명법에 미치는 영향
  5. 계약서 일괄 다운로드
  6. 도메인 요청 
  7. 오용 신고 링크

계약 전송, 서명 및 관리

  1. 수신자 옵션
    1. 이메일 미리 알림 취소
    2. 전자 서명 페이지의 옵션
      1. 전자 서명 페이지의 개요
      2. 열어서 필드가 없는 계약서 읽기
      3. 계약서 서명 거부
      4. 서명 권한 위임
      5. 계약 재시작
      6. 계약서의 PDF 다운로드
      7. 계약 내역 보기
      8. 계약 메시지 보기
      9. 전자 서명에서 자필 서명으로 전환
      10. 자필 서명에서 전자 서명으로 전환
      11. 양식 필드 탐색
      12. 양식 필드에서 데이터 지우기
      13. 전자 서명 페이지 배율 조정 및 탐색
      14. 계약 도구 및 정보에 사용되는 언어 변경
      15. 법적 고지 사항 검토
      16. Acrobat Sign 쿠키 환경 설정 조정
  2. 계약 보내기  
    1. 전송 페이지 개요
    2. 계약을 자신에게만 보냄
    3. 다른 사람에게 계약 보내기
    4. 자필 서명
    5. 수신자 서명 순서
    6. 대량 전송
      1. 대량 전송 기능 개요
      2. 대량 전송 - 상위 템플릿 구성
      3. 대량 전송 - CSV 파일 구성
      4. 대량 전송 트랜잭션 취소
      5. 대량 전송에 미리 알림 추가
      6. 대량 전송을 위한 보고
  3. 문서에 필드 작성
    1. 인앱 작성 환경
      1. 자동 필드 감지
      2. 작성 환경을 사용하여 필드 끌어다 놓기
      3. 수신자에게 양식 필드 지정
      4. 미리 채우기 역할
      5. 재사용 가능한 필드 템플릿으로 필드 적용
      6. 필드를 새 라이브러리 템플릿에 전달
      7. 계약 발송 시 작성 환경 업데이트
    2. 텍스트 태그로 폼 만들기
    3. Acrobat으로 폼 만들기(AcroForm)
      1. AcroForm 만들기
      2. 액세스 가능한 PDF 만들기
    4. 필드
      1. 필드 유형
        1. 일반 필드 유형
        2. 인라인 이미지
        3. 스탬프 이미지
      2. 필드 콘텐츠 표시
      3. 필드 확인
      4. 마스크된 필드 값
      5. 조건 표시/숨기기 설정
      6. 계산된 필드 
    5. 작성 FAQ
  4. 계약 서명
    1. 전송된 계약 서명
    2. 채우기 및 서명
    3. 자체 서명
  5. 계약 관리
    1. 관리 페이지 개요
    2. 계약 위임
    3. 수신자 바꾸기
    4. 문서 가시성 제한
    5. 계약 취소
    6. 새 미리 알림 만들기
    7. 미리 알림 검토
    8. 알림 메시지 취소
    9. Power Automate 플로우 액세스
    10. 기타 작업...
      1. 검색 방식
      2. 계약 보기
      3. 계약에서 템플릿 생성
      4. 보기에서 계약 숨기기/숨기기 취소
      5. 서명된 계약서 업로드
      6. 전송된 계약의 파일 및 필드 수정
      7. 수신자의 인증 방법 편집
      8. 만료일 추가 또는 수정
      9. 계약에 메모 추가
      10. 개별 계약 공유
      11. 계약 공유 해제
      12. 개별 계약 다운로드
      13. 계약의 개별 파일 다운로드
      14. 계약의 감사 보고서 다운로드
      15. 계약의 필드 콘텐츠 다운로드
  6. 감사 보고서
  7. 보고 및 데이터 내보내기
    1. 개요
    2. 사용자에게 보고에 대한 액세스 권한 부여
    3. 보고서 차트
      1. 새 보고서 만들기
      2. 계약 보고서
      3. 트랜잭션 보고서
      4. 설정 활동 보고서
      5. 보고서 편집
    4. 데이터 내보내기 
      1. 새 데이터 내보내기 만들기
      2. 웹 양식 데이터 내보내기
      3. 데이터 내보내기 편집
      4. 데이터 내보내기 콘텐츠 새로 고침
      5. 데이터 내보내기 다운로드
    5. 보고서 이름 바꾸기/내보내기
    6. 보고서 복제/내보내기
    7. 보고서/내보내기 예약
    8. 보고서 삭제/내보내기
    9. 트랜잭션 사용량 확인

고급 계약 기능 및 워크플로우

  1. 웹 양식 
    1. 웹 양식 만들기
    2. 웹 양식 편집
    3. 웹 양식 비활성화/활성화
    4. 웹 양식 숨기기/숨김 해제
    5. URL 또는 스크립트 코드 찾기 
    6. URL 매개변수를 사용하여 웹 양식 필드 미리 작성
    7. 웹 양식을 저장하고 나중에 완료
    8. 웹 양식 크기 조정
  2. 재사용 가능 템플릿(라이브러리 템플릿) 
    1. Acrobat Sign 라이브러리의 미국 정부 양식
    2. 라이브러리 템플릿 만들기
    3. 라이브러리 템플릿의 이름 변경
    4. 라이브러리 템플릿의 유형 변경
    5. 라이브러리 템플릿의 권한 수준 변경
    6. 공유 템플릿 복사, 편집 및 저장
    7. 라이브러리 템플릿의 집계 필드 데이터 다운로드
  3. 웹 양식 및 라이브러리 템플릿의 소유권 이전
  4. Power Automate 워크플로우 
    1. Power Automate 통합 및 포함된 권한 개요
    2. Power Automate 통합 활성화
    3. 관리 페이지의 컨텍스트별 작업
    4. Power Automate 사용 추적
    5. 새 플로우 만들기(예시)
    6. 플로우에 사용되는 트리거
    7. Acrobat Sign 외부에서 플로우 가져오기
    8. 플로우 관리
    9. 플로우 편집
    10. 플로우 공유
    11. 플로우 비활성화 또는 활성화
    12. 플로우 삭제
    13. 템플릿 사용
      1. 관리자만
        1. 완료된 모든 문서를 SharePoint에 저장
        2. 작성한 모든 문서를 OneDrive for Business에 저장
        3. 완료된 모든 문서를 Google Drive에 저장
        4. 완료된 모든 문서를 DropBox에 저장
        5. 완료된 모든 문서를 Box에 저장
      2. 계약 보관
        1. 작성된 문서를 SharePoint에 저장
        2. 작성한 문서를 One Drive for Business에 저장
        3. 작성한 문서를 Google Drive에 저장
        4. 작성한 문서를 DropBox에 저장
        5. 작성한 문서를 상자에 저장
      3. 웹 양식 계약 보관
        1. 작성한 웹 양식 문서를 SharePoint 라이브러리에 저장
        2. 작성한 웹 양식 문서를 OneDrive for Business에 저장
        3. 작성한 문서를 Google Drive에 저장
        4. 작성한 웹 양식 문서를 Box에 저장
      4. 계약 데이터 추출
        1. 서명된 문서에서 양식 필드 데이터를 추출하고 Excel 시트 업데이트
      5. 계약 알림
        1. 계약 콘텐츠 및 서명된 계약서와 함께 사용자 지정 이메일 알림 전송
        2. Teams 채널에서 Adobe Acrobat Sign 알림 받기
        3. Slack에서 Adobe Acrobat Sign 알림 받기
        4. Webex에서 Adobe Acrobat Sign 알림 받기
      6. 계약 생성
        1. Power App 양식 및 Word 템플릿에서 문서를 생성하고 서명을 위해 전송
        2. OneDrive의 Word 템플릿에서 계약 생성 및 서명 받기
        3. 선택한 Excel 행에 대한 계약 생성, 검토를 위해 보내기 및 서명
  5. 사용자 지정 전송 워크플로우
    1. 사용자 지정 전송 워크플로우 디자이너
    2. 새 전송 워크플로우 구성
    3. 전송 워크플로우 편집
    4. 전송 워크플로우 활성화 또는 비활성화
    5. 전송 워크플로우로 계약 보내기
  6. 사용자 및 계약 공유
    1. 사용자 공유
    2. 계약 공유

다른 제품과 통합

  1.  Acrobat Sign 통합 개요 
  2. Salesforce용 Acrobat Sign
  3. Microsoft용 Acrobat Sign
    1. Microsoft 365용 Acrobat Sign
    2. Outlook용 Acrobat Sign
    3. Word/PowerPoint용 Acrobat Sign
    4. Teams용 Acrobat Sign
    5. Microsoft PowerApps 및 Power Automate용 Acrobat Sign
    6. Microsoft Search용 Acrobat Sign 커넥터
    7. Microsoft Dynamics용 Acrobat Sign
    8. Microsoft SharePoint용 Acrobat Sign 
  4. 기타 통합
    1. ServiceNow용 Acrobat Sign
    2. HR ServiceNow용 Acrobat Sign
    3. SAP SuccessFactors용 Acrobat Sign
    4. Workday용 Acrobat Sign
    5. NetSuite용 Acrobat Sign
    6. VeevaVault용 Acrobat Sign
    7. Coupa BSM Suite용 Acrobat Sign
  5. 파트너 관리 통합
  6. 통합 키 획득 방법

Acrobat Sign 개발자

  1. REST API
    1. 메서드 설명서
    2. SDK/개발자 안내서
    3. API FAQ
  2. Webhook 
    1. Webhook 개요
    2. 새 Webhook 구성
    3. Webhook 보기 또는 편집
    4. Webhook 비활성화 또는 재활성화
    5. Webhook 삭제
    6. 양방향 SSL 인증
    7. API의 Webhook

지원 및 문제 해결

  1. 고객 지원 리소스 
  2. 기업 고객 성공 리소스 

API 액세스는 Enterprise 및 Developer 계층의 계정 전용으로 예약되어 있습니다.

핵심 설명서 링크

참고:

기존 SOAP API에 대한 지원은 2021년 5월부로 종료되었습니다.

SOAP API를 사용 중인 모든 고객은 최대한 빨리 REST API로 마이그레이션해야 합니다.

로그인 후, 계정 > Acrobat Sign API > API 정보 > REST API 및 문서
로 이동합니다.


일반적인 개념

웹 UI에서 페이지를 보거나, 끌어서 놓거나 또는 API를 통해 transientDocumentId로 서명인 역할을 할당하여 문서를 작성할 수 없습니다.

transientDocuments 호출은 7일 동안 유효한 transientDocumentID를 반환합니다.  추가 API 호출에만 사용할 수 있습니다. API 서버에 저장되며 해당 ID가 할당됩니다. 파일을 업로드한 다음 추가 API 호출에서 해당 ID를 참조합니다.

REST API를 사용하여 계약에 문서를 직접 업로드할 수 없습니다.

REST 요구 사항에 따라 먼저 임시 문서를 생성한 다음 계약, 위젯 또는 라이브러리 메서드에서 해당 ID를 파일 소스로 사용합니다.

임시 문서는 PDF, doc, docx와 같이 Adobe 서버에 업로드된 원시 소스 파일입니다. 그러므로 기본 문서를 API 서버로 전송하고 임시 문서를 웹에 전송하는 편리한 방법입니다.

예, API 호출 POST /agreements를 사용하여 v6의 워크플로우에서 계약을 게시할 수 있습니다. API 호출의 workflowId 매개 변수를 전달합니다.

GET /workflows 호출을 사용하여 워크플로우의 workflowId를 가져올 수 있습니다.

  1. 관리자로 Adobe Sign에 로그인합니다.

  2.  계정 > Adobe Sign API > API 요청 로그로 이동합니다.

    API 로그

  1.  관리자로 Adobe Sign 계정에 로그인합니다.

  2. 계정 > Adobe Sign API > API 정보로 이동합니다.

  3. REST API 샘플 링크를 클릭합니다.

    참고:

    JavaScript SDK를 다운로드하려면 https://github.com/adobe-sign/AdobeSignJsSdk을 확인합니다.

v6부터는 'sendTroughWeb' 옵션을 더 이상 사용할 수 없습니다. 대신 상태가 이를 대체합니다. 계약이 체결된 상태입니다. 상태 필드는 POST 호출에서만 제공될 수 있습니다. GET /agreements/{ID}에서 반환되지 않으며 PUT /agreements/{ID} 호출에서 제공되면 무시됩니다. 계약의 최종 상태는 GET /agreements/ID에서 확인할 수 있습니다.

state(string) = ['AUTHORING' or 'DRAFT' or 'IN_PROCESS'].

AUTHORING을 사용하면 계약 문서를 보내기 전에 작성할 수 있습니다. 여기서 작성 작업은 계약 문서에서 구성(담당자, 조건, 데이터 유형 등)과 함께 양식 필드를 생성, 편집 또는 배치하는 것을 의미합니다. 문서를 작성 상태로 게시하면 Adobe Sign 관리 탭의 초안 섹션에 문서가 표시됩니다.

DRAFT는 최종 리소스를 생성하는 단계에서 업데이트할 수 있으며 Adobe Sign 관리 탭 초안 섹션에 표시되지 않는 최종 목표 리소스의 임시 또는 기본 단계입니다. 초안 상태를 사용하면 참가자 설정 정보가 필요하지 않으며 나중에 해당 초안을 완료하기 위해 PUT /agreements/agreementId 을 작성하는 동안 할당할 수 있습니다. 이 단계는 계약을 생성하는데 필요한 모든 데이터를 확보할 때까지 여러 번 반복될 수 있습니다.

IN_PROCESS는 계약 상태를 서명을 위해 전송됨으로 변경하고 Adobe Sign 관리 탭 서명을 위해 전송됨 섹션에 표시됩니다.

sendThroughWeb을 사용하면 계약을 대화형으로 보낼 수 있습니다. v5 POST /agreements 요청 "options" 필드의 다양한 매개 변수를 사용하여 사용자가 해당 대화형 보기(전송 페이지)를 구성할 수 있습니다. fileUploadOptions와 같은 모든 페이지 구성 매개 변수는 POST agreements/ID/views API로 옮겨집니다.

따라서 사실상 AUTHORING 상태에서 POST /agreements API로 계약을 생성하여 sendThroughWeb을 달성할 수 있습니다. 그런 다음 원하는 구성에서 다음 페이지의 URL을 요청하려면 POST agreements/ID/views API를 호출합니다.

다음 절차를 수행합니다.

1. REST API V6 설명서로 이동하여 POST/agreements 메서드를 선택합니다.
2. 다음의 요청 코드를 사용합니다.

{

  "fileInfos": [

    {

      "transientDocumentId": "***************************"

    }

  ],

  "name": "test",

  "participantSetsInfo": [

    {

      "memberInfos": [

        {

          "email": "abc@gmail.com"

        }

      ],

      "order": 1,

      "role": "SIGNER"

    }

  ],

  "signatureType": "ESIGN",

  "state": "AUTHORING"

}

 

3. 아래의 요청 코드와 함께 post /agreements/{agreementId}/views 메서드를 사용합니다.

 

{

  "name": "AUTHORING"

}

응답 코드는 필드 작성을 위한 URL을 제공합니다.

아래와 같은 방법으로 콜백 URL을 정의할 수 있습니다.

  • 다음의 매개 변수를 사용하여 필요에 따라 콜백 URL을 정의합니다:

    "callbackInfo": "",
  • 전체 계정에 대한 기본 콜백 URL을 설정하려면 Adobe Sign 지원에 문의하세요.

SOAP UI(SmartBear)는 API 호출 시 발생하는 다음과 유사한 SSL 연결 오류를 가져옵니다. 해당 오류는 일반적으로 TLS1.2보다 낮은 오래된 SSL 또는 TLS 프로토콜을 사용하는 경우에 발생합니다.

오류: 요청에서의 예외: javax.net.ssl.SSLException: 치명적 경고 수신: protocol_version
오류: [치명적 경고 수신: protocol_version] 오류가 발생했습니다. 세부 사항은 오류 로그를 확인합니다.

  1. Bin 폴더의 VMOPTIONS 파일에 (-Dsoapui.https.protocols=SSLv3,TLSv1.2)를 추가합니다.

  2. C:\Program Files\SmartBear\SoapUI-5.2.1\bin 로 이동합니다(SOAP UI의 설치 위치에 따라 달라질 수 있습니다. C:\Program Files (x86) 아래에 있을 수 있음).

  3. VMOPTIONS 파일에서 전체 파일의 읽기/쓰기 권한을 활성화합니다.

    VMOPTIONS

  4. VMOPTIONS 파일>속성>보안 탭>사용자 선택>편집을 마우스 오른쪽 버튼으로 클릭합니다. (사용자 액세스 제어 아이콘이 편집 버튼에 나타납니다)>모든 확인란을 선택하고 [확인]을 클릭합니다.

  5. Administrators, Systems 및 모든 애플리케이션 패키지에도 동일하게 반복합니다.

  6. 메모장에서 파일을 엽니다.

  7. "-Dsoapui.https.protocols=SSLv3,TLSv1.2" 프로토콜을 아래에 추가하고 변경 사항을 저장합니다.

  8. SOAP UI를 닫고 다시 시작합니다. API 호출 시 SSL 오류 없이 작동합니다. (확인을 위해 ping 호출을 테스트합니다).

다음은 Adobe Sign 애플리케이션에서 클라이언트 ID 및 클라이언트 암호를 만드는 단계입니다.

  1. Adobe Sign 계정에 로그인합니다.

  2. 계정 > Adobe Sign API > API 애플리케이션으로 이동합니다.

    Fnord.

  3. 애플리케이션을 만들려면 + 아이콘을 클릭합니다.

    Fnord.

  4. 이름 및 표시 이름을 입력합니다.

  5. 도메인 아래에서 고객을 선택하고 저장을 클릭합니다.

    Fnord.

  6. 한 번 클릭해서 애플리케이션을 강조 표시합니다.

  7. 애플리케이션에 대한 OAuth 구성을 클릭합니다.

    Fnord.

  8. 리디렉션 URI를 입력합니다.

  9. 필요 범위를 활성화하려면 각 확인란을 선택하고 저장을 클릭합니다.

  1. 계정 관리자로 Adobe Sign에 로그인합니다.

  2. 계정 > Adobe Sign API > API 정보로 이동합니다.

  3. 통합 키 링크를 클릭합니다.

    통합 키로 이동합니다.

    참고:

    통합 키 링크가 표시되지 않으면 Success 담당자에게 문의하여 계정을 활성화하세요.

    • 직관적인 값으로 키 이름을 지정합니다.
    • 애플리케이션 기능에 필요한 다양한 범위를 선택합니다.
    • 키가 완전히 구성되면 저장을 클릭합니다.
    통합 키 인터페이스 만들기

  4. 저장한 키는 계정 > 개인 환경 설정 > 액세스 토큰에서 찾을 수 있습니다.

    키 이름과 활성화된 모든 범위가 나열됩니다.  

    키 설명을 한 번 클릭하면 작업 링크가 표시됩니다.

    • 통합 키 - 해당 링크는 리터럴 키를 제공합니다 
    • 취소 - 액세스 토큰이 영구적으로 취소 및 삭제됩니다.
    액세스 토큰 - 통합 키

  1. Adobe Sign 계정에 로그인합니다.

  2. 계정 > Adobe Sign API > API 애플리케이션으로 이동합니다.

  3. + 아이콘을 클릭하여 애플리케이션을 만듭니다.

    Postman1

  4. 애플리케이션에 대한 OAuth 구성을 클릭합니다.

    Fnord.

  5. 다음 링크를 사용하여 인증 코드를 생성합니다. 클라이언트 ID, 리디렉션 URI 및 범위는 애플리케이션에서 선택한 대로 다음 URL에 있는 내용과 동일해야 합니다(followingURL에서 공백을 피하고 'NA1'과 같은 분할은 Adobe Sign 계정이 속한 그대로입니다):

    https://secure.na1.echosign.com/public/oauth?redirect_uri=https://www.google.co.in&response_type=code&client_id=CBJCHBCAABAAo9FZgq31_5BVG_kcIXEe6gNtn-R-gdNe&scope=user_login:self+agreement_send:account

  6. 호출에 성공하면 주소 표시줄에서 인증 코드를 선택합니다.

    Fnord.

  7. https://www.getpostman.com/apps링크에서 Postman을 다운로드하고 설치합니다.

  8. 다운로드와 설치가 완료되면 [새로 만들기]를 클릭하여 POST를 만듭니다.

  9. Adobe Sign 계정이 속한 https://secure.na1.echosign.com/oauth/token 링크를 입력합니다.

  10. 헤더 아래에 내용-형식을 application/x-www-form-urlencoded로 입력합니다.

  11. 본문 아래에 x-www-form-urlencoded 가 선택되어 있는지 확인하고 Adobe Sign 계정에서 만든 애플리케이션의 해당 값과 함께 아래 매개 변수를 입력한 다음 [보내기]를 클릭합니다.

    Fnord.

  12. 모든 정보가 정확하면 응답에 액세스 토큰과 새로 고침 토큰을 반환합니다.

    Fnord.

OAuth 프로세스를 실행하는 동안 다음 사항을 확인합니다.

1. 올바른 클라이언트 ID 및 리디렉션 URI가 지정되었습니다.
2. 인증 URL에 제공된 범위가 Adobe Sign 애플리케이션에 제공된 범위와 정확하게 일치해야 합니다.
3. 구성 중인 계정에 따라 올바른 분할(na1, na2, au1, eu1, jp1)을 사용합니다.
4. (해당하는 경우) 인증 URL의 공백을 제거합니다.
5. 인증 URL의 구문을 확인합니다.

https://secure.na1.echosign.com/public/oauth?redirect_uri=https://secure.na1.echosign.com/public/oauthDemo&
response_type=code&client_id=9MEJXY4Y4R7L2T&scope=agreement_send

액세스 토큰은 3,600초(1시간) 동안만 유효하며 이후 만료됩니다.

API 요청 보유자는 필요에 따라 새 액세스 토큰을 생성하기 위해 새로 고침 토큰을 사용할 수 있습니다.

Webhook은 REST API v6 및 이후 버전에서 지원됩니다.

Webhook 수신자가 72시간 이내에 응답하지 않으면 Webhook가 비활성화되고 알림이 전송되지 않습니다.

Webhook 대상 URL이 다운된 경우 Adobe Sign은 JSON을 대기열에 추가하고 72시간 동안 점진적 주기로 푸시를 다시 시도합니다.

전달되지 않은 이벤트는 다시 시도 대기열에 유지되며 다음 72시간 동안 발생한 순서대로 알림을 전달하기 위해 계속 시도합니다.

알림 전달을 다시 시도하는 전략은 시도 간 시간을 두 배로 늘리는 것입니다. 1분 간격에서 시작하여 매 12시간 동안 증가하여 72시간 동안 총 15번을 다시 시도합니다.

 

Adobe Sign UI에서 직접 Webhook을 만들려면 Azure AD 함수 앱에서 아래 단계를 사용하여 Webhook URL을 만듭니다.

  1. Microsoft 계정으로 로그인합니다 https://portal.azure.com/.

  2. AzureAD 계정으로 함수 앱에 등록합니다.

    Azure 메뉴

  3. AzureAD로 이동하여 함수 앱 > 함수의 + 아이콘을 클릭합니다.

  4. JavaScript를 언어로 사용하는 Webhook+API를 선택하고 [함수 만들기]를 클릭합니다.

    Azure API UI

  5. Index.js 파일을 다음의 코드 조각으로 바꿉니다.

    module.exports = function (context, req) { var clientId = req.headers['x-adobesign-clientid']; // Validate that the incoming ClientID is genuine if (clientId === '************************************') { context.res = { // status: 200, /* Defaults to 200 */ // any 2XX response is acceptable body: { 'xAdobeSignClientId' : clientId, }, headers : { 'Content-Type' : 'application/json' } }; } else { context.res = { status: 400, body: "Opps!! Illegitimate Call identified" }; } context.done(); 
    };
  6. 오른쪽 모서리의 [테스트] 버튼을 클릭하고 다음 헤더를 입력합니다.

    X-AdobeSign-ClientId as ***********************

    API 테스트

  7. 저장 및 실행을 클릭합니다.

  8. 다음 헤더와 200 OK 응답을 수신하면 [함수 URL 가져오기]를 클릭합니다.

    200 응답

  9. URL을 복사하고 Adobe Sign UI > Webhook > + 아이콘을 클릭하여 만듭니다.

  10. 다음 정보를 입력합니다. 

    • 이름: 다른 관리자가 쉽게 이해할 수 있는 직관적인 이름이 권장됩니다.
    • 범위: Webhook의 도달 범위를 설정합니다. 인터페이스에서 계정 및 그룹을 사용할 수 있습니다.
      API에서는 계정, 그룹, 사용자 및 리소스 범위를 지원합니다.
    • Webhook당 하나의 범위만 정의할 수 있습니다.
    • URL: Adobe Sign이 JSON 페이로드를 푸시한 대상 URL입니다.
    • 이벤트: Adobe Sign이 JSON을 빌드하고 URL로 푸시하도록 하는 트리거입니다.
      각 이벤트는 트리거 이벤트와 관련된 다른 페이로드를 빌드
      하나의 Webhook에 여러 이벤트를 포함할 수 있음
    • 알림 매개 변수: 알림 매개 변수는 이벤트 JSON 페이로드의 섹션을 식별하여 중요한 이벤트 섹션만 선택할 수 있습니다.
    Webhook UI

  11. Webhook이 완벽히 정의된 후 [저장]을 클릭하면 새 Webhook이 반응하여 즉시 이벤트를 트리거합니다.

계약 자산이란 라이브러리 문서, 위젯 및 계약 자체와 같이 계약을 생성할 수 있는 자산을 의미합니다.

계약 자산 이벤트를 검색하려면 먼저 관련 검색 매개 변수를 사용하여 agreementAssetEvents를 생성하는 API에 요청합니다.

응답은 검색 ID 매개 변수 및 다음 페이지 커서와 결과의 첫 페이지입니다. 검색 ID를 기반으로 agreementAssetEvents 검색 API가 사용 가능한 경우 이를 사용하여 추가 페이지 결과를 가져올 수 있습니다.

  1. 버전 5용 REST API 설명서를 엽니다.

  2. post/search/agreementAssetEvents로 이동하여 관련 범위의 액세스 토큰을 생성합니다.

  3. 요청 코드에서 요구 사항에 따라 시작일과 종료일을 정의합니다.

    { 
      "endDate": "2018-05-22T22:33:33", "startDate": "2017-12-22T22:33:33" 
    }
  4. 사용하기를 클릭합니다. 계약 ID로 사용할 수 있는 계약 자산 ID를 가져옵니다.


사용자/계정 관리

  1. Adobe Sign에 로그인합니다.
  2. 계정>Adobe Sign API>REST API 설명서로 이동합니다.
  3. 버전 5를 선택합니다.
  4. post /users 메서드에서 다음과 같이 언급된 요청 코드를 사용합니다:
    UserCreationInfo method
    {
    "email": "email@email.com",
    "firstName": "AA",
    "lastName": "AB",
    "password":"12******rte"
    }

Admin Console(Adobe One)을 사용하여 사용자 권한을 관리하는 Adobe Sign 계정은 Adobe Sign API를 사용하여 사용자를 생성하거나 기존 사용자를 관리할 수 없습니다.

Adobe One Admin ConsoleAdobe Sign API와는 다른 API를 사용합니다. 자세한 내용은 다음의 문서를 참조하세요.

 

그룹 ID 가져오기:

  1.  https://secure.na1.echosign.com/public/docs/restapi/v5로 이동합니다.

  2. 리소스 및 작업에서 그룹을 클릭합니다.

  3. GET /groups를 클릭합니다.

  4. oAuth Access-token 버튼을 클릭합니다.

  5. 액세스 토큰을 생성합니다.

  6. 사용하기 버튼을 클릭합니다.

    그룹 이름 및 그룹 ID와 함께 다음 응답을 수신합니다.

    { 
      "groupInfoList": [ { "groupId": "3AAABLblqZhB4o9EnlvmGB_m8CrG5O6XClTBO7vmojOOexu5r3G95LtEV2Sp7BuhNvQYSvWB7PmmwVPXnhPIiYSuHV98Cerkp", "groupName": "Default Group" }, { "groupId": "3AAABLblqZhC3dPT6za5h7r1-BOEWivCe_OcAVONhcsKa57SL9_iCwGr5v_JED1No5jE20Pcjv0mYH2J-LoY1AcmqS69vRkO7", "groupName": "test" 
        }, 
      ] 
    }

그룹 삭제하기:

  1. DELETE /groups/{groupId}를 클릭합니다.

  2. 액세스 토큰을 생성하려면 oAuth Access-token 버튼을 클릭합니다.

  3. 이전 호출에서 응답으로 수신한 groupId를 삭제하려는 groupId 박스에 추가합니다.

  4. 사용하기를 클릭합니다.

    그룹이 삭제되면 '내용이 없습니다.'라는 응답을 수신합니다.

참고:

사용자가 할당된 그룹은 삭제할 수 없습니다. 빈 그룹만 삭제할 수 있습니다. 그룹에 사용자가 존재하는 경우 다음과 같은 응답을 수신합니다.


{

  "code": "GROUP_NOT_EMPTY",

  "message": "그룹이 비어있지 않아 삭제할 수 없습니다."

}


계약 시작/전송

임시 문서 생성하기

  1. transientDocuments 을 클릭하고 POST /transientDocuments 메서드를 확장합니다.

  2. OAuth Access-token 버튼을 클릭합니다.

    API TransientDocument 메서드

    • 트랜잭션에 범위를 활성화합니다.
    • 승인을 클릭합니다.
    OAuth 범위

  3. 액세스 허용

    문제가 있는 경우 액세스 허용을 클릭합니다.

  4. API 메서드 페이지로 돌아갑니다. 인증 값이 채워진 것을 확인할 수 있습니다.

    • 파일-이름 필드에 파일 이름을 입력합니다.
    • 파일 선택 버튼을 클릭하고 계약 문서를 업로드합니다.
    • 사용하기 버튼을 클릭합니다.
    사용하기!

  5. 응답이 생성됩니다.

    transientDocumentID응답 본문에서 확인할 수 있습니다.

    임시 문서 ID

임시 문서를 사용하여 계약 생성하기

  1. agreements 를 클릭하고 POST /agreements 메서드를 확장합니다.

    • OAuth Access-token 버튼을 클릭합니다.
    • OAuth 범위 활성화
    • 승인을 클릭합니다.
      • 문제가 있는 경우 액세스 허용을 클릭합니다.
  2. API 메서드 페이지로 돌아갑니다. 인증 값이 채워진 것을 확인할 수 있습니다.

    • 아래 스크립트를 텍스트 편집기에 복사합니다(해당 스크립트는 최소한으로 구성된 예시이며 프로덕션 코드는 다를 수 있음).
    •  표시된 코드에 trasientDocumentId값을 삽입합니다.
    { 
      "fileInfos": [ {"transientDocumentId":"PASTE YOUR TRANSIENTDOCUMENTID HERE"} ], "name": "test doc", "participantSetsInfo": [ { "memberInfos": [ { "email": "noreply@echosign.com" } ], "order": 1, "role": "SIGNER" } ], "signatureType": "ESIGN", "state": "DRAFT" 
    }

     

    • 사용자 정의 스크립트를 복사하여 AgreementInfo 필드에 붙여넣습니다.
    • 사용하기 버튼을 클릭합니다.
    계약 메서드 POST

  3. 응답이 생성됩니다.

    agreementID응답 본문에서 확인할 수 있습니다.

    계약 메서드 응답 POST

FileInfo 매개 변수에 파일을 추가하는 단계에 대해 알아봅니다.

  1. 임시 ID 사용:

    POST/transientDocuments로 이동하여 로컬 시스템에서 사용할 문서를 업로드합니다.
    POST/Agreements 파일 정보 섹션에서 생성된 임시 ID를 사용합니다.

    "fileInfos": [ { "transientDocumentId": "" 
         } 
       ],
  2. 라이브러리 문서 ID 사용:

    대시보드로 이동합니다. [라이브러리에 문서 추가]를 클릭하고 템플릿을 저장합니다.
    REST API 설명서에서 GET /libraryDocuments 를 클릭하고 생성 중인 템플릿의 라이브러리 ID를 검색합니다.
    POST/Agreements에 라이브러리 문서 ID를 입력합니다.

    "libraryDocumentId": "", "libraryDocumentName": "",
  3. 공개적으로 사용 가능한 URL 사용:

    FileInfo 매개 변수에서 사용할 공개적으로 액세스 가능한 URL을 입력합니다.

    { 
          "documentURL": { "mimeType": "", "name": "", "url": "" 
          },
  1. 계약> POST/agreements 옵션을 선택합니다. 

  2. Oauth Access-Token 옵션을 선택하고 필요 범위를 입력합니다.

  3. 액세스 토큰이 추가되면 다음의 요청 코드를 사용할 수 있습니다.

    { 
    "documentCreationInfo": { "recipientSetInfos": [ { "recipientSetRole": "SIGNER", "recipientSetMemberInfos": [{"email": "testemail@email.com"}] }, { "recipientSetRole": "SIGNER", "recipientSetMemberInfos": [{"email": "testemail@email.com"}] } ], "signatureFlow": "SEQUENTIAL", "name": "husband wife", "signatureType": "ESIGN", "fileInfos": [ { "transientDocumentId": "(SAMPLE VALUE)3AAABLblqZhAJ9H6e23kZAfBUbItPvIhHTEyA6eZhziEp4KSntYcULpo43OEXwuWiWa-IM1r1EExYW0044CjCkliP4WFL5yKBUDq5DYSmSxVlFypcD0at8kK-BX-Mu3T9c_3GUqgDg0ArX0MmzWT72GLR_0M4Jq--mtuqGzq-VK1s-WGR6GcbedVY7XWAf3b3h-SpE08Hc-iF3zO7jQzi9newXSl-iW2JJsb_55tggkyxkXAkj74C1WD6KkJzgblK0JU-seh6QPDd0Fv6_mfQe2EPQA31nXj50aXwD_xlUBq7mg5FeaBnZ5bzgoqIWGHkbyeD2taaFdw*"} 
    ] 
    } 
    }

POST /agreements 호출에서 signatureflow 매개 변수의 경우 SENDER_SIGNS_FIRST 또는 SENDER_SIGNS_LAST 값을 전달하여 전송자를 첫 번째 또는 마지막 서명자로 각각 추가할 수 있습니다.

다음은 JSON 형식의 호출 예시입니다.

{

  "documentCreationInfo": {

    "fileInfos": [

      {        "transientDocumentId":"3AAABLblqZ-yourIDGoesHere"

      }

    ],

    "name": "Test",

    "recipientSetInfos": [

      {

        "recipientSetMemberInfos": [

          {

            "email": "test@email.com"

          }

        ],

        "recipientSetRole": "SIGNER"

      }

    ],

    "signatureType": "ESIGN",

    "signatureFlow": "SENDER_SIGNS_FIRST"

  }

}

참고:

대신 보내기 옵션은 고급 공유가 설정된 REST API V6에서만 사용할 수 있습니다.

공유에 전송 권한이 없거나 고급 공유가 활성화되지 않은 경우 다음과 같은 응답이 표시됩니다.

 

{"code":"PERMISSION_DENIED","message":"x-on-behalf-of-user 헤더에 제공된 사용자에게 이 작업을 수행하는 데 필요한 권한이 없습니다."}

 

대신 보내기 기능의 경우 계정에 고급 계정 공유를 활성화하여 계정을 공유하는 동안 다른 사용자에게 전송 권한을 부여할 수 있습니다. 고급 공유와 관련해서 고급 계정 공유 활성화를 참조하세요.

사용자 공유가 활성화되면 다음 단계를 수행하여 대신 보내기를 진행합니다.

임시 문서 생성하기:

  1. transientDocuments에서 POST /transientDocuments를 클릭합니다.

  2. 인증 토큰을 생성하기 위해 OAUTH ACCESS-TOKEN 버튼을 클릭합니다.

  3. x-on-behalf-of-user에서 email:test@email.com과 같은 형식으로 대신 보내기를 진행할 사용자 이메일을 입력합니다.

  4. 파일을 선택하려면 파일 선택을 클릭하고 사용하기를 클릭합니다.

    transientDocumentId와 함께 다음의 응답을 수신합니다.

    {"transientDocumentId":"3AAABLblqZhB9Mjo0mrIu_pSgrf5VsMaKM68_Vmn80cimaqiUAD2OxrPp2e5H8GvjfiOxj4d5B8bCPkUfvaozW3KLisp_wseGVOL8A7oNZni1DWyFi4uNoxLQu4nUO44Wh63GQv9_HEJMePust0Pk94vJ_rbS96R7ic-vl7jbOkN0b4EB5-JMqlC-Fl_Vpyz8I1EQUrM5I4nB9ztMov4ad00yiOtDw0tB-Y2t5JdzM07P-mpJmwYEl8Fq2IeDuWjcR2tV7qY7TNGX2CNyh9jt0aMyduHeYa0GABr69z8Hm76eKdtaM_1E1ggWj205fSrNcwJsnpSO278*"}

임시 문서를 사용하여 계약 생성하기:

  1. 계약에서 POST /agreements를 클릭합니다.

  2. 인증 토큰을 생성하기 위해 OAUTH ACCESS-TOKEN 버튼을 클릭합니다.

  3. x-on-behalf-of-user에 임시 문서를 생성하는 동안 완료한 사용자의 이메일을 입력합니다.

  4. AgreementInfo에 다음의 코드를 추가하고 사용하기를 클릭합니다.

    { 
      "fileInfos": [ { "transientDocumentId":"3AAABLblqZhB9Mjo0mrIu_pSgrf5VsMaKM68_Vmn80cimaqiUAD2OxrPp2e5H8GvjfiOxj4d5B8bCPkUfvaozW3KLisp_wseGVOL8A7oNZni1DWyFi4uNoxLQu4nUO44Wh63GQv9_HEJMePust0Pk94vJ_rbS96R7ic-vl7jbOkN0b4EB5-JMqlC-Fl_Vpyz8I1EQUrM5I4nB9ztMov4ad00yiOtDw0tB-Y2t5JdzM07P-mpJmwYEl8Fq2IeDuWjcR2tV7qY7TNGX2CNyh9jt0aMyduHeYa0GABr69z8Hm76eKdtaM_1E1ggWj205fSrNcwJsnpSO278*" } ], "name": "Test", "participantSetsInfo": [ { "memberInfos": [ { "email": "signer@email.com" } ], "order": 1, "role": "SIGNER" } ], "signatureType": "ESIGN", "state": "IN_PROCESS" 
    }

     

    agreementId와 함께 다음의 응답을 수신합니다.

    { 
      
      "id": "CBJCHBCAABAAUlen3l_fzlj1Kbn_wGZAhYcIgN0J7Qtq" 
      
    }
  1. Adobe Sign에 로그인합니다.

  2. 계정>Adobe Sign API>API 정보로 이동하여 REST API 메서드 설명서를 클릭합니다.

    Webhook UI

  3. POST /transientDocuments하고 파일을 업로드하고, 임시 문서 ID를 생성합니다.

  4. 임시 문서 ID를 복사하고 POST /agreements 메서드에서 사용합니다. 상자에 다음의 JSON 요청을 언급합니다.

    { 
        "documentCreationInfo": { "mergeFieldInfo": null, "recipientSetInfos": [{ "signingOrder": null, "recipientSetRole": "SIGNER", "recipientSetMemberInfos": [{ "securityOptions": null, "email": "test1@gmail.com" }], "privateMessage": "Hello 1", "securityOptions": null }, { "signingOrder": null, "recipientSetRole": "SIGNER", "recipientSetMemberInfos": [{ "securityOptions": null, "email": "test2@gmail.com" }], "privateMessage": "Hello 2", "securityOptions": null } ], "signatureType": "ESIGN", "callbackInfo": null, "message": "Please review and sign this document.", "locale": "en_US", "vaultingInfo": null, "securityOptions": null, "reminderFrequency": null, "ccs": null, "postSignOptions": null, "signatureFlow": "SENDER_SIGNATURE_NOT_REQUIRED", "daysUntilSigningDeadline": null, "formFieldLayerTemplates": [], "name": "Adobe Sign Agreement", "formFields": null, "fileInfos": [{ "libraryDocumentName": null, "transientDocumentId": "XXXXXXXXXXXX", "documentURL": null, "libraryDocumentId": null 
            }] 
        } 
    }
  5. JSON 요청을 실행하려면 사용하기 버튼을 클릭합니다.

    Webhook UI

    올바른 JSON은 계약 ID와 응답을 반환합니다.

    Webhook UI

다음은 열림 암호 설정을 위해 코드에서 전달할 수 있는 매개 변수입니다.

 

{

    "documentCreationInfo":

    [{

        "signatureType": "ESIGN",

               "recipientSetInfos": [{

            "recipientSetMemberInfos": [{                      

                "email": "abc@xyz.com"                  

            }],

                   

            "recipientSetRole": "SIGNER"                         

        }],

               "signatureFlow": "SENDER_SIGNATURE_NOT_REQUIRED",

                   "fileInfos": [           {               

            "libraryDocumentId": "3AAABLblqZhBsm_vH7TVzU3hRdbtWuvzfTKDvBzaKZTiehjO2eGTk5Rlu02K-0BYn8HBJVFTWOmT_BQlrofPBlrCdjiJ_JI-V"        

        }       ],

               "name": "Open password to view document",

               "securityOptions": {        

            "openPassword": "1234",

                     "protectOpen": true   

        }  

    }]

}

 

“AUTHORING” 상태의 API를 사용하여 계약을 생성하려면 다음 단계를 수행합니다.

Post /agreements로 이동하여 필요 범위로 액세스 토큰을 만듭니다.

다음과 같이 요청 코드를 사용합니다.

 

{

  "fileInfos": [

    {

      "transientDocumentId": "*********************"

    }

  ],

  "name": "A1",

  "participantSetsInfo": [

    {

      "memberInfos": [

        {

          "email": "abc@xyz.com"

        }

      ],

      "order": 1,

      "role": "SIGNER"

    }

  ],

  "signatureType": "ESIGN",

  "state": "AUTHORING"

}

 

v6에는 계약 작성을 위한 API 작성 세트가 있습니다. v5에서는 formFields가 POST /agreements API에서 직접 사용됩니다. 그러나 v6에서 사용자는 v6 POST /agreements를 통해 AUTHORING 상태(상태 = AUTHORING)의 계약을 생성할 수 있으며, 나중에 언제든지 PUT /agreements/ID/formFields를 사용하여 해당 계약 문서에 양식 필드를 추가할 수 있습니다.

다음은 그 단계입니다.

  1. REST API V6 설명서로 이동하여 POST/agreements 메서드를 선택합니다.

  2. 다음의 요청 코드를 사용합니다.

    { 
      "fileInfos": [ { "transientDocumentId": "***************************" } ], "name": "test", "participantSetsInfo": [ { "memberInfos": [ { "email": "abc@gmail.com" } ], "order": 1, "role": "SIGNER" } ], "signatureType": "ESIGN", "state": "AUTHORING" 
    }
  3. 다음 요청과 put /agreements/{agreementId}/formFields 메서드를 예시로 사용합니다.

    { 
      "fields": [ { "locations": [ { "height": 36, "left": 75, "pageNumber": "1", "top": 200, "width": 150 } ], "contentType": "SIGNATURE_BLOCK", "name": "sigBlock1", "inputType": "SIGNATURE", "recipientIndex":1 
           } 
    ]}

     

    요청이 완료되면 언급된 수신자에게 계약서를 전송합니다.

  1. Adobe Sign에 로그인합니다.

  2. 계정>Adobe Sign API>API 정보로 이동하여 REST API 메서드 설명서를 클릭합니다.

    Webhook UI

  3. POST /transientDocuments하고 파일을 업로드하고, 임시 문서 ID를 생성합니다.

  4. 임시 문서 ID를 복사하고 POST /agreements 메서드에서 사용합니다. 상자에 다음의 JSON 요청을 언급합니다.

    { 
        "documentCreationInfo": { 
            "recipientSetInfos": [{ 
                    "recipientSetRole": "SIGNER", 
                    "recipientSetMemberInfos": [{ 
                        "email": "test1@gmail.com" 
                    }], 
                    "privateMessage": "Hello 1" 
                }, 
                { 
                    "recipientSetRole": "SIGNER", 
                    "recipientSetMemberInfos": [{ 
                        "email": "test2@gmail.com" 
                    }], 
                    "privateMessage": "Hello 2" 
                } 
            ], 
            "signatureType": "ESIGN", 
            "message": "Please review and sign this document.", 
            "signatureFlow": "SENDER_SIGNATURE_NOT_REQUIRED", 
            "name": "Demo1", 
            "fileInfos": [{ 
                "transientDocumentId": "XXXXXXXXXX" 
            }], 
            "formFields": [{ 
                    "hidden": "1", 
                    "defaultValue": "test1@gmail.com", 
                    "name": "Signer Email (Applicant-1)", 
                    "inputType": "TEXT_FIELD", 
                    "readOnly": true, 
                    "locations": { 
                        "pageNumber": 1, 
                        "top": 100, 
                        "left": 100, 
                        "width": 100, 
                        "height": 30 
                    }, 
      
                    "contentType": "SIGNER_EMAIL" 
                }, 
                { 
                    "name": "Signature (Applicant-2)", 
                    "inputType": "SIGNATURE", 
                    "locations": { 
                        "pageNumber": 1, 
                        "top": 520, 
                        "left": 162, 
                        "width": 280, 
                        "height": 30 
                    }, 
                    "contentType": "SIGNATURE", 
                    "required": 1, 
                    "recipientIndex": 1 
                }, 
                { 
                    "name": "Signature (Applicant-3)", 
                    "inputType": "SIGNATURE", 
                    "locations": { 
                        "pageNumber": 2, 
                        "top": 312, 
                        "left": 154, 
                        "width": 280, 
                        "height": 30 
                    }, 
                    "contentType": "SIGNATURE", 
                    "required": 1, 
                    "recipientIndex": 1 
                }, 
                { 
                    "defaultValue": "017/09/2018", 
                    "displayFormatType": "DATE", 
                    "name": "Signature Date (Applicant-4)", 
                    "format": "DATE_DD_MM_YYYY", 
                    "inputType": "TEXT_FIELD", 
                    "readOnly": true, 
                    "locations": { 
                        "pageNumber": 2, 
                        "top": 260, 
                        "left": 90, 
                        "width": 80, 
                        "height": 30 
                    }, 
                    "contentType": "DATA", 
                    "required": 1, 
                    "recipientIndex": 1 
                }, 
                { 
                    "name": "Signature (Applicant-5)", 
                    "inputType": "SIGNATURE", 
                    "locations": { 
                        "pageNumber": 3, 
                        "top": 199, 
                        "left": 179, 
                        "width": 276, 
                        "height": 30 
                    }, 
                    "contentType ": "SIGNATURE", 
                    "required": 1, 
                    "recipientIndex": 1 
                }, 
                { 
                    "contentType": "SIGNATURE_DATE", 
                    "defaultValue": "06/07/2018", 
                    "displayFormatType": "DATE", 
                    "name": "Signature Date (Applicant-6)", 
                    "format": "DATE_DD_MM_YYYY", 
                    "inputType": "TEXT_FIELD", 
                    "readOnly": true, 
                    "locations": { 
                        "pageNumber": 3, 
                        "top": 188, 
                        "left": 488, 
                        "width": 76, 
                        "height": 25 
                    }, 
                    "required": 1, 
                    "recipientIndex": 1 
                }, 
                { 
                    "name": "Signature (Applicant-7)", 
                    "inputType": "SIGNATURE", 
                    "locations": { 
                        "pageNumber": 3, 
                        "top": 370, 
                        "left": 37, 
                        "width": 210, 
                        "height": 26 
                    }, 
                    "contentType ": "SIGNATURE", 
                    "required": 1, 
                    "recipientIndex": 2 
                }, 
                { 
                    "contentType ": "SIGNATURE_DATE", 
                    "defaultValue": "01/02/2018", 
                    "name": "Signature Date (Applicant-8)", 
                    "locations": { 
                        "pageNumber": 3, 
                        "top": 370, 
                        "left": 300, 
                        "width": 76, 
                        "height": 26 
                    }, 
                    "required": 1, 
                    "recipientIndex": 2 
      
                } 
            ] 
        } 
    }
  5. JSON 요청을 실행하려면 사용하기 버튼을 클릭합니다.

    Webhook UI

    올바른 JSON은 계약 ID와 응답을 반환합니다.

    Webhook UI

  1. Adobe Sign에 로그인합니다.

  2. 계정>Adobe Sign API>API 정보로 이동하여 REST API 메서드 설명서를 클릭합니다.

    Fnord.

  3. POST /transientDocuments하고 파일을 업로드하고, 임시 문서 ID를 생성합니다.

  4. 임시 문서 ID를 복사하고 POST /agreements 메서드에서 사용합니다. 상자에 다음의 JSON 요청을 언급합니다.

    { 
        "options": { "noChrome": true, "authoringRequested": true }, "documentCreationInfo": { "recipientSetInfos": [{ "recipientSetRole": "SIGNER", "recipientSetMemberInfos": [{ "email": "test1@gmail.com" }], "privateMessage": "Hello 1" }, { "recipientSetRole": "SIGNER", "recipientSetMemberInfos": [{ "email": "test2@gmail.com" }], "privateMessage": "Hello 44" } ], "signatureType": "ESIGN", "message": "Please review and sign this document.", "locale": "en_US", "signatureFlow": "SENDER_SIGNATURE_NOT_REQUIRED", "formFieldLayerTemplates": [], "name": "Adobe Sign Agreement", "formFields": null, "fileInfos": [{ "libraryDocumentName": null, "transientDocumentId": "XXXXXXXXXXXX" 
            }] 
        } 
    }
  5. JSON 요청을 실행하려면 사용하기 버튼을 클릭합니다.

    Fnord.

    올바른 JSON은 계약 ID와 응답을 반환합니다.

    Fnord.

  6. 작성 모드에서 계약을 열려면 URL을 복사하고 브라우저의 주소 표시줄에 붙여넣습니다.

  7. 필요한 위치에 양식-필드를 끌어서 놓습니다.

  8. 서명을 위해 계약을 전송하려면 [전송]을 클릭합니다. 

POST /agreements를 사용하여 계약을 생성합니다. 서명을 위해 전송하고 클라이언트에 대한 응답으로 agreementID를 반환합니다. 다음은 전화 인증 방법을 사용하여 계약을 전송하는 JSON 형식입니다.

 

{

"documentCreationInfo": {

"mergeFieldInfo": null,

"recipientSetInfos": [{

"signingOrder": null,

"recipientSetRole": "SIGNER",

"recipientSetMemberInfos": [{

"securityOptions": null,

"email": "Signer@email.com"

}],

 

"privateMessage": null,

"securityOptions": [{

"authenticationMethod": "PHONE",

"phoneInfos": [{

"phone": "1111111111",

"countryCode": "+1"

}]

}]

}],

 

"signatureType": "ESIGN",

"callbackInfo": null,

"message": "이 문서를 검토하고 서명하세요.",

"locale": "en_US",

"vaultingInfo": null,

"securityOptions": null,

"reminderFrequency": null,

"ccs": null,

"postSignOptions": null,

"signatureFlow": "SENDER_SIGNATURE_NOT_REQUIRED",

"daysUntilSigningDeadline": null,

"formFieldLayerTemplates": [],

"name": "Adobe Sign Agreement-Phone authentication testing",

"formFields": null,

"fileInfos": [{

"libraryDocumentName": null,

"transientDocumentId": "3AAABLYourTransactionID",

"documentURL": null,

"libraryDocumentId": null

}]

},

 

"옵션": {

"autoLoginUser": true,

"authoringRequested": false,

"noChrome": true,

"sendThroughWeb": null,

"sendThroughWebOptions": null,

"locale": "en_US"

}

}

 

다음 메서드를 사용하여 데이터를 양식 필드에 직접 병합할 수 있습니다.

  • 라이브러리 템플릿 사용하기:

    FileInfo 매개 변수에서 라이브러리 템플릿 ID를 사용하는 경우 아래 섹션에 정확한 필드 이름과 관련 데이터를 입력해야 합니다.

 

"mergeFieldInfo": [

     {

       "defaultValue": "",

       "fieldName": ""

     }

   ],

 

  • 임시 문서로 업로드된 문서에서 텍스트 태그 사용하기:

    텍스트 태그가 있는 문서를 임시 문서로 업로드 하는 경우 아래 섹션에 정확한 필드 이름과 관련 데이터를 입력해야 합니다. 

 

"mergeFieldInfo": [

     {

       "defaultValue": "",

       "fieldName": ""

     }

   ],

 

특정 양식 필드(mergefield)에 값을 미리 채우는 API를 사용하여 계약을 보내려면 어떻게 해야 합니까?

해당 호출의 전제 조건은 먼저 "임시 업로드" 단계를 완료하고 여기에서 사용할 "transientDocumentId"(secure.na1.echosign.com/public/docs/restapi/v5#!/transientDocuments/createTransientDocument)를 가져오는 것입니다.

  • 해당 호출에는 특정 양식 필드에 대한 기본값이 제공되는 "mergeFieldInfo"섹션이 포함됩니다.
  • 그러면 API 호출에서 다른 시스템의 데이터가 미리 채워집니다.
  • 계약의 이러한 필드는 편집 가능하거나 또는 읽기 전용입니다.

 

필수 구성 요소:

  1. 임시 문서 ID
  2. 필드 이름 및 값

 

요청 호출 예시:

 

Request:

POST /api/rest/v5/agreements HTTP/1.1

Host: api.na1.echosign.com (or you can specify your shard name, which you can find using the getbaseURis call: https://secure.na1.echosign.com/public/docs/restapi/v5#!/base_uris/getBaseUris

Access-Token: 2AAABLblqZhA_D1mluNKQP7py5vXtt-1UHl9NR25e_C3LnKTUH14IblbrXODbXGRozyr7ChBkJNM*

x-user-email: sender@yourdomain.com

Content-Type: application/json

Cache-Control: no-cache

 

{

   "documentCreationInfo": {

       "signatureType": "ESIGN",

       "recipientSetInfos": [

           {

               "recipientSetMemberInfos": [

                   {

                       "email": “signerEmail@domain.com"

                   }

               ],

               "recipientSetRole": "SIGNER"

           }

        ],

      

       "signatureFlow": "SENDER_SIGNATURE_NOT_REQUIRED",

       "message": "Please Sign this from us!",

       "fileInfos": [

           {

               "transientDocumentId": "3AAABLblqZhD1uP3ZnkJximC0JV1S677PR5xmybSJ-SJn6OtEy2tVqFyMN4xUAbhKTSkLw2Zb6HEF4zAGsrUd2ycoB8fFHQJhrci0O6267VztmIL4nCicSqvAjO7HckATHAsovVmuYwI9_FDDgHg0ogyti62L13HQFZIQRe9iyQMvvzbmksM7ODNK_HEepEKRCeJTtis9FOlz6uRCcIMNlbX_2GU8utWT"

           }

       ],

       "name": "MSA Edited”,

        "mergeFieldInfo": [

            {

                "fieldName": "AccountName",

                "defaultValue": "Sam's Garage"

            },

            {

                "fieldName": "AccountNumber",

                "defaultValue": "8756999"

            },

            {

                "fieldName": "Zip",

                "defaultValue": "94501"

            },

            {

                "fieldName": "City",

                "defaultValue": "CityVille"

            },

            {

                "fieldName": "State",

                "defaultValue": "CA"

            },

            {

                "fieldName": "Street",

                "defaultValue": "123 Some Road"

            },

            {

                "fieldName": "Title1",

                "defaultValue": "COO"

            },

            {

                "fieldName": "Description",

                "defaultValue": "Some new description here"

            }

        ]

   }

 

}

 

The response to this call is the “agreementId” which you need to store in your system for subsequent calls(signingUrl, status, formData etc.)

 

Response:

{

  "agreementId": "3AAABLblqZhCf_7xDcrOgKFwAabp1S-OFfvUdHf2wJsSMwlB95_x_WdUeab67jOkJi1IJzWuSJ0zdNNKugS1blZB4LT5vNVyJ"

}

 

"post /megaSigns/{megaSignId}/views" 메서드를 실행하는 동안 "현재 상태의 리소스에 대해 요청된 보기를 사용할 수 없습니다."라는 오류 메시지가 표시됩니다.

제공된 이름 매개 변수 값이 아래 요청 코드에서 유효하지 않은 경우 오류 메시지가 표시됩니다:

{
  "name": " "
}

. 예를 들어 MegaSign 계약이 이미 "IN_PROCESS"인 경우 "AUTHORING" 값을 입력하면 언급한 오류가 발생합니다. 입력된 값이 현재 계약 상태와 일치하는지 확인합니다.

"put /megaSigns/{megaSignId}/state" 메서드를 실행하는 동안 "MegaSign 취소 정보에 입력된 값이 없습니다."라는 오류 메시지가 표시됩니다.

요청 코드에 매개 변수가 누락된 경우 오류가 발생합니다: 

 "megaSignCancellationInfo": {
    "comment": "",
    "notifyOthers": false
  }

"최소 스키마"를 사용하는 대신 "전체 모델 스키마"를 클릭하고 API 호출을 실행하기 위한 전체 요청 코드를 입력합니다.

MegaSign 계약의 상태를 변경하려면 put /megaSigns/{megaSignId}/state를 사용하고 다음의 단계를 수행합니다.

  1. V6용 REST API 설명서로 이동하고  
    put /megaSigns/{megaSignId}/state 메서드를 선택합니다.
  2. 인증 값과 If-Match 및 megasignID를 입력합니다.
    • megasignID를 검색하려면 get /megaSigns를 사용합니다.
    • If-Match를 검색하려면 get /megaSigns/{megaSignId}를 사용하고 헤더 아래에서 "Etag"를 찾습니다.
  3. {
      "state": "CANCELED",
      "megaSignCancellationInfo": {
       "comment": "cancel",
       "notifyOthers": false
      }

Webhook을 성공적으로 등록하기 위하여 Webhook URL은 2XX 응답 코드로 해당 확인 요청에 응답하며, 다음 두 가지 방법 중 하나로 동일한 클라이언트 ID 값을 다시 보낼 수 있습니다.

  1. 응답 헤더에서  X-AdobeSign-ClientId. 요청에서 전달되고 응답에서 다시 반복되는 동일한 헤더입니다.
  2. X-AdobeSign-ClientId 키가 포함된 JSON 응답 본문에서 해당 값은 요청에서 전송된 것과 동일한 클라이언트 ID입니다.

Adobe Sign은 X-AdobeSign-ClientId와 2xx 응답을 수신합니다. Webhook에서 올바르게 구성되었는지 여부를 확인할 수 있습니다.

Webhook URL은 예상된 동작에 맞게 응답하지 않습니다. Adobe Sign에서 전송한 모든 Post 알림에 대해 URL은 2XX 상태 코드로 응답하고, 요청 헤더(X-AdobeSign-ClientId)에서 전송된 클라이언트 ID를 응답 헤더로 되돌려 보냅니다. 

자세한 내용은 다음 링크를 확인하세요:
https://www.adobe.io/apis/documentcloud/sign/docs.html#!adobedocs/adobe-sign/master/webhooks/webhook_events.md

URL이 해당 프로토콜을 따르지 않으면 Adobe Sign은 요청을 승인하지 않은 것으로 간주하고 신뢰할 수 있는 정책에 따라 일정 조정을 시도합니다.

Webhook가 응답하지 않고 최대 재시도 시간 또는 간격을 초과하면 Webhook가 비활성화됩니다.

이 작업은 Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License에 따라 사용이 허가되었습니다.  Twitter™ 및 Facebook 게시물은 Creative Co 약관이 적용되지 않습니다.


Manage/계약 정보 가져오기

서명을 위해 이미 전송된 문서를 변경하려면 기존 계약을 업데이트 할 수 있는 PUT /agreements/{agreementId} 메서드를 사용합니다. 다음 요청 코드에서 계약 ID와 함께 임시 ID를 입력합니다.

 

{

  "documentUpdateInfo": {

    "fileInfos": [

      {

        "agreementDocumentId": "",

        "transientDocumentId": ""

      }

    ]

  }

}

 

다음은 Put /agreements/{agreementId}/state를 사용하여 상태를 “AUTHORING”에서 “IN_PROCESS”로 업데이트하는 방법입니다.

  1. POST/Agreement 메서드를 사용하여 검색된 계약 ID를 가져옵니다.

  2. Get /agreements/{agreementId}를 사용하여 최신 ETag를 검색합니다.

  3. Put /agreements/{agreementId}/state으로 이동하여 다음 정보를 입력합니다: "state": "IN_PROCESS"

아니요.

현재 REST API에는 서명된 사본을 업로드할 수 있는 방법은 없습니다.

전송자는 관리 페이지에서 서명된 사본을 업로드해야 합니다.

DELETE /agreements/ID를 사용하면 관리 페이지에서 계약을 숨길 수 있습니다.Adobe에는 계약 가시성(GET /agreements에서)을 제어하는

새로운 API PUT /agreements/ID/me/visibility 가 있습니다. DELETE /agreements/ID에서 제공하는 기능 외에도 새 가시성 엔드포인트를 사용하면 '숨기기' 작업을 되돌려 계약을 다시 표시할 수 있습니다. 

또한 아래와 같은 세부 단계를 수행할 수 있습니다.

  1. get /agreements 메서드로 이동하여 계약 ID를 검색합니다.
  2. put /agreements/{agreementId}/me/visibility를 클릭하고 아래의 요청을 예시로 입력합니다:
    {
      "visibility": "HIDE"
    }
    계약 ID는 get /libraryDocuments에서는 숨겨지지만 여전히 관리 탭의 UI에는 표시됩니다.
참고:

API 보존 기능은 기본적으로 활성화되어 있지 않습니다.

DELETE/agreements 작업을 활성화하려면 Success 담당자에게 문의하여 계정에 API 보존 기능을 사용하도록 요청하세요.

계정에 보존 기능을 사용하는 방법에 대한 자세한 내용은 Adobe Sign - 문서 보존을 참조하세요.

  1. 관리자로 Adobe Sign에 로그인하고  https://secure.adobesign.com/public/docs/restapi/v6로 이동합니다.

    • agreeements 를 클릭하고 GET /agreements 메서드를 확장합니다.
    • OAuth Access-token 버튼을 클릭합니다.
    • agreement_read:self 범위를 활성화합니다.
    • 승인 버튼을 클릭합니다.
      • 문제가 있는 경우 액세스 허용을 클릭합니다.
    • 사용하기 버튼을 클릭합니다.
    계약 메서드 가져오기

  2. 응답이 생성됩니다.

     agreementId응답 본문에서 확인할 수 있습니다.

    계약 응답 가져오기

  3. DELETE /agreements/{agreementId}/documents: 계약과 관련된 모든 문서를 삭제합니다. 계약 자체는 관리 페이지에 계속 표시됩니다.

    • 실행할 DELETE/agreements 작업을 선택합니다.
    • OAuth Access-token 버튼을 클릭하고 agreement_retention 범위의 액세스 토큰을 생성합니다.
    • 삭제하려는 계약의 agreementId를 입력합니다.
    • 계약이 삭제되면 응답 본문은 '내용 없음'이 됩니다.

DELETE/agreements 작업이 활성화되지 않은 경우 다음과 같은 응답이 표시됩니다.

 "code": "DYNAMIC_DOCUMENT_EXPIRATION_NOT_ENABLED",

  "message": "작업을 수행하려면 일부 계정 설정을 활성화해야 합니다. Adobe Sign 팀에 문의하여 설정을 활성화하세요."

다음의 방법을 사용하면 감사 보고서 다운로드를 위해 별도의 호출을 사용하지 않고 Adobe Sign REST API를 통해 감사 보고서 및 지원 문서와 함께 서명된 문서를 다운로드할 수 있습니다.

GET /agreements/{agreementId}/auditTrail

  1. GET /agreements/{agreementId}/combinedDocument을 클릭합니다.

  2. oAuth Access-token 버튼을 클릭합니다.

  3. 인증이 승인되면 액세스 토큰이 자동으로 생성됩니다.

  4. agreementId를 입력합니다.

  5. attachSupportingDocuments의 드롭다운에서 true를 선택합니다.

  6. attachAuditReport의 드롭다운에서 true를 선택합니다.

  7. 사용하기 버튼을 클릭합니다.

    결합된 문서 가져오기

    서명된 문서와 지원 문서 및 감사 보고서가 결합된 PDF를 다운로드합니다.

대량 문서를 다운로드할 때는 문서 내보내기 도구만 사용할 수 있으며 API를 사용하게 되면 문서를 한 번에 하나씩만 다운로드할 수 있습니다. 다음은 동일한 API 메서드입니다.

https://secure.na1.adobesign.com/public/docs/restapi/v5#!/agreements/getCombinedDocument


라이브러리 템플릿 및 웹 양식

  1. 관리자로 Adobe Sign에 로그인하고 https://secure.na1.adobesign.com/public/docs/restapi/v6으로 이동합니다.

    • libraryDocuments 를 클릭하고 GET /libraryDocuments 메서드를 확장합니다.
    • OAUTH ACCESS-TOKEN 버튼을 클릭합니다.
    • library_read:self 범위를 활성화합니다.
    • 승인 버튼을 클릭합니다.
      • 문제가 있는 경우 액세스 허용을 클릭합니다.
    • 사용하기 버튼을 클릭합니다.
    LibraryDocument 메서드 가져오기

  2. 응답이 생성됩니다.

     libraryDocumentId응답 본문에서 확인할 수 있습니다.

    LibraryDocument 응답 가져오기

Adobe에는 계약 가시성(GET /agreements에서)을 제어하는 새로운 API PUT/libraryDocuments/ID/me/visibility가 있습니다. DELETE /agreements/ID에서 제공하는 기능 외에도 새 가시성 엔드포인트를 사용하면 '숨기기' 작업을 되돌려 계약을 다시 표시할 수 있습니다.

아래와 같은 세부 단계를 수행할 수 있습니다.

  1. get /libraryDocuments 메서드로 이동하여 계약 ID를 검색합니다.
  2. put /libraryDocuments/{libraryDocumentId}/me/visibility를 클릭하고 아래의 요청을 예시로 입력합니다:
    {
      "visibility": "HIDE"
    }
    라이브러리 ID는 get /libraryDocuments에서는 숨겨지지만 여전히 관리 탭의 UI에는 표시됩니다.
참고:
  • 지원팀에 요청을 제출하여 라이브러리 삭제를 위한 범위를 활성화합니다.
  • API가 라이브러리 문서를 삭제합니다. 그렇지만 이 라이브러리 문서를 사용해서 생성된 계약은 영향을 받지 않습니다.


libraryDocumentID 생성하기

  1. https://secure.echosign.com/public/docs/restapi/v5로 이동합니다.

  2. libraryDocuments를 클릭합니다.

  3. oAuth Access-token 버튼을 클릭합니다. 

    액세스 승인 - 본인, 그룹 또는 계정용 토큰

  4.  libraryTemplateType를 선택 - 문서 또는 Form_field_layer

  5. 사용하기를 클릭합니다.

    모든 템플릿에 대해 다음과 같은 응답을 수신할 수 있습니다. (삭제하려는 라이브러리 템플릿의 libraryDocumentId 를 복사합니다).

    { 
      "libraryDocumentList": [ { "name": "testing fields", "modifiedDate": "2017-08-04T01:06:05-07:00", "scope": "PERSONAL", "libraryDocumentId": "3AAABLblqZhAK53Dvzq88Q1Ov0TEvMAySDPpIVjF1PWgUpy0H1uYggt4iwGiRSZYlWfl9ms_AcmgZ_uZMPPN2hNT9izwaspHc", "libraryTemplateTypes": [ "DOCUMENT" 
          ] 
        },


라이브러리 템플릿 삭제하기

  1. 응답 본문에서 libraryDocumentID를 복사합니다.

  2. libraryDocuments 삭제로 이동합니다.

  3. oAuth Access-token 버튼을 클릭합니다. 액세스 승인 - 본인, 그룹 또는 계정용 토큰

  4. 값 필드에 libraryDocumentId를 붙여넣습니다.

  5.  사용하기를 클릭합니다. 
    템플릿이 삭제되었습니다.

    다음 응답 코드가 표시됩니다: 204

참고:

초안 상태의 웹 양식만 업데이트할 수 있습니다.

  1. post /widgets를 사용하여 위젯을 생성합니다.

  2. get/widgets에서 위젯 ID를 가져옵니다.

  3. GET /widgets/{widgetId} 메서드를 사용하여 만든 후 응답 헤더에서 Etag를 가져옵니다.

    Foo

  4. put  /widgets/{widgetId}에서 GET /widgets/{widgetId}의 Etag를 사용합니다. If-Match 매개 변수에서 widgetId 및 widgetInfo를 입력합니다.

    Foo

    { 
      "fileInfos": [ { "transientDocumentId": "******" } ], "name": "Widht_Name", "status": "DRAFT", "widgetParticipantSetInfo": { "memberInfos": [ { "email": "" } ], "role": "SIGNER" 
      } 
    }


사례 예제 사용

  1. 올바른 x-api-user로 get/agreements를 호출합니다.

  2. 응답 본문에서 서명 URL을 찾을 서명 계약을 검색하고 계약 ID를 기록합니다.

  3. get/agreements 호출에서 수신한 계약 ID를 사용하여 get/agreements/{agreementId}/signingUrls를 호출합니다.

     

    결과

    출력은 서명자(들)의 이메일 주소와 전자 서명 URL을 반환합니다.

    계약 메서드 가져오기

쉽고 빠르게 지원 받기

신규 사용자이신가요?