檔案Webhooks API

Adobe Workfront Document Webhooks定義了一組API端點,Workfront會透過這些端點向外部檔案提供者發出授權的API呼叫。 這可讓任何人為任何檔案儲存提供者建立中介外掛程式。

webhook型整合的使用者體驗將與現有檔案整合類似,例如Google Drive、Box和Dropbox。 例如,Workfront使用者將能夠執行下列動作:

  • 瀏覽外部檔案提供者的檔案夾結構
  • 搜尋檔案
  • 將檔案連結至Workfront
  • 將檔案上傳到外部檔案提供者
  • 檢視檔案的縮圖

參考實作

為協助快速開始開發新的Webhook實作,Workfront提供參考實作。 您可以在https://github.com/Workfront/webhooks-app找到此專案的程式碼。 此實作以Java為基礎,可讓Workfront在網路檔案系統上連線檔案。

註冊Webhook整合

Workfront管理員可透過導覽至Workfront中的「設定>檔案>自訂整合」,為其公司新增自訂webhook整合。 在「設定」的「自訂整合」頁面中,管理員可以檢視現有檔案Webhook整合的清單。 您可以在此頁面新增、編輯、啟用和停用整合。 若要新增整合,請按一下「新增整合」按鈕。

可用欄位

新增整合時,管理員會在下列欄位中輸入值:

欄位名稱
說明
姓名
此整合的名稱。
基底 API URL
回撥API的位置。 呼叫外部系統時,Workfront僅會將端點名稱附加至此位址。 例如,如果管理員輸入基本API URL " https://www.mycompany.com/api/v1 ",Workfront將使用以下URL來取得檔案的中繼資料:https://www.mycompany.com/api/v1/metadata?id=1234。
要求引數
附加至每個 API 呼叫的 querystring 的選用值。例如,access_type
驗證類型
OAuth2或ApiKey
驗證 URL
(僅限OAuth2)用於使用者驗證的完整URL。 Workfront會在OAuth布建程式過程中,將使用者導覽至此位址。 注意: Workfront會將「state」引數附加至查詢字串。 提供者必須透過將此附加至Workfront重新導向URI,將其傳回Workfront。
權杖端點 URL
(僅限OAuth2)用於擷取OAuth2 Token的完整API URL。 這是由webhook提供者或外部檔案提供者所託管
用戶端 ID
(僅限OAuth2)此整合的OAuth2使用者端ID
用戶端密碼
(僅限OAuth2)此整合的OAuth2使用者端密碼
Workfront 重新導向 URI
(僅限OAuth2)這是唯讀欄位,由Workfront產生。 此值可用來向外部檔案提供者註冊此整合。 注意:如上述驗證URL所述,提供者在執行重新導向時,必須將"state"引數及其值附加至查詢字串。
ApiKey
(僅限ApiKey)用來對webhook提供者進行授權的API呼叫。 webhook提供者所發行的API金鑰。

驗證

Workfront檔案webhook支援兩種不同的驗證形式: OAuth2和ApiKey。 在這兩種情況下,Workfront都會在進行API呼叫時在標題中傳遞驗證權杖。

OAuth2

OAuth2可讓Workfront代表使用者向webhook提供者發出授權的API呼叫。 在執行此操作之前,使用者必須將其外部檔案提供者帳戶連線至Workfront並授予Workfront

代表他們行事的存取權。 此握手程式只會針對每位使用者進行一次。 以下是運作方式:

  1. 使用者開始將webhook整合連線至其帳戶。 目前,若要這麼做,請按一下「新增檔案」下拉式清單>「新增服務」>自訂整合名稱。

  2. Workfront會導覽使用者驗證URL,這可能會提示使用者登入外部檔案提供者。 此頁面由webhook提供者或外部檔案管理系統託管。 Workfront這麼做時,會將「state」引數新增至驗證URL。 必須在下列步驟中,將相同的值附加至Workfront傳回URI,將此值傳回Workfront。

  3. 登入外部系統後(或如果使用者已登入),使用者將被帶到「驗證」頁面,此頁面說明Workfront正在請求存取權,以代表使用者執行一組動作。

  4. 如果使用者按一下「允許」按鈕,瀏覽器會重新導向至Workfront重新導向URI ,並將「code=<code>」新增至querystring。 根據OAuth2規格,此代號只會短暫有效。 查詢字串也必須具有下列「state=<sent_by_workfront>」。

  5. Workfront處理此要求,並使用授權代碼對權杖端點URL進行API呼叫。

  6. 權杖端點URL會傳回重新整理權杖和存取權杖。

  7. Workfront會儲存這些Token並完整布建此使用者的webhook整合。

  8. 從現在開始,Workfront將能夠向webhook提供者發出授權的API呼叫。 進行這些呼叫時,Workfront會在HTTP請求標頭中傳送存取權杖,如下所示:

    code language-none
    -------------------------------
    Authorization: Bearer [access_token] ­­­­­­­­­­­­­­­­­­­­­­­­­­
    -------------------------------
    
  9. 如果存取權杖已過期,Workfront會呼叫權杖端點URL以擷取新的存取權杖,然後使用新的存取權杖再次嘗試授權API呼叫。

