## ListRunners **post** `/gitpod.v1.RunnerService/ListRunners` Lists all registered runners with optional filtering. Use this method to: - View all available runners - Filter by runner type - Monitor runner status - Check runner availability ### Examples - List all runners: Shows all runners with pagination. ```yaml pagination: pageSize: 20 ``` - Filter by provider: Lists only AWS EC2 runners. ```yaml filter: providers: ["RUNNER_PROVIDER_AWS_EC2"] pagination: pageSize: 20 ``` ### Query Parameters - `token: optional string` - `pageSize: optional number` ### Body Parameters - `filter: optional object { creatorIds, kinds, providers }` - `creatorIds: optional array of string` creator_ids filters the response to only runner created by specified users - `kinds: optional array of RunnerKind` kinds filters the response to only runners of the specified kinds - `"RUNNER_KIND_UNSPECIFIED"` - `"RUNNER_KIND_LOCAL"` - `"RUNNER_KIND_REMOTE"` - `"RUNNER_KIND_LOCAL_CONFIGURATION"` - `providers: optional array of RunnerProvider` providers filters the response to only runners of the specified providers - `"RUNNER_PROVIDER_UNSPECIFIED"` - `"RUNNER_PROVIDER_AWS_EC2"` - `"RUNNER_PROVIDER_LINUX_HOST"` - `"RUNNER_PROVIDER_DESKTOP_MAC"` - `"RUNNER_PROVIDER_MANAGED"` - `"RUNNER_PROVIDER_GCP"` - `"RUNNER_PROVIDER_DEV_AGENT"` - `pagination: optional object { token, pageSize }` pagination contains the pagination options for listing runners - `token: optional string` Token for the next set of results that was returned as next_token of a PaginationResponse - `pageSize: optional number` Page size is the maximum number of results to retrieve per page. Defaults to 25. Maximum 100. ### Returns - `pagination: optional object { nextToken }` pagination contains the pagination options for listing runners - `nextToken: optional string` Token passed for retrieving the next set of results. Empty if there are no more results - `runners: optional array of Runner` The runners registered in the scope - `createdAt: optional string` Time when the Runner was created. - `creator: optional Subject` creator is the identity of the creator of the environment - `id: optional string` id is the UUID of the subject - `principal: optional Principal` Principal is the principal of the subject - `"PRINCIPAL_UNSPECIFIED"` - `"PRINCIPAL_ACCOUNT"` - `"PRINCIPAL_USER"` - `"PRINCIPAL_RUNNER"` - `"PRINCIPAL_ENVIRONMENT"` - `"PRINCIPAL_SERVICE_ACCOUNT"` - `"PRINCIPAL_RUNNER_MANAGER"` - `kind: optional RunnerKind` The runner's kind - `"RUNNER_KIND_UNSPECIFIED"` - `"RUNNER_KIND_LOCAL"` - `"RUNNER_KIND_REMOTE"` - `"RUNNER_KIND_LOCAL_CONFIGURATION"` - `name: optional string` The runner's name which is shown to users - `provider: optional RunnerProvider` The runner's provider - `"RUNNER_PROVIDER_UNSPECIFIED"` - `"RUNNER_PROVIDER_AWS_EC2"` - `"RUNNER_PROVIDER_LINUX_HOST"` - `"RUNNER_PROVIDER_DESKTOP_MAC"` - `"RUNNER_PROVIDER_MANAGED"` - `"RUNNER_PROVIDER_GCP"` - `"RUNNER_PROVIDER_DEV_AGENT"` - `runnerId: optional string` - `runnerManagerId: optional string` The runner manager id specifies the runner manager for the managed runner. This field is only set for managed runners. - `spec: optional RunnerSpec` The runner's specification - `configuration: optional RunnerConfiguration` The runner's configuration - `autoUpdate: optional boolean` auto_update indicates whether the runner should automatically update itself. - `devcontainerImageCacheEnabled: optional boolean` devcontainer_image_cache_enabled controls whether the devcontainer build cache is enabled for this runner. Only takes effect on supported runners, currently only AWS EC2 and Gitpod-managed runners. - `logLevel: optional LogLevel` log_level is the log level for the runner - `"LOG_LEVEL_UNSPECIFIED"` - `"LOG_LEVEL_DEBUG"` - `"LOG_LEVEL_INFO"` - `"LOG_LEVEL_WARN"` - `"LOG_LEVEL_ERROR"` - `metrics: optional MetricsConfiguration` metrics contains configuration for the runner's metrics collection - `enabled: optional boolean` enabled indicates whether the runner should collect metrics - `managedMetricsEnabled: optional boolean` When true, the runner pushes metrics to the management plane via ReportRunnerMetrics instead of directly to the remote_write endpoint. - `password: optional string` password is the password to use for the metrics collector - `url: optional string` url is the URL of the metrics collector - `username: optional string` username is the username to use for the metrics collector - `region: optional string` Region to deploy the runner in, if applicable. This is mainly used for remote runners, and is only a hint. The runner may be deployed in a different region. See the runner's status for the actual region. - `releaseChannel: optional RunnerReleaseChannel` The release channel the runner is on - `"RUNNER_RELEASE_CHANNEL_UNSPECIFIED"` - `"RUNNER_RELEASE_CHANNEL_STABLE"` - `"RUNNER_RELEASE_CHANNEL_LATEST"` - `updateWindow: optional UpdateWindow` update_window defines the daily time window (UTC) during which auto-updates are allowed. If not set, updates are allowed at any time. - `endHour: optional number` end_hour is the end of the update window as a UTC hour (0-23). If not set, defaults to start_hour + 2. - `startHour: optional number` start_hour is the beginning of the update window as a UTC hour (0-23). +required - `desiredPhase: optional RunnerPhase` RunnerPhase represents the phase a runner is in - `"RUNNER_PHASE_UNSPECIFIED"` - `"RUNNER_PHASE_CREATED"` - `"RUNNER_PHASE_INACTIVE"` - `"RUNNER_PHASE_ACTIVE"` - `"RUNNER_PHASE_DELETING"` - `"RUNNER_PHASE_DELETED"` - `"RUNNER_PHASE_DEGRADED"` - `variant: optional RunnerVariant` The runner's variant - `"RUNNER_VARIANT_UNSPECIFIED"` - `"RUNNER_VARIANT_STANDARD"` - `"RUNNER_VARIANT_ENTERPRISE"` - `status: optional RunnerStatus` The runner's status - `additionalInfo: optional array of FieldValue` additional_info contains additional information about the runner, e.g. a CloudFormation stack URL. - `key: optional string` - `value: optional string` - `capabilities: optional array of RunnerCapability` capabilities is a list of capabilities the runner supports. - `"RUNNER_CAPABILITY_UNSPECIFIED"` - `"RUNNER_CAPABILITY_FETCH_LOCAL_SCM_INTEGRATIONS"` - `"RUNNER_CAPABILITY_SECRET_CONTAINER_REGISTRY"` - `"RUNNER_CAPABILITY_AGENT_EXECUTION"` - `"RUNNER_CAPABILITY_ALLOW_ENV_TOKEN_POPULATION"` - `"RUNNER_CAPABILITY_DEFAULT_DEV_CONTAINER_IMAGE"` - `"RUNNER_CAPABILITY_ENVIRONMENT_SNAPSHOT"` - `"RUNNER_CAPABILITY_PREBUILDS_BEFORE_SNAPSHOT_TRIGGER"` - `"RUNNER_CAPABILITY_LIST_SCM_ORGANIZATIONS"` - `"RUNNER_CAPABILITY_CHECK_REPOSITORY_ACCESS"` - `"RUNNER_CAPABILITY_RUNNER_SIDE_AGENT"` - `"RUNNER_CAPABILITY_WARM_POOL"` - `"RUNNER_CAPABILITY_ASG_WARM_POOL"` - `"RUNNER_CAPABILITY_PORT_AUTHENTICATION"` - `gatewayInfo: optional GatewayInfo` gateway_info is information about the gateway to which the runner is connected. - `gateway: optional Gateway` Gateway represents a system gateway that provides access to services - `name: string` name is the human-readable name of the gateway. name is unique across all gateways. - `url: string` url of the gateway - `region: optional string` region is the geographical region where the gateway is located - `latency: optional string` latency is the round-trip time of the runner to the gateway in milliseconds. - `llmUrl: optional string` llm_url is the URL of the LLM service to which the runner is connected. - `logUrl: optional string` - `message: optional string` The runner's reported message which is shown to users. This message adds more context to the runner's phase. - `phase: optional RunnerPhase` The runner's reported phase - `publicKey: optional string` public_key is the runner's public key used for encryption (32 bytes) - `region: optional string` region is the region the runner is running in, if applicable. - `supportBundleUrl: optional string` support_bundle_url is the URL at which the runner support bundle can be accessed. This URL provides access to pprof profiles and other debug information. Only available for standalone runners. - `systemDetails: optional string` - `updatedAt: optional string` Time when the status was last updated. - `version: optional string` - `updatedAt: optional string` Time when the Runner was last udpated. ### Example ```http curl https://app.gitpod.io/api/gitpod.v1.RunnerService/ListRunners \ -H 'Content-Type: application/json' \ -H "Authorization: Bearer $GITPOD_API_KEY" \ -d '{}' ``` #### Response ```json { "pagination": { "nextToken": "nextToken" }, "runners": [ { "createdAt": "2019-12-27T18:11:19.117Z", "creator": { "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "principal": "PRINCIPAL_UNSPECIFIED" }, "kind": "RUNNER_KIND_UNSPECIFIED", "name": "name", "provider": "RUNNER_PROVIDER_UNSPECIFIED", "runnerId": "runnerId", "runnerManagerId": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "spec": { "configuration": { "autoUpdate": true, "continuousProfiling": true, "devcontainerImageCacheEnabled": true, "encryptedHoneycombApiKey": "U3RhaW5sZXNzIHJvY2tz", "logLevel": "LOG_LEVEL_UNSPECIFIED", "metrics": { "enabled": true, "includeVerboseMetrics": true, "managedMetricsEnabled": true, "password": "password", "url": "url", "username": "username" }, "region": "region", "releaseChannel": "RUNNER_RELEASE_CHANNEL_UNSPECIFIED", "updateWindow": { "endHour": 0, "startHour": 0 } }, "desiredPhase": "RUNNER_PHASE_UNSPECIFIED", "variant": "RUNNER_VARIANT_UNSPECIFIED" }, "status": { "additionalInfo": [ { "key": "key", "value": "value" } ], "capabilities": [ "RUNNER_CAPABILITY_UNSPECIFIED" ], "gatewayInfo": { "gateway": { "name": "name", "url": "url", "region": "region" }, "latency": "+9125115.360s" }, "llmUrl": "llmUrl", "logUrl": "logUrl", "message": "message", "phase": "RUNNER_PHASE_UNSPECIFIED", "publicKey": "U3RhaW5sZXNzIHJvY2tz", "region": "region", "supportBundleUrl": "supportBundleUrl", "systemDetails": "systemDetails", "updatedAt": "2019-12-27T18:11:19.117Z", "version": "version" }, "updatedAt": "2019-12-27T18:11:19.117Z" } ] } ```