以管理員身分登入 Adobe Sign
新功能
開始使用
管理
- Admin Console 概觀
- 使用者管理
- 新增使用者
- 建立以功能為導向的使用者
- 檢查有佈建錯誤的使用者
- 變更姓名/電子郵件地址
- 編輯使用者的群組成員資格
- 透過群組介面編輯使用者的群組成員資格
- 將使用者升級為管理員角色
- 使用者身分類型與 SSO
- 切換使用者身分
- 使用 MS Azure 驗證使用者
- 使用 Google Federation 驗證使用者
- 產品設定檔
- 登入體驗
- 帳戶/群組設定
- 設定概觀
- 全域設定
- 帳戶層級與 ID
- 新的收件者體驗
- 自我簽署工作流程
- 大量傳送
- 網頁表單
- 自訂傳送工作流程
- Power Automate 工作流程
- 資料庫文件
- 透過合約收集表單資料
- 限制文件可見性
- 附加已簽署合約的 PDF 副本
- 在電子郵件中加入連結
- 在電子郵件中加入影像
- 附加至電子郵件的檔案將命名為
- 將稽核報告附加至文件
- 將多個文件合併為一個
- 下載個別文件
- 上傳已簽署的文件
- 我的帳戶中的使用者委派
- 允許外部收件者委派
- 授權簽署
- 授權傳送
- 有權新增電子印章
- 設定預設時區
- 設定預設日期格式
- 使用者加入多個群組 (UMG)
- 群組管理員權限
- 更換收件者
- 稽核報告
- 交易頁尾
- 產品內傳送訊息和指示
- 無障礙 PDF
- 全新撰寫體驗
- 醫療保健客戶
- 帳戶設定
- 新增標誌
- 自訂公司主機名稱/URL
- 新增公司名稱
- 合約後 URL 重新導向
- 簽名偏好設定
- 格式固定的簽名
- 允許收件者簽署
- 簽署者可變更其姓名
- 允許收件者使用已儲存的簽名
- 自訂使用條款和消費者資訊披露
- 透過表單欄位導覽收件者
- 重新啟動合約工作流程
- 拒絕簽署
- 允許戳記工作流程
- 要求簽署者提供其職稱或公司
- 允許簽署者列印並置入書面簽名
- 在電子簽名時顯示訊息
- 需要簽署者使用行動裝置來建立自己的簽名
- 要求取得簽署者的 IP 位址
- 將公司名稱和職稱排除在參與戳記之外
- 數位簽名
- 電子印章
- 數位身分
- 報告設定
- 全新報告體驗
- 傳統報告設定
- 安全性設定
- 傳送設定
- 訊息範本
- 生技製藥設定
- 工作流程整合
- 公證設定
- 付款整合
- 簽署者傳訊
- SAML 設定
- SAML 設定
- 安裝 Microsoft Active Directory Federation Service
- 安裝 Okta
- 安裝 OneLogin
- 安裝 Oracle Identity Federation
- SAML 設定
- 資料控管
- 時間戳記設定
- 外部封存
- 帳戶語言
- 電子郵件設定
- 從 echosign.com 移轉至 adobesign.com
- 為收件者設定選項
- 法規要求指引
- 大量下載合約
- 宣告您的網域
- 「回報不當使用」連結
傳送、簽署與管理合約
- 收件者選項
- 傳送合約
- 在文件中撰寫欄位
- 簽署合約
- 管理合約
- 稽核報告
- 報告與資料匯出
進階合約功能與工作流程
- 網頁表單
- 可重複使用的範本 (資料庫範本)
- 轉移網頁表單與資料庫範本的所有權
- Power Automate 工作流程
- Power Automate 整合與包含授權的概觀
- 啟用 Power Automate 整合
- 「管理」頁面的相關動作
- 追蹤 Power Automate 使用狀況
- 建立新的流程 (範例)
- 用於流程的觸發器
- 從 Acrobat Sign 之外匯入流程
- 管理流程
- 編輯流程
- 共用流程
- 停用或啟用流程
- 刪除流程
- 實用範本
- 僅限管理員
- 合約封存
- 將完成的文件儲存至 SharePoint
- 將完成的文件儲存至商務用 OneDrive
- 將完成的文件儲存至 Google 雲端硬碟
- 將完成的文件儲存至 DropBox
- 將完成的文件儲存至 Box
- 網頁表單合約封存
- 將完成的網頁表單文件儲存至 SharePoint 資料庫
- 將完成的網頁表單文件儲存至商務用 OneDrive
- 將完成的文件儲存至 Google 雲端硬碟
- 將完成的網頁表單文件儲存至 Box
- 合約資料擷取
- 合約通知
- 傳送包含合約內容和已簽署合約的自訂電子郵件通知
- 在 Teams 頻道中取得您的 Adobe Acrobat Sign 通知
- 在 Slack 中取得您的 Adobe Acrobat Sign 通知
- 在 Webex 中取得您的 Adobe Acrobat Sign 通知
- 合約產生
- 從 Power App 表單和 Word 範本產生文件,傳送以供簽署
- 從 OneDrive 的 Word 範本產生合約,並取得簽名
- 為所選的 Excel 列產生合約,傳送以供檢閱和簽名
- 自訂傳送工作流程
- 共用使用者與合約
與其他產品整合
- Acrobat Sign 整合概觀
- 適用於 Salesforce 的 Acrobat Sign
- 適用於 Microsoft 的 Acrobat Sign
- 其他整合功能
- 合作夥伴管理的整合功能
- 如何取得整合金鑰
Acrobat Sign 開發人員
- REST API
- Webhook
支援與疑難排解
API 存取權專保留給企業與開發人員層帳戶。
核心文件連結
REST API 6 使用連結:
- 註冊開發人員帳戶: https://acrobat.adobe.com/tw/zh-Hant/sign/developer-form.html
- 應用程式內方法:https://secure.adobesign.com/public/docs/restapi/v6
- 範例:https://opensource.adobe.com/acrobat-sign/developer_guide/index.html#!adobedocs/adobe-sign/master/samples.md
- Webhook:https://opensource.adobe.com/acrobat-sign/acrobat_sign_events/index.html
舊有 SOAP API 的支援已於 2021 年 5 月結束。
所有使用 SOAP API 的客戶應盡快移轉至 REST API。
登入後,導覽至「帳戶 > Acrobat Sign API > API 資訊 > REST API 和說明文件
」。
一般概念
您無法藉由在 Web UI 上檢視頁面、拖放,或透過 API 使用 transientDocumentId 指派簽署人角色,來撰寫文件。
transientDocuments 呼叫會傳回 transientDocumentID,有效期為 7 天。 您只能將其用於進一步的 API 呼叫。其儲存在 API 伺服器,並獲指派此 ID。上傳一個檔案,並在進一步的 API 呼叫中參照其 ID。
您無法使用 REST API 在「合約」中直接上傳文件。
依照 REST 需求,首先建立一個暫時性文件,然後在「合約」、Widget 或「資料庫」方法中使用此 ID 作為檔案來源。
此暫時性文件是上傳到 Adobe 伺服器的原始來源檔案,例如 PDF、doc、docx。因此,這是一種很方便的方法可將基礎文件上傳至 API 伺服器,以及在網路上傳送暫時性文件。
是的,您可以使用 API 呼叫 POST /合約,在 v6 中使用工作流程發佈合約。在 API 呼叫中傳遞 workflowId 參數。
您可以使用 GET /workflows 呼叫取得工作流程的 workflowId。
-
-
瀏覽至「帳戶 > Adobe Sign API > API 申請日誌」
-
以管理員身分登入 Adobe Sign 帳戶
-
瀏覽至: 「帳戶 > Adobe Sign API > API 資訊」
-
按一下「REST API 樣本」連結。
註解:若要下載 JavaScript SDK,請參閱 https://github.com/adobe-sign/AdobeSignJsSdk。
自 v6 版起,選項「sendTroughWeb」停止使用。由「state」取而代之。這是合約所處的狀態。在 POST 呼叫中只會提供狀態欄位。其永遠不會在 GET /agreements/{ID} 中傳回,且如果在 PUT /合約/{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 中「選項」欄位的各種參數可讓使用者設定此互動檢視 (「傳送」頁面)。這些頁面設定參數 (例如 fileUploadOptions 全部會移至 POST agreements/ID/views api。
因此事實上,您可以透過 POST /agreements API 建立一個狀態為 AUTHORING 的合約,來達成 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": "",
- 請連絡 Adobe Sign 支援設定預設回呼 url,以完成帳戶。
SOAP UI (SmartBear) 會得到類似如下所示您在進行 API 呼叫時得到的 SSL 連線錯誤。此錯誤通常會發生在您使用過時的 SSL,或是 TLS1.2 之前的 TLS 通訊協定。
ERROR: Exception in request: javax.net.ssl.SSLException: Received fatal alert: protocol_version
ERROR: An error occurred [Received fatal alert: protocol_version], see error log for details
-
在 Bin 資料夾下方的 VMOPTIONS 檔案中新增 (-Dsoapui.https.protocols=SSLv3,TLSv1.2)
-
前往 C:\Program Files\SmartBear\SoapUI-5.2.1\bin (視您安裝 SOAP UI 的位置而定,也會在 C:\Program Files (x86) 之下)。
-
在 VMOPTIONS 檔案中,啟用完整讀取/寫入檔案權限。
-
在 VMOPTIONS 檔案按一下右鍵 >「屬性」>「安全性」標籤 > 選取「使用者」> 按一下「編輯」。(「使用者存取控制」圖示顯示在「編輯」按鈕下方) > 選取所有核取方塊,然後按一下「確定」。
-
為管理員、系統和所有的應用程式封裝重複相同的步驟。
-
使用記事本開啟檔案。
-
在底端「-Dsoapui.https.protocols=SSLv3,TLSv1.2」新增此通訊協定,然後儲存變更。
-
關閉 SOAP UI,然後重新啟動。當您進行 API 呼叫時會正常運作,不會發生 SSL 錯誤。(執行測試 ping 呼叫進行檢查)。
以下為在 Adobe Sign 應用程式中建立用戶端 ID 與用戶端密碼的步驟:
-
登入 Adobe Sign 帳戶。
-
瀏覽至「帳戶 > Adobe Sign API > API 應用程式」。
-
若要建立應用程式,請按一下 + 圖示。
-
輸入「名稱」與「顯示名稱」。
-
在「網域」下方,選取「CUSTOMER」,然後按一下「儲存」。
-
按一下以反白標示應用程式。
-
按一下「為應用程式設定 OAuth」。
-
輸入重新導向 URI。
-
若要啟用必要範圍,請選取各自的核取方塊,然後按一下「儲存」。
-
以帳戶管理員身分登入 Adobe Sign
-
瀏覽至: 「帳戶 > Adobe Sign API > API 資訊」
-
按一下「整合金鑰」連結
註解:如果您看不到「整合金鑰」連結,請與您的成功管理員連絡,要求管理員啟用您的帳戶。
-
- 以簡單直覺的值設定金鑰「名稱」
- 為您的應用程式功能選取各種所需的「範圍」
- 金鑰完全設定好後,按一下「儲存」
-
儲存後,金鑰會位於: 「帳戶 > 個人偏好設定 > 存取權杖」
系統會列出金鑰名稱,以及所有已啟用的範圍。
按一下金鑰說明一次,可顯示動作連結:
- 整合金鑰 - 此連結提供常值金鑰
- 廢止- 這會永久廢止與刪除存取權杖
-
登入 Adobe Sign 帳戶。
-
瀏覽至「帳戶 > Adobe Sign API > API 應用程式」。
-
按一下 + 圖示以建立一個應用程式。
-
按一下「為應用程式設定 OAuth」。
-
使用下列連結產生授權碼。「用戶端 ID」、「重新導向 URI」與範圍必須與在應用程式中所選的下列 URL 相同 (避免在下列 URL 中使用空格,如 '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 -
如果呼叫成功,請從位址列中選擇授權碼。
-
從 https://www.getpostman.com/apps 連結下載 Postman 並安裝。
-
下載並安裝完成後,按一下「新建」以建立 POST。
-
輸入您的 Adobe Sign 帳戶所屬的 https://secure.na1.echosign.com/oauth/token 連結。
-
在「頁眉」下方輸入「Content-Type」作為「application/x-www-form-urlencoded」。
-
確定在「內文」下方選取了「x-www-form-urlencoded」,然後在以 Adobe Sign 帳戶建立的應用程式中輸入下列參數及其對應的值,再按一下「傳送」。
-
如果所有的資訊皆正確,便會在回應中傳回存取權杖與重新整理權杖:
執行 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
存取權杖有效期僅 3600 秒 (1 小時),之後便過期。
API 請求持有人會使用「重新整理」權杖,以視需要產生新的「存取」權杖。
REST API v6 版或更新版本支援 Webhook。
如果 Webhook 接收器無法在 72 小時內回應,則 Webhook 會停用,不會傳送任何通知。
如果 Webhook 的目標 URL 因任何原因停止,則 Adobe Sign 會將 JSON 排入佇列,然後推入漸進式循環超過 72 小時。
未傳遞的事件將保留在重試佇列中,系統會在接下來的 72 小時內盡全力按照通知發生的順序傳遞通知。
重試傳遞通知的策略是將嘗試的間隔時間變更兩倍,從間隔 1 分鐘開始,到每隔 12 小時,結果就是在 72 小時內重試 15 次。
若要直接從 Adobe Sign UI 建立 Webhook,請先使用以下步驟透過 Azure AD 函數應用程式建立 Webhook URL:
-
透過 Microsoft 帳戶 https://portal.azure.com/ 登入。
-
在 AzureAD 帳戶下方註冊「函數應用程式」。
-
前往 AzureAD,然後前往「函數應用程式」> 按一下代表「函數」的圖示。
-
以 Javascript 作為語言來選取「Webhook+API」,然後按一下「建立函數」。
-
以下列程式碼片段取代 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(); };
-
按一下右下角的「測試」按鈕,並提供以下頁眉:
X-AdobeSign-ClientId as ***********************
-
按一下「儲存並執行」。
-
當您收到 200 個 OK 回應及以下頁眉時,按一下「取得函數 URL」
-
複製該 URL,然後前往「Adobe Sign UI」>「Webhooks」> 按一下 + 圖示以建立。
-
輸入下列資訊:
- 名稱: 管理員能夠快速瞭解其意思的直覺式名稱。
- 範圍: Webhook 擷取的範圍。介面中有「帳戶」與「群組」。
API 支援「帳戶」、「群組」、「使用者」與「資源」範圍。 - 只能為每個 Webhook 定義一個範圍
- URL: Adobe Sign 將 JSON 裝載推往的目標 URL。
- 事件: 造成 Adobe Sign 建立 JSON 並將其推送至該 URL 的觸發。
每個事件都會建立與觸發事件相關的不同裝載
一個 Webhook 可包含多個事件。 - 通知參數: 「通知參數」可識別「事件 JSON」裝載的區段,允許您僅選取重要「事件」的區段。
-
在 Webhook 完整定義後,按一下「儲存」,新 Webhook 會開始反應以立即觸發事件。
合約資產是指您可以透過其來建立合約的資產,例如文件、Widget 及合約本身。
若要搜尋「合約資產事件」,首先,請先向 API 提供一個請求,請求透過相關的搜尋參數建立 agreementAssetEvents。
「回應」是結果的第一頁,隨附搜尋 ID 參數與下一頁游標。如果進一步的頁面結果可使用會根據搜尋 ID 擷取 agreementAssetEvents 的 API 取得,您可以用「回應」來擷取此頁面結果。
-
開啟第 5 版的 REST API 文件。
-
前往 post/search/agreementAssetEvents,然後產生具有相關範圍的存取權杖。
-
在請求程式碼中,依照需求定義開始與結束日期:
{ "endDate": "2018-05-22T22:33:33", "startDate": "2017-12-22T22:33:33" }
-
按一下「試用」。其會擷取合約資產 ID,此 ID 也可作為合約 ID。
使用者/帳戶管理
- 登入 Adobe Sign。
- 瀏覽至「帳戶 > Adobe Sign API > REST API 文件」。
- 選取第 5 版。
- 在 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 Console 使用的 API 與 Adobe Sign API 不同。請參閱以下文章以取得詳細資訊:
- https://helpx.adobe.com/tw/enterprise/help/users.html
- https://www.adobe.io/apis/cloudplatform/umapi-new.html
取得群組 ID:
-
前往 https://secure.na1.echosign.com/public/docs/restapi/v5。
-
在「資源與作業」下方,按一下群組。
-
按一下「GET /groups」。
-
按一下「oAuth 存取權杖」按鈕。
-
產生存取權杖。
-
按一下「試用」按鈕。
您會收到如下所示的回應,以及群組名稱和群組 ID:
{ "groupInfoList": [ { "groupId": "3AAABLblqZhB4o9EnlvmGB_m8CrG5O6XClTBO7vmojOOexu5r3G95LtEV2Sp7BuhNvQYSvWB7PmmwVPXnhPIiYSuHV98Cerkp", "groupName": "Default Group" }, { "groupId": "3AAABLblqZhC3dPT6za5h7r1-BOEWivCe_OcAVONhcsKa57SL9_iCwGr5v_JED1No5jE20Pcjv0mYH2J-LoY1AcmqS69vRkO7", "groupName": "test" }, ] }
刪除群組:
-
按一下「DELETE /groups/{groupId}」。
-
若要產生存取權杖,請按一下「oAuth 存取權杖」按鈕。
-
在 groupId 方塊中新增您在上一個呼叫回應中收到所要刪除的 groupId。
-
按一下「試用」。
群組一旦刪除後,您會收到如下的回應:沒有內容
您無法刪除已獲指派使用者的群組。基本上,您只能刪除空白群組。如果群組中有使用者,您會收到如下的回應。
"code": "GROUP_NOT_EMPTY", "message": "無法刪除群組,因為群組並非空白。" } |
發起/傳送合約
產生暫時性文件
-
按一下「transientDocuments」,然後展開「POST /transientDocuments」方法
-
按一下「OAuth 存取權杖」按鈕
-
- 為交易啟用「範圍」
- 按一下「授權」
-
如果顯示挑戰,請按一下「允許存取」
-
您會返回 API 方法頁面。現在已填入「授權」值。
- 在「檔案名稱」欄位中輸入檔案名稱
- 按一下「選擇檔案」按鈕,然後上傳協議的文件
- 按一下「試用!」按鈕
-
系統會產生回應。
「transientDocumentID」位於「Response Body:」中
使用暫時性文件產生合約
-
按一下「agreements」,然後展開「POST /agreements」方法
-
- 按一下「OAuth 存取權杖」按鈕
- 啟用 OAuth 範圍
- 按一下「授權」
- 如果顯示挑戰,請按一下「允許存取」
-
您會返回 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」欄位
- 按一下「試用!」按鈕
-
系統會產生回應。
「agreementID」位於「Response Body:」中
以下為在 FileInfo 參數中新增檔案的步驟:
-
使用暫時性 ID:
前往「POST/transientDocuments」,然後從您的本機系統中上傳要使用的文件。
在 POST/Agreements 中使用於「檔案資訊」區段下方產生的暫時性 ID:"fileInfos": [ { "transientDocumentId": "" } ],
-
使用資料庫文件 ID:
前往「顯示面板」。按一下「新增文件至資料庫」,然後儲存範本。
在「REST API 文件」下方,按一下「GET /libraryDocuments」,然後擷取正在建立的範本其資料庫 ID。
在「POST/Agreements」下方提供資料庫文件 ID:"libraryDocumentId": "", "libraryDocumentName": "",
-
使用可公開使用的 URL:
在 FileInfo 參數下方提供要採用的可公開使用 URL:
{ "documentURL": { "mimeType": "", "name": "", "url": "" },
-
選取「合約 > POST/agreements」選項。
-
選取「Oauth 存取權杖」選項,然後提供必要的範圍。
-
在新增存取權杖後,您可以使用下列請求程式碼:
{ "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":"User provided in x-on-behalf-of-user header does not have required permission to perform this operation."}
|
對於「代表傳送」功能,請為帳戶啟用「進階帳戶共用」,讓使用者在共用其帳戶時,能夠將傳送權限授與其他使用者。對於「進階共用」,請參閱啟用進階帳戶共用。
「使用者共用」啟用後,請進行下列步驟來「代表傳送」:
產生暫時性文件:
-
在「transientDocuments」下方,按一下「POST /transientDocuments」。
-
若要為「授權」產生權杖,請按一下「OAUTH ACCESS-TOKEN」按鈕。
-
在「x-on-behalf-of-user」中,以下列格式提供您要代表傳送的使用者電子郵件: email:test@email.com
-
若要選取檔案,請按一下「選擇檔案」,然後按一下「試用」。
您會收到如下所示的回應及 transientDocumentId:
{"transientDocumentId":"3AAABLblqZhB9Mjo0mrIu_pSgrf5VsMaKM68_Vmn80cimaqiUAD2OxrPp2e5H8GvjfiOxj4d5B8bCPkUfvaozW3KLisp_wseGVOL8A7oNZni1DWyFi4uNoxLQu4nUO44Wh63GQv9_HEJMePust0Pk94vJ_rbS96R7ic-vl7jbOkN0b4EB5-JMqlC-Fl_Vpyz8I1EQUrM5I4nB9ztMov4ad00yiOtDw0tB-Y2t5JdzM07P-mpJmwYEl8Fq2IeDuWjcR2tV7qY7TNGX2CNyh9jt0aMyduHeYa0GABr69z8Hm76eKdtaM_1E1ggWj205fSrNcwJsnpSO278*"}
使用暫時性文件產生合約:
-
在「agreements」下方按一下「POST /agreements」。
-
若要為「授權」產生權杖,請按一下「OAUTH ACCESS-TOKEN」按鈕。
-
在「x-on-behalf-of-user」中,提供在建立暫時性文件時完成的使用者電子郵件。
-
在「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" }
-
登入 Adobe Sign。
-
瀏覽至「帳戶 > Adobe Sign API > API 資訊」,然後按一下「REST API 方法文件」。
-
POST /transientDocuments、上載檔案及建立暫時性文件 ID。
-
複製暫時性文件 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 }] } }
-
若要執行 JSON 請求,按一下「試用」按鈕。
正確的 JSON 會傳回合約 ID。
以下是您為了設定開放密碼,可以在程式碼中傳遞的參數:
{ "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" 的狀態建立合約,請進行下列步驟:
前往「Post /agreements」,然後建立含所需範圍的存取權杖。
使用請求程式碼,如下所示:
{ "fileInfos": [ { "transientDocumentId": "*********************" } ], "name": "A1", "participantSetsInfo": [ { "memberInfos": [ { "email": "abc@xyz.com" } ], "order": 1, "role": "SIGNER" } ], "signatureType": "ESIGN", "state": "AUTHORING" }
|
-
前往 REST API V6 文件,然後選取 POST/agreements 方法。
-
使用下列請求程式碼:
{ "fileInfos": [ { "transientDocumentId": "***************************" } ], "name": "test", "participantSetsInfo": [ { "memberInfos": [ { "email": "abc@gmail.com" } ], "order": 1, "role": "SIGNER" } ], "signatureType": "ESIGN", "state": "AUTHORING" }
-
將 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 } ]}
在此請求完成後,會將合約傳送給提及的收件者。
-
登入 Adobe Sign。
-
瀏覽至「帳戶 > Adobe Sign API > API 資訊」,然後按一下「REST API 方法文件」。
-
POST /transientDocuments、上載檔案及建立暫時性文件 ID。
-
複製暫時性文件 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 } ] } }
-
若要執行 JSON 請求,按一下「試用」按鈕。
正確的 JSON 會傳回合約 ID。
-
登入 Adobe Sign。
-
瀏覽至「帳戶 > Adobe Sign API > API 資訊」,然後按一下「REST API 方法文件」。
-
POST /transientDocuments、上載檔案及建立暫時性文件 ID。
-
複製暫時性文件 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" }] } }
-
若要執行 JSON 請求,按一下「試用」按鈕。
正確的 JSON 會傳回合約 ID。
-
若要開啟「撰寫中」模式的合約,請複製此 URL 並貼到瀏覽器的位址列。
-
將 form-fields 拖放到所需的位置。
-
若要傳送合約進行簽署,請按一下「傳送」。
使用 POST /agreements 建立合約。傳送合約進行簽署,並在回應中將 agreementID 傳回給用戶端。以下的 JSON 格式使用 Phone 驗證方法傳送合約。
{ "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": "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-Phone authentication testing", "formFields": null, "fileInfos": [{ "libraryDocumentName": null, "transientDocumentId": "3AAABLYourTransactionID", "documentURL": null, "libraryDocumentId": null }] },
"options": { "autoLoginUser": true, "authoringRequested": false, "noChrome": true, "sendThroughWeb": null, "sendThroughWebOptions": null, "locale": "en_US" } }
|
如何使用已為特定的表單欄位 (mergefield) 預先填入值的 API 傳送合約?
此呼叫的先決條件就是先完成「暫時上傳」步驟,然後取得 "transientDocumentId" (使用: secure.na1.echosign.com/public/docs/restapi/v5#! /transientDocuments/createTransientDocument) 以用於此。
- 此呼叫包含“mergeFieldInfo”區段,其中提供特定表單欄位的預設值。
- 這會在 API 呼叫中預先填入來自另一個系統的資料。
- 合約中的這些欄位是可編輯的或唯讀。
先決條件:
- 暫時性文件 ID
- 欄位名稱及其值
範例請求呼叫:
請求: POST /api/rest/v5/agreements HTTP/1.1 Host: api.na1.echosign.com (或者您可以指定分區名稱,尋找此名稱的方法是使用 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" } ] }
}
此呼叫的回應為“agreementId”,您必須將其儲存在系統中供後續呼叫 (signingUrl、status、formData 等) 之用
回應: { "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,然後執行下列步驟:
- 前往「V6 的 REST API 文件」,然後選取
「put /megaSigns/{megaSignId}/state」方法。 - 提供「授權」值,以及「If-Match」與 megasignID。
- 若要擷取 megasignID,請使用 get /megaSigns
- 若要擷取 If-Match,請使用 get /megaSigns/{megaSignId},然後在頁眉下方找到 "Etag"
- {
"state": "CANCELED",
"megaSignCancellationInfo": {
"comment": "cancel",
"notifyOthers": false
}
}
為了成功註冊 Webhook,Webhook URL 會以 2XX 回應程式碼回應此驗證請求,此外,也會以下列兩種方法之一傳回相同的用戶端 ID 值:
- 在回應頁眉「X-AdobeSign-ClientId」中。其為相同的頁眉,於請求中傳遞,並在回應中得到回音。
- 在 JSON 回應內文中,其中含「X-AdobeSign-ClientId」的金鑰,且其值與在請求中傳送的用戶端 ID 相同。
Adobe Sign 會接收 2xx 回應與「X-AdobeSign-ClientId」。使用者會檢查其是否已在 Webhook 中正確設定。
Webhook Url 未如預期的行為回應。針對 Adobe Sign 傳送的每個「發佈」通知,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 會停用。
管理/取得合約相關資訊
若要變更已傳送進行簽署的文件,請用 PUT /agreements/{agreementId} 方法作為您更新現有合約的方法。在請求程式碼中提供暫時性 ID 與合約 ID:
{ "documentUpdateInfo": { "fileInfos": [ { "agreementDocumentId": "", "transientDocumentId": "" } ] } }
|
以下為使用 Put /agreements/{agreementId}/state 將狀態從 "AUTHORING" 更新為 "IN_PROCESS" 的指示:
-
取得使用 POST/Agreement 方法擷取的合約 ID。
-
使用 Get /agreements/{agreementId} 擷取最新 ETag。
-
前往 Put /agreements/{agreementId}/state,並提供下列資訊: "state": "IN_PROCESS"
否。
在目前 REST API 中沒有方法可上傳已簽署的複本。
傳送者必須從「管理」頁面上傳已簽署的複本。
DELETE /agreements/ID 用於允許隱藏管理頁面中的合約。
Adobe 有新的 API PUT /agreements/ID/me/visibility 可控制合約 (在 GET /agreements 中) 的可見度。除了 DELETE /agreements/ID 提供的功能外,新的可見度端點也允許使用者還原「隱藏」作業,亦即讓合約再次可見。
您也可以依照如下所示的詳細步驟進行:
- 前往 get /agreements 方法,然後擷取合約 ID。
- 按一下 put /agreements/{agreementId}/me/visibility,並提供以下如範例所示的要求:
{
"visibility": "HIDE"
}
合約 ID 只會在 get /libraryDocuments 中隱藏,但在「管理」標籤 UI 下方仍會顯示。
「API 保留」功能預設未啟用。
若啟用「DELETE/agreements」作業,請連絡您的成功管理員,並請求開啟帳戶的「API 保留」。
如需如何啟用帳戶其「保留」功能的詳細資訊,請參閱Adobe Sign - 文件保留。
-
以 Adobe Sign 管理員身分登入,並瀏覽至: https://secure.adobesign.com/public/docs/restapi/v6
-
- 按一下「agreements」,然後展開「GET /agreements」方法
- 按一下「OAUTH ACCESS-TOKEN」按鈕
- 啟用「agreement_read:self」範圍
- 按一下「授權」按鈕
- 如果顯示挑戰,請按一下「允許存取」
- 按一下「Try it out! 」按鈕
-
系統會產生回應。
「agreementId」位於「Response Body:」中
-
DELETE /agreements/{agreementId}/documents: 刪除與合約相關的所有文件。合約本身在「管理」頁面上仍然可見。
- 選取要傳回的 DELETE/agreements 作業。
- 按一下「OAUTH ACCESS-TOKEN」按鈕,然後建立範圍為 areement_retention 的權杖。
- 提供您要刪除之合約的 agreementId。
- 合約刪除後,「回應內文」會沒有內容。
如果 DELETE/agreements 作業未啟用,您會得到以下回應:
"code": "DYNAMIC_DOCUMENT_EXPIRATION_NOT_ENABLED",
"message": "此作業需要啟用一些帳戶設定。請連絡 Adobe Sign 團隊啟用設定。"
如何透過 Adobe Sign REST API 下載已簽署的文件及稽核報告與支援文件,而非使用下列方法另外呼叫來下載稽核報告。
-
按一下「GET /agreements/{agreementId}/combinedDocument」。
-
按一下「oAuth 存取權杖」按鈕。
-
在接受授權後,會自動產生存取權杖。
-
提供 agreementId。
-
在「attachSupportingDocuments」下方,從下拉式清單中選取「true」。
-
在「attachAuditReport」下方,從下拉式清單中選取「true」。
-
按一下「試用!」 按鈕.
其會下載已簽署的 PDF、支援的文件和稽核報告組合。
若要下載大量文件,僅提供文件匯出工具,若是使用 API,您只能逐一下載文件。以下是相同的 API 方法:
https://secure.na1.adobesign.com/public/docs/restapi/v5#! /agreements/getCombinedDocument
資料庫範本與網頁表單
-
以管理員身分登入 Adobe Sign,然後瀏覽至: https://secure.na1.adobesign.com/public/docs/restapi/v6
-
- 按一下「資料庫文件」,然後展開「GET /libraryDocuments」方法
- 按一下「OAUTH ACCESS-TOKEN」按鈕
- 啟用「library_read:self」範圍
- 按一下「授權」按鈕
- 如果顯示挑戰,請按一下「允許存取」
- 按一下「Try it out! 」按鈕
-
系統會產生回應。
「libraryDocumentId」位於「Response Body:」中
Adobe 有新的 API PUT/libraryDocuments/ID/me/visibility 可控制合約 (在 GET /agreements 中) 的可見度。除了 DELETE /agreements/ID 提供的功能外,新的可見度端點也允許使用者還原「隱藏」作業,亦即讓合約再次可見。
您可以依照如下所示的詳細步驟進行:
- 前往 get /libraryDocuments 方法,然後擷取合約 ID。
- 按一下 put /libraryDocuments/{libraryDocumentId}/me/visibility,並提供以下如範例所示的要求:
{
"visibility": "HIDE"
}
資料庫 ID 只會在 get /libraryDocuments 中隱藏,但在「管理」標籤 UI 下方仍會顯示。
- 透過支援團隊提交請求,以取得為了刪除資料庫啟用的範圍。
- API 刪除資料庫文件。然而,使用此資料庫文件建立的合約不會受到影響。
產生 libraryDocumentID
-
前往 https://secure.echosign.com/public/docs/restapi/v5。
-
按一下「libraryDocuments」。
-
按一下「OAuth 存取權杖」按鈕。
授權存取 - 本身、群組或帳戶的權杖。
-
選取「libraryTemplateType」 - 文件或 Form_field_laye。
-
按一下「試用」。
針對所有的範本,您會收到如下列所示的回應。(複製所要刪除資料庫範本的 libraryDocumentId)。
{ "libraryDocumentList": [ { "name": "testing fields", "modifiedDate": "2017-08-04T01:06:05-07:00", "scope": "PERSONAL", "libraryDocumentId": "3AAABLblqZhAK53Dvzq88Q1Ov0TEvMAySDPpIVjF1PWgUpy0H1uYggt4iwGiRSZYlWfl9ms_AcmgZ_uZMPPN2hNT9izwaspHc", "libraryTemplateTypes": [ "DOCUMENT" ] },
刪除資料庫範本
-
從「回應內文」中複製 libraryDocumentID。
-
前往「刪除 libraryDocuments」。
-
按一下「oAuth 存取權杖」按鈕。授權存取 - 本身、群組或帳戶的權杖。
-
在「值」欄位中貼上「libraryDocumentId」。
-
按一下「試用」。
範本隨即刪除。您得到下列回應碼: 204
只能更新狀態為「草稿」的網頁表單。
-
使用 post /widgets 建立 Widget。
-
從 get/widgets 取得 Widget Id。
-
在使用 GET /widgets/{widgetId} 方法建立後,從「回應」頁眉中擷取 Etag。
-
在「put /widgets/{widgetId}」下方,使用「GET /widgets/{widgetId}」中的 Etag。在「If-Match」參數下方,輸入 widgetId 與 widgetInfo。
{ "fileInfos": [ { "transientDocumentId": "******" } ], "name": "Widht_Name", "status": "DRAFT", "widgetParticipantSetInfo": { "memberInfos": [ { "email": "" } ], "role": "SIGNER" } }
-
使用個案範例
-
透過正確的 x-api-user 進行 get/agreements 呼叫。
-
在「回應內文」中,找到您要尋找簽署 URL 的簽署合約,並記下合約 ID
-
使用從 get/agreements 呼叫收到的合約 ID 進行 get/agreements/{agreementId}/signingUrls 呼叫。
結果
此輸出傳回簽署者的電子郵件地址與已電子簽署的 URL。