ApiKey

使用ApiKey向webhook提供者發出授權API呼叫比OAuth2簡單得多。 進行API呼叫時,Workfront只會在HTTP請求標頭中傳遞ApiKey和Workfront使用者名稱:

-------------------------------

apiKey: 12345

username: johndoe@foo.com

-------------------------------

Webhook提供者可以使用使用者名稱來套用使用者特定的許可權。 當兩個系統都使用單一登入(SSO)連線到LDAP時,這個方法會發揮最佳效果。

新增請求標頭(選用)

除了使用OAuth2 Token或ApiKey進行驗證外,Workfront還可以為每個API呼叫將預先定義的標題集傳送給webhook提供者。 Workfront管理員可在註冊或編輯Webook整合時進行此設定,如上節所述。 請參閱註冊Webhook整合。

例如,這可用於基本驗證。 若要這麼做,Workfront管理員會在「自訂整合」對話方塊中新增下列「請求標題」資訊:

授權基本QWxhZGRpbjpvcGVuIHNlc2FtZQ==

其中QWxhZGRpbjpvcGVuIHNlc2FtZQ==是「username:password」的base-64編碼字串。 請參閱基本驗證。 如果新增此專案,Workfront除了其他請求標頭外,還會在HTTP請求標頭中傳遞此專案:

­­­­­­­­­­­­­­­­­­­­­­­­­­-------------------------------

apiKey: 12345

username: johndoe@foo.com

Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ== ­­­­­­­­­­­­­­­­­­­­­­­­­­

-------------------------------

API規格

以下是webhook提供者應該實作的API清單,以便檔案webhook運作。

取得OAuth2 Token (僅需要OAuth2驗證)

傳回已驗證使用者的OAuth2重新整理權杖和存取權杖。 當使用者布建檔案提供者時,就會叫用一次。 進行後續呼叫以取得更新的存取Token。

HTTP要求POST/any/url

URL可設定,並與自訂整合設定頁面上的權杖端點URL值相對應。

查詢引數

姓名
必要
說明
grant_type
值包括「authorization_code」或「refresh_token」。 指定的值表示將傳遞至此API呼叫的兩個引數之一: code或refresh_token。
程式碼
根據
使用者按一下「授予」按鈕後就會傳送至Workfront的授權代碼。 僅當授權型別為「authorization_code」時才需要此項。 授權碼應為短期,通常在10分鐘或更短時間內到期。
refresh_token
根據
只有在進行後續呼叫以擷取新的access_token時才需要此專案,因為先前的access_token已過期。 傳送此值時,請將grant_type引數設為"refresh_token"。
client_id
在Workfront中針對此自訂整合設定的使用者端ID。
client_secret
Workfront中針對此自訂整合設定的使用者端密碼。

回應

姓名
型別
說明
access_token
字串
代號,用來代表使用者進行授權的API呼叫。 此專案應該會過期,以防止未經授權的API呼叫。
refresh_token
字串
長效權杖,用於透過呼叫此API方法擷取新的access_token。
expires_in
(選用) access_token過期前的時間(以秒為單位),通常為3,600。

範例

POST /oauth2/token
grant_type=authorization_code
code=d9ac7asdf6asdf579d7a8
client_id=123456
client_secret=6asdf7a7a9a4af

回應

{
"access_token":"ad8af5ad5ads759",
"refresh_token":"9a0h5d87d808ads",
"expires_id":"3600"
}

