---
title: "Set an org secret by key"
method: PUT
path: "/org/secrets/{key}"
tags: ["Functions"]
---

# Set an org secret by key

`PUT /org/secrets/{key}`

Path-keyed companion to `POST /org/secrets`. Idempotent:
returns 201 the first time the key is set, 200 on subsequent
updates. Same validation and write-only guarantees as POST.

## Request body

- object — Body for PUT /org/secrets/{key}. Key comes from the path.
  - `value` string, required

## Response `200`

Secret updated

- object
  - `success` true, required
  - `data` object, required — Returned by POST and PUT org secret routes.
    - `key` string, required
    - `created_at` string, date-time, required
    - `updated_at` string, date-time, required
    - `created` boolean, required — True if this call inserted a new row, false if it updated an existing one.

## Other responses

- `201` — Secret created
- `400` — Invalid request parameters
- `401` — Invalid or missing API key

---

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