Secret
Create Secrets#
Endpoint#
POST /passportsvc/api/v1/secretsRequest#
Query parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
nsfilter | String | Namespace to scope the operation to. | Required |
Body#
Pass an array of Secret objects.
[ { "_name": "OPENAI_API_KEY", "_value": "sk-proj-0wKwWVuf2d2h77SuDy.....", "_namespaces": ["testproject_Lik2UwIN"], "_description": "Secret for the namespace", "_userType": "system_secrets" }]Response#
Codes#
| Code | Description |
|---|---|
201 | CREATED |
Response body#
{ "_offset": 0, "_pageSize": 1, "_total": 1, "_list": [ { "_id": "30a1f532-63f5-442d-8f15-09add7acf102", "_name": "OPENAI_API_KEY", "_value": "ENCRYPTED_SECRET_VALUE", "_description": "OpenAI API Key for the namespace", "_userType": "system_secrets", "_namespaces": [ "testproject_Lik2UwIN" ], "_metadata": { "_createdAt": 1757758379179, "_updatedAt": 1757758379179, "_createdById": "df24e92d-17f5-484d-b7e6-b4581fde4038", "_updatedById": "df24e92d-17f5-484d-b7e6-b4581fde4038" } } ]}Get Secrets#
Endpoint#
GET /passportsvc/api/v1/secretsRequest#
Query parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
nsfilter | String | Namespace to filter secrets by. | Required |
Response#
Body example#
{ "_offset": 0, "_pageSize": 1, "_total": 1, "_list": [ { "_id": "ae9edb87-f830-4457-9ceb-a9151e59675b", "_name": "OPENAI_API_KEY", "_value": "ENCRYPTED_SECRET_VALUE", "_description": "OpenAI API Key for the namespace", "_userType": "system_secrets", "_namespaces": [ "testproject_Lik2UwIN" ], "_metadata": { "_createdAt": 1757581505531, "_updatedAt": 1757588864330, "_createdById": "df24e92d-17f5-484d-b7e6-b4581fde4038", "_updatedById": "df24e92d-17f5-484d-b7e6-b4581fde4038" } } ]}Get Secret by Id#
Endpoint#
GET /passportsvc/api/v1/secrets/{id}Request#
Path parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
id | String | The secret's id | Required |
Query parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
nsfilter | String | Namespace to filter secrets by. | Required |
Response#
Body example#
{ "_id": "30a1f532-63f5-442d-8f15-09add7acf102", "_name": "OPENAI_API_KEY", "_value": "ENCRYPTED_SECRET_VALUE", "_description": "OpenAI API Key for the namespace", "_userType": "system_secrets", "_namespaces": [ "testproject_Lik2UwIN" ], "_metadata": { "_createdAt": 1757758379179, "_updatedAt": 1757758379179, "_createdById": "df24e92d-17f5-484d-b7e6-b4581fde4038", "_updatedById": "df24e92d-17f5-484d-b7e6-b4581fde4038" } }Update Secret#
Endpoint#
PUT /passportsvc/api/v1/secrets/{id}Request#
Path parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
id | String | The secret's id | Required |
Query parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
nsfilter | String | Namespace to scope the operation to. | Required |
Body#
{ "_id": "bf5a8437-01f1-4a87-9093-675a339735a7", "_name": "OPENAI_API_KEY", "_value": "sk-proj-0wKwWVuf2d2h77SuDy1k.....", "_description": "OpenAI API Key for the namespace", "_userType": "system_secrets", "_namespaces":["{{nsfilter}}"] }Response#
Codes#
| Code | Description |
|---|---|
200 | Success |
Response body#
{ "_offset": 0, "_pageSize": 1, "_total": 1, "_list": [ { "_id": "30a1f532-63f5-442d-8f15-09add7acf102", "_name": "OPENAI_API_KEY", "_value": "ENCRYPTED_SECRET_VALUE", "_description": "OpenAI API Key for the namespace", "_userType": "system_secrets", "_namespaces": [ "testproject_Lik2UwIN" ], "_metadata": { "_createdAt": 1757758379179, "_updatedAt": 1757758379179, "_createdById": "df24e92d-17f5-484d-b7e6-b4581fde4038", "_updatedById": "df24e92d-17f5-484d-b7e6-b4581fde4038" } } ]}Delete Secret#
Endpoint#
DELETE /passportsvc/api/v1/secrets/{id}Request#
Path parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
id | String | The secret's id | Required |
Query parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
nsfilter | String | Namespace to scope the operation to. | Required |
Response#
Codes#
| Code | Description |
|---|---|
204 | No Content |
Download Secret by Name#
Downloads a secret by its name. Requires client credentials with scope download-secrets, only the trusted clients such as aisvc has access
Endpoint#
GET /passportsvc/api/v1/secrets/{name}/downloadRequest#
Path parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
name | String | The secret's name | Required |
Query parameters#
| Parameter | Type | Description | Required |
|---|---|---|---|
nsfilter | String | Namespace to filter secrets by. | Required |
Response#
Body example#
{ "_id": "ae9edb87-f830-4457-9ceb-a9151e59675b", "_name": "OPENAI_API_KEY", "_value": "YOUR_SECRET_VALUE", "_description": "Secret for the namespace", "_userType": "system_secrets", "_namespaces": ["testproject_Lik2UwIN"], "_metadata": { "_createdAt": 1710000000000, "_updatedAt": 1710000000000, "_createdById": "df24e92d-17f5-484d-b7e6-b4581fde4038", "_updatedById": "df24e92d-17f5-484d-b7e6-b4581fde4038" }}