取得檔案或資料夾的中繼資料

傳回指定檔案或資料夾的中繼資料。

URL

/metadata?id=[檔案或資料夾識別碼]GET

查詢引數

名稱
說明
id

檔案或資料夾的ID,由webhook提供者參照。 這與Workfront的檔案ID不同。 若要取得根目錄的中繼資料,請使用值'/'。

注意:ID的長度上限為255個字元。

回應

名稱
型別
說明
標題
字串
檔案或資料夾的名稱
種類
字串
指定此專案是檔案還是資料夾('file'或'folder')
id
字串
檔案或資料夾的識別碼。
viewLink
字串
使用者在瀏覽器視窗中檢視檔案時所使用的URL路徑。 URL可由檔案提供者或原生外部儲存提供者來託管。
downloadLink
字串
使用者在瀏覽器視窗中下載檔案時使用的URL路徑。 URL可由檔案提供者或原生外部儲存提供者來託管。
mimeType
字串
檔案的MIME型別。 (可選)
dateModified
字串
上次修改此檔案的時間(格式為RFC 3339時間戳記)
大小
檔案大小(位元組)。 (可選)
readOnly
布林值
指出此檔案或資料夾對於已驗證的使用者是否為唯讀。(可選)

範例: https://www.acme.com/api/metadata?id=12345

回應

{
"title":"My Document",
"kind":"file"
"id":"12345",
"viewLink":"https://www.acme.com/viewDocument?id=12345",
"downloadLink":"https://www.acme.com/downloadDocument?id=12345",
"mimeType":"image/png",
"dateModified":"2014­06­05T17:39:45.251Z",
"size": "32554694"
}
NOTE
所有API呼叫的錯誤處理都應保持一致。 如需詳細資訊,請參閱下方的「錯誤處理」一節。

取得資料夾中的專案清單

傳回指定資料夾之檔案和資料夾的中繼資料。

URL

GET/files

查詢引數

名稱
說明
parentId
資料夾識別碼。 若要取得根目錄的中繼資料,請使用值'/'。

檔案Webhooks API目前不支援分頁。

回應

包含檔案和資料夾清單的JSON。 每個專案的中繼資料與/metadata端點傳回的中繼資料相同。

範例: https://www.acme.com/api/files?parentId=123456

回應

[
{
"title":"Folder A",
"kind":"folder",
"id":"2lj23lkj",
"viewLink":"https://www.acme.com/viewDocument?id=2lj23lkj",
"downloadLink":"https://www.acme.com/downloadDocument?id=2lj23lkj",
"mimeType":"",
"dateModified":"2014­06­05T17:39:45.251Z",
"size":""
},
{
"title":"My Document",
"kind":"file",
"id":"da8cj234"
"viewLink":"https://www.acme.com/viewDocument?id=da8cj234",
"downloadLink":"https://www.acme.com/downloadDocument?id=da8cj234",
"mimeType":"image/png",
"dateModified":"2014­06­05T17:39:45.251Z",
"size":"32554694"
},
]

進行搜尋

傳回搜尋傳回之檔案和資料夾的中繼資料。 這可作為全文檢索搜尋或一般資料庫查詢來實施。 當使用者從外部檔案瀏覽器執行搜尋時,Workfront會呼叫/search端點。

URL

GET/search

查詢引數

名稱
說明
查詢
搜尋字詞或片語。
parentId
(選用)執行搜尋的來源資料夾ID。 注意:這是Workfront中未來功能的預留位置。 目前,Workfront不傳遞此引數。

檔案Webhooks API目前不支援分頁。

回應

JSON,其中包含符合查詢的檔案和資料夾的中繼資料清單。 構成「符合」的專案由webhook提供者決定。 理想情況下,應該執行全文檢索搜尋。 執行檔案名稱式搜尋也可運作。

範例: https://www.acme.com/api/search?query=test-query

回應

[
{ File/Folder Metadata },
{ File/Folder Metadata }
]

取得檔案的內容

傳回檔案的原始位元組

URL

GET/下載

查詢引數

名稱
說明
id
檔案識別碼。

回應

檔案的原始位元組。

範例: https://www.acme.com/api/download?id=123456

取得檔案的縮圖

傳回檔案的原始縮圖位元組。

URL

GET/thumbnail

查詢引數

名稱
說明
id
檔案識別碼。
大小
縮圖的寬度

