FruxonDocs
ApiSecrets

Creates a new secret with the supplied plaintext value.

The value is encrypted with the tenant's DEK before persistence and the call also publishes the initial revision — so the secret is immediately resolvable. Returns 409 if a secret with the same key already exists for this tenant.

POST
/v1/tenants/{tenant}/secrets
AuthorizationBearer <token>

JWT Authorization header using the Bearer scheme. Enter 'Bearer' [space] and then your token.

In: header

Path Parameters

tenant*string

The tenant identifier

key*string

Reference name (e.g. STRIPE_API_KEY). Unique per tenant.

description?string|null
value?string|null

Plaintext value. Encrypted at rest immediately; never persisted in cleartext anywhere. The new revision is created and published atomically when this value is supplied.

Omitted, the secret is created with no value, for someone else to enter through a credential link (Secrets.SecretCredentialLinkTarget). Until a value is published it is not offered to agents, and a reference to it fails with SecretResolutionFailure.NoPublishedValue.

sensitivity?string

Sensitivity tier — defaults to CredentialSensitivity.Standard when omitted, matching the per-tier audit policy in Audit.ICredentialAuditLog. The user can upgrade by passing a stricter tier here or via Secrets.UpdateTenantSecretRequest.

Value in"UNSPECIFIED" | "STANDARD" | "PII" | "PHI" | "FINANCIAL" | "REGULATED"
note?string|null

Optional publish note attached to the initial revision; a secret created with no value has none.

[key: string]?never

Response Body

curl -X POST "https://api.fruxon.com/v1/tenants/string/secrets" \  -H "Content-Type: application/json" \  -d '{    "key": "string"  }'
{
  "id": "00000000-0000-0000-0000-000000000000",
  "key": "string",
  "description": "string",
  "sensitivity": "STANDARD",
  "publishedRevisionId": "00000000-0000-0000-0000-000000000000",
  "publishedVersion": 0,
  "valueHint": "string",
  "credentialLinkOpen": false,
  "createdBy": "string",
  "createdAt": 0,
  "modifiedAt": 0
}
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "property1": null,
  "property2": null
}
Empty
Empty
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "property1": null,
  "property2": null
}