Service Schemas
This document defines the schemas used for service-related endpoints in the ConfidentialMind Manager API.
ServiceInfoResponse
Response for GET /services. Returns a list of available service templates and configurations.
Properties
| Property | Type | Description |
|---|---|---|
| services | ServiceInfo[] | List of available service templates |
ServiceInfo Object
| Property | Type | Description |
|---|---|---|
| title | string | Title of the service template |
| description | string | Description of the service |
| type | ServiceType | Type of the service (e.g., "api", "model") |
| templateId | string | Unique identifier for the template |
| coming_soon | boolean | Whether the service is marked as coming soon |
| markdown | string | Markdown documentation for the service |
| deployment_image | string | Docker image used for deployment |
| deployment_image_version | string | Version tag of the deployment image |
| chart_version | string | Helm chart version |
| values_file | string | Path to the values file |
| custom_registry_url | string | URL of the custom registry (if any) |
| custom_chart_url | string | URL of the custom chart (if any) |
| view_level | string | View level permission ("view" or "admin") |
| overwrite_values | object | Default overwrite values for the service |
| additionalServices | AdditionalService[] | List of additional services included with this template |
| modelConnectors | ModelConnector[] | List of model connectors |
| connectors | ConnectorsConfig | Configuration for connectors |
AdditionalService Object
| Property | Type | Description |
|---|---|---|
| connectorId | string | ID of the connector |
| templateId | string | ID of the template for the additional service |
ModelConnector Object
| Property | Type | Description |
|---|---|---|
| connectorId | string | ID of the connector |
| modelType | string | Type of the model |
Example
{
"services": [
{
"title": "Llama 2 Chat",
"description": "Llama 2 Chat model service",
"type": "model",
"templateId": "llama-2-chat",
"coming_soon": false,
"markdown": "# Llama 2 Chat\n...",
"deployment_image": "confidentialmind/llama-2-chat",
"deployment_image_version": "latest",
"chart_version": "0.1.0",
"values_file": "values.yaml",
"view_level": "view",
"overwrite_values": {},
"connectors": {
"connectors": []
}
}
]
}
TenantServicesResponse
Response for GET /tenants/{tenantId}/services. Returns a list of services deployed within a specific tenant.
Properties
| Property | Type | Description |
|---|---|---|
| serviceId | string | Unique identifier for the deployed service |
| serviceName | string | Display name of the service |
| type | ServiceType | Type of the service |
Example
[
{
"serviceId": "svc-123",
"serviceName": "My API Service",
"type": "api"
},
{
"serviceId": "svc-456",
"serviceName": "Postgres DB",
"type": "database"
}
]
ServiceGroup Object
| Property | Type | Description |
|---|---|---|
id | string | Unique identifier for the group. |
scope | string | The scope of access ("view" or "admin"). |
name | string (optional) | Display name of the group. |
type | string | Type of the group ("subgroup", "tenant-members", "tenant-admins"). |
memberCount | number (optional) | Number of members in the group (only shown for admins). |
JSON Example
{
"id": "group-123",
"scope": "view",
"name": "Viewers",
"type": "subgroup",
"memberCount": 5
}
StorageClass Object
| Property | Type | Description |
|---|---|---|
name | string | Name of the storage class. |
provisioner | string | The provisioner for the storage class. |
allowVolumeExpansion | boolean | Whether volume expansion is allowed. |
JSON Example
{
"name": "standard",
"provisioner": "kubernetes.io/gce-pd",
"allowVolumeExpansion": true
}
ApiKey Object
| Property | Type | Description |
|---|---|---|
apiKey | string | The JWT of the API key. |
state | string | The state of the API key ("active" or "paused"). |
JSON Example
{
"apiKey": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"state": "active"
}