回應

原始縮圖位元組。

範例: https://www.acme.com/api/thumbnail?id=123456

上傳檔案 — 第1部分,共2部分

將檔案上傳至檔案儲存提供者是一個包含兩個步驟的程式,需要兩個不同的API端點。 Workfront會呼叫/uploadInit以開始上傳程式。 此端點會傳回檔案ID,然後在上傳檔案位元組時傳遞給/upload。 根據基礎檔案儲存系統,可能需要建立長度為零的檔案,然後稍後更新檔案的內容。

將檔案ID和檔案版本ID新增至本規格1.1版,可用來從Workfront擷取額外資訊。 例如,如果檔案管理系統想要關於檔案的額外資訊,webhook實作程式碼可以使用檔案ID來使用Workfront的RESTful API擷取該資訊。 好的實務是,此資訊可能來自檔案上的自訂資料欄位,並包含任務、問題或專案。

URL

POST/uploadInit

查詢引數

名稱
說明
parentId
Webhook提供者參照的父資料夾ID。
檔案名稱
檔案的名稱
documentId
Workfront檔案ID (在1.1版中新增)
documentVersionId
Workfront檔案版本ID (在1.1版中新增)

回應

由/metadata端點定義的檔案中繼資料。

範例: https://www.acme.com/api/uploadInit?parentId=12345&filename=new-file.png&docu mentId=511ea6e000023edb38d2effb2f4e6e3b&documentVersionId=511ea6e000023edb38d2e ffb2f4e6e3b

回應

[file_metadata]包含檔案提供者使用的新檔案識別碼。

上傳檔案 — 第2部分(共2部分)

將檔案的位元組上傳到webhook提供者。

URL

PUT/upload

查詢引數

名稱
說明
id
剛建立的檔案ID。

要求內文

檔案的原始內容位元組。

回應

{
"result": "success"
}

{
"result": "fail"
}

範例: https://www.acme.com/api/upload?id=1234 [包含在更新資料流中的檔案位元組]

回應

{
"result":"success"
}

取得服務的相關資訊

(發行日期 — 待定)傳回服務的相關資訊,例如特性與功能。 Workfront將使用此資訊在Workfront中自訂使用者介面。 例如,如果webhook實作包含一些自訂動作,JSON應在JSON中列出這些動作。 之後,使用者就可以從Workfront叫用這些動作。

URL

GET/serviceInfo

查詢參數

無。 此外,對此端點的呼叫不應需要驗證。

回應

包含此服務相關資訊的JSON

姓名
型別
說明
webhookVersion
字串
此服務實作的webhook版本。 這是列在此規格頂端的版本編號。
版本
字串
此服務的內部版本號碼。 此數字由webhook服務提供者決定,僅供參考。
發佈者
字串
提供webhook實作的公司名稱。
availableendpoints
字串
包含此服務實作之API端點的清單。 這可用來確保Workfront中的使用者介面反映webhook提供者所提供的功能。 清單中的每個專案都必須包含端點的名稱(例如「search」)。
customActions
字串
包含此Webhook實作的自訂作業清單。 每個清單專案都包含名稱和顯示名稱。 顯示名稱會顯示在Workfront的「檔案動作」下拉式清單中。 按一下下拉式清單中的專案時,將會呼叫/customAction端點,以叫用webhook中的動作。

範例: https://www.acme.com/api/serviceInfo

傳回

{
"webhook version": "1.2", "version": "1.0", "publisher": "Acme, LLC", "availableEndpoints": ["files", "metadata", "search", "download"

"thumbnail", "uploadInit", "upload" ], "customActions" [
{
"name": "archive", "displayName": "Archive" }, {

"name": "doSomethingElse", "displayName": "Do Something" }, ] }

建立資料夾

(在1.2版中新增)在指定目錄中建立資料夾。
URL

POST/createFolder

查詢引數

名稱
說明
parentId
應在其中建立資料夾的資料夾ID
名稱
新資料夾的名稱

回應

新建立資料夾的中繼資料,如/metadata端點所定義。

範例: POST https://www.acme.com/api/createFolder

-------------------------------

parentId=1234

name=New Folder ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­

-------------------------------

傳回

