components: schemas: Agent: additionalProperties: false properties: apiVersion: type: string kind: type: string metadata: $ref: '#/components/schemas/ObjectMeta' spec: $ref: '#/components/schemas/AgentSpec' status: $ref: '#/components/schemas/Status' required: - metadata - spec - apiVersion - kind type: object AgentSource: additionalProperties: false properties: image: type: string repository: $ref: '#/components/schemas/Repository' type: object AgentSpec: additionalProperties: false properties: description: type: string mcpServers: items: $ref: '#/components/schemas/ResourceRef' type: - array - "null" modelName: type: string modelProvider: type: string source: $ref: '#/components/schemas/AgentSource' title: type: string type: object ApplyResult: additionalProperties: false properties: apiVersion: type: string error: type: string kind: type: string name: type: string namespace: type: string status: type: string tag: type: string required: - name - status type: object ApplyResultsResponse: additionalProperties: false properties: results: items: $ref: '#/components/schemas/ApplyResult' type: - array - "null" required: - results type: object Condition: additionalProperties: false properties: lastTransitionTime: format: date-time type: string message: type: string reason: type: string status: type: string type: type: string required: - type - status type: object Deployment: additionalProperties: false properties: apiVersion: type: string kind: type: string metadata: $ref: '#/components/schemas/ObjectMeta' spec: $ref: '#/components/schemas/DeploymentSpec' status: $ref: '#/components/schemas/Status' required: - metadata - spec - apiVersion - kind type: object DeploymentRef: additionalProperties: false properties: name: type: string namespace: type: string required: - name type: object DeploymentSpec: additionalProperties: false properties: deploymentRefs: items: $ref: '#/components/schemas/DeploymentRef' type: - array - "null" desiredState: type: string env: additionalProperties: type: string type: object runtimeConfig: additionalProperties: {} type: object runtimeRef: $ref: '#/components/schemas/ResourceRef' targetRef: $ref: '#/components/schemas/ResourceRef' required: - targetRef - runtimeRef type: object ErrorDetail: additionalProperties: false properties: location: description: Where the error occurred, e.g. 'body.items[3].tags' or 'path.thing-id' type: string message: description: Error message text type: string value: description: The value at the given location type: object ErrorModel: additionalProperties: false properties: detail: description: A human-readable explanation specific to this occurrence of the problem. examples: - Property foo is required but is missing. type: string errors: description: Optional list of individual error details items: $ref: '#/components/schemas/ErrorDetail' type: - array - "null" instance: description: A URI reference that identifies the specific occurrence of the problem. examples: - https://example.com/error-log/abc123 format: uri type: string status: description: HTTP status code examples: - 400 format: int64 type: integer title: description: A short, human-readable summary of the problem type. This value should not change between occurrences of the error. examples: - Bad Request type: string type: default: about:blank description: A URI reference to human-readable documentation for the error. examples: - https://example.com/errors/example format: uri type: string type: object HealthBody: additionalProperties: false properties: platform_mode: description: Platform mode enum: - docker - kubernetes examples: - docker type: string status: description: Health status examples: - ok type: string required: - status type: object ListOutputAgentBody: additionalProperties: false properties: items: items: $ref: '#/components/schemas/Agent' type: - array - "null" nextCursor: type: string required: - items type: object ListOutputDeploymentBody: additionalProperties: false properties: items: items: $ref: '#/components/schemas/Deployment' type: - array - "null" nextCursor: type: string required: - items type: object ListOutputMCPServerBody: additionalProperties: false properties: items: items: $ref: '#/components/schemas/MCPServer' type: - array - "null" nextCursor: type: string required: - items type: object ListOutputPromptBody: additionalProperties: false properties: items: items: $ref: '#/components/schemas/Prompt' type: - array - "null" nextCursor: type: string required: - items type: object ListOutputRuntimeBody: additionalProperties: false properties: items: items: $ref: '#/components/schemas/Runtime' type: - array - "null" nextCursor: type: string required: - items type: object ListOutputSkillBody: additionalProperties: false properties: items: items: $ref: '#/components/schemas/Skill' type: - array - "null" nextCursor: type: string required: - items type: object MCPArgument: additionalProperties: false properties: choices: items: type: string type: - array - "null" default: type: string description: type: string format: type: string isRepeated: type: boolean isRequired: type: boolean isSecret: type: boolean name: type: string placeholder: type: string type: type: string value: type: string valueHint: type: string variables: additionalProperties: $ref: '#/components/schemas/MCPInputVariable' type: object required: - type type: object MCPInputVariable: additionalProperties: false properties: choices: items: type: string type: - array - "null" default: type: string description: type: string format: type: string isRequired: type: boolean isSecret: type: boolean placeholder: type: string value: type: string type: object MCPKeyValueInput: additionalProperties: false properties: choices: items: type: string type: - array - "null" default: type: string description: type: string format: type: string isRequired: type: boolean isSecret: type: boolean name: type: string placeholder: type: string value: type: string variables: additionalProperties: $ref: '#/components/schemas/MCPInputVariable' type: object required: - name type: object MCPPackage: additionalProperties: false properties: environmentVariables: items: $ref: '#/components/schemas/MCPKeyValueInput' type: - array - "null" fileSha256: type: string identifier: type: string packageArguments: items: $ref: '#/components/schemas/MCPArgument' type: - array - "null" registryBaseUrl: type: string registryType: type: string runtimeArguments: items: $ref: '#/components/schemas/MCPArgument' type: - array - "null" runtimeHint: type: string transport: $ref: '#/components/schemas/MCPTransport' version: type: string required: - registryType - identifier - transport type: object MCPServer: additionalProperties: false properties: apiVersion: type: string kind: type: string metadata: $ref: '#/components/schemas/ObjectMeta' spec: $ref: '#/components/schemas/MCPServerSpec' status: $ref: '#/components/schemas/Status' required: - metadata - spec - apiVersion - kind type: object MCPServerSource: additionalProperties: false properties: package: $ref: '#/components/schemas/MCPPackage' repository: $ref: '#/components/schemas/Repository' type: object MCPServerSpec: additionalProperties: false properties: description: type: string remote: $ref: '#/components/schemas/MCPTransport' source: $ref: '#/components/schemas/MCPServerSource' title: type: string type: object MCPTransport: additionalProperties: false properties: headers: items: $ref: '#/components/schemas/MCPKeyValueInput' type: - array - "null" type: type: string url: type: string required: - type type: object ObjectMeta: additionalProperties: false properties: annotations: additionalProperties: type: string type: object createdAt: format: date-time type: string deletionTimestamp: format: date-time type: string labels: additionalProperties: type: string type: object name: type: string namespace: type: string tag: type: string uid: type: string updatedAt: format: date-time type: string required: - name type: object PingBody: additionalProperties: false properties: pong: description: Ping response examples: - true type: boolean required: - pong type: object Prompt: additionalProperties: false properties: apiVersion: type: string kind: type: string metadata: $ref: '#/components/schemas/ObjectMeta' spec: $ref: '#/components/schemas/PromptSpec' status: $ref: '#/components/schemas/Status' required: - metadata - spec - apiVersion - kind type: object PromptSpec: additionalProperties: false properties: content: type: string description: type: string type: object Repository: additionalProperties: false properties: branch: type: string commit: type: string subfolder: type: string url: type: string type: object ResourceRef: additionalProperties: false properties: kind: type: string name: type: string namespace: type: string tag: type: string required: - kind - name type: object Runtime: additionalProperties: false properties: apiVersion: type: string kind: type: string metadata: $ref: '#/components/schemas/ObjectMeta' spec: $ref: '#/components/schemas/RuntimeSpec' status: $ref: '#/components/schemas/Status' required: - metadata - spec - apiVersion - kind type: object RuntimeSpec: additionalProperties: false properties: config: additionalProperties: {} type: object telemetryEndpoint: type: string type: type: string required: - type type: object Skill: additionalProperties: false properties: apiVersion: type: string kind: type: string metadata: $ref: '#/components/schemas/ObjectMeta' spec: $ref: '#/components/schemas/SkillSpec' status: $ref: '#/components/schemas/Status' required: - metadata - spec - apiVersion - kind type: object SkillSource: additionalProperties: false properties: repository: $ref: '#/components/schemas/Repository' type: object SkillSpec: additionalProperties: false properties: description: type: string source: $ref: '#/components/schemas/SkillSource' title: type: string type: object Status: additionalProperties: false properties: conditions: items: $ref: '#/components/schemas/Condition' type: - array - "null" raw: {} type: object VersionBody: additionalProperties: false properties: build_time: description: Build timestamp examples: - "2025-10-14T12:00:00Z" type: string git_commit: description: Git commit SHA examples: - abc123d type: string version: description: Application version examples: - v1.0.0 type: string required: - version - git_commit - build_time type: object info: description: AgentRegistry API for managing MCP servers, agents, skills, and deployments. title: AgentRegistry version: dev openapi: 3.1.0 paths: /v0/agents: get: operationId: list-agents parameters: - description: Namespace (defaults to 'default'; 'all' lists across all namespaces). explode: false in: query name: namespace schema: description: Namespace (defaults to 'default'; 'all' lists across all namespaces). type: string - description: Max items to return (default 50). explode: false in: query name: limit schema: default: 50 description: Max items to return (default 50). format: int64 type: integer - description: Opaque pagination cursor. explode: false in: query name: cursor schema: description: Opaque pagination cursor. type: string - description: 'Label selector: key=value,key2=value2.' explode: false in: query name: labels schema: description: 'Label selector: key=value,key2=value2.' type: string - description: Restrict the result set to one tag value (tagged artifact kinds only). explode: false in: query name: tag schema: description: Restrict the result set to one tag value (tagged artifact kinds only). type: string - description: Only return the literal latest tag per (namespace, name). Equivalent to tag=latest for tagged kinds. explode: false in: query name: latestOnly schema: description: Only return the literal latest tag per (namespace, name). Equivalent to tag=latest for tagged kinds. type: boolean - description: Include rows with a deletionTimestamp. explode: false in: query name: includeTerminating schema: description: Include rows with a deletionTimestamp. type: boolean responses: "200": content: application/json: schema: $ref: '#/components/schemas/ListOutputAgentBody' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: List Agent (scoped by ?namespace) /v0/agents/{name}: get: operationId: get-latest-agent parameters: - description: Namespace (internal; defaults to 'default'). explode: false in: query name: namespace schema: description: Namespace (internal; defaults to 'default'). type: string - in: path name: name required: true schema: type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/Agent' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: Get the latest Agent /v0/agents/{name}/{tag}: delete: operationId: delete-agent parameters: - description: Namespace (internal; defaults to 'default'). explode: false in: query name: namespace schema: description: Namespace (internal; defaults to 'default'). type: string - in: path name: name required: true schema: type: string - in: path name: tag required: true schema: type: string - description: Skip provider-specific teardown and only remove the registry record. explode: false in: query name: force schema: default: false description: Skip provider-specific teardown and only remove the registry record. type: boolean responses: "204": description: No Content default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: 'Delete a Agent (soft-delete: sets deletionTimestamp)' get: operationId: get-agent parameters: - description: Namespace (internal; defaults to 'default'). explode: false in: query name: namespace schema: description: Namespace (internal; defaults to 'default'). type: string - in: path name: name required: true schema: type: string - in: path name: tag required: true schema: type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/Agent' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: Get a Agent by name and tag /v0/agents/{name}/tags: get: operationId: list-tags-agent parameters: - description: Namespace (internal; defaults to 'default'). explode: false in: query name: namespace schema: description: Namespace (internal; defaults to 'default'). type: string - in: path name: name required: true schema: type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/ListOutputAgentBody' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: List all tags of a Agent /v0/apply: delete: operationId: delete-batch parameters: - description: Run validation without mutating the store. Defaults to false. explode: false in: query name: dryRun schema: description: Run validation without mutating the store. Defaults to false. type: boolean requestBody: content: application/yaml: schema: contentMediaType: application/octet-stream format: binary type: string required: true responses: "200": content: application/json: schema: $ref: '#/components/schemas/ApplyResultsResponse' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: Delete v1alpha1 resources identified by a multi-doc YAML stream post: operationId: apply-batch parameters: - description: Run validation without mutating the store. Defaults to false. explode: false in: query name: dryRun schema: description: Run validation without mutating the store. Defaults to false. type: boolean requestBody: content: application/yaml: schema: contentMediaType: application/octet-stream format: binary type: string required: true responses: "200": content: application/json: schema: $ref: '#/components/schemas/ApplyResultsResponse' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: Apply a multi-doc YAML stream of v1alpha1 resources /v0/deployments: get: operationId: list-deployments parameters: - description: Namespace (defaults to 'default'; 'all' lists across all namespaces). explode: false in: query name: namespace schema: description: Namespace (defaults to 'default'; 'all' lists across all namespaces). type: string - description: Max items to return (default 50). explode: false in: query name: limit schema: default: 50 description: Max items to return (default 50). format: int64 type: integer - description: Opaque pagination cursor. explode: false in: query name: cursor schema: description: Opaque pagination cursor. type: string - description: 'Label selector: key=value,key2=value2.' explode: false in: query name: labels schema: description: 'Label selector: key=value,key2=value2.' type: string - description: Restrict the result set to one tag value (tagged artifact kinds only). explode: false in: query name: tag schema: description: Restrict the result set to one tag value (tagged artifact kinds only). type: string - description: Only return the literal latest tag per (namespace, name). Equivalent to tag=latest for tagged kinds. explode: false in: query name: latestOnly schema: description: Only return the literal latest tag per (namespace, name). Equivalent to tag=latest for tagged kinds. type: boolean - description: Include rows with a deletionTimestamp. explode: false in: query name: includeTerminating schema: description: Include rows with a deletionTimestamp. type: boolean responses: "200": content: application/json: schema: $ref: '#/components/schemas/ListOutputDeploymentBody' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: List Deployment (scoped by ?namespace) /v0/deployments/{name}: delete: operationId: delete-deployment parameters: - description: Namespace (internal; defaults to 'default'). explode: false in: query name: namespace schema: description: Namespace (internal; defaults to 'default'). type: string - in: path name: name required: true schema: type: string - description: Skip provider-specific teardown and only remove the registry record. explode: false in: query name: force schema: default: false description: Skip provider-specific teardown and only remove the registry record. type: boolean responses: "204": description: No Content default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: 'Delete a Deployment (soft-delete: sets deletionTimestamp)' get: operationId: get-latest-deployment parameters: - description: Namespace (internal; defaults to 'default'). explode: false in: query name: namespace schema: description: Namespace (internal; defaults to 'default'). type: string - in: path name: name required: true schema: type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/Deployment' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: Get the latest Deployment put: operationId: apply-deployment parameters: - description: Namespace (internal; defaults to 'default'). explode: false in: query name: namespace schema: description: Namespace (internal; defaults to 'default'). type: string - in: path name: name required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Deployment' responses: "200": content: application/json: schema: $ref: '#/components/schemas/Deployment' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: Apply a Deployment (idempotent upsert) /v0/health: get: description: Check the health status of the API operationId: get-health-v0 responses: "200": content: application/json: schema: $ref: '#/components/schemas/HealthBody' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: Health check tags: - health /v0/mcpservers: get: operationId: list-mcpservers parameters: - description: Namespace (defaults to 'default'; 'all' lists across all namespaces). explode: false in: query name: namespace schema: description: Namespace (defaults to 'default'; 'all' lists across all namespaces). type: string - description: Max items to return (default 50). explode: false in: query name: limit schema: default: 50 description: Max items to return (default 50). format: int64 type: integer - description: Opaque pagination cursor. explode: false in: query name: cursor schema: description: Opaque pagination cursor. type: string - description: 'Label selector: key=value,key2=value2.' explode: false in: query name: labels schema: description: 'Label selector: key=value,key2=value2.' type: string - description: Restrict the result set to one tag value (tagged artifact kinds only). explode: false in: query name: tag schema: description: Restrict the result set to one tag value (tagged artifact kinds only). type: string - description: Only return the literal latest tag per (namespace, name). Equivalent to tag=latest for tagged kinds. explode: false in: query name: latestOnly schema: description: Only return the literal latest tag per (namespace, name). Equivalent to tag=latest for tagged kinds. type: boolean - description: Include rows with a deletionTimestamp. explode: false in: query name: includeTerminating schema: description: Include rows with a deletionTimestamp. type: boolean responses: "200": content: application/json: schema: $ref: '#/components/schemas/ListOutputMCPServerBody' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: List MCPServer (scoped by ?namespace) /v0/mcpservers/{name}: get: operationId: get-latest-mcpserver parameters: - description: Namespace (internal; defaults to 'default'). explode: false in: query name: namespace schema: description: Namespace (internal; defaults to 'default'). type: string - in: path name: name required: true schema: type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/MCPServer' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: Get the latest MCPServer /v0/mcpservers/{name}/{tag}: delete: operationId: delete-mcpserver parameters: - description: Namespace (internal; defaults to 'default'). explode: false in: query name: namespace schema: description: Namespace (internal; defaults to 'default'). type: string - in: path name: name required: true schema: type: string - in: path name: tag required: true schema: type: string - description: Skip provider-specific teardown and only remove the registry record. explode: false in: query name: force schema: default: false description: Skip provider-specific teardown and only remove the registry record. type: boolean responses: "204": description: No Content default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: 'Delete a MCPServer (soft-delete: sets deletionTimestamp)' get: operationId: get-mcpserver parameters: - description: Namespace (internal; defaults to 'default'). explode: false in: query name: namespace schema: description: Namespace (internal; defaults to 'default'). type: string - in: path name: name required: true schema: type: string - in: path name: tag required: true schema: type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/MCPServer' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: Get a MCPServer by name and tag /v0/mcpservers/{name}/tags: get: operationId: list-tags-mcpserver parameters: - description: Namespace (internal; defaults to 'default'). explode: false in: query name: namespace schema: description: Namespace (internal; defaults to 'default'). type: string - in: path name: name required: true schema: type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/ListOutputMCPServerBody' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: List all tags of a MCPServer /v0/ping: get: description: Simple ping endpoint operationId: ping-v0 responses: "200": content: application/json: schema: $ref: '#/components/schemas/PingBody' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: Ping tags: - ping /v0/prompts: get: operationId: list-prompts parameters: - description: Namespace (defaults to 'default'; 'all' lists across all namespaces). explode: false in: query name: namespace schema: description: Namespace (defaults to 'default'; 'all' lists across all namespaces). type: string - description: Max items to return (default 50). explode: false in: query name: limit schema: default: 50 description: Max items to return (default 50). format: int64 type: integer - description: Opaque pagination cursor. explode: false in: query name: cursor schema: description: Opaque pagination cursor. type: string - description: 'Label selector: key=value,key2=value2.' explode: false in: query name: labels schema: description: 'Label selector: key=value,key2=value2.' type: string - description: Restrict the result set to one tag value (tagged artifact kinds only). explode: false in: query name: tag schema: description: Restrict the result set to one tag value (tagged artifact kinds only). type: string - description: Only return the literal latest tag per (namespace, name). Equivalent to tag=latest for tagged kinds. explode: false in: query name: latestOnly schema: description: Only return the literal latest tag per (namespace, name). Equivalent to tag=latest for tagged kinds. type: boolean - description: Include rows with a deletionTimestamp. explode: false in: query name: includeTerminating schema: description: Include rows with a deletionTimestamp. type: boolean responses: "200": content: application/json: schema: $ref: '#/components/schemas/ListOutputPromptBody' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: List Prompt (scoped by ?namespace) /v0/prompts/{name}: get: operationId: get-latest-prompt parameters: - description: Namespace (internal; defaults to 'default'). explode: false in: query name: namespace schema: description: Namespace (internal; defaults to 'default'). type: string - in: path name: name required: true schema: type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/Prompt' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: Get the latest Prompt /v0/prompts/{name}/{tag}: delete: operationId: delete-prompt parameters: - description: Namespace (internal; defaults to 'default'). explode: false in: query name: namespace schema: description: Namespace (internal; defaults to 'default'). type: string - in: path name: name required: true schema: type: string - in: path name: tag required: true schema: type: string - description: Skip provider-specific teardown and only remove the registry record. explode: false in: query name: force schema: default: false description: Skip provider-specific teardown and only remove the registry record. type: boolean responses: "204": description: No Content default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: 'Delete a Prompt (soft-delete: sets deletionTimestamp)' get: operationId: get-prompt parameters: - description: Namespace (internal; defaults to 'default'). explode: false in: query name: namespace schema: description: Namespace (internal; defaults to 'default'). type: string - in: path name: name required: true schema: type: string - in: path name: tag required: true schema: type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/Prompt' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: Get a Prompt by name and tag /v0/prompts/{name}/tags: get: operationId: list-tags-prompt parameters: - description: Namespace (internal; defaults to 'default'). explode: false in: query name: namespace schema: description: Namespace (internal; defaults to 'default'). type: string - in: path name: name required: true schema: type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/ListOutputPromptBody' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: List all tags of a Prompt /v0/runtimes: get: operationId: list-runtimes parameters: - description: Namespace (defaults to 'default'; 'all' lists across all namespaces). explode: false in: query name: namespace schema: description: Namespace (defaults to 'default'; 'all' lists across all namespaces). type: string - description: Max items to return (default 50). explode: false in: query name: limit schema: default: 50 description: Max items to return (default 50). format: int64 type: integer - description: Opaque pagination cursor. explode: false in: query name: cursor schema: description: Opaque pagination cursor. type: string - description: 'Label selector: key=value,key2=value2.' explode: false in: query name: labels schema: description: 'Label selector: key=value,key2=value2.' type: string - description: Restrict the result set to one tag value (tagged artifact kinds only). explode: false in: query name: tag schema: description: Restrict the result set to one tag value (tagged artifact kinds only). type: string - description: Only return the literal latest tag per (namespace, name). Equivalent to tag=latest for tagged kinds. explode: false in: query name: latestOnly schema: description: Only return the literal latest tag per (namespace, name). Equivalent to tag=latest for tagged kinds. type: boolean - description: Include rows with a deletionTimestamp. explode: false in: query name: includeTerminating schema: description: Include rows with a deletionTimestamp. type: boolean responses: "200": content: application/json: schema: $ref: '#/components/schemas/ListOutputRuntimeBody' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: List Runtime (scoped by ?namespace) /v0/runtimes/{name}: delete: operationId: delete-runtime parameters: - description: Namespace (internal; defaults to 'default'). explode: false in: query name: namespace schema: description: Namespace (internal; defaults to 'default'). type: string - in: path name: name required: true schema: type: string - description: Skip provider-specific teardown and only remove the registry record. explode: false in: query name: force schema: default: false description: Skip provider-specific teardown and only remove the registry record. type: boolean responses: "204": description: No Content default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: 'Delete a Runtime (soft-delete: sets deletionTimestamp)' get: operationId: get-latest-runtime parameters: - description: Namespace (internal; defaults to 'default'). explode: false in: query name: namespace schema: description: Namespace (internal; defaults to 'default'). type: string - in: path name: name required: true schema: type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/Runtime' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: Get the latest Runtime put: operationId: apply-runtime parameters: - description: Namespace (internal; defaults to 'default'). explode: false in: query name: namespace schema: description: Namespace (internal; defaults to 'default'). type: string - in: path name: name required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/Runtime' responses: "200": content: application/json: schema: $ref: '#/components/schemas/Runtime' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: Apply a Runtime (idempotent upsert) /v0/skills: get: operationId: list-skills parameters: - description: Namespace (defaults to 'default'; 'all' lists across all namespaces). explode: false in: query name: namespace schema: description: Namespace (defaults to 'default'; 'all' lists across all namespaces). type: string - description: Max items to return (default 50). explode: false in: query name: limit schema: default: 50 description: Max items to return (default 50). format: int64 type: integer - description: Opaque pagination cursor. explode: false in: query name: cursor schema: description: Opaque pagination cursor. type: string - description: 'Label selector: key=value,key2=value2.' explode: false in: query name: labels schema: description: 'Label selector: key=value,key2=value2.' type: string - description: Restrict the result set to one tag value (tagged artifact kinds only). explode: false in: query name: tag schema: description: Restrict the result set to one tag value (tagged artifact kinds only). type: string - description: Only return the literal latest tag per (namespace, name). Equivalent to tag=latest for tagged kinds. explode: false in: query name: latestOnly schema: description: Only return the literal latest tag per (namespace, name). Equivalent to tag=latest for tagged kinds. type: boolean - description: Include rows with a deletionTimestamp. explode: false in: query name: includeTerminating schema: description: Include rows with a deletionTimestamp. type: boolean responses: "200": content: application/json: schema: $ref: '#/components/schemas/ListOutputSkillBody' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: List Skill (scoped by ?namespace) /v0/skills/{name}: get: operationId: get-latest-skill parameters: - description: Namespace (internal; defaults to 'default'). explode: false in: query name: namespace schema: description: Namespace (internal; defaults to 'default'). type: string - in: path name: name required: true schema: type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/Skill' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: Get the latest Skill /v0/skills/{name}/{tag}: delete: operationId: delete-skill parameters: - description: Namespace (internal; defaults to 'default'). explode: false in: query name: namespace schema: description: Namespace (internal; defaults to 'default'). type: string - in: path name: name required: true schema: type: string - in: path name: tag required: true schema: type: string - description: Skip provider-specific teardown and only remove the registry record. explode: false in: query name: force schema: default: false description: Skip provider-specific teardown and only remove the registry record. type: boolean responses: "204": description: No Content default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: 'Delete a Skill (soft-delete: sets deletionTimestamp)' get: operationId: get-skill parameters: - description: Namespace (internal; defaults to 'default'). explode: false in: query name: namespace schema: description: Namespace (internal; defaults to 'default'). type: string - in: path name: name required: true schema: type: string - in: path name: tag required: true schema: type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/Skill' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: Get a Skill by name and tag /v0/skills/{name}/tags: get: operationId: list-tags-skill parameters: - description: Namespace (internal; defaults to 'default'). explode: false in: query name: namespace schema: description: Namespace (internal; defaults to 'default'). type: string - in: path name: name required: true schema: type: string responses: "200": content: application/json: schema: $ref: '#/components/schemas/ListOutputSkillBody' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: List all tags of a Skill /v0/version: get: description: Returns the version, git commit, and build time of the registry application operationId: get-version-v0 responses: "200": content: application/json: schema: $ref: '#/components/schemas/VersionBody' description: OK default: content: application/problem+json: schema: $ref: '#/components/schemas/ErrorModel' description: Error summary: Get version information tags: - version