---
title: List Applications
slug: devicepark/sdk-documentation/applications/list-applications
description: List and filter uploaded APK or IPA artifacts and revisions.
docTags: 
createdAt: 2026-08-10T08:03:44.631Z
---

Use this method to find existing APK or IPA artifacts, inspect revisions and recover the stable `fileKey` required for deletion or test configuration.

## SDK Method

| Java                                  | Node.js                                      | .NET                                            | Returns                |
| ------------------------------------- | -------------------------------------------- | ----------------------------------------------- | ---------------------- |
| `client.applications().list(request)` | `await client.applications().list(request?)` | `await client.Applications.ListAsync(request?)` | `PageDto<Application>` |

## Request Fields

| Builder method                      | Type            | Default | Description                           |
| ----------------------------------- | --------------- | ------- | ------------------------------------- |
| `.page(value)`                      | integer         | `0`     | Zero-based page index                 |
| `.size(value)`                      | integer         | `20`    | Maximum application records requested |
| `.sortBy(value)`                    | string          | `ID`    | Server-side sort field                |
| `.direction(value)`                 | `SortDirection` | `DESC`  | `ASC` or `DESC`                       |
| `.addFilter(key, value, operation)` | filter rule     | None    | Adds an application filter            |
| `.filters(rules)`                   | filter array    | Empty   | Replaces all application filters      |

## Available Application Filters

| Constant                      | Expected value     | Typical operation                    | Purpose                                |
| ----------------------------- | ------------------ | ------------------------------------ | -------------------------------------- |
| `ApplicationFilter.FILE_KEY`  | File key string    | `EQUAL`                              | Find an application by stable key      |
| `ApplicationFilter.FILE_PATH` | Stored path string | `EQUAL`                              | Match a stored file path               |
| `ApplicationFilter.VERSION`   | Version string     | `EQUAL`                              | Return one logical application version |
| `ApplicationFilter.REVISION`  | Numeric revision   | `EQUAL`, `GREATER_THAN`, `LESS_THAN` | Select application revisions           |

All three SDKs transmit these filters to Device Park.

## Request Mapping

The list operation has no request body. Every SDK maps pagination, sorting and filter rules to query data. OAuth authorization is managed by the SDK client.

## Examples

:::CodeblockTabs
```java
ApplicationFilterRequest filterRequest = ApplicationFilterRequest.of(
        ApplicationFilter.VERSION,
        "1.0.0",
        SearchOperation.EQUAL
);

PageDto<Application> applications = client.applications().list(
        ApplicationPaginationRequest.builder()
                .filters(Collections.singletonList(filterRequest))
                .page(0)
                .size(20)
                .build()
);
```

```typescript
import {
  ApplicationFilter,
  type ApplicationFilterRequest,
  ApplicationPaginationRequestBuilder,
  SearchOperation
} from "@device-park/public-sdk";

const filterRequest: ApplicationFilterRequest = {
  key: ApplicationFilter.VERSION,
  value: "1.0.0",
  operation: SearchOperation.EQUAL
};

const applications = await client.applications().list(
  new ApplicationPaginationRequestBuilder()
    .filters([filterRequest])
    .page(0)
    .size(20)
    .build()
);
```

```csharp
var applications = await client.Applications.ListAsync(
    new ApplicationPaginationRequest.Builder()
        .AddFilter(ApplicationFilter.VERSION, "1.0.0", SearchOperation.EQUAL)
        .Page(0)
        .Size(20)
        .Build());
```
:::

## Response Model

| Field              | Type            | Nullable | Meaning                                                                                                                |
| ------------------ | --------------- | -------- | ---------------------------------------------------------------------------------------------------------------------- |
| `revision`         | number          | Yes      | Stored revision number                                                                                                 |
| `sizeInBytes`      | number          | Yes      | Artifact size                                                                                                          |
| `version`          | string          | Yes      | Version supplied during upload                                                                                         |
| `fileKey`          | string          | Yes      | Stable application identifier                                                                                          |
| `filePath`         | string          | Yes      | Server-side storage path                                                                                               |
| `downloadUrl`      | string          | Yes      | Potentially time-limited download URL                                                                                  |
| `createdAt`        | ISO-8601 string | Yes      | Creation timestamp                                                                                                     |
| `bundleId`         | string          | Yes      | IPA bundle identifier, for example `com.example.app`. IPA only                                                         |
| `title`            | string          | Yes      | Application name read from the IPA `Info.plist`. IPA only                                                              |
| `ipaVersion`       | string          | Yes      | Version read from the IPA `Info.plist`. Can differ from `version`, which is the label supplied during upload. IPA only |
| `enterprise`       | boolean         | Yes      | `true` when the IPA is signed with an enterprise provisioning profile. IPA only                                        |
| `minimumOsVersion` | string          | Yes      | Lowest iOS version the IPA supports, for example `13.0`. IPA only                                                      |
| `minSdkVersion`    | number          | Yes      | Lowest Android API level the APK supports, for example `24`. APK only                                                  |

### Artifact Metadata

Device Park reads the artifact metadata while the application is uploaded and stores it with the record, so every list response repeats it.

The fields are platform specific. `bundleId`, `title`, `ipaVersion`, `enterprise` and `minimumOsVersion` are filled from the IPA `Info.plist` and provisioning profile, `minSdkVersion` from the APK manifest. The server omits a metadata field when it cannot read it, so the SDK model exposes it as `null`. Applications uploaded before this metadata was introduced also return `null`; re-upload the artifact to populate the fields.

```json
{
  "size": 20,
  "page": 0,
  "totalPages": 1,
  "totalElements": 2,
  "data": [
    {
      "revision": 3,
      "sizeInBytes": 24576000,
      "version": "1.0.0",
      "fileKey": "mobile-app.apk",
      "filePath": "applications/mobile-app.apk",
      "downloadUrl": "https://devicepark.testinium.io/temporary-download-url",
      "createdAt": "2026-07-28T09:00:00Z",
      "minSdkVersion": 24
    },
    {
      "revision": 1,
      "sizeInBytes": 31457280,
      "version": "1.0.0",
      "fileKey": "mobile-app.ipa",
      "filePath": "applications/mobile-app.ipa",
      "downloadUrl": "https://devicepark.testinium.io/temporary-download-url",
      "createdAt": "2026-07-28T09:00:00Z",
      "bundleId": "com.example.app",
      "title": "Example App",
      "ipaVersion": "3.2.1",
      "enterprise": true,
      "minimumOsVersion": "13.0"
    }
  ]
}
```

Persist `fileKey`, not `downloadUrl`. The URL can expire.

## Next Steps

- [Upload a new application](docId\:KyaNImcg1bsxfewffzLGc)
- [Delete an obsolete application](docId\:ghd_rv5liYtmoS-yC5xvF)