{"title":"New Folder",
 "kind":"folder""id":"5678",
 "viewLink":"",
 "downloadLink":"",
 "mimeType":"",
 "dateModified":"2014­06­05T17:39:45.251Z"
 "size": ""
 }

刪除檔案或資料夾

(發行日期 — 待定)刪除外部系統中具有特定ID的檔案或資料夾。 刪除資料夾也會刪除其內容。

URL

PUT/delete

查詢引數

名稱
說明
documentId
要刪除的檔案識別碼
folderId
要刪除的資料夾識別碼

回應:指出成功或失敗的JSON字串,如底下「錯誤處理」區段中所指定。

範例: PUThttps://www.acme.com/api/delete id=1234

傳回

{
"status": "success"
}

傳回

{
"status": "failure", "error": "File not found"
}

重新命名檔案或資料夾

(發行日期 — 待定)重新命名外部系統中具有特定ID的檔案或資料夾。

URL

PUT/重新命名

查詢引數

名稱
說明
id
要重新命名的檔案或資料夾ID
名稱
檔案或資料夾的新名稱

回應

指示成功或失敗的JSON字串,如以下錯誤處理區段中所指定。

範例:

PUT https://www.acme.com/api/rename

-------------------------------

id=1234

name=Folder B ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­

-------------------------------
{
"status": "success"
}returns
{
"status": "failure", error: "Folder cannot be renamed because a folder with that name already exists."
}

執行自訂動作

(發行日期 — 待定)此端點會允許Workfront使用者(或可能是自動化工作流程事件)在外部系統中執行動作。 /customAction端點接受「name」引數,此引數允許webhook提供者實作多個自訂操作。

webhook提供者會將actions包含在customActions下的/serviceInfo回應中,藉此向Workfront註冊自訂動作。 Workfront會在設定>檔案>自訂整合底下設定或重新整理webhook提供者時載入此清單。

使用者可以透過選擇「檔案動作」下的區段來觸發自訂動作

URL

GET/customAction

查詢引數

名稱
說明
名稱
指定要執行的動作型別的識別碼。 此值對應至/serviceInfo端點傳回的其中一個customAction值。
documentId
正在對其執行動作的Workfront檔案ID。
documentVersionId
正在對其執行動作的Workfront檔案版本ID。

回應

指示成功或失敗的JSON字串,如以下錯誤處理區段中所指定。 失敗時(即狀態= "failure"),Workfront會向使用者顯示提供的錯誤訊息。

範例: https://sample.com/webhooks/customName?name=archive&documentId=5502082c003a4f30 ddec2fb2b739cb7c&documentVersionId=54b598a700e2342d6971597a5df1a8d3

回應

{
"status": "success"
}

錯誤處理

處理API請求時可能會出現問題。 所有API端點的處理方式都應保持一致。 發生錯誤時,webhook提供者會執行下列動作:

  • 在回應標頭中包含錯誤代碼。 錯誤碼包括:

    • 403 — 禁止。 指出要求權杖遺失或無效,或是與權杖關聯的認證無權存取指定的資源。 對於以OAuth為基礎的webhook提供者,Workfront將嘗試擷取新的存取權杖。
    • 404 — 找不到。 表示指定的檔案或資料夾不存在。
    • 500 — 內部伺服器錯誤。 任何其他型別的錯誤。
  • 使用以下格式說明回應本文中的錯誤:

{
"status": "error"
"error": "Sample error message"
}

測試

若要驗證檔案webhook實作是否正常運作,請執行以下測試。 這些是透過Workfront網頁介面的手動測試,並間接點選webhook實施的端點。

先決條件

若要執行這些測試,您將需要下列專案:

  • 已啟用進階檔案管理(ADM)的Workfront帳戶
  • 此帳戶的Workfront使用者,擁有系統管理員許可權
  • Workfront可存取其HTTP端點的檔案Webhook例項

這些測試也假設您已經在Workfront中的「設定>檔案>自訂整合」下註冊了Document Webhook例項。

測試1:為使用者布建Document Webhook服務

測試以OAuth為基礎的Webhook提供者的驗證URL和權杖端點URL。

  1. 在Workfront中,按一下頂端導覽列中的「檔案」連結,前往「檔案」首頁面。
  2. 按一下新增檔案下拉式清單,在新增服務下選取您的檔案Webhook服務。
  3. (僅限OAuth服務)完成上一步驟後,您會在快顯視窗中看到服務的OAuth2驗證頁面載入載入內容。 (注意:系統可能會提示您先登入服務。) 在驗證頁面中,按一下「信任」或「允許」按鈕,將Workfront存取權授與使用者帳戶。
  4. 確認您的服務已新增至新增檔案下拉式清單。 如果一開始沒有看見,請嘗試重新整理瀏覽器。

