---
title: "UpdateRunner"
method: POST
path: "/gitpod.v1.RunnerService/UpdateRunner"
tags: ["gitpod.v1.RunnerService"]
---

# UpdateRunner

`POST /gitpod.v1.RunnerService/UpdateRunner`

Updates a runner's configuration.

 Use this method to:
 - Modify runner settings
 - Update release channels
 - Change runner status
 - Configure auto-update settings

 ### Examples

 - Update configuration:

   Changes runner settings.

   ```yaml
   runnerId: "d2c94c27-3b76-4a42-b88c-95a85e392c68"
   name: "Updated Runner Name"
   spec:
     configuration:
       releaseChannel: RUNNER_RELEASE_CHANNEL_LATEST
       autoUpdate: true
   ```

## Request body

- GitpodV1UpdateRunnerRequest
  - `name` string, nullable — The runner's name which is shown to users
  - `runnerId` string, uuid — runner_id specifies which runner to be updated. +required
  - `spec` GitpodV1UpdateRunnerRequestSpec
    - `configuration` GitpodV1UpdateRunnerRequestRunnerConfiguration
      - `autoUpdate` boolean, nullable — auto_update indicates whether the runner should automatically update itself.
      - `releaseChannel` 'RUNNER_RELEASE_CHANNEL_UNSPECIFIED' | 'RUNNER_RELEASE_CHANNEL_STABLE' | 'RUNNER_RELEASE_CHANNEL_LATEST'
    - `desiredPhase` 'RUNNER_PHASE_UNSPECIFIED' | 'RUNNER_PHASE_CREATED' | 'RUNNER_PHASE_INACTIVE' | 'RUNNER_PHASE_ACTIVE' | 'RUNNER_PHASE_DELETING' | 'RUNNER_PHASE_DELETED' | 'RUNNER_PHASE_DEGRADED' — RunnerPhase represents the phase a runner is in

## Response `200`

Success

- GitpodV1UpdateRunnerResponse

## Other responses

- `default` — Error

## Changes

- **2025-02-21** `3655d5ad0ac3` — 1 breaking, 1 warning, 2 info
  - the `spec` request property type/format changed from ``/`` to `object`/``
  - removed `#/components/schemas/gitpod.v1.UpdateRunnerRequest.Spec` from the `spec` request property `allOf` list
  - added the new optional request property `spec/configuration`
  - added the new optional request property `spec/desiredPhase`
- **2025-02-18** `cd6a05ae99d2` — 1 warning
  - removed the optional property `detail` from the response with the `default` status

[Change history](https://skmtc.dev/gitpod-io/apis/gitpod-v1/changes/gitpod.v1.RunnerService/UpdateRunner/post.md)

---

[API](https://skmtc.dev/gitpod-io/apis/gitpod-v1.md) · [All operations](https://skmtc.dev/gitpod-io/apis/gitpod-v1/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/gitpod-io/gitpod-v1/revisions/3655d5ad0ac3/schema)
