查詢使用者資訊或檔案資訊
使用者帳戶資訊
伺服器:ServiceGateway
目的:查詢使用者基本資料及已使用狀況資訊;包括可用空間、已使用空間、可設定備份電腦數、已設定備份電腦數等資訊。
Credential State常數
30 ENABLED:被 Activate、Enable、Unlock後,可正常使用的狀態。
20 DISABLED:被 Disable,不可使用。
10 LOCKED:輸入 OTP 錯誤過多次,被 VesiSign 鎖定,暫時不可用,直到以 Unlock API解鎖定。
0 INACTIVE:被 Deactivate,不可使用。
POST /member/getinfo/
Input
<!--?xml version="1.0" encoding="utf-8" ?-->
<getinfo>
<userid>{ User ID }</userid>
<token>{ token }</token>
<time>{ time stamp, this is for scramble the payload }</time>
</getinfo>
Output
<!--?xml version="1.0" encoding="utf-8" ?-->
<getinfo>
<status>{ Status Code }</status>
<account>{ Account ID }</account>
<email>{ Email Address }</email>
<regyear>{ regYear }</regyear> <!-- 此值目前固定為 2008 -->
<language>{ zh-tw }</language>
<activateddate>{ 啟用時間,格式為 yyyy-MM-dd HH:mm:ss }</activateddate>
<credential>{ 用戶的 OTP Credential ID }</credential> <!-- 未使用 OTP 機制的用戶此欄為空字串 -->
<credentialstate>{ 用戶 OTP Credential ID 的現行狀態 }</credentialstate> <!--未使用 OTP 機制的用戶此欄為空字串 -->
<usedbackuppc>{ 個數 }</usedbackuppc> <!-- 此帳號已使用的備份電腦資料夾個數-->
<backuppc> <!-- 此 Element 可重覆多次 -->
<name>{ 備份電腦的資料夾名稱的 Base64 編碼結果字串 }</name> <!-- 若您使用的開發語言為 Ruby,請用 Base64.strict_encode64,避免“\n”在編碼之後出現。-->
<createdtime>{ 格式為yyyy-MM-dd HH:mm:ss }</createdtime> <!-- 備份電腦建立時間 -->
</backuppc>
<package>
<id>{ Package ID }</id>
<display>{ EeePC-20G }</display> <!-- package name -->
<capacity>{ 容量大小。Ex:20000 }</capacity> <!-- 計量單位 MB -->
<uploadbandwidth>{ 頻寬。Ex:128 }</uploadbandwidth> <!-- 計量單位 KB -->
<downloadbandwidth>{ 頻寬。Ex:128 }</downloadbandwidth> <!-- 計量單位 KB -->
<upload>{ Ex:128 }</upload> <!-- 計量單位 MB -->
<download>{ Ex:128 }</download> <!-- 計量單位 MB -->
<concurrentsession>{ # 幾個session(數值) }</concurrentsession>
<maxfilesize>{ 檔案上傳容量上限 }</maxfilesize> <!-- 單位為 MB -->
<hasencryption>[ 0 | 1 ]</hasencryption>
<expire>{ 到期日(格林威治時間),yyyy-MM-dd HH:mm:ss }</expire>
<maxbackuppc>{ 備份電腦數上限 }</maxbackuppc>
<featurelist>
<feature name="{ 功能名稱,例如:MEar }" enable="[ 0 | 1 ]"> <!-- feature 可以重覆出現多次描述多個功能項目 -->
<property name="{ 功能屬性名稱 }" value="{ 功能屬性值 }"></property> <!-- property 可以重覆出現,多次描述多個功能屬性 -->
</feature>
</featurelist>
</package>
<usedcapacity>{ 已使用空間 }</usedcapacity> <!-- 單位為 MB -->
<freecapacity>{ 剩餘可用空間 }</freecapacity> <!-- 單位為 MB -->
</getinfo>
回傳的狀態碼(Status Code)
狀態碼 | 狀態描述 |
---|---|
0 | Success。 |
2 | Authentication Fail。 |
999 | General Error。 |
瀏覽目錄
伺服器:InfoRelay
目的:由客戶端指定欲瀏覽的目錄,伺服端將傳回該目錄下的檔案列表及相關資訊。客戶端亦可將檔案依照名稱或最後修改時間進行升冪排序或者是降冪排序。
使用說明
傳入參數 pageno 及 pagesize 將可進行分頁(須二參數皆有才有分頁功能)。
由客戶端指定分頁參數(pageno),以顯示該參數頁面下的檔案資料(record)。若指定的目錄下無任何檔案資料,伺服端將回傳分頁參數(pageno)值為 0。
若輸入分頁參數(pageno)為 1,則伺服端將回傳該目錄下第一頁的檔案資料(record)供客戶端瀏覽。
若輸入分頁參數(pageno)小於 1,則伺服端將會判斷該目錄下是否有任何檔案資料(record)。若有,則伺服端將回傳分頁參數(pageno)為1,以便客戶端瀏覽目錄下第一頁的檔案列表;若查不到任何檔案資料,將回傳分頁參數(pageno)值為 0。
若輸入分頁參數(pageno)數值大於最後一頁,則伺服端將回傳分頁參數(pageno)為最後一頁的頁碼。
TYPE參數說明
參數值 | 瀏覽顯示結果(副檔名) |
---|---|
FOLDER | 目錄 |
DOC | html,htm,xml,xls,ppt,doc,xlsx,pptx,docx,odt,ods,odp,pdf,epub,rtf,txt |
IMAGE | jpg,gif,png,jpeg,bmp |
VIDEO | avi,mp4,mpeg,mpg,m4v,mov,mkv,vob,vcd,svcd,rm,rmvb,divx,wmv,3gp,3gpp,flv |
MUSIC | mp3,aac,3gpp,amr |
OTHERS | 非以上副檔名的檔案 |
POST /inforelay/browsefolder/
Input
<!--?xml version="1.0" encoding="utf-8"?-->
<browse>
<token>{ token }</token>
<language>{ 使用者的語系,例如:zh_TW }</language>
<userid>{ User ID }</userid>
<folderid>{ Folder ID }</folderid> <!-- 欲瀏覽的目錄ID -->
<type>[ FOLDER | DOC | IMAGE | VIDEO | MUSIC | OTHERS ]</type> <!-- 選擇性欄位。不傳此參數,將顯示所有結果;若輸入固定參數,則可決定要瀏覽顯示子目錄或是特定類別的檔案。詳情請參閱此 API 的「TYPE參數說明」 -->
<pageno>{ 要索取的頁面號碼#(第一頁為1)。例如:17 }</pageno>
<pagesize>{ 指定一頁要顯示的筆數 }</pagesize>
<sortby>[ 1 | 2 ]</sortby><!-- 1:以名稱排序 | 2:以最後修改時間排序 -->
<sortdirection>[ 0 | 1 ]</sortdirection><!-- 0:升冪排序(ASC) | 1:降冪排序(DESC) -->
</browse>
Output
回傳的狀態碼(Status Code)
狀態碼 | 狀態描述 |
---|---|
0 | Success。 |
2 | User Authentication Fail。 |
218 | 要處理的目錄不存在或已刪除。 |
225 | 上傳參數錯誤(例如:folderid 參數值未傳)。 |
235 | 上傳參數的操作要求錯誤(例如:sortby 參數值為-1)。 |
999 | General Error。 |
最近更新的檔案清單
伺服器:InfoRelay
目的:取得用戶最近四周內發生異動的檔案列表(不包含已刪除之檔案)。可利用更新時間做排序。
POST /file/getlatestchangefiles/
Input
Output
回傳的狀態碼(Status Code)
狀態碼 | 狀態描述 |
---|---|
0 | Success。 |
2 | Authentication Fail。 |
3 | Payload is not validate。 |
225 | targetroot參數值須為系統資料夾ID。若為一般資料夾的ID,將會出錯。 |
999 | General Error。 |
系統資料夾 ID 列表
類別 | 名稱 | Folder ID |
---|---|---|
system.{package}.home.root | 我的收藏 | 0 |
system.backup.root | 我的備份 | -3 |
system.sync.root | 同步中心 | -5 |
「我的收藏」資料夾
{package} 是從 AcquireToken API 所回傳的 XML Payload 中取得,為 package 參數中的 display 參數值(請參閱文件「ServiceGateway Technical Spec」)。
最近上傳的檔案清單
伺服器:InfoRelay
目的:此 API 可回傳用戶最近上傳之檔案列表。並可利用更新時間進行排序。
POST /file/getlatestuploads/
Input
Output
回傳的狀態碼(Status Code)
狀態碼 | 狀態描述 |
---|---|
0 | Success。 |
2 | Authentication Fail。 |
3 | Payload is not validate。 |
225 | targetroot 參數值須為系統資料夾ID。若為一般資料夾的 ID,將會出錯。 |
999 | General Error。 |
系統資料夾 ID列表
類別 | 名稱 | Folder ID |
---|---|---|
system.{package}.home.root | 我的收藏 | 0 |
system.backup.root | 我的備份 | -3 |
system.sync.root | 同步中心 | -5 |
所有資料異動序號
伺服器:InfoRelay
目的:此 API 可供客戶端查詢用戶的同步資料夾內容是否有異動。
POST /folder/getallchangeseq/
Input
Output
回傳的狀態碼(Status Code)
狀態碼 | 狀態描述 |
---|---|
0 | Success。 |
2 | Authentication Fail。 |
999 | General Error。 |
檔案或目錄相關資料
伺服器:InfoRelay
目的:此 API 可供客戶端取得指定檔案/目錄的相關資料,例如:建立時間、上層目錄、屬性、MIME-Type……等。
POST /fsentry/getentryinfo/
Input
Output
回傳的狀態碼(Status Code)
狀態碼 | 狀態描述 |
---|---|
0 | Success。 |
2 | Authentication Fail。 |
218 | 要處理的目錄不存在或已刪除。 |
219 | 檔案不存在或已刪除。 |
999 | General Error。 |
查詢檔案、目錄是否存在
伺服器:InfoRelay
目的:此 API 可供客戶端查詢檔案/目錄是否存在於指定目錄下。由客戶端指定欲查詢的目錄之下的檔案或子目錄名稱(經 Base64 編碼),若查詢成功可得知檔案或目錄的 ID 及其相關資訊。
如欲詳知 OmniStor 系統所提供的分享功能,請參閱「分享功能簡介」
POST /find/propfind/
Input
Output
回傳的狀態碼(Status Code)
狀態碼 | 狀態描述 |
---|---|
0 | Success。 |
2 | Authentication Fail。 |
225 | 上傳參數錯誤(例如:userid 參數值未傳)。 |
999 | General Error。 |
檢查目錄是否有使用
伺服器:InfoRelay
目的:由客戶端指定多個目錄產生查詢目錄列表,並可檢查傳入之目錄列表中的每一個目錄底下是否有檔案或子目錄存在。
POST /folder/ischildrenexist/
Input
Output
回傳的狀態碼(Status Code)
狀態碼 | 狀態描述 |
---|---|
0 | Success。 |
225 | Illegal Argument。 |
999 | General Error。 |
取得同步資料夾
伺服器:InfoRelay
目的:取得同步資料夾(MySyncFolder) 的 Folder ID。若同步資料夾不存在,將自動建立。
POST /folder/getmysyncfolder/
Input
Output
回傳的狀態碼(Status Code)
狀態碼 | 狀態描述 |
---|---|
0 | Success。 |
2 | Authentication Fail。 |
999 | General Error。 |
取得用戶個人系統資料夾
伺服器:InfoRelay
目的:此API可供客戶端取得指定用戶(User ID)的個人系統資料夾ID(Personal System Folder ID)。請參閱註解「個人系統資料夾名稱列表」。
POST /folder/getpersonalsystemfolder/
Input
Output
回傳的狀態碼(Status Code)
狀態碼 | 狀態描述 |
---|---|
0 | Success。 |
2 | Authentication Fail |
3 | Payload is not validate。 |
225 | 參數值不在容許的定義域內(例如:不存在的個人系統資料夾名稱)。 |
999 | General Error。 |
個人系統資料夾名稱列表
個人系統資料夾 | 名稱 |
---|---|
MyRecycleBin | 資源回收筒 |
其他注意事項
- 1 使用者帳戶資訊
- 1.1 Credential State常數
- 1.2 POST /member/getinfo/
- 1.2.1 Input
- 1.2.2 Output
- 1.2.3 回傳的狀態碼(Status Code)
- 2 瀏覽目錄
- 2.1 使用說明
- 2.2 TYPE參數說明
- 2.3 POST /inforelay/browsefolder/
- 2.3.1 Input
- 2.3.2 Output
- 2.3.3 回傳的狀態碼(Status Code)
- 3 最近更新的檔案清單
- 3.1 POST /file/getlatestchangefiles/
- 3.1.1 Input
- 3.1.2 Output
- 3.1.3 回傳的狀態碼(Status Code)
- 3.1.4 系統資料夾 ID 列表
- 3.1 POST /file/getlatestchangefiles/
- 4 最近上傳的檔案清單
- 4.1 POST /file/getlatestuploads/
- 4.1.1 Input
- 4.1.2 Output
- 4.1.3 回傳的狀態碼(Status Code)
- 4.1.4 系統資料夾 ID列表
- 4.1 POST /file/getlatestuploads/
- 5 所有資料異動序號
- 5.1 POST /folder/getallchangeseq/
- 5.1.1 Input
- 5.1.2 Output
- 5.1.3 回傳的狀態碼(Status Code)
- 5.1 POST /folder/getallchangeseq/
- 6 檔案或目錄相關資料
- 6.1 POST /fsentry/getentryinfo/
- 6.1.1 Input
- 6.1.2 Output
- 6.1.3 回傳的狀態碼(Status Code)
- 6.1 POST /fsentry/getentryinfo/
- 7 查詢檔案、目錄是否存在
- 7.1 POST /find/propfind/
- 7.1.1 Input
- 7.1.2 Output
- 7.1.3 回傳的狀態碼(Status Code)
- 7.1 POST /find/propfind/
- 8 檢查目錄是否有使用
- 8.1 POST /folder/ischildrenexist/
- 8.1.1 Input
- 8.1.2 Output
- 8.1.3 回傳的狀態碼(Status Code)
- 8.1 POST /folder/ischildrenexist/
- 9 取得同步資料夾
- 9.1 POST /folder/getmysyncfolder/
- 9.1.1 Input
- 9.1.2 Output
- 9.1.3 回傳的狀態碼(Status Code)
- 9.1 POST /folder/getmysyncfolder/
- 10 取得用戶個人系統資料夾
- 10.1 POST /folder/getpersonalsystemfolder/
- 10.1.1 Input
- 10.1.2 Output
- 10.1.3 回傳的狀態碼(Status Code)
- 10.1.4 個人系統資料夾名稱列表
- 10.1 POST /folder/getpersonalsystemfolder/
- 11 其他注意事項
- 11.1 協同合作 資料夾
- 11.2 我的收藏 資料夾
- 11.3 屬性(Attribute)
- 11.4 合法的標示代碼(Mark ID)
- 11.5 若您為 Ruby 開發者欲使用 Base64 編碼