---
title: "Update a Secret"
method: POST
path: "/secrets/{id}/update"
tags: ["Secret"]
---

# Update a Secret

`POST /secrets/{id}/update`

## Path parameters

- `id` string, required

## Query parameters

- `version` integer, required

## Request body

- SecretSpec
  - `Name` string — User-defined name of the secret.
  - `Labels` object — User-defined key/value metadata.
  - `Data` string — Data is the data to store as a secret, formatted as a Base64-url-safe-encoded ([RFC 4648](https://tools.ietf.org/html/rfc4648#section-5)) string. It must be empty if the Driver field is set, in which case the data is loaded from an external secret store. The maximum allowed size is 500KB, as defined in [MaxSecretSize](https://pkg.go.dev/github.com/moby/swarmkit/v2@v2.0.0-20250103191802-8c1959736554/api/validation#MaxSecretSize). This field is only used to _create_ a secret, and is not returned by other endpoints.
  - `Driver` Driver — Driver represents a driver (network, logging, secrets).
    - `Name` string, required — Name of the driver.
    - `Options` object — Key/value map of driver-specific options.
  - `Templating` Driver — Driver represents a driver (network, logging, secrets).
    - `Name` string, required — Name of the driver.
    - `Options` object — Key/value map of driver-specific options.

## Response `200`

no error

## Other responses

- `400` — bad parameter
- `404` — no such secret
- `500` — server error
- `503` — node is not part of a swarm

---

[API](https://skmtc.net/chapar-rest/apis/docker-engine-api.md) · [All operations](https://skmtc.net/chapar-rest/apis/docker-engine-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/chapar-rest/docker-engine-api/revisions/3a78a994dd0d/schema)
