# IRPCApplicationTaskQueue.GetApplicationTasks

Location: [gRPC API](https://developer.m-files.com/APIs/gRPC-API/index.md) > [Server integration API](https://developer.m-files.com/APIs/gRPC-API/integration/index.md) > [Application task queue](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCApplicationTaskQueue/index.md)

HTML version: https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCApplicationTaskQueue/GetApplicationTasks/

Badges: `Server integration API / specialized` `write` `session`

Gets tasks by ID without reserving them.

- **Service:** [Application task queue](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCApplicationTaskQueue/index.md) `MFiles.IRPCApplicationTaskQueue`
- **gRPC method:** `/MFiles.IRPCApplicationTaskQueue/GetApplicationTasks`
- **HTTP (mf-http-grpc):** `POST /grpc/v1/get-application-tasks`
- **Request:** [`GetApplicationTasksRequest`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCApplicationTaskQueue/GetApplicationTasks/index.md#request)
- **Response:** [`GetApplicationTasksResponse`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCApplicationTaskQueue/GetApplicationTasks/index.md#response)
- **Book and level:** Server integration API, specialized
- **Kind:** write
- **Session:** Required: the session ID from LogIn in the mfiles-session-id-bin metadata.
- **Idempotent:** no
- **Returns metadata structure version:** no
- **Streaming:** none (unary)

<a id="remarks"></a>

## Remarks

- For diagnostics: the returned states can change at any time. Tasks that no longer exist are
  left out, so the response can be shorter than the request.
- Requires a vault session and the vault right `change_full_control_role`.

<a id="request"></a>

## Request: GetApplicationTasksRequest

> Nested message fields are expanded to depth 3; follow a type link for deeper levels and for the type's own page.

| Field | Type | Description |
|---|---|---|
| `task_id_collection[]` | repeated `string` | The IDs of the tasks. |

<a id="response"></a>

## Response: GetApplicationTasksResponse

> Nested message fields are expanded to depth 3; follow a type link for deeper levels and for the type's own page.

| Field | Type | Description |
|---|---|---|
| `task_info_collection[]` | repeated [`ApplicationTaskInfo`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.ApplicationTaskInfo/index.md) | The tasks that still exist. |
| `task_info_collection[].queue_id` | `string` | ID of the task queue this task belongs to. |
| `task_info_collection[].task_id` | `string` | ID of this task. |
| `task_info_collection[].state` | [`ApplicationTaskState`](https://developer.m-files.com/APIs/gRPC-API/Reference/Enums/MFiles.ApplicationTaskState/index.md) | Current state of this task. Values: `APPLICATION_TASK_STATE_WAITING` (0), `APPLICATION_TASK_STATE_IN_PROGRESS` (1), `APPLICATION_TASK_STATE_COMPLETED` (2), `APPLICATION_TASK_STATE_FAILED` (3), `APPLICATION_TASK_STATE_CANCELED` (4), `APPLICATION_TASK_STATE_NONE` (5). |
| `task_info_collection[].progress` | `string` | Current task specific progress amount. |
| `task_info_collection[].task_type` | `string` | Defines the task type. |
| `task_info_collection[].task_data` | `bytes` | Any type specific task payload data. |
| `task_info_collection[].activation_timestamp` | [`google.protobuf.Timestamp`](https://protobuf.dev/reference/protobuf/google.protobuf/#timestamp) | The earliest time this task can be reserved for processing. |
| `task_info_collection[].latest_activity_timestamp` | [`google.protobuf.Timestamp`](https://protobuf.dev/reference/protobuf/google.protobuf/#timestamp) | The last modified timestamp. |
