Neukol API--EN


Get files and folders in the icloud

<h5>Interface introduction</h5> <p>To obtain the list of files and folders under the specified folder or the root directory of the icloud, you need to provide SID, sign, timestamp, parent folder ID (Note: if it is empty, it means that a folder is created under the root directory of the organization cloud disk), and folder name. After success, the specified folder or file name and other description information are returned (sorted according to the creation order, and the folder is in front of the file). After failure, the corresponding error description is returned.</p> <h5>Request information</h5> <table> <thead> <tr> <th style="text-align: left;"></th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">URL</td> <td style="text-align: left;"><a href="https://neukol.axzt.net/edu_openapi/netdisk/query">https://neukol.axzt.net/edu_openapi/netdisk/query</a></td> </tr> <tr> <td style="text-align: left;">HTTP Request Methods</td> <td style="text-align: left;">POST</td> </tr> <tr> <td style="text-align: left;">Coding format</td> <td style="text-align: left;">UTF-8</td> </tr> </tbody> </table> <h5>Request header</h5> <table> <thead> <tr> <th style="text-align: left;">Parameter name</th> <th style="text-align: left;">Required</th> <th style="text-align: left;">Type</th> <th>Explanation</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">no</td> <td style="text-align: left;">no</td> <td style="text-align: left;">no</td> <td>no</td> </tr> </tbody> </table> <h5>Form parameter</h5> <table> <thead> <tr> <th style="text-align: left;">Field name</th> <th style="text-align: left;">Type</th> <th style="text-align: left;">Required</th> <th>Description</th> <th>Example</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">timestamp</td> <td style="text-align: left;">long</td> <td style="text-align: left;">True</td> <td>Timestamp, the timestamp within 20 minutes of the sending request time</td> <td>1605766708325</td> </tr> <tr> <td style="text-align: left;">sid</td> <td style="text-align: left;">string</td> <td style="text-align: left;">True</td> <td>The unique identifier of the institution is available on the first page of API description</td> <td>5f1140092302bd0ac2dbc7c4</td> </tr> <tr> <td style="text-align: left;">sign</td> <td style="text-align: left;">string</td> <td style="text-align: left;">True</td> <td>Fixed 32-bit all lowercase characters, institution authentication security key,sign=MD5(params+SECRET),Among them, params represents the concatenated string of all parameters in the request body except sign in lexicographic order(like: “key1=value1key2=value2”)</td> </tr> <tr> <td style="text-align: left;">folderId</td> <td style="text-align: left;">string</td> <td style="text-align: left;">False</td> <td>Folder ID, do not fill in to find the folders and files under the root directory</td> <td>5fb4b9911debac4ab01ff125</td> </tr> <tr> <td style="text-align: left;">onlyFolder</td> <td style="text-align: left;">boolean</td> <td style="text-align: left;">False</td> <td>Whether to query only folders, not filled in. No by default</td> <td>false</td> </tr> <tr> <td style="text-align: left;">pageSize</td> <td style="text-align: left;">string</td> <td style="text-align: left;">True</td> <td>Page size (required)</td> <td>10</td> </tr> <tr> <td style="text-align: left;">pageNum</td> <td style="text-align: left;">string</td> <td style="text-align: left;">True</td> <td>Page number (from 0)</td> <td>0</td> </tr> <tr> <td style="text-align: left;">name</td> <td style="text-align: left;">String</td> <td style="text-align: left;">False</td> <td>Fuzzy search for file name (only search for files, and you can find qualified files in subfolders)</td> <td>File</td> </tr> <tr> <td style="text-align: left;">uploaderId</td> <td style="text-align: left;">String</td> <td style="text-align: left;">False</td> <td>Accurate search for uploader ID (only search for files, and you can find qualified files in subfolders)</td> <td>t123456</td> </tr> <tr> <td style="text-align: left;">uploaderName</td> <td style="text-align: left;">String</td> <td style="text-align: left;">False</td> <td>Fuzzy search for the name of the uploader (only search for files, and you can find qualified files in subfolders)</td> <td>ZhangSan</td> </tr> <tr> <td style="text-align: left;">createTimeStart</td> <td style="text-align: left;">Long</td> <td style="text-align: left;">False</td> <td>Upload time start search (including boundary) (only search for files, and you can find qualified files in subfolders)</td> <td>1234525141415</td> </tr> <tr> <td style="text-align: left;">createTimeEnd</td> <td style="text-align: left;">Long</td> <td style="text-align: left;">False</td> <td>The upload time ends the search (including the boundary) (only the files can be searched, and the qualified files in the subfolder can also be found)</td> <td>2352352454141</td> </tr> </tbody> </table> <h5>Response parameter</h5> <table> <thead> <tr> <th style="text-align: left;">Field</th> <th style="text-align: left;">Type</th> <th style="text-align: left;">Required</th> <th>Description</th> <th>Example</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">responseHeader</td> <td style="text-align: left;">Object</td> <td style="text-align: left;"></td> <td>Response header information</td> </tr> <tr> <td style="text-align: left;"> └status</td> <td style="text-align: left;">number</td> <td style="text-align: left;">True</td> <td>HTTP response status code</td> <td>200</td> </tr> <tr> <td style="text-align: left;"> └msg</td> <td style="text-align: left;">String</td> <td style="text-align: left;">True</td> <td>Return information</td> <td>OK</td> </tr> <tr> <td style="text-align: left;">response</td> <td style="text-align: left;">Object</td> <td style="text-align: left;"></td> <td>Response body content</td> </tr> <tr> <td style="text-align: left;"> └total</td> <td style="text-align: left;">int</td> <td style="text-align: left;">True</td> <td>Total number of files and folders</td> <td>4</td> </tr> <tr> <td style="text-align: left;"> └pageQuery</td> <td style="text-align: left;">Object</td> <td style="text-align: left;"></td> <td>Query parameters</td> </tr> <tr> <td style="text-align: left;">  └pageNumber</td> <td style="text-align: left;">int</td> <td style="text-align: left;">True</td> <td>Query pages</td> <td>1</td> </tr> <tr> <td style="text-align: left;">  └pageSize</td> <td style="text-align: left;">int</td> <td style="text-align: left;">True</td> <td>Query page capacity</td> <td>10</td> </tr> <tr> <td style="text-align: left;"> └content</td> <td style="text-align: left;">Object</td> <td style="text-align: left;"></td> <td>File or folder information list</td> </tr> <tr> <td style="text-align: left;">  └id</td> <td style="text-align: left;">String</td> <td style="text-align: left;">True</td> <td>Current level file or folder ID</td> <td>5fb624371debac23708cd060</td> </tr> <tr> <td style="text-align: left;">  └pid</td> <td style="text-align: left;">String</td> <td style="text-align: left;">False</td> <td>Parent folder, if it does not exist, it means the root directory</td> <td>5fb4b9911debac4ab01ff125</td> </tr> <tr> <td style="text-align: left;">  └name</td> <td style="text-align: left;">String</td> <td style="text-align: left;">True</td> <td>File or folder name</td> <td>Folder 1</td> </tr> <tr> <td style="text-align: left;">  └folder</td> <td style="text-align: left;">boolean</td> <td style="text-align: left;">True</td> <td>Whether it is a folder: true - is a folder, false - is a file</td> <td>false</td> </tr> <tr> <td style="text-align: left;">  └fileType</td> <td style="text-align: left;">String</td> <td style="text-align: left;">False</td> <td>When isfolder = = false, the file type is returned and the item must be passed; When isfolder = = true, null is returned</td> <td>doc</td> </tr> <tr> <td style="text-align: left;">  └createTime</td> <td style="text-align: left;">Long</td> <td style="text-align: left;">True</td> <td>File or folder creation time, in the format of timestamp (unit: ms)</td> <td>1605766708325</td> </tr> <tr> <td style="text-align: left;">  └size</td> <td style="text-align: left;">Long</td> <td style="text-align: left;">True</td> <td>File size (unit: B, bytes). If it is a folder, 0 is returned</td> <td>23232</td> </tr> <tr> <td style="text-align: left;">  └uploaderId</td> <td style="text-align: left;">String</td> <td style="text-align: left;">False</td> <td>Uploader ID</td> <td>Folder 1</td> </tr> <tr> <td style="text-align: left;">  └uploaderName</td> <td style="text-align: left;">String</td> <td style="text-align: left;">False</td> <td>Uploader Name</td> <td>Folder 1</td> </tr> </tbody> </table> <h5>Request example</h5> <pre><code>POST /edu_openapi/netdisk/query HTTP/1.1 Host: https://neukol.axzt.net/ Content-Type: application/x-www-form-urlencoded timestamp=1605775283591&amp;sid=5f1140092302bd0ac2dbc7c4&amp;sign=aa16401e20207f1f2ccee04976002eb6&amp;pageSize=10&amp;pageNum=1 </code></pre> <h5>Response example</h5> <pre><code>{ { "responseHeader": { "status": 200, "msg": "OK" }, "response": { "total": 4, "pageQuery": pageNumber { "pageNumber": 1, "pageSize": 10 }, "content": [ { "id": "5fb624371debac23708cd060", "pid": "5fb4b9911debac4ab01ff125", "name": folder1" }, { "id": "5fb4c2c71debac0384cba016", "pid": "5fb4b9911debac4ab01ff125", "name": folder2" }, { "id": "5fb4bb551debac4ab01ff12b", "pid": "5fb4b9911debac4ab01ff125", "name": "file1.pdf" }, { "id": "5fb4baae1debac4ab01ff126", "pid": "5fb4b9911debac4ab01ff125", "name": "file2.pdf", "uploaderId": "123", "uploaderName": "456" } ] } } </code></pre> <h5>Error code</h5> <table> <thead> <tr> <th style="text-align: left;">Code value</th> <th style="text-align: left;">Explanation</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">200</td> <td style="text-align: left;">query was successful</td> </tr> <tr> <td style="text-align: left;">5004</td> <td style="text-align: left;">Paging parameter is null</td> </tr> <tr> <td style="text-align: left;">9994</td> <td style="text-align: left;">Parameter format error</td> </tr> <tr> <td style="text-align: left;">2000</td> <td style="text-align: left;">sign certification failed</td> </tr> <tr> <td style="text-align: left;">2001</td> <td style="text-align: left;">Request timeout</td> </tr> <tr> <td style="text-align: left;">2002</td> <td style="text-align: left;">Institution does not open an open interface</td> </tr> <tr> <td style="text-align: left;">2010</td> <td style="text-align: left;">Institution is inexistent</td> </tr> <tr> <td style="text-align: left;">500</td> <td style="text-align: left;">unknown exception on the server</td> </tr> </tbody> </table>

页面列表

ITEM_HTML