---
title: "Create or update a secret"
method: POST
path: "/api/secrets"
tags: ["settings"]
---

# Create or update a secret

`POST /api/secrets`

[cloud-only] Stores a new secret or updates an existing one. Secrets are encrypted at rest.

## Request body

- object
  - `name` string, required — Secret name (unique per user)
  - `value` string, required — Secret value

## Response `201`

Secret created

- SecretMeta — [cloud-only] Metadata for a stored secret (value is never returned).
  - `id` string, required
  - `name` string, required
  - `provider` string — [cloud-only] Provider identifier (e.g., huggingface, civitai).
  - `last_used_at` string, date-time — [cloud-only] When the secret was last used for decryption.
  - `created_at` string, date-time
  - `updated_at` string, date-time

## Other responses

- `400` — Bad request
- `401` — Unauthorized
- `409` — Conflict - secret with this name or provider already exists
- `422` — Validation error
- `500` — Internal server error
- `503` — Service unavailable - secrets feature disabled

## Changes

- **2026-05-22** `09a5075587c8` — 4 info
  - added the non-success response with the status `409`
  - added the non-success response with the status `422`
  - added the non-success response with the status `500`
  - added the non-success response with the status `503`
- **2026-05-08** `c9640fded659` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/comfy-org/apis/comfyui-api/changes/api/secrets/post.md)

---

[API](https://skmtc.dev/comfy-org/apis/comfyui-api.md) · [All operations](https://skmtc.dev/comfy-org/apis/comfyui-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/comfy-org/comfyui-api/revisions/09a5075587c8/schema)
