# Secrets API



<EndpointIndex
  names={['fetchSecret', 'createSecret', 'updateSecret', 'deleteSecret']}
  titles={{
  	fetchSecret: 'Fetch a Secret',
  	createSecret: 'Create a Secret',
  	updateSecret: 'Update a Secret',
  }}
/>

Fetch a Secret [#fetch-a-secret]

<ApiEndpoint name="fetchSecret" title="Fetch a Secret" />

<ApiSchema name="SecretResponse" />

Create a Secret [#create-a-secret]

<ApiEndpoint name="createSecret" title="Create a Secret" />

<ApiSchema name="SecretCreateRequest" />

Update a Secret [#update-a-secret]

<ApiEndpoint name="updateSecret" title="Update a Secret" />

Delete Secret [#delete-secret]

<ApiEndpoint name="deleteSecret" />


## API Reference

GET /resource/{tenantLocator}/secrets/{name} — fetchSecret
Tags: secrets-controller
Permissions: read
Parameters:
  tenantLocator (uuid, path, required)
  name (string, path, required)
  byStaticName (boolean, query)
  date (datetime, query)
  jurisdiction (string, query)
Responses:
  200 SecretResponse — OK

POST /resource/{tenantLocator}/secrets — createSecret
Tags: secrets-controller
Permissions: write
Parameters:
  tenantLocator (uuid, path, required)
Request body (SecretCreateRequest):
Responses:
  200 SecretResponse — OK

PATCH /resource/{tenantLocator}/secrets/{name} — updateSecret
Tags: secrets-controller
Permissions: write
Parameters:
  tenantLocator (uuid, path, required)
  name (string, path, required)
Request body (map<string, object>):
Responses:
  200 SecretResponse — OK

DELETE /resource/{tenantLocator}/secrets/{name} — deleteSecret
Tags: secrets-controller
Permissions: write
Parameters:
  tenantLocator (uuid, path, required)
  name (string, path, required)
Responses:
  200 — OK

SecretResponse
Properties:
  resource (BasicResourceResponse, required)
  secret (object, required)

SecretCreateRequest
Properties:
  name (string, required)
  staticName (string, required)
  jurisdictions (string[], required)
  secret (map<string, object>, required)