測試2:將檔案連結至Workfront測試下列端點: /files、/metadata

  1. 在Workfront中,按一下頂端導覽列中的「檔案」連結,前往「檔案」首頁面。
  2. 在新增檔案下選擇您的檔案Webhook服務。
  3. 從強制回應視窗中,導覽至資料夾結構。
  4. 確認您能夠正確導覽資料夾結構。
  5. 選擇檔案並將其連結至Workfront

測試3:導覽至內容管理系統中的檔案

測試下列端點: /metadata (尤其是viewLink)

  1. 將檔案連結至Workfront
  2. 選取檔案並按一下「開啟」連結。
  3. 確認檔案會在新標籤中開啟。

測試4:導覽至內容管理系統中的檔案(含登入)

測試下列端點: /metadata (尤其是viewLink)

  1. 確保您已登出內容管理系統。
  2. 將檔案連結至Workfront。
  3. 選取檔案並按一下「開啟」連結。
  4. 確認內容管理系統的登入畫面會在新標籤中載入。
  5. 登入並確認您已前往檔案

測試5:從內容管理系統下載檔案

測試以下端點: /metadata (尤其是downloadLink)

  1. 將檔案連結至Workfront。
  2. 選取檔案並按一下下載連結。
  3. 確認下載開始。

測試6:搜尋內容

測試下列端點: /search

  1. 在Workfront中,按一下頂端導覽列中的「檔案」連結,前往「檔案」首頁面。
  2. 在新增檔案下選擇您的檔案Webhook服務。
  3. 從強制回應視窗中,執行搜尋。
  4. 確認搜尋結果是否正確。

測試7:將檔案從Workfront傳送至內容管理系統

測試下列端點: /files、/uploadInit、/upload

  1. 在Workfront中,按一下頂端導覽列中的「檔案」連結,前往「檔案」首頁面。
  2. 從您的電腦上傳檔案至Workfront
  3. 前往檔案詳細資訊頁面
  4. 從「檔案動作」下拉式清單中,選取「傳送至……」下的「檔案Webhook服務」。
  5. 前往所需的目的地資料夾,然後按一下「儲存」按鈕。
  6. 確認檔案已上傳至內容管理系統中的正確位置。

測試8:在Workfront中檢視縮圖

測試下列端點: /thumbnail

  1. 將檔案連結至Workfront。
  2. 選取清單中的文件。
  3. 確認縮圖出現在右側面板中。

測試9:取得內容位元組

測試下列端點: /download

  1. 將檔案連結至Workfront。
  2. 前往檔案詳細資訊頁面。
  3. 透過選取檔案動作>傳送至…… > Workfront,將檔案傳送至Workfront。 這會在Workfront中建立新的檔案版本。
  4. 按一下「下載」連結,從Workfront下載檔案。

測試10:重新整理存取權杖(僅限OAuth2 Webhook提供者)

測試下列端點:權杖端點URL

  1. 為使用者布建Document Webhook服務
  2. 讓使用者的存取Token失效,方法是1 )等待它逾時,或2)在外部系統中手動讓它失效。
  3. 在Workfront中重新整理存取Token。 例如,您可以將檔案連結至Workfront來執行此操作。 如果您能夠導覽至並連結檔案,您將知道存取權杖已成功重新整理。
NOTE
目前,傳送至……不適用於連結的檔案。 Workfront將新增此專案。 您可以使用REST使用者端(例如Postman)手動點選端點來測試/download端點。 或者,也可以透過產生數位校樣來測試/download端點。 若要啟用,數位校訂,請聯絡Workfront。

版本

  • 1.0版(發行日期 — 2015年5月)

    • 初始規格
  • 1.1版(發行日期 — 2015年6月)

    • 更新/uploadInit — 新增documentId和documentVersionId
  • 1.2版(發行日期 — 2015年10月)

    • 新增/createFolder
recommendation-more-help
5f00cc6b-2202-40d6-bcd0-3ee0c2316b43