---
title: "PUT /v1/projects/{projectOrProductUID}/secrets/{secretName}"
method: PUT
path: "/v1/projects/{projectOrProductUID}/secrets/{secretName}"
tags: ["project"]
---

# PUT /v1/projects/{projectOrProductUID}/secrets/{secretName}

`PUT /v1/projects/{projectOrProductUID}/secrets/{secretName}`

Update the value of an existing project secret

## Request body

- UpdateProjectSecretRequest
  - `value` string, required — The new secret value (encrypted at rest, never returned).

## Response `200`

Secret updated successfully

- ProjectSecret — Metadata for a project secret. The value is never returned.
  - `created` string, date-time, required — When the secret was first created.
  - `created_by` string, required — The actor who created the secret.
  - `modified` string, date-time — When the secret was last updated.
  - `modified_by` string — The actor who last updated the secret.
  - `name` string, required — The secret name (alphanumeric and underscores only).

## Other responses

- `404` — The response body in case of an API error.
- `default` — The response body in case of an API error.

## Changes

- **2026-07-10** `1887e880199a` — 2 breaking, 12 info
  - the response's body type/format changed from ``/`` to `object`/`` for status `404`
  - the response's body type/format changed from ``/`` to `object`/`` for status `default`
  - added the optional property `debug` to the response with the `404` status
  - added the optional property `debug` to the response with the `default` status
  - …10 more
- **2026-05-18** `26e1bce6c807` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/notefile/apis/notehub-api/changes/v1/projects/:projectOrProductUID/secrets/:secretName/put.md)

---

[API](https://skmtc.dev/notefile/apis/notehub-api.md) · [All operations](https://skmtc.dev/notefile/apis/notehub-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/notefile/notehub-api/revisions/9c5b2b63a991/schema)
