# Device Run API API

> Device Run API API on Apizie: 10 endpoints (Returns information about a specific software version., Deletes a session. This RPC returns immediately and deletion proceeds asynchronously. It will cancel the…, Lists information about the supported locations for this service. This method lists locations based on the…, Lists all devices., …) returned as clean JSON through one API key. Send your own provider key in the x-upstream-key header. Call it over REST at https://apizie.tech/v1/dev-tools:google-devicerun/{endpoint} or from Claude, ChatGPT and Cursor through the Apizie MCP server. Free plan: 1,000 requests a month.

- Project key: `dev-tools:google-devicerun`
- Category: Dev Tools
- Status: byok
- Source: https://docs.cloud.google.com/developer-device-platform/device-run
- Page: https://apizie.tech/api/dev-tools/google-devicerun
- OpenAPI: https://apizie.tech/api/dev-tools/google-devicerun/openapi.json

The Device Run API allows management, scheduling, and execution of automated sessions and workloads across device catalogs.

## Endpoints

### Returns information about a specific software version.
`GET https://apizie.tech/v1/dev-tools:google-devicerun/devicerun-projects-locations-software-versions-get` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | yes | Required. The name of the software version. Format: `projects/{project}/locations/global/softwareVersions/{software_version}`. |

### Deletes a session. This RPC returns immediately and deletion proceeds asynchronously. It will cancel the…
`POST https://apizie.tech/v1/dev-tools:google-devicerun/devicerun-projects-locations-sessions-delete` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | yes | Required. The name of the session. Format: `projects/{project}/locations/{location}/sessions/{session}`. |
| requestId | string | no | Optional. A unique identifier for this request. This request is only idempotent if a `request_id` is provided, i.e. if a request with the… |

### Lists information about the supported locations for this service. This method lists locations based on the…
`GET https://apizie.tech/v1/dev-tools:google-devicerun/devicerun-projects-locations-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| extraLocationTypes | string | no | Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. |
| filter | string | no | A filter to narrow down results to a preferred subset. The filtering language accepts strings like `"displayName=tokyo"`, and is… |
| name | string | yes | The resource that owns the locations collection, if applicable. |
| pageSize | integer | no | The maximum number of results to return. If not set, the service selects a default. |
| pageToken | string | no | A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page. |

### Lists all devices.
`GET https://apizie.tech/v1/dev-tools:google-devicerun/devicerun-projects-locations-devices-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| filter | string | no | Optional. An AIP-160 (https://google.aip.dev/160) filter expression restricting which devices are returned. An empty filter returns all… |
| pageSize | integer | no | Optional. The maximum number of devices to return. The server may return fewer items than this value. |
| pageToken | string | no | Optional. A page token, received from a previous `ListDevices` call. Provide this to receive the subsequent page. When paginating, all… |
| parent | string | yes | Required. The parent of the collection of devices. Format: `projects/{project}/locations/global`. |

### Cancels an in-progress automation session. This RPC returns immediately and cancellation proceeds…
`POST https://apizie.tech/v1/dev-tools:google-devicerun/devicerun-projects-locations-sessions-cancel` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | yes | Required. The name of the session. Format: "projects/{project}/locations/{location}/sessions/{session}" |
| body | object | yes | JSON request body |

### Lists operations that match the specified filter in the request. If the server doesn't support this method,…
`GET https://apizie.tech/v1/dev-tools:google-devicerun/devicerun-projects-locations-operations-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| filter | string | no | The standard list filter. |
| name | string | yes | The name of the operation's parent resource. |
| pageSize | integer | no | The standard list page size. |
| pageToken | string | no | The standard list page token. |
| returnPartialSuccess | boolean | no | When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the… |

### Retrieves multiple automation sessions in a single batch request. Sessions are returned in the same order as…
`GET https://apizie.tech/v1/dev-tools:google-devicerun/devicerun-projects-locations-sessions-batch-get` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| names | string | no | Required. The names of the sessions to retrieve. A maximum of 500 sessions can be retrieved in a batch. Format:… |
| parent | string | yes | Required. The parent resource shared by all sessions being retrieved. Format: `projects/{project}/locations/{location}`. The `parent`… |

### Lists previously created automation sessions. Sessions may still be in-progress, or may have finished…
`GET https://apizie.tech/v1/dev-tools:google-devicerun/devicerun-projects-locations-sessions-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| filter | string | no | Optional. The raw filter text to constrain the results. |
| orderBy | string | no | Optional. The order to sort results by. Supported values: `name`, `name desc`, `create_time`, `create_time desc`. Values must use the… |
| pageSize | integer | no | Optional. The maximum number of sessions to return. The server may return fewer items than this value. If unspecified, at most 500… |
| pageToken | string | no | Optional. A page token, received from a previous `ListSessions` call. Provide this to receive the subsequent page. When paginating, all… |
| parent | string | yes | Required. Parent value for ListSessionsRequest The parent of the collection of sessions. Format: `projects/{project}/locations/{location}`. |
| view | string | no | Optional. The view of the sessions to return. If not set, the `FULL` view will be returned. |

### Starts an automation session with the specified configuration. This method returns a long-running…
`POST https://apizie.tech/v1/dev-tools:google-devicerun/devicerun-projects-locations-sessions-create` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| parent | string | yes | Required. The parent resource where this session will be created. Format: `projects/{project}/locations/{location}`. |
| requestId | string | no | Optional. A unique identifier for this request. This request is only idempotent if a `request_id` is provided, i.e. if a request with the… |
| sessionId | string | no | Optional. The ID to use for the session, which will become the final component of the resource name. If not provided, the server will… |
| body | object | yes | JSON request body |

### Lists all software versions.
`GET https://apizie.tech/v1/dev-tools:google-devicerun/devicerun-projects-locations-software-versions-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| filter | string | no | Optional. An AIP-160 (https://google.aip.dev/160) filter expression restricting which software versions are returned. An empty filter… |
| pageSize | integer | no | Optional. The maximum number of software versions to return. The server may return fewer items than this value. |
| pageToken | string | no | Optional. A page token, received from a previous `ListSoftwareVersions` call. Provide this to receive the subsequent page. When… |
| parent | string | yes | Required. The parent of the collection of software versions. Format: `projects/{project}/locations/global`. |

## Example
```
curl "https://apizie.tech/v1/dev-tools:google-devicerun/devicerun-projects-locations-software-versions-get" \
  -H "x-api-key: $APIZIE_KEY" \
  -H "x-upstream-key: $PROVIDER_KEY"
```

## FAQ

### How do I call the Device Run API API?
Create a free Apizie key, then send GET https://apizie.tech/v1/dev-tools:google-devicerun/devicerun-projects-locations-software-versions-get with the header x-api-key. Every endpoint returns { project, data, timestamp }.

### Is the Device Run API API free on Apizie?
Yes. The Free plan includes 1,000 requests a month at 100 requests a minute, no credit card. Device Run API itself also needs your own key from googleapis.com.

### Can AI agents use the Device Run API API?
Yes. Add the Apizie MCP server (https://apizie.tech/mcp) to Claude, ChatGPT, Cursor or VS Code, then ask in plain language. The agent calls run_scraper with project key dev-tools:google-devicerun.

### What is the status of the Device Run API API?
Needs your own provider key (bring your own key)
