1e41f4b71Sopenharmony_ci# @ohos.request (Upload and Download) (System API) 2e41f4b71Sopenharmony_ci 3e41f4b71Sopenharmony_ciThe **request** module provides applications with basic upload, download, and background transmission agent capabilities. 4e41f4b71Sopenharmony_ci 5e41f4b71Sopenharmony_ci> **NOTE** 6e41f4b71Sopenharmony_ci> 7e41f4b71Sopenharmony_ci> The initial APIs of this module are supported since API version 6. Newly added APIs will be marked with a superscript to indicate their earliest API version. 8e41f4b71Sopenharmony_ci> 9e41f4b71Sopenharmony_ci> This topic describes only system APIs provided by the module. For details about its public APIs, see [@ohos.request](js-apis-request.md). 10e41f4b71Sopenharmony_ci 11e41f4b71Sopenharmony_ci 12e41f4b71Sopenharmony_ci## Modules to Import 13e41f4b71Sopenharmony_ci 14e41f4b71Sopenharmony_ci 15e41f4b71Sopenharmony_ci```js 16e41f4b71Sopenharmony_ciimport { request } from '@kit.BasicServicesKit'; 17e41f4b71Sopenharmony_ci``` 18e41f4b71Sopenharmony_ci 19e41f4b71Sopenharmony_ci 20e41f4b71Sopenharmony_ci## Filter<sup>10+</sup> 21e41f4b71Sopenharmony_ciDefines the filter criteria. 22e41f4b71Sopenharmony_ci 23e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Request.FileTransferAgent 24e41f4b71Sopenharmony_ci 25e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 26e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 27e41f4b71Sopenharmony_ci| bundle | string | No| Bundle name of the application.<br>**System API**: This is a system API.| 28e41f4b71Sopenharmony_ci 29e41f4b71Sopenharmony_ci 30e41f4b71Sopenharmony_ci## TaskInfo<sup>10+</sup> 31e41f4b71Sopenharmony_ciDefines the data structure of the task information for query. The fields available vary depending on the query type. 32e41f4b71Sopenharmony_ci 33e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Request.FileTransferAgent 34e41f4b71Sopenharmony_ci 35e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 36e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 37e41f4b71Sopenharmony_ci| uid | string | No| UID of the application. It is only available for query by system applications.<br>**System API**: This is a system API.| 38e41f4b71Sopenharmony_ci| bundle | string | No| Bundle name of the application. It is only available for query by system applications.<br>**System API**: This is a system API.| 39e41f4b71Sopenharmony_ci 40e41f4b71Sopenharmony_ci 41e41f4b71Sopenharmony_ci 42e41f4b71Sopenharmony_ci## request.agent.query<sup>10+</sup> 43e41f4b71Sopenharmony_ci 44e41f4b71Sopenharmony_ciquery(id: string, callback: AsyncCallback<TaskInfo>): void 45e41f4b71Sopenharmony_ci 46e41f4b71Sopenharmony_ciQueries a task details based on the task ID. This API uses an asynchronous callback to return the result. 47e41f4b71Sopenharmony_ci 48e41f4b71Sopenharmony_ci**Required permissions**: ohos.permission.DOWNLOAD_SESSION_MANAGER or ohos.permission.UPLOAD_SESSION_MANAGER 49e41f4b71Sopenharmony_ci 50e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Request.FileTransferAgent 51e41f4b71Sopenharmony_ci 52e41f4b71Sopenharmony_ci**System API**: This is a system API. 53e41f4b71Sopenharmony_ci 54e41f4b71Sopenharmony_ci**Parameters** 55e41f4b71Sopenharmony_ci 56e41f4b71Sopenharmony_ci| Name| Type | Mandatory| Description| 57e41f4b71Sopenharmony_ci|----------------------------------------------| -------- | -------- | -------- | 58e41f4b71Sopenharmony_ci| id | string | Yes| Task ID.| 59e41f4b71Sopenharmony_ci| callback | AsyncCallback<[TaskInfo](#taskinfo10)> | Yes| Callback used to return task details.| 60e41f4b71Sopenharmony_ci 61e41f4b71Sopenharmony_ci**Error codes** 62e41f4b71Sopenharmony_ciFor details about the error codes, see [Upload and Download Error Codes](errorcode-request.md). 63e41f4b71Sopenharmony_ci 64e41f4b71Sopenharmony_ci| ID| Error Message| 65e41f4b71Sopenharmony_ci| -------- | -------- | 66e41f4b71Sopenharmony_ci| 201 | permission denied. | 67e41f4b71Sopenharmony_ci| 202 | permission verification failed, application which is not a system application uses system API. | 68e41f4b71Sopenharmony_ci| 401 | parameter error. Possible causes: 1. Missing mandatory parameters 2. Incorrect parameter type | 69e41f4b71Sopenharmony_ci| 13400003 | task service ability error. | 70e41f4b71Sopenharmony_ci| 21900006 | task not found. | 71e41f4b71Sopenharmony_ci 72e41f4b71Sopenharmony_ci**Example** 73e41f4b71Sopenharmony_ci 74e41f4b71Sopenharmony_ci ```ts 75e41f4b71Sopenharmony_ci import { BusinessError } from '@kit.BasicServicesKit'; 76e41f4b71Sopenharmony_ci 77e41f4b71Sopenharmony_ci request.agent.query("123456", (err: BusinessError, taskInfo: request.agent.TaskInfo) => { 78e41f4b71Sopenharmony_ci if (err) { 79e41f4b71Sopenharmony_ci console.error(`Failed to query a upload task, Code: ${err.code}, message: ${err.message}`); 80e41f4b71Sopenharmony_ci return; 81e41f4b71Sopenharmony_ci } 82e41f4b71Sopenharmony_ci console.info(`Succeeded in querying the upload task. Result: ${taskInfo.uid}`); 83e41f4b71Sopenharmony_ci }); 84e41f4b71Sopenharmony_ci ``` 85e41f4b71Sopenharmony_ci 86e41f4b71Sopenharmony_ci 87e41f4b71Sopenharmony_ci## request.agent.query<sup>10+</sup> 88e41f4b71Sopenharmony_ci 89e41f4b71Sopenharmony_ciquery(id: string): Promise<TaskInfo> 90e41f4b71Sopenharmony_ci 91e41f4b71Sopenharmony_ciQueries a task details based on the task ID. This API uses a promise to return the result. 92e41f4b71Sopenharmony_ci 93e41f4b71Sopenharmony_ci**Required permissions**: ohos.permission.DOWNLOAD_SESSION_MANAGER or ohos.permission.UPLOAD_SESSION_MANAGER 94e41f4b71Sopenharmony_ci 95e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Request.FileTransferAgent 96e41f4b71Sopenharmony_ci 97e41f4b71Sopenharmony_ci**System API**: This is a system API. 98e41f4b71Sopenharmony_ci 99e41f4b71Sopenharmony_ci**Parameters** 100e41f4b71Sopenharmony_ci 101e41f4b71Sopenharmony_ci| Name| Type| Mandatory| Description| 102e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 103e41f4b71Sopenharmony_ci| id | string | Yes| Task ID.| 104e41f4b71Sopenharmony_ci 105e41f4b71Sopenharmony_ci**Return value** 106e41f4b71Sopenharmony_ci 107e41f4b71Sopenharmony_ci| Type | Description | 108e41f4b71Sopenharmony_ci|----------------------------------------| ------------------------- | 109e41f4b71Sopenharmony_ci| Promise<[TaskInfo](#taskinfo10)> | Promise Promise used to return task details.| 110e41f4b71Sopenharmony_ci 111e41f4b71Sopenharmony_ci**Error codes** 112e41f4b71Sopenharmony_ciFor details about the error codes, see [Upload and Download Error Codes](errorcode-request.md). 113e41f4b71Sopenharmony_ci 114e41f4b71Sopenharmony_ci| ID| Error Message| 115e41f4b71Sopenharmony_ci| -------- | -------- | 116e41f4b71Sopenharmony_ci| 201 | permission denied. | 117e41f4b71Sopenharmony_ci| 202 | permission verification failed, application which is not a system application uses system API. | 118e41f4b71Sopenharmony_ci| 401 | parameter error. Possible causes: 1. Missing mandatory parameters 2. Incorrect parameter type | 119e41f4b71Sopenharmony_ci| 13400003 | task service ability error. | 120e41f4b71Sopenharmony_ci| 21900006 | task not found. | 121e41f4b71Sopenharmony_ci 122e41f4b71Sopenharmony_ci**Example** 123e41f4b71Sopenharmony_ci 124e41f4b71Sopenharmony_ci ```ts 125e41f4b71Sopenharmony_ci import { BusinessError } from '@kit.BasicServicesKit'; 126e41f4b71Sopenharmony_ci 127e41f4b71Sopenharmony_ci request.agent.query("123456").then((taskInfo: request.agent.TaskInfo) => { 128e41f4b71Sopenharmony_ci console.info(`Succeeded in querying the upload task. Result: ${taskInfo.uid}`); 129e41f4b71Sopenharmony_ci }).catch((err: BusinessError) => { 130e41f4b71Sopenharmony_ci console.error(`Failed to query a upload task, Code: ${err.code}, message: ${err.message}`); 131e41f4b71Sopenharmony_ci }); 132e41f4b71Sopenharmony_ci ``` 133