diff --git a/eslint.config.js b/eslint.config.js
index b023fd6f..ccd444fd 100644
--- a/eslint.config.js
+++ b/eslint.config.js
@@ -3,12 +3,18 @@ import flatConfig from '@sap-cloud-sdk/eslint-config/flat-config.js';
export default [
...flatConfig,
{
- ignores: ['**/dist/**/*', '**/coverage/**/*', 'packages/ai-core/src/'],
+ ignores: ['**/dist/**/*', '**/coverage/**/*', 'packages/ai-core/src/client/**/*'],
},
{
- files: ['**/test-util/**/*.ts'],
+ files: ['**/test-util/**/*.ts', '**/packages/gen-ai-hub/src/orchestration/client/**/*'],
rules: {
'jsdoc/require-jsdoc': 'off'
}
+ },
+ {
+ files: ['**/packages/gen-ai-hub/src/orchestration/client/api/default-api.ts'],
+ rules: {
+ '@typescript-eslint/explicit-module-boundary-types': 'off'
+ }
}
];
diff --git a/package.json b/package.json
index f9f633f5..67d663f8 100644
--- a/package.json
+++ b/package.json
@@ -17,7 +17,8 @@
"test": "NODE_OPTIONS=--experimental-vm-modules pnpm -r run test",
"test:type": "tsd",
"lint": "pnpm -r run lint",
- "lint:fix": "pnpm -r run lint:fix"
+ "lint:fix": "pnpm -r run lint:fix",
+ "generate": "pnpm -r run generate"
},
"devDependencies": {
"@changesets/cli": "^2.27.7",
diff --git a/packages/ai-core/package.json b/packages/ai-core/package.json
index c0d88c36..f2aa0021 100644
--- a/packages/ai-core/package.json
+++ b/packages/ai-core/package.json
@@ -20,12 +20,14 @@
"compile": "tsc",
"test": "NODE_OPTIONS=--experimental-vm-modules jest",
"lint": "eslint . && prettier . --config ../../.prettierrc --ignore-path ../../.prettierignore -c",
- "lint:fix": "eslint . --fix && prettier . --config ../../.prettierrc --ignore-path ../../.prettierignore -w --log-level error"
+ "lint:fix": "eslint . --fix && prettier . --config ../../.prettierrc --ignore-path ../../.prettierignore -w --log-level error",
+ "generate": "openapi-generator --generateESM --overwrite --input ./src/spec/AI_CORE_API.yaml --outputDir ./src/client && pnpm lint:fix"
},
"dependencies": {
"@sap-cloud-sdk/openapi": "^3.18.0"
},
"devDependencies": {
- "typescript": "^5.5.4"
+ "typescript": "^5.5.4",
+ "@sap-cloud-sdk/openapi-generator": "^3.18.0"
}
}
diff --git a/packages/ai-core/spec/AI_CORE_API.yaml b/packages/ai-core/spec/AI_CORE_API.yaml
deleted file mode 100644
index 59f9acf6..00000000
--- a/packages/ai-core/spec/AI_CORE_API.yaml
+++ /dev/null
@@ -1,7055 +0,0 @@
-openapi: 3.0.0
-info:
- title: AI Core
- description: |
- Provides tools to manage your scenarios and workflows in SAP AI Core. Execute pipelines as a batch job, for example to pre-process or train your models, or perform batch inference. Serve inference requests of trained models. Deploy а trained machine learning model as a web service to serve inference requests with high performance. Register your own Docker registry, synchronize your AI content from your own git repository, and register your own object store for training data and trained models.
- version: 2.29.0
-externalDocs:
- description: Documentation for SAP AI Core
- url: https://help.sap.com/docs/AI_CORE?version=CLOUD
-servers:
- - url: https://api.ai.{region}.aws.ml.hana.ondemand.com/v2
- description: Production endpoint for SAP AI Core
- variables:
- region:
- default: prod.eu-central-1
- enum:
- - prod.eu-central-1
- - prodeuonly.eu-central-1
- - prod.us-east-1
- - prod.ap-northeast-1
- - prod.ap-southeast-2
-security:
- - Oauth2: []
-tags:
- - name: Scenario
- description: Access to scenarios
- - name: Executable
- description: Access to executables
- - name: Configuration
- description: Access to configurations for executions and deployments
- - name: Deployment
- description: Access to deployments
- - name: Execution
- description: Access to executions
- - name: Artifact
- description: Access to artifacts, e.g. datasets and models
- - name: Docker Registry Secret
- description: Access to dockerRegistrySecrets
- - name: Metrics
- description: Access metrics of training runs
- - name: KPI
- description: Access to usage information for a tenant
- - name: Object Store Secret
- description: Access to objectStoreSecrets
- - name: Secret
- description: Access to generic secrets
- - name: Meta
- description: Metadata about API provider and capabilities
- - name: Execution Schedule
- description: Access to executionSchedules
-paths:
- /lm/artifacts:
- get:
- tags:
- - Artifact
- summary: Get list of artifacts
- description: |
- Retrieve a list of artifacts that matches the specified filter criteria.
- Filter criteria include scenario ID, execution ID, an artifact name, artifact kind, or artifact labels.
- Use top/skip parameters to paginate the result list.
- Search by substring of artifact name or description, if required.
- operationId: artifact.query
- parameters:
- - name: scenarioId
- in: query
- description: Scenario identifier
- required: false
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: executionId
- in: query
- description: Execution identifier
- required: false
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: name
- in: query
- description: Artifact name
- required: false
- schema:
- $ref: '#/components/schemas/name'
- example: inception
- - name: kind
- in: query
- description: Kind of the artifact
- required: false
- schema:
- type: string
- enum:
- - model
- - dataset
- - resultset
- - other
- example: model
- - name: artifactLabelSelector
- in: query
- description: |
- Filter artifact by labels. Pass in expressions in the form of "key=value" or "key!=value" separated by commas and the result will be filtered to only those resources that have labels that match all provided expressions (i.e. logical AND). The maximum number of labels permitted for filtering is 10
- required: false
- style: form
- explode: false
- schema:
- maxItems: 10
- minItems: 1
- type: array
- items:
- maxLength: 5000
- pattern: ^ext\.ai\.sap\.com\/[\w\.-]+!?=[^ =,]+$
- type: string
- example: ext.ai.sap.com/key1=value1,ext.ai.sap.com/key2!=value2
- - name: $top
- in: query
- description: Number of results to display
- required: false
- schema:
- maximum: 100000
- type: integer
- default: 10000
- example: 10
- x-visible: false
- - name: $skip
- in: query
- description: Number of results to be skipped from the ordered list of results
- required: false
- schema:
- type: integer
- example: 10
- x-visible: false
- - name: $search
- in: query
- description: Generic search term to be looked for in various attributes
- required: false
- schema:
- pattern: ^[^~]{1,80}$
- type: string
- example: onfigur
- - name: searchCaseInsensitive
- in: query
- description: indicates whether the search should be case insensitive
- required: false
- schema:
- type: boolean
- default: false
- example: true
- - name: $expand
- in: query
- description: expand detailed information on scenario
- required: false
- schema:
- type: string
- enum:
- - scenario
- example: scenario
- x-visible: false
- responses:
- '200':
- description: A list of artifacts
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArtifactList'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- post:
- tags:
- - Artifact
- summary: Register artifact
- description: Register an artifact for use in a configuration, for example a model or a dataset.
- operationId: artifact.create
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArtifactPostData'
- required: true
- responses:
- '201':
- description: The artifact has been registered successfully
- headers:
- Location:
- description: URL of the registered artifact
- schema:
- $ref: '#/components/schemas/Url'
- Content-Location:
- description: URL of the registered artifact. This header is deprecated. Location header shall be used instead.
- deprecated: true
- schema:
- $ref: '#/components/schemas/Url'
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArtifactCreationResponse'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- parameters:
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- /lm/artifacts/{artifactId}:
- get:
- tags:
- - Artifact
- summary: Get artifact by ID
- description: Retrieve details for artifact with artifactId.
- operationId: artifact.get
- responses:
- '200':
- description: An artifact
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/Artifact'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- parameters:
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- - name: artifactId
- in: path
- description: Artifact identifier
- required: true
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: $expand
- in: query
- description: expand detailed information on scenario
- required: false
- schema:
- type: string
- enum:
- - scenario
- example: scenario
- x-visible: false
- /lm/configurations:
- get:
- tags:
- - Configuration
- summary: Get list of configurations
- description: |
- Retrieve a list of configurations. Filter results by scenario ID or a list of executable IDs.
- Search for configurations containing the search string as substring in the configuration name.
- operationId: configuration.query
- parameters:
- - name: scenarioId
- in: query
- description: Scenario identifier
- required: false
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: $top
- in: query
- description: Number of results to display
- required: false
- schema:
- maximum: 100000
- type: integer
- default: 10000
- example: 10
- x-visible: false
- - name: $skip
- in: query
- description: Number of results to be skipped from the ordered list of results
- required: false
- schema:
- type: integer
- example: 10
- x-visible: false
- - name: executableIds
- in: query
- description: Limit query to only these executable IDs
- style: form
- explode: false
- schema:
- maxItems: 1000
- type: array
- items:
- pattern: ^[\w.-]{4,64}$
- type: string
- - name: $search
- in: query
- description: Generic search term to be looked for in various attributes
- required: false
- schema:
- pattern: ^[^~]{1,80}$
- type: string
- example: onfigur
- - name: searchCaseInsensitive
- in: query
- description: indicates whether the search should be case insensitive
- required: false
- schema:
- type: boolean
- default: false
- example: true
- - name: $expand
- in: query
- description: expand detailed information on scenario
- required: false
- schema:
- type: string
- enum:
- - scenario
- example: scenario
- x-visible: false
- responses:
- '200':
- description: A list of configurations
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ConfigurationList'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- post:
- tags:
- - Configuration
- summary: Create configuration
- description: |
- Create a new configuration linked to a specific scenario and executable for use in an execution
- or deployment.
- operationId: configuration.create
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ConfigurationBaseData'
- required: true
- responses:
- '201':
- description: The created configuration
- headers:
- Location:
- description: URL of the created configuration
- schema:
- $ref: '#/components/schemas/Url'
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ConfigurationCreationResponse'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- parameters:
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- /lm/configurations/{configurationId}:
- get:
- tags:
- - Configuration
- summary: Get configuration by ID
- description: Retrieve details for configuration with configurationId.
- operationId: configuration.get
- responses:
- '200':
- description: A configuration
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/Configuration'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- parameters:
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- - name: configurationId
- in: path
- description: Configuration identifier
- required: true
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: $expand
- in: query
- description: expand detailed information on scenario
- required: false
- schema:
- type: string
- enum:
- - scenario
- example: scenario
- x-visible: false
- /lm/configurations/{configurationId}/deployments:
- post:
- tags:
- - Deployment
- summary: Create deployment
- description: Create deployment. Deprecated, use POST /deployments instead
- operationId: deployment.create_deprecated
- responses:
- '202':
- description: The deployment has been scheduled successfully
- headers:
- Location:
- description: URL of the scheduled deployment
- schema:
- $ref: '#/components/schemas/Url'
- Content-Location:
- description: URL of the scheduled deployment. This header is deprecated. Location header shall be used instead.
- deprecated: true
- schema:
- $ref: '#/components/schemas/Url'
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/DeploymentCreationResponse'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- deprecated: true
- parameters:
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- - name: configurationId
- in: path
- description: Configuration identifier
- required: true
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- /lm/configurations/{configurationId}/executions:
- post:
- tags:
- - Execution
- summary: Trigger execution
- description: Trigger execution. Deprecated. Use POST /executions instead
- operationId: execution.create_deprecated
- responses:
- '202':
- description: The execution has been scheduled successfully
- headers:
- Location:
- description: URL of the scheduled execution
- schema:
- $ref: '#/components/schemas/Url'
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ExecutionCreationResponse'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- deprecated: true
- parameters:
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- - name: configurationId
- in: path
- description: Configuration identifier
- required: true
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- /lm/deployments:
- get:
- tags:
- - Deployment
- summary: Get list of deployments
- description: |
- Retrieve a list of deployments that match the specified filter criteria.
- Filter criteria include a list of executableIds, a scenarioId, a configurationId, or a deployment status.
- With top/skip parameters it is possible to paginate the result list.
- With select parameter it is possible to select only status.
- operationId: deployment.query
- parameters:
- - name: executableIds
- in: query
- description: Limit query to only these executable IDs
- style: form
- explode: false
- schema:
- maxItems: 1000
- type: array
- items:
- pattern: ^[\w.-]{4,64}$
- type: string
- - name: configurationId
- in: query
- description: Configuration identifier
- required: false
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: scenarioId
- in: query
- description: Scenario identifier
- required: false
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: status
- in: query
- description: Filter by status
- required: false
- schema:
- type: string
- enum:
- - PENDING
- - RUNNING
- - COMPLETED
- - DEAD
- - STOPPING
- - STOPPED
- - UNKNOWN
- example: RUNNING
- - name: $top
- in: query
- description: Number of results to display
- required: false
- schema:
- maximum: 100000
- type: integer
- default: 10000
- example: 10
- x-visible: false
- - name: $skip
- in: query
- description: Number of results to be skipped from the ordered list of results
- required: false
- schema:
- type: integer
- example: 10
- x-visible: false
- - name: $select
- in: query
- description: Allows to request a specified set of properties for each entity
- required: false
- schema:
- type: string
- enum:
- - status
- example: status
- x-visible: false
- responses:
- '200':
- description: A list of deployments
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/DeploymentList'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- post:
- tags:
- - Deployment
- summary: Create deployment
- description: Create a deployment using the configuration specified by configurationId.
- operationId: deployment.create
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/DeploymentCreationRequest'
- required: true
- responses:
- '202':
- description: The deployment has been scheduled successfully
- headers:
- Location:
- description: URL of the scheduled deployment
- schema:
- $ref: '#/components/schemas/Url'
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/DeploymentCreationResponse'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- patch:
- tags:
- - Deployment
- summary: Patch multiple deployments
- description: Update status of multiple deployments. stop or delete multiple deployments.
- operationId: deployment.batch_modify
- requestBody:
- content:
- application/merge-patch+json:
- schema:
- $ref: '#/components/schemas/DeploymentBulkModificationRequest'
- required: true
- responses:
- '202':
- description: The modification of the deployments have been scheduled successfully
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/DeploymentBulkModificationResponse'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- parameters:
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- /lm/deployments/{deploymentId}:
- get:
- tags:
- - Deployment
- summary: Get information about specific deployment
- description: Retrieve details for execution with deploymentId.
- operationId: deployment.get
- parameters:
- - name: $select
- in: query
- description: Allows to request a specified set of properties for each entity
- required: false
- schema:
- type: string
- enum:
- - status
- example: status
- x-visible: false
- responses:
- '200':
- description: Information about the deployment
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/DeploymentResponseWithDetails'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- delete:
- tags:
- - Deployment
- summary: Mark deployment as deleted
- description: Mark deployment with deploymentId as deleted.
- operationId: deployment.delete
- responses:
- '202':
- description: The deletion of the deployment has been scheduled successfully
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/DeploymentDeletionResponse'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- '412':
- description: The service didn't meet the precondition needed to execute this operation
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- patch:
- tags:
- - Deployment
- summary: Update target status or configuration of a deployment
- description: Update target status of a deployment to stop a deployment or change the configuration to be used by the deployment. A change of configuration is only allowed for RUNNING and PENDING deployments.
- operationId: deployment.modify
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/DeploymentModificationRequest'
- required: true
- responses:
- '202':
- description: The modification of the deployment has been scheduled successfully
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/DeploymentModificationResponse'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- '412':
- description: The service didn't meet the precondition needed to execute this operation
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- parameters:
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- - name: deploymentId
- in: path
- description: Deployment identifier
- required: true
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- /lm/executions:
- get:
- tags:
- - Execution
- summary: Get list of executions
- description: |
- Retrieve a list of executions that match the specified filter criteria.
- Filter criteria include a list of executableIds, a scenarioId, a configurationId, or a execution status.
- With top/skip parameters it is possible to paginate the result list.
- With select parameter it is possible to select only status.
- operationId: execution.query
- parameters:
- - name: executableIds
- in: query
- description: Limit query to only these executable IDs
- style: form
- explode: false
- schema:
- maxItems: 1000
- type: array
- items:
- pattern: ^[\w.-]{4,64}$
- type: string
- - name: configurationId
- in: query
- description: Configuration identifier
- required: false
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: scenarioId
- in: query
- description: Scenario identifier
- required: false
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: executionScheduleId
- in: query
- description: Execution Schedule identifier
- required: false
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: status
- in: query
- description: Filter by status
- required: false
- schema:
- type: string
- enum:
- - PENDING
- - RUNNING
- - COMPLETED
- - DEAD
- - STOPPING
- - STOPPED
- - UNKNOWN
- example: RUNNING
- - name: $top
- in: query
- description: Number of results to display
- required: false
- schema:
- maximum: 100000
- type: integer
- default: 10000
- example: 10
- x-visible: false
- - name: $skip
- in: query
- description: Number of results to be skipped from the ordered list of results
- required: false
- schema:
- type: integer
- example: 10
- x-visible: false
- - name: $select
- in: query
- description: Allows to request a specified set of properties for each entity
- required: false
- schema:
- type: string
- enum:
- - status
- example: status
- x-visible: false
- responses:
- '200':
- description: A list of executions
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ExecutionList'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- post:
- tags:
- - Execution
- summary: Create execution
- description: Create an execution using the configuration specified by configurationId.
- operationId: execution.create
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/EnactmentCreationRequest'
- required: true
- responses:
- '202':
- description: The execution has been scheduled successfully
- headers:
- Location:
- description: URL of the scheduled execution
- schema:
- $ref: '#/components/schemas/Url'
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ExecutionCreationResponse'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- patch:
- tags:
- - Execution
- summary: Patch multiple executions
- description: Patch multiple executions' status to stopped or deleted.
- operationId: execution.batch_modify
- requestBody:
- content:
- application/merge-patch+json:
- schema:
- $ref: '#/components/schemas/ExecutionBulkModificationRequest'
- required: true
- responses:
- '202':
- description: The modification of the executions have been scheduled successfully
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ExecutionBulkModificationResponse'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- parameters:
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- /lm/executions/{executionId}:
- get:
- tags:
- - Execution
- summary: Get information about a specific execution
- description: Retrieve details for execution with executionId.
- operationId: execution.get
- parameters:
- - name: $select
- in: query
- description: Allows to request a specified set of properties for each entity
- required: false
- schema:
- type: string
- enum:
- - status
- example: status
- x-visible: false
- responses:
- '200':
- description: Information about the execution
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ExecutionResponseWithDetails'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- delete:
- tags:
- - Execution
- summary: Mark execution as deleted
- description: Mark the execution with executionId as deleted.
- operationId: execution.delete
- responses:
- '202':
- description: The deletion of the execution has been scheduled successfully
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ExecutionDeletionResponse'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- '412':
- description: The service didn't meet the precondition needed to execute this operation
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- patch:
- tags:
- - Execution
- summary: Update target status of an execution
- description: Update target status of the execution to stop an execution.
- operationId: execution.modify
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ExecutionModificationRequest'
- required: true
- responses:
- '202':
- description: The modification of the execution has been scheduled successfully
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ExecutionModificationResponse'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- '412':
- description: The service didn't meet the precondition needed to execute this operation
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- parameters:
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- - name: executionId
- in: path
- description: Execution identifier
- required: true
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- /lm/executionSchedules:
- get:
- tags:
- - Execution Schedule
- summary: Get list of execution schedules
- description: |
- Retrieve a list of execution schedules that match the specified filter criteria.
- Filter criteria include executionScheduleStatus or a configurationId.
- With top/skip parameters it is possible to paginate the result list.
- operationId: execution_schedule.query
- parameters:
- - name: configurationId
- in: query
- description: Configuration identifier
- required: false
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: status
- in: query
- description: Execution Schedule status
- required: false
- schema:
- type: string
- enum:
- - ACTIVE
- - INACTIVE
- example: ACTIVE
- - name: $top
- in: query
- description: Number of results to display
- required: false
- schema:
- maximum: 100000
- type: integer
- default: 10000
- example: 10
- x-visible: false
- - name: $skip
- in: query
- description: Number of results to be skipped from the ordered list of results
- required: false
- schema:
- type: integer
- example: 10
- x-visible: false
- responses:
- '200':
- description: A list of execution schedules
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ExecutionScheduleList'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- post:
- tags:
- - Execution Schedule
- summary: Create execution schedule
- description: Create an execution schedule using the configuration specified by configurationId, and schedule.
- operationId: execution_schedule.create
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ExecutionScheduleCreationData'
- required: true
- responses:
- '202':
- description: The execution schedule has been created successfully
- headers:
- Location:
- description: URL of the execution schedule
- schema:
- $ref: '#/components/schemas/Url'
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ExecutionScheduleCreationResponse'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- parameters:
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- /lm/executionSchedules/{executionScheduleId}:
- get:
- tags:
- - Execution Schedule
- summary: Get information about an execution schedule
- description: Retrieve details for execution schedule with executionScheduleId.
- operationId: execution_schedule.get
- responses:
- '200':
- description: Information about the execution schedule
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ExecutionSchedule'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- delete:
- tags:
- - Execution Schedule
- summary: Delete execution schedule
- description: Delete the execution schedule with executionScheduleId.
- operationId: execution_schedule.delete
- responses:
- '202':
- description: The execution schedule has been deleted successfully
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ExecutionScheduleDeletionResponse'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- patch:
- tags:
- - Execution Schedule
- summary: Update an execution schedule
- description: Update details of an execution schedule
- operationId: execution_schedule.modify
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ExecutionScheduleModificationRequest'
- required: true
- responses:
- '202':
- description: The execution schedule has been modified successfully
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ExecutionScheduleModificationResponse'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- parameters:
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- - name: executionScheduleId
- in: path
- description: Execution Schedule identifier
- required: true
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- /lm/scenarios:
- get:
- tags:
- - Scenario
- summary: Get list of scenarios
- description: Retrieve a list of all available scenarios.
- operationId: scenario.query
- responses:
- '200':
- description: A list of scenarios
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ScenarioList'
- parameters:
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- /lm/scenarios/{scenarioId}:
- get:
- tags:
- - Scenario
- summary: Get scenario by id
- description: Retrieve details for a scenario specified by scenarioId.
- operationId: scenario.get
- responses:
- '200':
- description: A scenario
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/Scenario'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- parameters:
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- - name: scenarioId
- in: path
- description: Scenario identifier
- required: true
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- /lm/scenarios/{scenarioId}/executables:
- get:
- tags:
- - Executable
- summary: Get list of executables
- description: |
- Retrieve a list of executables for a scenario. Filter by version ID, if required.
- operationId: executable.query
- parameters:
- - name: versionId
- in: query
- description: Version ID, if defined - returns the specified version
- required: false
- schema:
- type: string
- responses:
- '200':
- description: A list of executables
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ExecutableList'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- parameters:
- - name: scenarioId
- in: path
- description: Scenario identifier
- required: true
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- /lm/scenarios/{scenarioId}/executables/{executableId}:
- get:
- tags:
- - Executable
- summary: Get details about specific executable
- description: |
- Retrieve details about an executable identified by executableId belonging
- to a scenario identified by scenarioId.
- operationId: executable.get
- responses:
- '200':
- description: An Executable
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/Executable'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- parameters:
- - name: scenarioId
- in: path
- description: Scenario identifier
- required: true
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: executableId
- in: path
- description: Executable identifier
- required: true
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- /lm/scenarios/{scenarioId}/versions:
- get:
- tags:
- - Scenario
- summary: Get list of versions for scenario
- description: |
- Retrieve a list of scenario versions based on the versions of executables
- available within that scenario.
- operationId: scenario.query_versions
- responses:
- '200':
- description: A list of versions for the scenario
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/VersionList'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- parameters:
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- - name: scenarioId
- in: path
- description: Scenario identifier
- required: true
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: labelSelector
- in: query
- description: |
- filter by labels. Pass in expressions in the form of "key=value" or "key!=value" separated by commas and the result will be filtered to only those resources that have labels that match all provided expressions (i.e. logical AND)
- required: false
- style: form
- explode: false
- schema:
- minItems: 1
- type: array
- items:
- maxLength: 5000
- pattern: ^ext\.ai\.sap\.com\/[\w\.-]+!?=[^ =,]+$
- type: string
- example: ext.ai.sap.com/key1=value1,ext.ai.sap.com/key2!=value2
- /lm/artifacts/$count:
- get:
- tags:
- - Artifact
- summary: Get number of artifacts
- description: |
- Retrieve the number of available artifacts that match the specified filter criteria.
- Filter criteria include a scenarioId, executionId, an artifact name, artifact kind, or artifact labels.
- Search by substring of artifact name or description is also possible.
- operationId: artifact.count
- parameters:
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- - name: scenarioId
- in: query
- description: Scenario identifier
- required: false
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: executionId
- in: query
- description: Execution identifier
- required: false
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: name
- in: query
- description: Artifact name
- required: false
- schema:
- $ref: '#/components/schemas/name'
- example: inception
- - name: kind
- in: query
- description: Kind of the artifact
- required: false
- schema:
- type: string
- enum:
- - model
- - dataset
- - resultset
- - other
- example: model
- - name: $search
- in: query
- description: Generic search term to be looked for in various attributes
- required: false
- schema:
- pattern: ^[^~]{1,80}$
- type: string
- example: onfigur
- - name: searchCaseInsensitive
- in: query
- description: indicates whether the search should be case insensitive
- required: false
- schema:
- type: boolean
- default: false
- example: true
- - name: artifactLabelSelector
- in: query
- description: |
- Filter artifact by labels. Pass in expressions in the form of "key=value" or "key!=value" separated by commas and the result will be filtered to only those resources that have labels that match all provided expressions (i.e. logical AND). The maximum number of labels permitted for filtering is 10
- required: false
- style: form
- explode: false
- schema:
- maxItems: 10
- minItems: 1
- type: array
- items:
- maxLength: 5000
- pattern: ^ext\.ai\.sap\.com\/[\w\.-]+!?=[^ =,]+$
- type: string
- example: ext.ai.sap.com/key1=value1,ext.ai.sap.com/key2!=value2
- responses:
- '200':
- description: Number of artifacts
- content:
- text/plain:
- schema:
- type: integer
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- /lm/configurations/$count:
- get:
- tags:
- - Configuration
- summary: Get number of configurations
- description: |
- Retrieve the number of available configurations that match the specified filter criteria.
- Filter criteria include a scenarioId or executableIdsList. Search by substring of configuration name is also possible.
- operationId: configuration.count
- parameters:
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- - name: scenarioId
- in: query
- description: Scenario identifier
- required: false
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: $search
- in: query
- description: Generic search term to be looked for in various attributes
- required: false
- schema:
- pattern: ^[^~]{1,80}$
- type: string
- example: onfigur
- - name: searchCaseInsensitive
- in: query
- description: indicates whether the search should be case insensitive
- required: false
- schema:
- type: boolean
- default: false
- example: true
- - name: executableIds
- in: query
- description: Limit query to only these executable IDs
- style: form
- explode: false
- schema:
- maxItems: 1000
- type: array
- items:
- pattern: ^[\w.-]{4,64}$
- type: string
- responses:
- '200':
- description: Number of configurations
- content:
- text/plain:
- schema:
- type: integer
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- /lm/executions/$count:
- get:
- tags:
- - Execution
- summary: Get number of executions
- description: |
- Retrieve the number of available executions. The number can be filtered by
- scenarioId, configurationId, executableIdsList or by execution status.
- operationId: execution.count
- parameters:
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- - name: executableIds
- in: query
- description: Limit query to only these executable IDs
- style: form
- explode: false
- schema:
- maxItems: 1000
- type: array
- items:
- pattern: ^[\w.-]{4,64}$
- type: string
- - name: configurationId
- in: query
- description: Configuration identifier
- required: false
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: scenarioId
- in: query
- description: Scenario identifier
- required: false
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: executionScheduleId
- in: query
- description: Execution Schedule identifier
- required: false
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: status
- in: query
- description: Filter by status
- required: false
- schema:
- type: string
- enum:
- - PENDING
- - RUNNING
- - COMPLETED
- - DEAD
- - STOPPING
- - STOPPED
- - UNKNOWN
- example: RUNNING
- responses:
- '200':
- description: Number of executions
- content:
- text/plain:
- schema:
- type: integer
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- /lm/deployments/$count:
- get:
- tags:
- - Deployment
- summary: Get number of deployments
- description: |
- Retrieve the number of available deployments. The number can be filtered by
- scenarioId, configurationId, executableIdsList or by deployment status.
- operationId: deployment.count
- parameters:
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- - name: executableIds
- in: query
- description: Limit query to only these executable IDs
- style: form
- explode: false
- schema:
- maxItems: 1000
- type: array
- items:
- pattern: ^[\w.-]{4,64}$
- type: string
- - name: configurationId
- in: query
- description: Configuration identifier
- required: false
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: scenarioId
- in: query
- description: Scenario identifier
- required: false
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: status
- in: query
- description: Filter by status
- required: false
- schema:
- type: string
- enum:
- - PENDING
- - RUNNING
- - COMPLETED
- - DEAD
- - STOPPING
- - STOPPED
- - UNKNOWN
- example: RUNNING
- responses:
- '200':
- description: Number of deployments
- content:
- text/plain:
- schema:
- type: integer
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- /lm/executionSchedules/$count:
- get:
- tags:
- - Execution Schedule
- summary: Get number of execution schedules
- description: |
- Retrieve the number of scheduled executions. The number can be filtered by
- configurationId or executionScheduleStatus.
- operationId: execution_schedule.count
- parameters:
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- - name: configurationId
- in: query
- description: Configuration identifier
- required: false
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: status
- in: query
- description: Execution Schedule status
- required: false
- schema:
- type: string
- enum:
- - ACTIVE
- - INACTIVE
- example: ACTIVE
- responses:
- '200':
- description: Number of execution schedules
- content:
- text/plain:
- schema:
- type: integer
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- /lm/meta:
- get:
- tags:
- - Meta
- summary: Meta information about API
- description: Meta information about an implementation of AI API, describing its capabilities, limits and extensions
- operationId: meta.get
- responses:
- '200':
- description: Description of the implementation
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/Capabilities'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- /lm/metrics:
- get:
- tags:
- - Metrics
- summary: |
- Get metrics according to specified filter conditions.
- description: "Retrieve metrics, labels, or tags according to filter conditions. \nOne query parameter is mandatory, either execution ID or filter. \nUse up to 10 execution IDs in a query parameter.\n"
- operationId: metrics.find
- parameters:
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- - name: $filter
- in: query
- description: Filter parameter allows filtering of metric resource using ExecutionId(s). User can only use in, eq operators in filter expression.
- required: false
- deprecated: true
- schema:
- type: string
- example: executionId eq 'aa97b177-9383-4934-8543-0f91b7a0283a'
- - name: executionIds
- in: query
- description: executionIds parameter allows filtering of metric resource using single or multiple ExecutionId(s).
- required: false
- style: form
- explode: false
- schema:
- $ref: '#/components/schemas/StringArray'
- example: executionIds=aa97b177-9383-4934-8543-0f91b7a0283a,aa97b177-9383-4934-8543-0f91b7a0283b
- - name: $select
- in: query
- description: returns only the resources that the client explicitly requests. User can also pass * as a value for $select, which will behave same as that of not passing $select query param.
- required: false
- style: form
- explode: false
- schema:
- $ref: '#/components/schemas/metricSelectorPermissibleValues'
- examples:
- selectAll:
- value: $select=*
- selectSpecific:
- value: $select=metrics,customInfo
- responses:
- '200':
- description: List of tracking metadata, where each item includes metrics, labels, tags and customInfo. If $select query parameter is specified, each item will include only the resources specified in $select.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/GetMetricResourceList'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400_1'
- '501':
- description: Operation is not Supported.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400_1'
- delete:
- tags:
- - Metrics
- summary: Delete metrics, tags, or labels
- description: Delete metrics, tags, or labels associated with an execution.
- operationId: metrics.delete
- parameters:
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- - name: executionId
- in: query
- description: The Id of an execution
- required: true
- schema:
- $ref: '#/components/schemas/ExecutionId_2'
- responses:
- '200':
- description: Metric Resource was successfully deleted
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/DeleteMetricsResponse'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400_1'
- patch:
- tags:
- - Metrics
- summary: Create or update metrics, tags, or labels
- description: |
- Update or create metrics, tags, or labels associated with an execution.
- operationId: metrics.patch
- parameters:
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: true
- schema:
- type: string
- requestBody:
- content:
- application/merge-patch+json:
- schema:
- $ref: '#/components/schemas/MetricResource'
- required: true
- responses:
- '204':
- description: Metrics was successfully updated/created
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400_1'
- '413':
- description: request entity is larger than limits defined by server.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400_1'
- /analytics/kpis:
- get:
- tags:
- - KPI
- summary: Get KPIs
- description: "Retrieve the number of executions, artifacts, and deployments \nfor each resource group, scenario, and executable. The columns to be returned can be specified in a query parameter.\n"
- operationId: kpi.get
- parameters:
- - name: $select
- in: query
- description: Columns to select
- required: false
- style: form
- explode: false
- schema:
- $ref: '#/components/schemas/ArrayOfColumnNames'
- responses:
- '200':
- description: KPIs
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ResultSet'
- examples:
- example-1:
- value:
- header:
- - ResourceGroup
- - Executions
- - Artifacts
- - Deployments
- rows:
- - - 00112233-4455-6677-8899-aabbccddeeff
- - 30
- - 30
- - 3
- '400':
- description: Invalid request
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- '429':
- description: Too many requests
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400'
- /lm/dataset/files/{path}:
- get:
- tags:
- - File
- summary: Download file
- description: Endpoint for downloading file. The path must point to an individual file.
- operationId: file.download
- responses:
- '200':
- description: OK
- headers:
- X-Content-Type-Options:
- description: as per SEC-228 value should always be "nosniff"
- required: true
- schema:
- type: string
- Content-Security-Policy:
- description: as per SEC-228 value should always be "default-src 'none'; sandbox"
- required: true
- schema:
- type: string
- Content-Disposition:
- description: as per SEC-228 value should always be "attachment"
- required: true
- schema:
- type: string
- content:
- application/octet-stream:
- schema:
- type: string
- format: binary
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400_2'
- example:
- error:
- code: '03021655'
- message: Bad request encountered. Please try again with possible-solution-here.
- target: /url/path
- requestId: 9832bf934f3743v3948v3
- details:
- - code: '01041211'
- message: Optional nested error message.
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400_2'
- example:
- error:
- code: '03021655'
- message: The resource you requested was not found. Please try again with possible-solution-here.
- target: /url/path
- requestId: 9832bf934f3743v3948v3
- details:
- - code: '01041211'
- message: Optional nested error message.
- put:
- tags:
- - File
- summary: Upload file (size <= 100Mb)
- description: "Endpoint for uploading file. The maximum file size depends on the actual implementation \nbut must not exceed 100MB. The actual file size limit can be obtained by querying \nthe AI API Runtime Capabilities Endpoint and checking the limits in the section of the `fileUpload` extension.\n\nPath cannot be a prefix, it must be a path to an object.\nClients may group the objects in any manner they choose by specifying path prefixes.\n\nAllowed mime-types will be decided by the implementation.\nContent-Type header can be set to \"application/octet-stream\" but the implementation is responsible \nfor detecting the actual mime type and checking against the allowed list of mime types. \nFor security reasons, implementations cannot trust the mime type sent by the client.\n\nExample URLs: \n/files/dar/schemas/schema.json \n/files/icr/datasets/training/20201001/20201001-01.csv \n/files/icr/datasets/training/20201001/20201001-02.csv \n/files/mask-detection/training/mask-detection-20210301.tar.gz"
- operationId: file.upload
- parameters:
- - name: overwrite
- in: query
- description: If true, then file is overwritten. Default is false.
- required: false
- schema:
- type: boolean
- requestBody:
- description: Body of the file upload request
- content:
- '*/*':
- schema:
- type: string
- responses:
- '201':
- description: Created
- headers:
- Location:
- description: URL of the newly created file. This URL can be passed on to the artifact API to register this file.
- schema:
- $ref: '#/components/schemas/Url'
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/FileCreationResponse'
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400_2'
- example:
- error:
- code: '03021655'
- message: Bad request encountered. Please try again with possible-solution-here.
- target: /url/path
- requestId: 9832bf934f3743v3948v3
- details:
- - code: '01041211'
- message: Optional nested error message.
- '409':
- description: The specified file already exists and cannot be overwritten.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400_2'
- example:
- error:
- code: '03021655'
- message: The specified file already exists and cannot be overwritten. Please try again with possible-solution-here.
- target: /url/path
- requestId: 9832bf934f3743v3948v3
- details:
- - code: '01041211'
- message: Optional nested error message.
- '413':
- description: The file size exceeds the supported limit.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400_2'
- example:
- error:
- code: '03021655'
- message: The file size exceeds the supported limit.
- target: /url/path
- requestId: 9832bf934f3743v3948v3
- details:
- - code: '01041211'
- message: Optional nested error message.
- delete:
- tags:
- - File
- summary: Delete file
- description: Delete the file specified by the path parameter.
- operationId: file.delete
- responses:
- '204':
- description: The request was processed successfully.
- '400':
- description: The specification of the resource was incorrect
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400_2'
- example:
- error:
- code: '03021655'
- message: Bad request encountered. Please try again with possible-solution-here.
- target: /url/path
- requestId: 9832bf934f3743v3948v3
- details:
- - code: '01041211'
- message: Optional nested error message.
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/inline_response_400_2'
- example:
- error:
- code: '03021655'
- message: The resource you requested was not found. Please try again with possible-solution-here.
- target: /url/path
- requestId: 9832bf934f3743v3948v3
- details:
- - code: '01041211'
- message: Optional nested error message.
- parameters:
- - name: path
- in: path
- description: path relative to the object store root URL in the secret
- required: true
- schema:
- maxLength: 1024
- pattern: ^(([\w.-]+):([\w.-]+)|([\w.-]+))(/([\w./-]+[\w.-]+)?)?$
- type: string
- format: path
- - name: AI-Resource-Group
- in: header
- description: Specify a resource group id
- required: false
- schema:
- type: string
- /admin/objectStoreSecrets:
- get:
- tags:
- - Object Store Secret
- summary: Get a list of metadata of available secrets.
- description: |
- Retrieve a list of metadata of the stored secrets.
- operationId: kubesubmit.v4.object_store_secrets.query
- parameters:
- - name: $top
- in: query
- description: Number of results to display
- required: false
- schema:
- minimum: 0
- type: integer
- example: 10
- - name: $skip
- in: query
- description: Number of results to be skipped from the ordered list of results
- required: false
- schema:
- minimum: 0
- type: integer
- example: 10
- - name: $count
- in: query
- description: When the $count field is set to false, the response contains a count of the items present in the response. When the $count field is set to true, the response contains a count of all the items present on the server, and not just the ones in the response. When the $count field is not passed, it is false by default.
- required: false
- schema:
- type: boolean
- example: true
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- - name: AI-Resource-Group
- in: header
- description: Specify an existing resource group id to use. Uses "default" if value not provided.
- required: false
- schema:
- type: string
- default: default
- responses:
- '200':
- description: The request was successful and the requested metadata for the secret will be returned. This includes a list of attributes of the stored secret like - creationTimestamp, namespace etc. The secret's data field is not returned.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/objectStoreSecretStatusResponse'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- post:
- tags:
- - Object Store Secret
- summary: Create a secret
- description: |
- Create a secret based on the configuration in the request body
- operationId: kubesubmit.v4.object_store_secrets.create
- parameters:
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- - name: AI-Resource-Group
- in: header
- description: Specify an existing resource group id to use. Uses "default" if value not provided.
- required: false
- schema:
- type: string
- default: default
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/objectStoreSecretWithSensitiveDataRequestForPostCall'
- required: true
- responses:
- '202':
- description: |
- The request to create a k8s secret based on the given configuration has been accepted.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/objectStoreSecretCreationResponse'
- '400':
- description: |
- One of the following failure cases has occurred:
- Neither JSON nor YAML was able to be parsed.
- The request was invalidly formatted
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- /admin/objectStoreSecrets/{objectStoreName}:
- get:
- tags:
- - Object Store Secret
- summary: Returns the of metadata of secrets which match the query parameter.
- description: "This retrieves the metadata of the stored secret which match the parameter objectStoreName. \nThe fetched secret is constructed like objectStoreName-object-store-secret \nThe base64 encoded field for the stored secret is not returned.\n"
- operationId: kubesubmit.v4.object_store_secrets.get
- responses:
- '200':
- description: The request was processed successfully and the metadata of the of stored secrets wil be returned.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/objectStoreSecretStatus'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- delete:
- tags:
- - Object Store Secret
- summary: Delete object store secret
- description: Delete a secret with the name of objectStoreName if it exists.
- operationId: kubesubmit.v4.object_store_secrets.delete
- responses:
- '202':
- description: The request to delete the secret has been accepted.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/objectStoreSecretDeletionResponse'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- patch:
- tags:
- - Object Store Secret
- summary: Update object store secret
- description: |
- Update a secret with name of objectStoreName if it exists.
- operationId: kubesubmit.v4.object_store_secrets.patch
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/objectStoreSecretWithSensitiveDataRequest'
- required: true
- responses:
- '202':
- description: |
- The request to update the secret based on the given configuration has been accepted.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/objectStoreSecretModificationResponse'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- parameters:
- - name: objectStoreName
- in: path
- description: Name of the object store for the secret.
- required: true
- schema:
- pattern: ^[a-zA-Z0-9\.\-_]+$
- type: string
- example: My_objectStore
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- - name: AI-Resource-Group
- in: header
- description: Specify an existing resource group id to use. Uses "default" if value not provided.
- required: false
- schema:
- type: string
- default: default
- /admin/secrets:
- get:
- tags:
- - Secret
- summary: Lists all secrets corresponding to tenant
- description: Lists all secrets corresponding to tenant. This retrieves metadata only, not the secret data itself.
- operationId: kubesubmit.v4.generic_secrets.get
- parameters:
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- - name: $top
- in: query
- description: Number of results to display
- required: false
- schema:
- minimum: 0
- type: integer
- example: 10
- - name: $skip
- in: query
- description: Number of results to be skipped from the ordered list of results
- required: false
- schema:
- minimum: 0
- type: integer
- example: 10
- - name: $count
- in: query
- description: When the $count field is set to false, the response contains a count of the items present in the response. When the $count field is set to true, the response contains a count of all the items present on the server, and not just the ones in the response. When the $count field is not passed, it is false by default.
- required: false
- schema:
- type: boolean
- example: true
- - name: AI-Resource-Group
- in: header
- description: Specify an existing resource group id to use
- required: false
- schema:
- type: string
- - name: AI-Tenant-Scope
- in: header
- description: Specify whether the main tenant scope is to be used
- required: false
- schema:
- type: boolean
- example: true
- responses:
- '200':
- description: The secrets were fetched
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ListGenericSecretsResponse'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- post:
- tags:
- - Secret
- summary: Create a new generic secret
- description: Create a new generic secret in the corresponding resource group or at main tenant level.
- operationId: kubesubmit.v4.generic_secrets.create
- parameters:
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- - name: AI-Resource-Group
- in: header
- description: Specify an existing resource group id to use
- required: false
- schema:
- type: string
- - name: AI-Tenant-Scope
- in: header
- description: Specify whether the main tenant scope is to be used
- required: false
- schema:
- type: boolean
- example: true
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/GenericSecretPostBody'
- required: true
- responses:
- '200':
- description: Secret has been created
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/GenericSecretDataResponse'
- example:
- message: secret has been created
- name: my-generic-secret
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- /admin/secrets/{secretName}:
- delete:
- tags:
- - Secret
- summary: Deletes the secret
- description: Deletes the secret from provided resource group namespace
- operationId: kubesubmit.v4.generic_secrets.delete
- responses:
- '200':
- description: The secret has been removed
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- patch:
- tags:
- - Secret
- summary: Update secret credentials
- description: Update secret credentials. Replace secret data with the provided data.
- operationId: kubesubmit.v4.generic_secrets.update
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/GenericSecretPatchBody'
- required: true
- responses:
- '200':
- description: The secret has been updated
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/GenericSecretDataResponse'
- example:
- message: The secret has been modified
- name: my-generic-secret
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- parameters:
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- - name: secretName
- in: path
- required: true
- schema:
- maxLength: 252
- minLength: 1
- pattern: ^[a-z0-9\-\.]+$
- type: string
- - name: AI-Resource-Group
- in: header
- description: Specify an existing resource group id to use
- required: false
- schema:
- type: string
- - name: AI-Tenant-Scope
- in: header
- description: Specify whether the main tenant scope is to be used
- required: false
- schema:
- type: boolean
- example: true
- /admin/resourceGroups:
- get:
- tags:
- - Resource Group
- summary: Gets all resource groups of a given tenant
- description: |
- Retrieve a list of resource groups for a given tenant.
- operationId: kubesubmit.v4.resourcegroups.get_all
- parameters:
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- - name: $top
- in: query
- description: Number of results to display
- required: false
- schema:
- minimum: 0
- type: integer
- example: 10
- - name: $skip
- in: query
- description: Number of results to be skipped from the ordered list of results
- required: false
- schema:
- minimum: 0
- type: integer
- example: 10
- - name: $count
- in: query
- description: When the $count field is set to false, the response contains a count of the items present in the response. When the $count field is set to true, the response contains a count of all the items present on the server, and not just the ones in the response. When the $count field is not passed, it is false by default.
- required: false
- schema:
- type: boolean
- example: true
- - name: Prefer
- in: header
- description: |
-
One can use the HTTP Prefer header to configure the "maxpagesize" of this endpoint. "maxpagesize" is the maximum number of resourcegroups to return for a request to this endpoint. If more resourcegroups exist, the response will include a "Link" HTTP header. This header will include the URL for getting the next batch of resourcegroups.
-
The "maxpagesize" preference and the "continueToken" parameter together enable splitting a large list of resourcegroups to small chunks. This feature can help to reduce the response time of a single list-resourcegroup request when the client has a large number resourcegroups in the system.
-
By default, the "maxpagesize" is not set, which means retrieving all resourcegroups in a single request.
-
Setting a maxpagesize may return fewer than the requested amount of resourcegroups (up to zero) in the event all requested resourcegroups are filtered out. The client should only use the presence of the Link header in the response to determine whether more resourcegroups are available. If "maxpagesize" is specified and the response does not include a Link header, the client may assume that no more resourcegroups are available.
- required: false
- schema:
- type: string
- - name: continueToken
- in: query
- description: |
-
A token for getting more resourcegroups from the service. It is encoded in the URL returned via a "Link" HTTP header of a response of this endpoint if the original request specified "maxpagesize" in a "Prefer" HTTP header and the number of available resourcegroups is larger than the number specified by "maxpagesize". Do NOT use the "continueToken" parameter in other scenarios.
-
The server may reject a continue token that it does not recognize. If the specified continue token is no longer valid whether due to expiration (generally five to fifteen minutes) or a configuration change on the server, the server will respond with a 410 ResourceExpired error. In this case, the client must restart their list request without the continue token.
- required: false
- schema:
- type: string
- - name: labelSelector
- in: query
- description: |
- filter by labels. Pass in pairs in the form of 'key=value' and / or 'key!=value' separated by commas and the result will be filtered to only those scenarios containing and / or not containing all given key/values
- required: false
- style: form
- explode: false
- schema:
- minItems: 1
- type: array
- items:
- pattern: ^[^ =,!]+!?=[^ =,!]+$
- type: string
- example: key1=value1,key2!=value2
- responses:
- '200':
- description: A list of resource groups
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ResourceGroupList'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- post:
- tags:
- - Resource Group
- summary: Creates a resource group
- description: |
- Create resource group to a given main tenant. The length of resource group id must be between 3 and 253.
- operationId: kubesubmit.v4.resourcegroups.create
- parameters:
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ResourceGroupsPostRequest'
- required: true
- responses:
- '202':
- description: A resource group base object
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ResourceGroupBase'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- /admin/resourceGroups/{resourceGroupId}:
- get:
- tags:
- - Resource Group
- summary: Get a resource group
- description: |
- Get a resource group of a given main tenant.
- operationId: kubesubmit.v4.resourcegroups.get
- responses:
- '200':
- description: A resource group object
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ResourceGroup'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- delete:
- tags:
- - Resource Group
- summary: Delete a resource group
- description: |
- Delete a resource group of a given main tenant.
- operationId: kubesubmit.v4.resourcegroups.delete
- responses:
- '202':
- description: The deletion of the resource group has been scheduled successfully
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ResourceGroupDeletionResponse'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- patch:
- tags:
- - Resource Group
- summary: Change some characteristics of the resource group
- description: |
- Replace some characteristics of the resource group, for instance labels.
- operationId: kubesubmit.v4.resourcegroups.patch
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ResourceGroupPatchRequest'
- required: true
- responses:
- '202':
- description: Resource group changes accepted.
- headers:
- Location:
- description: URL of the scheduled deployment
- schema:
- $ref: '#/components/schemas/Url'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- parameters:
- - name: resourceGroupId
- in: path
- description: Resource group identifier
- required: true
- schema:
- maxLength: 253
- minLength: 3
- pattern: ^[a-zA-Z0-9][a-zA-Z0-9.-]{1,251}[a-zA-Z0-9]$
- type: string
- example: my-test-rg
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- /admin/resources/nodes:
- get:
- tags:
- - Resource
- summary: Get node request status corresponding to tenant
- description: Lists all hot spare nodes, used nodes and total nodes corresponding to tenant.
- operationId: kubesubmit.v4.resources.get
- parameters:
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- responses:
- '200':
- description: Reserved resource status were fetched
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ResourceGetResponse'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- patch:
- tags:
- - Resource
- summary: Set reserved resources corresponding to tenant
- description: Set hot spare nodes corresponding to tenant at main tenant level.
- operationId: kubesubmit.v4.resources.patch
- parameters:
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ResourcePatchBody'
- required: true
- responses:
- '200':
- description: Reserved resource has been set.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ResourcePatchResponse'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- /lm/executions/{executionId}/logs:
- get:
- tags:
- - Execution
- summary: Get logs of specific execution
- description: Retrieve logs of an execution for getting insight into the execution results or failures.
- operationId: kubesubmit.v4.executions.get_logs
- parameters:
- - name: executionId
- in: path
- description: Execution identifier
- required: true
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- - name: $top
- in: query
- description: The max number of entries to return. Defaults to 1000. Limited to 5000 max.
- required: false
- schema:
- maximum: 5000
- minimum: 1
- type: integer
- default: 1000
- examples:
- min:
- summary: Min number of entries to return
- value: 1
- max:
- summary: Max number of entries to return
- value: 5000
- default:
- summary: default number of entries to return
- value: 1000
- - name: start
- in: query
- description: The start time for the query as a RFC 3339 datetime format. Defaults to one hour ago. + in timezone need to be encoded to %2B.
- required: false
- schema:
- type: string
- format: date-time
- examples:
- zulu:
- summary: Datetime example use Z as timezone
- value: '2021-05-19T00:00:14.347000Z'
- utc:
- summary: Datetime example use +00:00 as timezone, where + is encoded to %2B
- value: 2021-05-19T00:00:14.347%2B00:00
- local-plus:
- summary: Datetime example use +08:00 as timezone, where + is encoded to %2B
- value: 2021-05-19T08:00:14.347%2B08:00
- local-minus:
- summary: Datetime example use -08:00 as timezone
- value: '2021-05-18T16:00:14.347000-08:00'
- - name: end
- in: query
- description: The end time for the query as a RFC 3339 datetime format. Defaults to now. + in timezone need to be encoded to %2B.
- required: false
- schema:
- type: string
- format: date-time
- examples:
- zulu:
- summary: Datetime example use Z as timezone
- value: '2021-05-19T01:00:14.347000Z'
- utc:
- summary: Datetime example use +00:00 as timezone, where + is encoded to %2B
- value: 2021-05-19T01:00:14.347%2B00:00
- local-plus:
- summary: Datetime example use +08:00 as timezone, where + is encoded to %2B
- value: 2021-05-19T09:00:14.347%2B08:00
- local-minus:
- summary: Datetime example use -08:00 as timezone
- value: '2021-05-18T17:00:14.347000-08:00'
- - name: $order
- in: query
- description: |
- Determines the sort order. Supported values are asc or desc. Defaults to asc. Sort order:
- * `asc` - Ascending, earliest in the order will appear at the top of the list
- * `desc` - Descending, last in the order will appear at the top of the list
- required: false
- schema:
- type: string
- enum:
- - asc
- - desc
- examples:
- asc:
- summary: Sort the results in ascending order
- value: asc
- desc:
- summary: Sort the results in descending order
- value: desc
- responses:
- '200':
- description: The query was processed successfully and logs of the requested execution will be returned.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/LogCommonResponse'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '401':
- description: Lacks valid authentication credentials for the target resource.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- /lm/deployments/{deploymentId}/logs:
- get:
- tags:
- - Deployment
- summary: Get logs of specific deployment
- description: Retrieve logs of a deployment for getting insight into the deployment results or failures.
- operationId: kubesubmit.v4.deployments.get_logs
- parameters:
- - name: deploymentId
- in: path
- description: Deployment identifier
- required: true
- schema:
- pattern: ^[\w.-]{4,64}$
- type: string
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- - name: $top
- in: query
- description: The max number of entries to return. Defaults to 1000. Limited to 5000 max.
- required: false
- schema:
- maximum: 5000
- minimum: 1
- type: integer
- default: 1000
- examples:
- min:
- summary: Min number of entries to return
- value: 1
- max:
- summary: Max number of entries to return
- value: 5000
- default:
- summary: default number of entries to return
- value: 1000
- - name: start
- in: query
- description: The start time for the query as a RFC 3339 datetime format. Defaults to one hour ago. + in timezone need to be encoded to %2B.
- required: false
- schema:
- type: string
- format: date-time
- examples:
- zulu:
- summary: Datetime example use Z as timezone
- value: '2021-05-19T00:00:14.347000Z'
- utc:
- summary: Datetime example use +00:00 as timezone, where + is encoded to %2B
- value: 2021-05-19T00:00:14.347%2B00:00
- local-plus:
- summary: Datetime example use +08:00 as timezone, where + is encoded to %2B
- value: 2021-05-19T08:00:14.347%2B08:00
- local-minus:
- summary: Datetime example use -08:00 as timezone
- value: '2021-05-18T16:00:14.347000-08:00'
- - name: end
- in: query
- description: The end time for the query as a RFC 3339 datetime format. Defaults to now. + in timezone need to be encoded to %2B.
- required: false
- schema:
- type: string
- format: date-time
- examples:
- zulu:
- summary: Datetime example use Z as timezone
- value: '2021-05-19T01:00:14.347000Z'
- utc:
- summary: Datetime example use +00:00 as timezone, where + is encoded to %2B
- value: 2021-05-19T01:00:14.347%2B00:00
- local-plus:
- summary: Datetime example use +08:00 as timezone, where + is encoded to %2B
- value: 2021-05-19T09:00:14.347%2B08:00
- local-minus:
- summary: Datetime example use -08:00 as timezone
- value: '2021-05-18T17:00:14.347000-08:00'
- - name: $order
- in: query
- description: |
- Determines the sort order. Supported values are asc or desc. Defaults to asc. Sort order:
- * `asc` - Ascending, earliest in the order will appear at the top of the list
- * `desc` - Descending, last in the order will appear at the top of the list
- required: false
- schema:
- type: string
- enum:
- - asc
- - desc
- examples:
- asc:
- summary: Sort the results in ascending order
- value: asc
- desc:
- summary: Sort the results in descending order
- value: desc
- responses:
- '200':
- description: The query was processed successfully and logs of the requested deployment will be returned.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/LogCommonResponse'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '401':
- description: Lacks valid authentication credentials for the target resource.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- /admin/repositories:
- get:
- tags:
- - Repository
- summary: List all GitOps repositories for a tenant
- description: Retrieve a list of all GitOps repositories for a tenant.
- operationId: kubesubmit.v4.repositories.get_all
- parameters:
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- - name: $top
- in: query
- description: Number of results to display
- required: false
- schema:
- minimum: 0
- type: integer
- example: 10
- - name: $skip
- in: query
- description: Number of results to be skipped from the ordered list of results
- required: false
- schema:
- minimum: 0
- type: integer
- example: 10
- - name: $count
- in: query
- description: When the $count field is set to false, the response contains a count of the items present in the response. When the $count field is set to true, the response contains a count of all the items present on the server, and not just the ones in the response. When the $count field is not passed, it is false by default.
- required: false
- schema:
- type: boolean
- example: true
- responses:
- '200':
- description: Returns a list of all GitOps repositories for the tenant.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArgoCDRepositoryDataResponse'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- post:
- tags:
- - Repository
- summary: On-board a new GitOps repository
- description: On-board a new GitOps repository as specified in the content payload
- operationId: kubesubmit.v4.repositories.create
- parameters:
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArgoCDRepositoryData'
- required: true
- responses:
- '200':
- description: The repository has been on-boarded
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArgoCDRepositoryCreationResponse'
- '409':
- description: The provided repository already exists
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- /admin/repositories/{repositoryName}:
- get:
- tags:
- - Repository
- summary: Get the access details for a repository
- description: Retrieve the access details for a repository if it exists.
- operationId: kubesubmit.v4.repositories.get
- responses:
- '200':
- description: The repository details have been found and returned.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArgoCDRepositoryDetails'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- delete:
- tags:
- - Repository
- summary: Off-board a repository.
- description: Remove a repository from GitOps.
- operationId: kubesubmit.v4.repositories.delete
- responses:
- '200':
- description: The repository has been off-boarded successfully.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArgoCDRepositoryDeletionResponse'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- patch:
- tags:
- - Repository
- summary: Update the repository credentials.
- description: |
- Update the referenced repository credentials to synchronize a repository.
- operationId: kubesubmit.v4.repositories.update
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArgoCDRepositoryCredentials'
- required: true
- responses:
- '200':
- description: The repository credentials have been updated and will eventually be synced.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArgoCDRepositoryModificationResponse'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- parameters:
- - name: repositoryName
- in: path
- description: Name of the repository
- required: true
- schema:
- maxLength: 51
- minLength: 1
- pattern: ^[a-z0-9\-]+$
- type: string
- example: tenant-application
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- /admin/applications:
- get:
- tags:
- - Application
- summary: Return all applications
- description: |
- Return all Argo CD application data objects.
- operationId: kubesubmit.v4.applications.get_all
- parameters:
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- - name: $top
- in: query
- description: Number of results to display
- required: false
- schema:
- minimum: 0
- type: integer
- example: 10
- - name: $skip
- in: query
- description: Number of results to be skipped from the ordered list of results
- required: false
- schema:
- minimum: 0
- type: integer
- example: 10
- - name: $count
- in: query
- description: When the $count field is set to false, the response contains a count of the items present in the response. When the $count field is set to true, the response contains a count of all the items present on the server, and not just the ones in the response. When the $count field is not passed, it is false by default.
- required: false
- schema:
- type: boolean
- example: true
- responses:
- '200':
- description: All applications have been found and returned.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/AllArgoCDApplicationData'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- post:
- tags:
- - Application
- summary: Create an application
- description: |
- Create an ArgoCD application to synchronise a repository.
- operationId: kubesubmit.v4.applications.create
- parameters:
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/body'
- required: true
- responses:
- '200':
- description: The ArgoCD application has been created and will be eventually synchronised with the repository.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArgoCDApplicationCreationResponse'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- /admin/applications/{applicationName}/status:
- get:
- tags:
- - Application
- summary: Returns the ArgoCD application status
- description: |
- Returns the ArgoCD application health and sync status.
- operationId: kubesubmit.v4.applications.get_status
- responses:
- '200':
- description: The application status has been found and returned.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArgoCDApplicationStatus'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- parameters:
- - name: applicationName
- in: path
- description: Name of the ArgoCD application
- required: true
- schema:
- maxLength: 54
- minLength: 3
- pattern: ^[a-z0-9\-]+$
- type: string
- example: tenant-application
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- /admin/applications/{applicationName}:
- get:
- tags:
- - Application
- summary: Get ArgoCD application
- description: |
- Retrieve the ArgoCD application details.
- operationId: kubesubmit.v4.applications.get
- responses:
- '200':
- description: The application has been found and returned.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArgoCDApplicationData'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- delete:
- tags:
- - Application
- summary: Delete application
- description: Delete an ArgoCD application
- operationId: kubesubmit.v4.applications.delete
- responses:
- '200':
- description: The argoCD application has been deleted successfully.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArgoCDApplicationDeletionResponse'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- patch:
- tags:
- - Application
- summary: Update the ArgoCD application.
- description: |
- Update the referenced ArgoCD application to synchronize the repository.
- operationId: kubesubmit.v4.applications.update
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArgoCDApplicationBaseData'
- required: true
- responses:
- '200':
- description: The ArgoCD application has been created and will be eventually synchronised with the repository.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArgoCDApplicationModificationResponse'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- parameters:
- - name: applicationName
- in: path
- description: Name of the ArgoCD application
- required: true
- schema:
- maxLength: 54
- minLength: 3
- pattern: ^[a-z0-9\-]+$
- type: string
- example: tenant-application
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- /admin/applications/{applicationName}/refresh:
- post:
- tags:
- - Application
- summary: Makes ArgoDC refresh the specified application
- description: |
- Schedules a refresh of the specified application that will be picked up by ArgoCD asynchronously
- operationId: kubesubmit.v4.applications.refresh
- responses:
- '202':
- description: A refresh of the application has been scheduled
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ArgoCDApplicationRefreshResponse'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- parameters:
- - name: applicationName
- in: path
- description: Name of the ArgoCD application
- required: true
- schema:
- maxLength: 54
- minLength: 3
- pattern: ^[a-z0-9\-]+$
- type: string
- example: tenant-application
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- /admin/dockerRegistrySecrets/{dockerRegistryName}:
- get:
- tags:
- - Docker Registry Secret
- summary: Returns the of metadata of secrets which match the query parameter.
- description: |
- Retrieve the stored secret metadata which matches the parameter dockerRegistryName. The base64 encoded field for the stored secret is not returned.
- operationId: kubesubmit.v4.docker_registry_secrets.get
- responses:
- '200':
- description: The request was processed successfully and the metadata of the of stored secrets wil be returned.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/dockerRegistrySecretStatus'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- delete:
- tags:
- - Docker Registry Secret
- summary: Delete docker registry secret
- description: Delete a secret with the name of dockerRegistryName if it exists.
- operationId: kubesubmit.v4.docker_registry_secrets.delete
- responses:
- '202':
- description: The request to delete the secret has been accepted.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/dockerRegistrySecretDeletionResponse'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- patch:
- tags:
- - Docker Registry Secret
- summary: Update a secret
- description: |
- Update a secret with name of dockerRegistryName if it exists.
- operationId: kubesubmit.v4.docker_registry_secrets.patch
- requestBody:
- content:
- application/merge-patch+json:
- schema:
- $ref: '#/components/schemas/dockerRegistrySecretWithSensitiveDataRequest'
- required: true
- responses:
- '202':
- description: |
- The request to update the secret based on the the given configuration has been accepted.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/dockerRegistrySecretModificationResponse'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- parameters:
- - name: dockerRegistryName
- in: path
- description: Name of the docker Registry store for the secret.
- required: true
- schema:
- maxLength: 63
- pattern: ^[a-z0-9](?:_?[a-z0-9\.\-]+)*[a-z0-9]$
- type: string
- example: mydockeregistry
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- /admin/dockerRegistrySecrets:
- get:
- tags:
- - Docker Registry Secret
- summary: Get a list of metadata of secrets.
- description: |
- Retrieve a list of metadata of the stored secrets
- operationId: kubesubmit.v4.docker_registry_secrets.query
- parameters:
- - name: $top
- in: query
- description: Number of results to display
- required: false
- schema:
- minimum: 0
- type: integer
- example: 10
- - name: $skip
- in: query
- description: Number of results to be skipped from the ordered list of results
- required: false
- schema:
- minimum: 0
- type: integer
- example: 10
- - name: $count
- in: query
- description: When the $count field is set to false, the response contains a count of the items present in the response. When the $count field is set to true, the response contains a count of all the items present on the server, and not just the ones in the response. When the $count field is not passed, it is false by default.
- required: false
- schema:
- type: boolean
- example: true
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- responses:
- '200':
- description: The request was successful and the requested metadata for the secret will be returned. This includes a list of attributes of the stored secret like - creationTimestamp, namespace etc. The secret's data field is not returned.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/dockerRegistrySecretStatusResponse'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- post:
- tags:
- - Docker Registry Secret
- summary: Create a secret
- description: |
- Create a secret based on the configuration in the request body.
- operationId: kubesubmit.v4.docker_registry_secrets.create
- parameters:
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/body_1'
- required: true
- responses:
- '202':
- description: |
- The request to create a k8s secret based on the given configuration has been accepted.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/dockerRegistrySecretCreationResponse'
- '400':
- description: |
- One of the following failure cases has occurred:
- Neither JSON nor YAML was able to be parsed.
- The request was invalidly formatted
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- /admin/services:
- get:
- tags:
- - Service
- summary: Gets all services of a given main tenant
- description: |
- Retrieve a list of services for a given main tenant.
- operationId: kubesubmit.v4.aiservices.get_all
- parameters:
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- responses:
- '200':
- description: A list of services
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ServiceList'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- /admin/services/{ServiceName}:
- get:
- tags:
- - Service
- summary: Get a service
- description: |
- Get an service of a given main tenant.
- operationId: kubesubmit.v4.aiservices.get
- responses:
- '200':
- description: A service object
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ExtendedService'
- '400':
- description: The request was malformed and could thus not be processed.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- '404':
- description: The specified resource was not found
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- parameters:
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- - name: ServiceName
- in: path
- description: Name of the Service
- required: true
- schema:
- maxLength: 32
- minLength: 1
- pattern: ^[a-zA-Z0-9\-_]+$
- type: string
- example: cashapp
- /admin/resourceQuota/resourceGroups:
- get:
- tags:
- - Resource Quota
- summary: Get the quota for resource groups
- description: Get the details about quota and usage for resource groups
- operationId: kubesubmit.v4.resource_quota.get_resource_group_quota
- responses:
- '200':
- description: quota for resourcegroups
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/CommonResourceQuotaResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- parameters:
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- - name: quotaOnly
- in: query
- description: When being set to true, the response contains only the quota of the resource and not the quota usage.
- required: false
- schema:
- type: boolean
- example: true
- /admin/resourceQuota/executables:
- get:
- tags:
- - Resource Quota
- summary: Get the quota for executables
- description: Get the details about quota and usage for executables
- operationId: kubesubmit.v4.resource_quota.get_executable_quota
- responses:
- '200':
- description: quota for executable
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ExecutableResourceQuotaResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- parameters:
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- - name: quotaOnly
- in: query
- description: When being set to true, the response contains only the quota of the resource and not the quota usage.
- required: false
- schema:
- type: boolean
- example: true
- /admin/resourceQuota/applications:
- get:
- tags:
- - Resource Quota
- summary: Get the quota for applications
- description: Get the details about quota and usage for applications
- operationId: kubesubmit.v4.resource_quota.get_application_quota
- responses:
- '200':
- description: quota for applications
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/CommonResourceQuotaResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- parameters:
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- - name: quotaOnly
- in: query
- description: When being set to true, the response contains only the quota of the resource and not the quota usage.
- required: false
- schema:
- type: boolean
- example: true
- /admin/resourceQuota/repositories:
- get:
- tags:
- - Resource Quota
- summary: Get the quota for repositories
- description: Get the details about quota and usage for repositories
- operationId: kubesubmit.v4.resource_quota.get_repository_quota
- responses:
- '200':
- description: quota for repositories
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/CommonResourceQuotaResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- parameters:
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- - name: quotaOnly
- in: query
- description: When being set to true, the response contains only the quota of the resource and not the quota usage.
- required: false
- schema:
- type: boolean
- example: true
- /admin/resourceQuota/secrets:
- get:
- tags:
- - Resource Quota
- summary: Get the quota for tenant-level generic secrets
- description: Get the details about quota and usage for tenant-level generic secrets
- operationId: kubesubmit.v4.resource_quota.get_generic_secret_quota
- responses:
- '200':
- description: quota for generic secrets on the tenant level
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/CommonResourceQuotaResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- parameters:
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- - name: quotaOnly
- in: query
- description: When being set to true, the response contains only the quota of the resource and not the quota usage.
- required: false
- schema:
- type: boolean
- example: true
- /admin/resourceQuota/dockerRegistrySecrets:
- get:
- tags:
- - Resource Quota
- summary: Get the quota for docker registry secrets
- description: Get the details about quota and usage for docker registry secrets
- operationId: kubesubmit.v4.resource_quota.get_docker_registry_secret_quota
- responses:
- '200':
- description: quota for generic secrets on the tenant level
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/CommonResourceQuotaResponse'
- default:
- description: HTTP status codes 401, 403 or 500. Response body contains further details.
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ErrorResponse'
- parameters:
- - name: Authorization
- in: header
- description: Authorization bearer token containing a JWT token.
- required: false
- schema:
- type: string
- - name: quotaOnly
- in: query
- description: When being set to true, the response contains only the quota of the resource and not the quota usage.
- required: false
- schema:
- type: boolean
- example: true
-components:
- schemas:
- Url:
- type: string
- format: url
- example: https://download.example.com/test/file.bin
- ApiErrorWithId:
- required:
- - error
- - id
- type: object
- properties:
- id:
- $ref: '#/components/schemas/Id'
- error:
- $ref: '#/components/schemas/ApiError'
- ArtifactList:
- type: object
- allOf:
- - $ref: '#/components/schemas/ResourceList'
- - type: object
- properties:
- resources:
- $ref: '#/components/schemas/ArtifactArray'
- ResourceList:
- required:
- - count
- - resources
- type: object
- properties:
- count:
- type: integer
- description: Number of the resource instances in the list
- resources:
- type: array
- items:
- type: object
- ArtifactArray:
- type: array
- items:
- $ref: '#/components/schemas/Artifact'
- Artifact:
- description: Artifact
- allOf:
- - $ref: '#/components/schemas/ArtifactBaseData'
- - $ref: '#/components/schemas/ArtifactDetailData'
- - $ref: '#/components/schemas/CreationData'
- - $ref: '#/components/schemas/ModificationData'
- - $ref: '#/components/schemas/ExpandedScenario'
- ArtifactBaseData:
- allOf:
- - $ref: '#/components/schemas/Labeled'
- - required:
- - kind
- - name
- - url
- type: object
- properties:
- name:
- $ref: '#/components/schemas/ArtifactName'
- kind:
- type: string
- description: Kind of the artifact, i.e. model or dataset
- enum:
- - model
- - dataset
- - resultset
- - other
- url:
- $ref: '#/components/schemas/ArtifactUrl'
- description:
- $ref: '#/components/schemas/ArtifactDescription'
- description: |
- Base data of the artifact; this is the data that can be provided when the artifact is created; `name` and `kind` are required because they constitute important semantic filtering criteria for use in training / inference executables (`name` is a semantic handle of the artifact within a scenario and `kind` specifies the type of usage, e.g. you would only want to allow models in the model operator).
- Labeled:
- type: object
- properties:
- labels:
- $ref: '#/components/schemas/LabelList'
- LabelList:
- type: array
- description: Arbitrary labels as meta information
- items:
- $ref: '#/components/schemas/Label'
- Label:
- required:
- - key
- - value
- type: object
- properties:
- key:
- $ref: '#/components/schemas/LabelKey'
- value:
- $ref: '#/components/schemas/LabelValue'
- LabelKey:
- maxLength: 256
- pattern: ^ext\.ai\.sap\.com\/[\w\.-]+$
- type: string
- example: ext.ai.sap.com/s4hana-version
- LabelValue:
- maxLength: 5000
- type: string
- ArtifactName:
- allOf:
- - $ref: '#/components/schemas/GenericName'
- - description: Name of the artifact
- GenericName:
- allOf:
- - $ref: '#/components/schemas/GenericNaturalLanguageTerm'
- - maxLength: 256
- GenericNaturalLanguageTerm:
- pattern: ^[\w\s.!?,;:\[\](){}<>"'=+*/\\^&%@~$#|-]*$
- type: string
- ArtifactUrl:
- maxLength: 1024
- pattern: ([a-z0-9-]+):\/\/.+
- type: string
- description: |
- Reference to the location of the artifact.
- example: https://example.com/some_path
- ArtifactDescription:
- maxLength: 5000
- type: string
- description: Description of the artifact
- ArtifactDetailData:
- required:
- - id
- - scenarioId
- type: object
- properties:
- id:
- $ref: '#/components/schemas/ArtifactId'
- scenarioId:
- $ref: '#/components/schemas/ScenarioId'
- configurationId:
- $ref: '#/components/schemas/ConfigurationId'
- executionId:
- $ref: '#/components/schemas/ExecutionId'
- ArtifactId:
- allOf:
- - $ref: '#/components/schemas/Id'
- - description: ID of the artifact
- Id:
- pattern: ^[\w.-]{4,64}$
- type: string
- description: Generic ID
- example: aa97b177-9383-4934-8543-0f91a7a0283a
- ScenarioId:
- allOf:
- - $ref: '#/components/schemas/Id'
- - description: ID of the scenario
- ConfigurationId:
- allOf:
- - $ref: '#/components/schemas/Id'
- - description: ID of the configuration
- ExecutionId:
- allOf:
- - $ref: '#/components/schemas/Id'
- - description: ID of the execution
- CreationData:
- required:
- - createdAt
- type: object
- properties:
- createdAt:
- type: string
- description: Timestamp of resource creation
- format: date-time
- ModificationData:
- required:
- - modifiedAt
- type: object
- properties:
- modifiedAt:
- type: string
- description: Timestamp of latest resource modification
- format: date-time
- ExpandedScenario:
- properties:
- scenario:
- type: object
- nullable: true
- anyOf:
- - $ref: '#/components/schemas/Scenario'
- - {}
- Scenario:
- type: object
- description: |
- An ML Scenario consists of a number of executables. E.g., there can be one or several training executables, an inference (deployment) executable. An ML Scenario is versioned.
- allOf:
- - $ref: '#/components/schemas/ScenarioBaseData'
- - $ref: '#/components/schemas/ScenarioDetailData'
- - $ref: '#/components/schemas/CreationData'
- - $ref: '#/components/schemas/ModificationData'
- ScenarioBaseData:
- required:
- - name
- type: object
- properties:
- name:
- maxLength: 256
- type: string
- description: Name of the scenario
- description:
- maxLength: 5000
- type: string
- description: Description of the scenario
- labels:
- $ref: '#/components/schemas/ScenarioLabelList'
- ScenarioLabelList:
- type: array
- description: Arbitrary labels as meta information
- items:
- $ref: '#/components/schemas/ScenarioLabel'
- ScenarioLabel:
- required:
- - key
- - value
- type: object
- properties:
- key:
- $ref: '#/components/schemas/ScenarioLabelKey'
- value:
- $ref: '#/components/schemas/LabelValue'
- ScenarioLabelKey:
- maxLength: 256
- pattern: ^(scenarios|ext)\.ai\.sap\.com\/[\w\.-]+$
- type: string
- example: scenarios.ai.sap.com/s4hana-version
- ScenarioDetailData:
- required:
- - id
- type: object
- properties:
- id:
- $ref: '#/components/schemas/ScenarioId'
- ArtifactCreationResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponse'
- - required:
- - url
- type: object
- properties:
- url:
- $ref: '#/components/schemas/ArtifactUrl'
- message:
- $ref: '#/components/schemas/ArtifactCreationResponseMessage'
- CreationResponse:
- required:
- - id
- - message
- type: object
- properties:
- id:
- $ref: '#/components/schemas/Id'
- message:
- $ref: '#/components/schemas/CreationResponseMessage'
- CreationResponseMessage:
- allOf:
- - $ref: '#/components/schemas/Message'
- - example: Created
- Message:
- type: string
- description: Message
- ArtifactCreationResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: Artifact acknowledged
- ArtifactPostData:
- allOf:
- - $ref: '#/components/schemas/ArtifactBaseData'
- - required:
- - scenarioId
- type: object
- properties:
- scenarioId:
- $ref: '#/components/schemas/ScenarioId'
- ApiError:
- required:
- - code
- - message
- type: object
- properties:
- code:
- type: string
- description: Descriptive error code (not http status code)
- message:
- type: string
- description: Plaintext error description
- requestId:
- type: string
- description: ID of the individual request
- target:
- type: string
- description: Invoked URL
- details:
- type: object
- description: Optional details of the error message
- ConfigurationList:
- type: object
- allOf:
- - $ref: '#/components/schemas/ResourceList'
- - type: object
- properties:
- resources:
- type: array
- items:
- $ref: '#/components/schemas/Configuration'
- Configuration:
- allOf:
- - $ref: '#/components/schemas/ConfigurationBaseData'
- - $ref: '#/components/schemas/ConfigurationDetailData'
- - $ref: '#/components/schemas/CreationData'
- - $ref: '#/components/schemas/ExpandedScenario'
- ConfigurationBaseData:
- required:
- - executableId
- - name
- - scenarioId
- type: object
- properties:
- name:
- $ref: '#/components/schemas/ConfigurationName'
- executableId:
- $ref: '#/components/schemas/ExecutableId'
- scenarioId:
- $ref: '#/components/schemas/ScenarioId'
- parameterBindings:
- $ref: '#/components/schemas/ParameterArgumentBindingList'
- inputArtifactBindings:
- $ref: '#/components/schemas/ArtifactArgumentBindingList'
- ConfigurationName:
- allOf:
- - $ref: '#/components/schemas/GenericName'
- - description: Name of the configuration
- ExecutableId:
- allOf:
- - $ref: '#/components/schemas/Id'
- - description: ID of the executable
- ParameterArgumentBindingList:
- maxItems: 1000
- type: array
- items:
- $ref: '#/components/schemas/ParameterArgumentBinding'
- ParameterArgumentBinding:
- required:
- - key
- - value
- type: object
- properties:
- key:
- maxLength: 256
- type: string
- value:
- maxLength: 5000
- type: string
- description: |
- Required for execution
- Result of activation
- ArtifactArgumentBindingList:
- maxItems: 1000
- type: array
- items:
- $ref: '#/components/schemas/ArtifactArgumentBinding'
- ArtifactArgumentBinding:
- required:
- - artifactId
- - key
- type: object
- properties:
- key:
- maxLength: 256
- type: string
- artifactId:
- $ref: '#/components/schemas/ArtifactId'
- description: |
- Required for execution
- Result of activation
- ConfigurationDetailData:
- required:
- - id
- type: object
- properties:
- id:
- $ref: '#/components/schemas/ConfigurationId'
- ConfigurationCreationResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponse'
- - type: object
- properties:
- message:
- $ref: '#/components/schemas/ConfigurationCreationResponseMessage'
- ConfigurationCreationResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: Configuration created
- DeploymentCreationResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponse'
- - type: object
- properties:
- deploymentUrl:
- $ref: '#/components/schemas/DeploymentUrl'
- status:
- $ref: '#/components/schemas/ExecutionStatus'
- message:
- $ref: '#/components/schemas/DeploymentCreationResponseMessage'
- ttl:
- $ref: '#/components/schemas/DeploymentTimeToLive'
- DeploymentUrl:
- type: string
- description: Consumption URL of the deployment
- format: url
- ExecutionStatus:
- allOf:
- - $ref: '#/components/schemas/Status'
- - description: Execution status
- Status:
- type: string
- description: Status
- example: COMPLETED
- enum:
- - PENDING
- - RUNNING
- - COMPLETED
- - DEAD
- - STOPPING
- - STOPPED
- - UNKNOWN
- DeploymentCreationResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: Deployment scheduled
- DeploymentTimeToLive:
- pattern: ^[0-9]+[m,M,h,H,d,D]$
- type: string
- description: Time to live for a deployment. Its value can be either null or a number followed by the unit (any of following values, minutes(m|M), hours(h|H) or days(d|D))
- nullable: true
- example: 24H
- ExecutionCreationResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponse'
- - type: object
- properties:
- status:
- $ref: '#/components/schemas/ExecutionStatus'
- message:
- $ref: '#/components/schemas/ExecutionCreationResponseMessage'
- ExecutionCreationResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: Execution scheduled
- DeploymentList:
- type: object
- allOf:
- - $ref: '#/components/schemas/ResourceList'
- - type: object
- properties:
- resources:
- type: array
- items:
- $ref: '#/components/schemas/Deployment'
- Deployment:
- allOf:
- - $ref: '#/components/schemas/DeploymentDetailData'
- - $ref: '#/components/schemas/CreationData'
- - $ref: '#/components/schemas/ModificationData'
- - $ref: '#/components/schemas/StatusTransitionTime'
- DeploymentDetailData:
- required:
- - configurationId
- - id
- - status
- type: object
- properties:
- id:
- $ref: '#/components/schemas/DeploymentId'
- deploymentUrl:
- $ref: '#/components/schemas/DeploymentUrl'
- configurationId:
- $ref: '#/components/schemas/ConfigurationId'
- configurationName:
- $ref: '#/components/schemas/ConfigurationName'
- scenarioId:
- $ref: '#/components/schemas/ScenarioId'
- status:
- $ref: '#/components/schemas/DeploymentStatus'
- statusMessage:
- $ref: '#/components/schemas/DeploymentStatusMessage'
- targetStatus:
- type: string
- description: Deployment target status
- enum:
- - RUNNING
- - STOPPED
- - DELETED
- lastOperation:
- type: string
- description: Last operation applied to this deployment.
- anyOf:
- - type: string
- enum:
- - CREATE
- - UPDATE
- - DELETE
- - CASCADE-UPDATE
- - {}
- latestRunningConfigurationId:
- allOf:
- - $ref: '#/components/schemas/ConfigurationId'
- - description: configurationId that was running before a PATCH operation has modified the configurationId of the deployment. This can be used for a manual rollback in case the new configurationId results in a DEAD deployment
- ttl:
- $ref: '#/components/schemas/DeploymentTimeToLive'
- details:
- $ref: '#/components/schemas/DeploymentDetails'
- description: Detailed data about a deployment
- DeploymentId:
- allOf:
- - $ref: '#/components/schemas/Id'
- - description: ID of the deployment
- DeploymentStatus:
- allOf:
- - $ref: '#/components/schemas/Status'
- - description: Deployment status
- DeploymentStatusMessage:
- allOf:
- - $ref: '#/components/schemas/Message'
- - description: Deployment status message
- - maxLength: 256
- DeploymentDetails:
- type: object
- properties:
- scaling:
- $ref: '#/components/schemas/ScalingDetails'
- resources:
- $ref: '#/components/schemas/ResourcesDetails'
- description: |
- Detail information about a deployment (including predefined sections: `scaling` and `resources`).
- JSON String representation of this object is limited to 5000 characters
- ScalingDetails:
- type: object
- properties:
- backendDetails:
- $ref: '#/components/schemas/BackendDetails'
- description: Scaling details of a deployment
- example:
- backendDetails:
- predictor:
- minReplicas: 0
- maxReplicas: 2
- runningReplicas: 1
- BackendDetails:
- type: object
- description: backend-specific details of the deployment
- ResourcesDetails:
- type: object
- properties:
- backendDetails:
- $ref: '#/components/schemas/BackendDetails'
- description: Resources details of a deployment
- example:
- backendDetails:
- predictor:
- resourcePlan: starter
- StatusTransitionTime:
- type: object
- properties:
- submissionTime:
- type: string
- description: Timestamp of job submitted
- format: date-time
- startTime:
- type: string
- description: Timestamp of job status changed to RUNNING
- format: date-time
- completionTime:
- type: string
- description: Timestamp of job status changed to COMPLETED/DEAD/STOPPED
- format: date-time
- DeploymentCreationRequest:
- type: object
- properties:
- ttl:
- $ref: '#/components/schemas/DeploymentTimeToLive'
- description: Time to live for deployment
- allOf:
- - $ref: '#/components/schemas/EnactmentCreationRequest'
- EnactmentCreationRequest:
- required:
- - configurationId
- type: object
- properties:
- configurationId:
- $ref: '#/components/schemas/ConfigurationId'
- description: Request object for creating an execution or an deployment
- DeploymentBulkModificationResponse:
- type: object
- properties:
- deployments:
- $ref: '#/components/schemas/DeploymentModificationResponseList'
- description: Response object with array of deployments
- DeploymentModificationResponseList:
- type: array
- items:
- oneOf:
- - $ref: '#/components/schemas/DeploymentModificationResponse'
- - $ref: '#/components/schemas/ApiErrorWithId'
- DeploymentBulkModificationRequest:
- type: object
- properties:
- deployments:
- $ref: '#/components/schemas/DeploymentModificationRequestList'
- description: Request object for changing the target status of multiple deployments
- DeploymentModificationRequestList:
- maxItems: 100
- minItems: 1
- uniqueItems: true
- type: array
- example:
- - id: aa97b177-9383-4934-8543-0f91a7a0283a
- targetStatus: STOPPED
- - id: qweq32131-qwee-1231-8543-0f91a7a2e2e
- targetStatus: DELETED
- items:
- $ref: '#/components/schemas/DeploymentModificationRequestWithIdentifier'
- DeploymentModificationRequestWithIdentifier:
- required:
- - id
- - targetStatus
- type: object
- properties:
- id:
- $ref: '#/components/schemas/DeploymentId'
- targetStatus:
- type: string
- description: Deployment target status
- enum:
- - STOPPED
- - DELETED
- description: Request object for changing the target status of a deployment ( STOPPED and DELETED are supported)
- DeploymentResponseWithDetails:
- allOf:
- - $ref: '#/components/schemas/Deployment'
- - $ref: '#/components/schemas/DeploymentDetailProperties'
- DeploymentDetailProperties:
- type: object
- properties:
- statusDetails:
- $ref: '#/components/schemas/DeploymentStatusDetails'
- description: Detail properties of the deployment
- DeploymentStatusDetails:
- type: object
- description: Current status details of the deployment
- DeploymentDeletionResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponse'
- - type: object
- properties:
- message:
- $ref: '#/components/schemas/DeploymentDeletionResponseMessage'
- DeploymentDeletionResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: Deployment deletion scheduled
- DeploymentModificationResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponse'
- - type: object
- properties:
- message:
- $ref: '#/components/schemas/DeploymentModificationResponseMessage'
- DeploymentModificationResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: Deployment modification scheduled
- DeploymentModificationRequest:
- type: object
- properties:
- targetStatus:
- $ref: '#/components/schemas/DeploymentTargetStatus'
- configurationId:
- $ref: '#/components/schemas/ConfigurationId'
- description: Request object for changing the target status of a deployment (currently only STOPPED is supported)
- DeploymentTargetStatus:
- allOf:
- - $ref: '#/components/schemas/Status'
- - type: string
- example: STOPPED
- enum:
- - STOPPED
- ExecutionList:
- type: object
- allOf:
- - $ref: '#/components/schemas/ResourceList'
- - type: object
- properties:
- resources:
- type: array
- items:
- $ref: '#/components/schemas/Execution'
- Execution:
- allOf:
- - $ref: '#/components/schemas/ExecutionData'
- - $ref: '#/components/schemas/CreationData'
- - $ref: '#/components/schemas/ModificationData'
- - $ref: '#/components/schemas/StatusTransitionTime'
- ExecutionData:
- required:
- - configurationId
- - id
- - status
- type: object
- properties:
- id:
- $ref: '#/components/schemas/ExecutionId'
- configurationId:
- $ref: '#/components/schemas/ConfigurationId'
- configurationName:
- $ref: '#/components/schemas/ConfigurationName'
- scenarioId:
- $ref: '#/components/schemas/ScenarioId'
- targetStatus:
- type: string
- description: Target status of the execution
- example: STOPPED
- enum:
- - COMPLETED
- - RUNNING
- - STOPPED
- - DELETED
- status:
- $ref: '#/components/schemas/ExecutionStatus'
- statusMessage:
- $ref: '#/components/schemas/ExecutionStatusMessage'
- outputArtifacts:
- $ref: '#/components/schemas/ArtifactArray'
- executionScheduleId:
- $ref: '#/components/schemas/ExecutionScheduleId'
- description: Execution that may generate artifacts
- ExecutionStatusMessage:
- allOf:
- - $ref: '#/components/schemas/Message'
- - description: Execution status message
- - maxLength: 256
- ExecutionScheduleId:
- allOf:
- - $ref: '#/components/schemas/Id'
- - description: ID of the execution schedule
- ExecutionBulkModificationResponse:
- type: object
- properties:
- executions:
- $ref: '#/components/schemas/ExecutionModificationResponseList'
- description: Response object with array of executions and its status
- ExecutionModificationResponseList:
- type: array
- items:
- oneOf:
- - $ref: '#/components/schemas/ExecutionModificationResponse'
- - $ref: '#/components/schemas/ApiErrorWithId'
- ExecutionBulkModificationRequest:
- type: object
- properties:
- executions:
- $ref: '#/components/schemas/ExecutionModificationRequestList'
- description: Request object to change status of multiple executions
- ExecutionModificationRequestList:
- maxItems: 100
- minItems: 1
- uniqueItems: true
- type: array
- example:
- - id: aa97b177-9383-4934-8543-0f91a7a0283a
- targetStatus: STOPPED
- - id: qweq32131-qwee-1231-8543-0f91a7a2e2e
- targetStatus: DELETED
- items:
- $ref: '#/components/schemas/ExecutionModificationRequestWithIdentifier'
- ExecutionModificationRequestWithIdentifier:
- required:
- - id
- - targetStatus
- type: object
- properties:
- id:
- $ref: '#/components/schemas/ExecutionId'
- targetStatus:
- type: string
- description: Desired target status of the execution (currently STOPPED and DELETED are supported)
- enum:
- - STOPPED
- - DELETED
- description: Request object for changing the target status of an execution (currently STOPPED and DELETED are supported)
- ExecutionResponseWithDetails:
- allOf:
- - $ref: '#/components/schemas/Execution'
- - type: object
- properties:
- statusDetails:
- $ref: '#/components/schemas/ExecutionStatusDetails'
- ExecutionStatusDetails:
- type: object
- description: Current status details of the execution
- ExecutionDeletionResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponse'
- - type: object
- properties:
- message:
- $ref: '#/components/schemas/ExecutionDeletionResponseMessage'
- ExecutionDeletionResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: Execution deletion scheduled
- ExecutionModificationResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponse'
- - type: object
- properties:
- message:
- $ref: '#/components/schemas/ExecutionModificationResponseMessage'
- ExecutionModificationResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: Execution modification scheduled
- ExecutionModificationRequest:
- required:
- - targetStatus
- type: object
- properties:
- targetStatus:
- type: string
- description: Desired target status of the execution (currently only STOPPED is supported)
- enum:
- - STOPPED
- description: Request object for changing the target status of an execution (currently only STOPPED is supported)
- ExecutionScheduleList:
- type: object
- allOf:
- - $ref: '#/components/schemas/ResourceList'
- - type: object
- properties:
- resources:
- type: array
- items:
- $ref: '#/components/schemas/ExecutionSchedule'
- ExecutionSchedule:
- allOf:
- - $ref: '#/components/schemas/ExecutionScheduleData'
- - $ref: '#/components/schemas/CreationData'
- - $ref: '#/components/schemas/ModificationData'
- ExecutionScheduleData:
- allOf:
- - $ref: '#/components/schemas/ExecutionScheduleCreationData'
- - type: object
- properties:
- id:
- $ref: '#/components/schemas/ExecutionScheduleId'
- status:
- $ref: '#/components/schemas/ExecutionScheduleStatus'
- description: Data about execution schedule
- ExecutionScheduleCreationData:
- allOf:
- - required:
- - configurationId
- - cron
- - name
- type: object
- properties:
- cron:
- $ref: '#/components/schemas/Cron'
- name:
- maxLength: 256
- type: string
- description: Name of the execution schedule
- configurationId:
- $ref: '#/components/schemas/ConfigurationId'
- description: Data needed to create an execution schedule
- - $ref: '#/components/schemas/ScheduleStartEnd'
- Cron:
- type: string
- description: Cron defining the schedule to run the executions.
- example: 0 0 0 1 *
- ScheduleStartEnd:
- type: object
- properties:
- start:
- type: string
- description: Timestamp, defining when the executions should start running periodically, defaults to now
- format: date-time
- end:
- type: string
- description: Timestamp, defining when the executions should stop running
- format: date-time
- description: Start and end an execution schedule.
- ExecutionScheduleStatus:
- type: string
- description: Execution Schedule Status
- example: ACTIVE
- enum:
- - ACTIVE
- - INACTIVE
- ExecutionScheduleCreationResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponse'
- - type: object
- properties:
- message:
- $ref: '#/components/schemas/ExecutionScheduleCreationResponseMessage'
- ExecutionScheduleCreationResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: Execution Schedule created
- ExecutionScheduleDeletionResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponse'
- - type: object
- properties:
- message:
- $ref: '#/components/schemas/ExecutionScheduleDeletionResponseMessage'
- ExecutionScheduleDeletionResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: Execution Schedule deleted
- ExecutionScheduleModificationResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponse'
- - type: object
- properties:
- message:
- $ref: '#/components/schemas/ExecutionScheduleModificationResponseMessage'
- ExecutionScheduleModificationResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: Execution Schedule modified
- ExecutionScheduleModificationRequest:
- allOf:
- - $ref: '#/components/schemas/Schedule'
- - type: object
- properties:
- configurationId:
- $ref: '#/components/schemas/ConfigurationId'
- status:
- $ref: '#/components/schemas/ExecutionScheduleStatus'
- description: Request object for changing the execution schedule
- Schedule:
- allOf:
- - type: object
- properties:
- cron:
- $ref: '#/components/schemas/Cron'
- description: Schedule of an execution schedule.
- - $ref: '#/components/schemas/ScheduleStartEnd'
- ScenarioList:
- type: object
- allOf:
- - $ref: '#/components/schemas/ResourceList'
- - type: object
- properties:
- resources:
- type: array
- items:
- $ref: '#/components/schemas/Scenario'
- ExecutableList:
- type: object
- allOf:
- - $ref: '#/components/schemas/ResourceList'
- - type: object
- properties:
- resources:
- type: array
- items:
- $ref: '#/components/schemas/Executable'
- Executable:
- description: |
- An ML executable consists of a set of ML tasks, flows between tasks, dependencies between tasks, models (or model versions?).
- allOf:
- - $ref: '#/components/schemas/ExecutableBaseData'
- - $ref: '#/components/schemas/ExecutableDetailData'
- - $ref: '#/components/schemas/CreationData'
- - $ref: '#/components/schemas/ModificationData'
- ExecutableBaseData:
- allOf:
- - $ref: '#/components/schemas/Labeled'
- - required:
- - name
- type: object
- properties:
- name:
- type: string
- description: Name of the executable
- description:
- type: string
- description: Description of the executable
- ExecutableDetailData:
- required:
- - deployable
- - id
- - versionId
- type: object
- properties:
- id:
- $ref: '#/components/schemas/ExecutableId'
- scenarioId:
- $ref: '#/components/schemas/ScenarioId'
- versionId:
- $ref: '#/components/schemas/VersionId'
- parameters:
- $ref: '#/components/schemas/ExecutableParameterList'
- inputArtifacts:
- $ref: '#/components/schemas/ExecutableArtifactList'
- outputArtifacts:
- $ref: '#/components/schemas/ExecutableArtifactList'
- deployable:
- type: boolean
- description: Whether this executable is deployable
- example: false
- VersionId:
- type: string
- description: Version ID
- ExecutableParameterList:
- type: array
- description: Executable parameters
- items:
- $ref: '#/components/schemas/ExecutableParameter'
- ExecutableParameter:
- required:
- - name
- type: object
- properties:
- name:
- type: string
- description: Name of the executable parameter
- description:
- type: string
- description: Description of the signature argument
- default:
- type: string
- description: Default value of the signature argument
- type:
- type: string
- description: Type of the executable parameter
- enum:
- - string
- ExecutableArtifactList:
- type: array
- description: Executable parameters
- items:
- $ref: '#/components/schemas/ExecutableArtifact'
- ExecutableArtifact:
- required:
- - name
- type: object
- properties:
- name:
- type: string
- description: Name of the executable input artifacts
- kind:
- type: string
- description: Artifact kind (model, dataset, other)
- description:
- type: string
- description: Description of the signature argument
- labels:
- $ref: '#/components/schemas/LabelList'
- VersionList:
- type: object
- allOf:
- - $ref: '#/components/schemas/ResourceList'
- - type: object
- properties:
- resources:
- type: array
- items:
- $ref: '#/components/schemas/Version'
- Version:
- allOf:
- - $ref: '#/components/schemas/VersionBaseData'
- - $ref: '#/components/schemas/VersionDetailData'
- - $ref: '#/components/schemas/CreationData'
- - $ref: '#/components/schemas/ModificationData'
- VersionBaseData:
- type: object
- properties:
- description:
- $ref: '#/components/schemas/VersionDescription'
- VersionDescription:
- maxLength: 5000
- type: string
- description: Version description
- example: This is version v1
- VersionDetailData:
- required:
- - id
- type: object
- properties:
- id:
- $ref: '#/components/schemas/VersionId'
- scenarioId:
- $ref: '#/components/schemas/ScenarioId'
- Capabilities:
- required:
- - aiApi
- type: object
- properties:
- runtimeIdentifier:
- type: string
- description: The name of the runtime
- example: aicore
- runtimeApiVersion:
- $ref: '#/components/schemas/Version_2'
- description:
- type: string
- aiApi:
- $ref: '#/components/schemas/AiApi'
- extensions:
- $ref: '#/components/schemas/Extensions'
- Version_2:
- pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
- type: string
- example: 1.2.3
- AiApi:
- description: There are (currently) the following types of execution engines 1) complete runtimes that offer executions and deployments, 2) runtimes that do only batch inference and therefore don't support deployments 3) runtimes that allow deployments, but with predefined models and therefore don't need executions 4) runtimes that have fixed endpoints and therefore only need listing deployments
- allOf:
- - $ref: '#/components/schemas/Spec'
- - type: object
- properties:
- capabilities:
- $ref: '#/components/schemas/AiApi_capabilities'
- limits:
- $ref: '#/components/schemas/AiApi_limits'
- Spec:
- required:
- - version
- type: object
- properties:
- version:
- $ref: '#/components/schemas/Version_2'
- Extensions:
- type: object
- properties:
- analytics:
- allOf:
- - $ref: '#/components/schemas/Spec'
- - type: object
- resourceGroups:
- allOf:
- - $ref: '#/components/schemas/Spec'
- - type: object
- dataset:
- allOf:
- - $ref: '#/components/schemas/Spec'
- - type: object
- properties:
- capabilities:
- type: object
- properties:
- upload:
- type: boolean
- description: Support for uploading of files
- default: true
- download:
- type: boolean
- description: Support for downloading of files
- default: true
- delete:
- type: boolean
- description: Support for deletion of files
- default: true
- description: List of Dataset extension capabilities
- limits:
- type: object
- properties:
- maxUploadFileSize:
- type: integer
- description: Max size (in bytes) of a single uploaded file allowed by this runtime per resource group.
- default: 104857600
- maxFilesPerDataset:
- type: integer
- description: Max number of files per dataset. <0 means unlimited.
- default: -1
- acceptedContentTypes:
- type: array
- items:
- pattern: ^\w+\/([\w+-]\.)?[\w.-]+(\+[\w-]+)*$
- type: string
- metrics:
- allOf:
- - $ref: '#/components/schemas/Spec'
- - type: object
- properties:
- capabilities:
- type: object
- properties:
- extendedResults:
- type: boolean
- description: Support for returning extended results
- default: false
- description: List of Metrics extension capabilities
- GetMetricResourceList:
- type: object
- allOf:
- - $ref: '#/components/schemas/ResourceCount'
- - required:
- - resources
- type: object
- properties:
- resources:
- type: array
- items:
- $ref: '#/components/schemas/GetMetricResource'
- ResourceCount:
- type: object
- properties:
- count:
- type: integer
- description: Number of the resource instances in the list
- GetMetricResource:
- allOf:
- - $ref: '#/components/schemas/MetricResource'
- - type: object
- properties:
- metrics:
- $ref: '#/components/schemas/GetMetricList'
- MetricResource:
- required:
- - executionId
- type: object
- properties:
- executionId:
- $ref: '#/components/schemas/ExecutionId_2'
- metrics:
- $ref: '#/components/schemas/MetricList'
- tags:
- $ref: '#/components/schemas/TagList'
- customInfo:
- $ref: '#/components/schemas/CustomInfoObjectList'
- description: Collection of various metrics/tags/labels associated against some execution/deployment
- ExecutionId_2:
- type: string
- description: ID of the deployment/execution
- example: aa97b177-9383-4934-8543-0f91b7a0283a
- oneOf:
- - $ref: '#/components/schemas/MlapiExecutionId'
- MlapiExecutionId:
- pattern: ^[\w.-]{4,64}$
- type: string
- description: Generic ID
- example: aa97b177-9383-4934-8543-0f91b7a0283a
- MetricList:
- type: array
- description: Array of Metric items
- items:
- $ref: '#/components/schemas/Metric'
- Metric:
- required:
- - name
- - value
- type: object
- properties:
- name:
- $ref: '#/components/schemas/MetricName'
- value:
- $ref: '#/components/schemas/MetricValue'
- timestamp:
- $ref: '#/components/schemas/Timestamp'
- step:
- minimum: 0
- type: integer
- description: step is an optional integer that represents any measurement of training progress (number of training iterations, number of epochs, and so on) for the metric
- example: 2
- labels:
- $ref: '#/components/schemas/LabelList_2'
- description: Key-value metrics, where the value is numeric. Metric can also have optional step and label fields.
- MetricName:
- maxLength: 256
- pattern: '[\w-]{1,64}'
- type: string
- description: Name of the metric
- example: Error Rate
- MetricValue:
- type: number
- description: Numeric Value of the metric
- example: 0.98
- Timestamp:
- type: string
- description: Time when the metric was created or logged in RFC3339 format
- format: date-time
- LabelList_2:
- type: array
- description: a list of name-value object pairs associated with some metric.
- example:
- - name: group
- value: tree-82
- - name: metrics.ai.sap.com/Artifact.name
- value: sk_learn_rf_classifier_model
- items:
- $ref: '#/components/schemas/Label_2'
- Label_2:
- required:
- - name
- - value
- type: object
- properties:
- name:
- $ref: '#/components/schemas/LabelName'
- value:
- maxLength: 256
- minLength: 1
- type: string
- description: Metric Label Value
- example: sk_learn_random_forest_model
- description: a classifying phrase/name applied to a metric
- example:
- name: group
- value: tree-82
- LabelName:
- maxLength: 256
- minLength: 1
- type: string
- description: Label name to label one or more metrics. "metrics.ai.sap.com/Artifact.name" is a reserved label to associate an artifact with the metrics
- example: metrics.ai.sap.com/Artifact.name
- TagList:
- type: array
- description: a list of name-value object pairs associated with the execution/deployment. Tags are queryable.
- items:
- $ref: '#/components/schemas/Tag'
- Tag:
- required:
- - name
- - value
- type: object
- properties:
- name:
- oneOf:
- - $ref: '#/components/schemas/GenericName_2'
- value:
- maxLength: 256
- minLength: 1
- type: string
- description: tag value
- example: RFC-1
- description: A dictionary of name-value pairs to support segregation at execution level.
- example:
- name: Artifact Group
- value: RFC-1
- GenericName_2:
- maxLength: 256
- minLength: 1
- type: string
- description: Generic name which can belong to a tag,label,metric or customInfo Object
- example: sample name
- CustomInfoObjectList:
- type: array
- items:
- $ref: '#/components/schemas/CustomInfoObject'
- CustomInfoObject:
- required:
- - name
- - value
- type: object
- properties:
- name:
- oneOf:
- - $ref: '#/components/schemas/GenericName_2'
- value:
- $ref: '#/components/schemas/CustomInfoObjectData'
- description: large object which provides rendering/semantic information regarding certain metric for consuming application or can be complex metrics in JSON format
- example:
- name: Confusion Matrix
- value: "[{'Predicted': 'False', 'Actual': 'False','value': 34},{'Predicted': 'False','Actual': 'True', 'value': 124}, {'Predicted': 'True','Actual': 'False','value': 165},{ 'Predicted': 'True','Actual': 'True','value': 36}]"
- CustomInfoObjectData:
- minLength: 1
- type: string
- description: Message
- example: "[{'Predicted': 'False',\t'Actual': 'False','value': 34},{'Predicted': 'False','Actual': 'True',\t'value': 124}, {'Predicted': 'True','Actual': 'False','value': 165},{\t'Predicted': 'True','Actual': 'True','value': 36}]"
- GetMetricList:
- type: array
- description: Array of Metric items
- items:
- $ref: '#/components/schemas/GetMetric'
- GetMetric:
- allOf:
- - $ref: '#/components/schemas/Metric'
- - required:
- - timestamp
- type: object
- properties:
- timestamp:
- $ref: '#/components/schemas/Timestamp'
- DeleteMetricsResponse:
- type: object
- properties:
- id:
- $ref: '#/components/schemas/ExecutionId_2'
- message:
- type: string
- example: Metric Resource was successfully deleted
- StringArray:
- type: array
- example:
- - value1
- - value2
- items:
- type: string
- metricSelectorPermissibleValues:
- type: array
- description: Permissible value for $select could be either * or one or many of the values from metrics, tags, custominfo
- items:
- type: string
- enum:
- - metrics
- - tags
- - customInfo
- - '*'
- ApiError_2:
- required:
- - code
- - message
- type: object
- properties:
- code:
- type: string
- description: Descriptive error code (not http status code).
- message:
- type: string
- description: plaintext error description
- requestId:
- type: string
- description: id of individual request
- target:
- type: string
- description: url that has been called
- details:
- type: array
- items:
- $ref: '#/components/schemas/DetailsErrorResponse'
- DetailsErrorResponse:
- type: object
- properties:
- code:
- type: string
- description: Descriptive error code (not http status code)
- message:
- type: string
- description: Plaintext error description
- ResultSet:
- title: ResultSet
- maxProperties: 2
- minProperties: 2
- type: object
- properties:
- header:
- $ref: '#/components/schemas/ArrayOfColumnNames'
- rows:
- $ref: '#/components/schemas/ResultRowList'
- additionalProperties: false
- readOnly: true
- x-examples:
- example-1:
- header:
- - ResourceGroup
- - Executions
- - Artifacts
- - Deployments
- rows:
- - - 00112233-4455-6677-8899-aabbccddeeff
- - 30
- - 30
- - 3
- ArrayOfColumnNames:
- uniqueItems: true
- type: array
- readOnly: true
- items:
- $ref: '#/components/schemas/ColumnName'
- ColumnName:
- type: string
- description: Name of the Column
- readOnly: true
- anyOf:
- - type: string
- enum:
- - ResourceGroup
- - Scenario
- - Executable
- - Executions
- - Artifacts
- - Deployments
- - {}
- ResultRowList:
- title: ResultRowList
- type: array
- items:
- $ref: '#/components/schemas/ResultRow'
- ResultRow:
- title: ResultRow
- uniqueItems: false
- type: array
- readOnly: true
- items:
- $ref: '#/components/schemas/ResultRowItem'
- x-examples: {}
- ResultRowItem:
- title: ResultRowItem
- anyOf:
- - $ref: '#/components/schemas/AggregationAttribute'
- - $ref: '#/components/schemas/CountAggregate'
- x-examples: {}
- AggregationAttribute:
- title: Aggregation Attribute
- type: string
- readOnly: true
- CountAggregate:
- title: CountAggregate
- minimum: 0
- type: integer
- format: int64
- readOnly: true
- x-examples: {}
- Error:
- required:
- - code
- - message
- type: object
- properties:
- code:
- minLength: 1
- type: string
- message:
- minLength: 1
- type: string
- target:
- minLength: 1
- type: string
- requestId:
- type: string
- details:
- minItems: 0
- uniqueItems: true
- type: array
- items:
- $ref: '#/components/schemas/Error_details'
- description: Error Response
- x-examples:
- example-1:
- code: '03021655'
- message: Bad request encountered. Please try again with possible-solution-here.
- target: /url/path
- requestId: 9832bf934f3743v3948v3
- details:
- - code: '01041211'
- message: Optional nested error message.
- FileCreationResponse:
- required:
- - message
- - url
- type: object
- properties:
- message:
- type: string
- description: File creation response message
- example: File creation acknowledged
- url:
- $ref: '#/components/schemas/Url'
- description: Response for successful file creation
- objectStoreSecretStatusResponse:
- type: object
- description: This represents a list of meta-data of a stored secret. The 'data' field of the secret is never retrieved.
- allOf:
- - $ref: '#/components/schemas/ResourceList'
- - type: object
- properties:
- resources:
- type: array
- items:
- $ref: '#/components/schemas/objectStoreSecretStatus'
- objectStoreSecretStatus:
- type: object
- properties:
- metadata:
- $ref: '#/components/schemas/objectStoreSecretStatus_metadata'
- name:
- type: string
- description: Name of objectstore
- example: myobjectstore-object-store-secret
- description: This represents the meta-data of a stored secret. The 'data' field of the secret is never retrieved.
- objectStoreSecretCreationResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - type: object
- properties:
- message:
- $ref: '#/components/schemas/objectStoreSecretCreationResponseMessage'
- objectStoreSecretCreationResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: Secret has been created
- ErrorResponse:
- type: object
- properties:
- error:
- $ref: '#/components/schemas/Error_2'
- Error_2:
- required:
- - code
- - message
- type: object
- properties:
- code:
- type: string
- description: Descriptive error code (not http status code)
- message:
- type: string
- description: Plaintext error description
- example: something went wrong
- requestId:
- type: string
- description: ID of the individual request
- target:
- type: string
- description: Invoked URL
- details:
- type: object
- description: Optional details of the error message
- objectStoreSecretWithSensitiveDataRequestForPostCall:
- required:
- - data
- - name
- - type
- type: object
- properties:
- name:
- maxLength: 233
- pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
- type: string
- description: Name of the object store for the secret object to be created. Can be used later on check for existence of the secret.
- example: myobjectstore
- type:
- type: string
- description: Storage type e.g. S3, GCS,...
- example: S3
- bucket:
- type: string
- description: Bucket to be used
- example: mybucket1
- endpoint:
- type: string
- description: Optional parameter - URL of the storage server (S3 only)
- example: www.example.com
- region:
- type: string
- description: Optional parameter - Region of the storage server (S3 only)
- example: eu
- pathPrefix:
- type: string
- description: prefix folder to be added to storage path
- example: mp-api
- verifyssl:
- type: string
- description: 0, 1 flag for the KF-serving annotation - serving.kubeflow.org/s3-verifyssl
- example: '0'
- usehttps:
- type: string
- description: 0, 1 flag for KF-serving annotations - serving.kubeflow.org/s3-usehttps
- example: '1'
- default: '1'
- data:
- type: object
- description: key:value pairs of data
- writeOnly: true
- description: This represents all the meta-data and extra information to be stored as a k8-secret
- objectStoreSecretDeletionResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponse_2'
- - type: object
- properties:
- message:
- $ref: '#/components/schemas/objectStoreSecretDeletionResponseMessage'
- CreationResponse_2:
- required:
- - id
- - message
- type: object
- properties:
- id:
- $ref: '#/components/schemas/Id'
- message:
- $ref: '#/components/schemas/CreationResponseMessage'
- objectStoreSecretDeletionResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: Object Store Secret has been deleted
- objectStoreSecretModificationResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponse_2'
- - type: object
- properties:
- message:
- $ref: '#/components/schemas/objectStoreSecretModificationResponseMessage'
- objectStoreSecretModificationResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: Secret has been modified
- objectStoreSecretWithSensitiveDataRequest:
- required:
- - data
- - name
- - type
- type: object
- properties:
- name:
- type: string
- description: Name of the object store for the secret object to be created. Can be used later on check for existence of the secret.
- example: myobjectstore
- type:
- type: string
- description: Storage type e.g. S3, GCS,...
- example: S3
- bucket:
- type: string
- description: Bucket to be used
- example: mybucket1
- endpoint:
- type: string
- description: Optional parameter - URL of the storage server (S3 only)
- example: www.example.com
- region:
- type: string
- description: Optional parameter - Region of the storage server (S3 only)
- example: eu
- pathPrefix:
- type: string
- description: prefix folder to be added to storage path
- example: mp-api
- verifyssl:
- type: string
- description: 0, 1 flag for the KF-serving annotation - serving.kubeflow.org/s3-verifyssl
- example: '0'
- usehttps:
- type: string
- description: 0, 1 flag for KF-serving annotations - serving.kubeflow.org/s3-usehttps
- example: '1'
- default: '1'
- data:
- type: object
- description: key:value pairs of data
- writeOnly: true
- description: This represents all the meta-data and extra information to be stored as a k8-secret
- ListGenericSecretsResponse:
- type: object
- description: This represents a list of meta-data of the secret. The 'data' field of the secret is never retrieved.
- allOf:
- - $ref: '#/components/schemas/ResourceList'
- - type: object
- properties:
- resources:
- type: array
- items:
- $ref: '#/components/schemas/GenericSecretDetails'
- GenericSecretDetails:
- type: object
- properties:
- name:
- type: string
- description: Name of the secret
- createdAt:
- type: string
- description: Timestamp at which secret was created
- GenericSecretDataResponse:
- type: object
- properties:
- message:
- $ref: '#/components/schemas/Message'
- name:
- $ref: '#/components/schemas/Name'
- Name:
- type: string
- description: Name
- GenericSecretPostBody:
- required:
- - data
- - name
- type: object
- properties:
- name:
- maxLength: 252
- minLength: 1
- pattern: ^[a-z0-9\-\.]+$
- type: string
- description: The name of the secret
- data:
- $ref: '#/components/schemas/GenericSecretData'
- GenericSecretData:
- type: object
- additionalProperties:
- type: string
- description: Base64 encoded secret data
- GenericSecretPatchBody:
- required:
- - data
- type: object
- properties:
- data:
- $ref: '#/components/schemas/GenericSecretData'
- ResourceGroupList:
- type: object
- allOf:
- - $ref: '#/components/schemas/ResourceList'
- - type: object
- properties:
- resources:
- type: array
- items:
- $ref: '#/components/schemas/ResourceGroup'
- ResourceGroup:
- required:
- - createdAt
- - resourceGroupId
- - status
- allOf:
- - $ref: '#/components/schemas/ResourceGroupBase'
- - type: object
- properties:
- createdAt:
- type: string
- description: Timestamp of resource group creation
- format: date-time
- labels:
- $ref: '#/components/schemas/ResourceGroupLabels'
- status:
- type: string
- description: aggregated status of the onboarding process
- enum:
- - PROVISIONED
- - ERROR
- - PROVISIONING
- statusMessage:
- type: string
- description: status message
- ResourceGroupBase:
- type: object
- properties:
- resourceGroupId:
- type: string
- description: resource group id
- tenantId:
- type: string
- description: tenant id
- zoneId:
- type: string
- description: zone id
- ResourceGroupLabels:
- type: array
- description: Arbitrary labels as meta information
- items:
- $ref: '#/components/schemas/ResourceGroupLabel'
- ResourceGroupLabel:
- required:
- - key
- - value
- type: object
- properties:
- key:
- maxLength: 63
- pattern: ^ext.ai.sap.com/(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9]){1,48}$
- type: string
- example: ext.ai.sap.com/my-label
- value:
- maxLength: 5000
- type: string
- ResourceGroupsPostRequest:
- type: object
- properties:
- resourceGroupId:
- maxLength: 253
- minLength: 3
- pattern: ^[a-zA-Z0-9][a-zA-Z0-9.-]{1,251}[a-zA-Z0-9]$
- type: string
- description: resource group id
- labels:
- $ref: '#/components/schemas/ResourceGroupLabels'
- ResourceGroupDeletionResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponse_2'
- - type: object
- properties:
- message:
- $ref: '#/components/schemas/ResourceGroupDeletionResponseMessage'
- ResourceGroupDeletionResponseMessage:
- allOf:
- - $ref: '#/components/schemas/Message'
- - example: Resource Group deletion scheduled
- ResourceGroupPatchRequest:
- type: object
- properties:
- labels:
- $ref: '#/components/schemas/ResourceGroupLabels'
- ResourceGetResponse:
- required:
- - resourcePlans
- type: object
- properties:
- resourcePlans:
- $ref: '#/components/schemas/ResourceGetResourcePlans'
- ResourceGetResourcePlans:
- type: object
- additionalProperties:
- required:
- - provisioned
- - requested
- type: object
- properties:
- provisioned:
- type: integer
- requested:
- type: integer
- ResourcePatchResponse:
- required:
- - message
- type: object
- properties:
- message:
- type: string
- ResourcePatchBody:
- required:
- - resourcePlans
- type: object
- properties:
- resourcePlans:
- $ref: '#/components/schemas/ResourcePatchResourcePlans'
- ResourcePatchResourcePlans:
- type: array
- items:
- $ref: '#/components/schemas/ResourcePatchNodes'
- ResourcePatchNodes:
- required:
- - name
- - request
- type: object
- properties:
- name:
- type: string
- request:
- type: integer
- LogCommonResponse:
- type: object
- properties:
- data:
- $ref: '#/components/schemas/LogCommonData'
- description: |
- A common log query response.
- LogCommonData:
- type: object
- properties:
- result:
- $ref: '#/components/schemas/LogCommonResult'
- LogCommonResult:
- type: array
- items:
- $ref: '#/components/schemas/LogCommonResultItem'
- LogCommonResultItem:
- type: object
- properties:
- timestamp:
- $ref: '#/components/schemas/timestamp'
- msg:
- $ref: '#/components/schemas/message'
- description: Common log record.
- timestamp:
- type: string
- description: Datetime in RFC 3339.
- format: date-time
- example: '2021-05-19T00:00:14.347000Z'
- message:
- type: string
- description: message content.
- ErrorResponse_2:
- type: object
- properties:
- error:
- $ref: '#/components/schemas/Error_2'
- ArgoCDRepositoryDataResponse:
- type: object
- description: This represents a list of GitOps repositories for the tenant.
- allOf:
- - $ref: '#/components/schemas/ResourceList'
- - type: object
- properties:
- resources:
- type: array
- items:
- $ref: '#/components/schemas/ArgoCDRepositoryDetails'
- ArgoCDRepositoryDetails:
- type: object
- properties:
- name:
- type: string
- description: The name of the repository
- url:
- type: string
- description: The repository URL
- status:
- type: string
- description: The status of the repository's on-boarding
- example: COMPLETED
- enum:
- - ERROR
- - IN-PROGRESS
- - COMPLETED
- description: Repository details
- ArgoCDRepositoryCreationResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponse_2'
- - type: object
- properties:
- message:
- $ref: '#/components/schemas/ArgoCDRepositoryCreationResponseMessage'
- ArgoCDRepositoryCreationResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: Repository has been on-boarded
- ArgoCDRepositoryData:
- required:
- - password
- - url
- - username
- type: object
- properties:
- name:
- maxLength: 51
- minLength: 1
- pattern: ^[a-z0-9\-]+$
- type: string
- description: Name of the repository
- url:
- type: string
- description: URL of the repository to synchronise
- username:
- type: string
- description: Username for read-access to the repository
- password:
- type: string
- description: Password for read-access to the repository
- ArgoCDRepositoryDeletionResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponse_2'
- - type: object
- properties:
- message:
- $ref: '#/components/schemas/ArgoCDRepositoryDeletionResponseMessage'
- ArgoCDRepositoryDeletionResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: The repository has been off-boarded.
- ArgoCDRepositoryModificationResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponse_2'
- - type: object
- properties:
- message:
- $ref: '#/components/schemas/ArgoCDRepositoryModificationResponseMessage'
- ArgoCDRepositoryModificationResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: ArgoCD application has been updated
- ArgoCDRepositoryCredentials:
- required:
- - password
- - username
- type: object
- properties:
- username:
- type: string
- description: Username for read-access to the repository
- password:
- type: string
- description: Password for read-access to the repository
- AllArgoCDApplicationData:
- type: object
- description: list of applications
- allOf:
- - $ref: '#/components/schemas/ResourceList'
- - type: object
- properties:
- resources:
- type: array
- items:
- $ref: '#/components/schemas/ArgoCDApplicationData'
- ArgoCDApplicationData:
- type: object
- allOf:
- - $ref: '#/components/schemas/ArgoCDApplicationBaseData'
- - type: object
- properties:
- applicationName:
- maxLength: 54
- minLength: 3
- pattern: ^[a-z0-9\-]+$
- type: string
- description: ArgoCD application name
- ArgoCDApplicationBaseData:
- required:
- - path
- - repositoryUrl
- - revision
- type: object
- properties:
- repositoryUrl:
- type: string
- description: URL of the repository to synchronise
- revision:
- type: string
- description: revision to synchronise
- path:
- type: string
- description: path within the repository to synchronise
- ArgoCDApplicationCreationResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponse_2'
- - type: object
- properties:
- message:
- $ref: '#/components/schemas/ArgoCDApplicationCreationResponseMessage'
- ArgoCDApplicationCreationResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: ArgoCD application has been created
- ArgoCDApplicationDataRepoName:
- required:
- - path
- - repositoryName
- - revision
- type: object
- properties:
- repositoryName:
- type: string
- description: Name of the repository to synchronise
- revision:
- type: string
- description: revision to synchronise
- path:
- type: string
- description: path within the repository to synchronise
- applicationName:
- maxLength: 54
- minLength: 3
- pattern: ^[a-z0-9\-]+$
- type: string
- description: ArgoCD application name
- ArgoCDApplicationStatus:
- type: object
- properties:
- healthStatus:
- type: string
- description: ArgoCD application health status
- syncStatus:
- type: string
- description: ArgoCD application sync status
- message:
- type: string
- description: ArgoCD application health status message
- source:
- $ref: '#/components/schemas/ArgoCDApplicationStatus_source'
- syncFinishedAt:
- type: string
- description: Gets the timestamp information related to the sync state of the ArgoCD application
- syncStartedAt:
- type: string
- description: Get timestamp information related to the sync state of the ArgoCD application
- reconciledAt:
- type: string
- description: Get timestamp information related to the sync state of the ArgoCD application
- syncResourcesStatus:
- type: array
- description: Status of all resources that need to be synchronized with the gitops repo
- items:
- $ref: '#/components/schemas/ArgoCDApplicationStatus_syncResourcesStatus'
- syncRessourcesStatus:
- type: array
- description: Status of all resources that need to be synchronized with the gitops repo. Misspelled and deprecated, use syncResourcesStatus instead.
- deprecated: true
- items:
- $ref: '#/components/schemas/ArgoCDApplicationStatus_syncResourcesStatus'
- description: ArgoCD application definition and status
- ArgoCDApplicationDeletionResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponse_2'
- - type: object
- properties:
- message:
- $ref: '#/components/schemas/ArgoCDApplicationDeletionResponseMessage'
- ArgoCDApplicationDeletionResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: ArgoCD application has been deleted
- ArgoCDApplicationModificationResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponse_2'
- - type: object
- properties:
- message:
- $ref: '#/components/schemas/ArgoCDApplicationModificationResponseMessage'
- ArgoCDApplicationModificationResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: ArgoCD application has been updated
- ArgoCDApplicationRefreshResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponse_2'
- - type: object
- properties:
- message:
- $ref: '#/components/schemas/ArgoCDApplicationRefreshResponseMessage'
- ArgoCDApplicationRefreshResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: Refresh of ArgoCD application has been scheduled
- dockerRegistrySecretStatus:
- type: object
- properties:
- name:
- type: string
- description: Name of dockerRegistryStore
- example: mydockeregistry
- description: This represents the meta-data of a stored secret. The 'data' field of the secret is never retrieved.
- dockerRegistrySecretDeletionResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponse_2'
- - type: object
- properties:
- message:
- $ref: '#/components/schemas/dockerRegistrySecretDeletionResponseMessage'
- dockerRegistrySecretDeletionResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: Docker Registry Secret has been deleted
- dockerRegistrySecretModificationResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponse_2'
- - type: object
- properties:
- message:
- $ref: '#/components/schemas/dockerRegistrySecretModificationResponseMessage'
- dockerRegistrySecretModificationResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: Secret has been modified
- dockerRegistrySecretWithSensitiveDataRequest:
- required:
- - data
- type: object
- properties:
- data:
- type: object
- description: key:value pairs of data
- writeOnly: true
- description: This represents all the meta-data and extra information to be stored as a k8-secret
- dockerRegistrySecretStatusResponse:
- type: object
- description: This represents a list of meta-data of a stored secret. The 'data' field of the secret is never retrieved.
- allOf:
- - $ref: '#/components/schemas/ResourceList'
- - type: object
- properties:
- resources:
- type: array
- items:
- $ref: '#/components/schemas/dockerRegistrySecretStatus'
- dockerRegistrySecretCreationResponse:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - type: object
- properties:
- message:
- $ref: '#/components/schemas/dockerRegistrySecretCreationResponseMessage'
- dockerRegistrySecretCreationResponseMessage:
- allOf:
- - $ref: '#/components/schemas/CreationResponseMessage'
- - example: Secret has been created
- dockerRegistryNameComponent:
- maxLength: 63
- pattern: ^[a-z0-9](?:_?[a-z0-9\.\-]+)*[a-z0-9]$
- type: string
- description: Name of the docker Registry store for the secret.
- example: mydockeregistry
- ServiceList:
- type: object
- allOf:
- - $ref: '#/components/schemas/ResourceList'
- - type: object
- properties:
- resources:
- type: array
- items:
- $ref: '#/components/schemas/Service'
- Service:
- type: object
- allOf:
- - $ref: '#/components/schemas/ServiceBase'
- - type: object
- properties:
- status:
- type: string
- description: aggregated status of the service
- enum:
- - PROVISIONED
- - ERROR
- - PROVISIONING
- - DEPROVISIONING
- statusMessage:
- type: string
- description: status message
- ServiceBase:
- type: object
- properties:
- name:
- type: string
- description: service name
- description:
- type: string
- description: service description
- url:
- type: string
- description: service broker url
- ExtendedService:
- type: object
- allOf:
- - $ref: '#/components/schemas/ServiceBase'
- - $ref: '#/components/schemas/ServiceDetails'
- - type: object
- properties:
- status:
- type: string
- description: aggregated status of the service
- enum:
- - PROVISIONED
- - ERROR
- - PROVISIONING
- - DEPROVISIONING
- statusMessage:
- type: string
- description: status message
- ServiceDetails:
- type: object
- properties:
- brokerSecret:
- $ref: '#/components/schemas/ServiceBrokerSecret'
- capabilities:
- $ref: '#/components/schemas/ServiceCapabilities'
- serviceCatalog:
- $ref: '#/components/schemas/ServiceServiceCatalog'
- ServiceBrokerSecret:
- type: object
- properties:
- name:
- type: string
- description: broker secret name
- passwordKeyRef:
- type: string
- description: username key reference in broker secret
- usernameKeyRef:
- type: string
- description: password key reference in broker secret
- ServiceCapabilities:
- type: object
- properties:
- logs:
- $ref: '#/components/schemas/ServiceCapabilities_logs'
- basic:
- $ref: '#/components/schemas/ServiceCapabilities_basic'
- ServiceServiceCatalog:
- type: array
- items:
- $ref: '#/components/schemas/ServiceServiceCatalogItem'
- ServiceServiceCatalogItem:
- type: object
- properties:
- extendCatalog:
- $ref: '#/components/schemas/ServiceServiceCatalogItemExtendCatalog'
- extendCredentials:
- $ref: '#/components/schemas/ServiceServiceCatalogItemExtendCredentials'
- ServiceServiceCatalogItemExtendCatalog:
- type: object
- properties:
- bindable:
- type: boolean
- description: if the service is bindable
- description:
- type: string
- description: description of the service
- id:
- type: string
- description: id of the service
- name:
- type: string
- description: name of the service
- plans:
- type: array
- items:
- $ref: '#/components/schemas/ServiceServicePlanItem'
- ServiceServicePlanItem:
- type: object
- properties:
- description:
- type: string
- description: description of the service plan
- free:
- type: boolean
- description: if the service plan free
- id:
- type: string
- description: id of the service plan
- name:
- type: string
- description: name of the service plan
- metadata:
- $ref: '#/components/schemas/ServiceServicePlanItemMetadata'
- ServiceServicePlanItemMetadata:
- type: object
- properties:
- supportedPlatforms:
- type: array
- description: supported platforms of the service plan
- items:
- type: string
- enum:
- - cloudfoundry
- - kubernetes
- - sapbtp
- ServiceServiceCatalogItemExtendCredentials:
- type: object
- properties:
- shared:
- $ref: '#/components/schemas/ServiceServiceCatalogItemExtendCredentials_shared'
- CommonResourceQuotaResponse:
- required:
- - quota
- type: object
- properties:
- usage:
- $ref: '#/components/schemas/CommonResourceQuotaResponse_usage'
- quota:
- $ref: '#/components/schemas/CommonResourceQuotaResponse_quota'
- ExecutableResourceQuotaResponse:
- required:
- - quota
- type: object
- properties:
- usage:
- $ref: '#/components/schemas/ExecutableResourceQuotaResponse_usage'
- quota:
- $ref: '#/components/schemas/ExecutableResourceQuotaResponse_quota'
- name:
- type: string
- allOf:
- - $ref: '#/components/schemas/ArtifactName'
- inline_response_400:
- type: object
- properties:
- error:
- $ref: '#/components/schemas/ApiError'
- inline_response_400_1:
- type: object
- properties:
- error:
- $ref: '#/components/schemas/ApiError_2'
- inline_response_400_2:
- type: object
- properties:
- error:
- $ref: '#/components/schemas/Error'
- body:
- oneOf:
- - $ref: '#/components/schemas/ArgoCDApplicationData'
- - $ref: '#/components/schemas/ArgoCDApplicationDataRepoName'
- body_1:
- allOf:
- - $ref: '#/components/schemas/dockerRegistrySecretWithSensitiveDataRequest'
- - required:
- - name
- type: object
- properties:
- name:
- $ref: '#/components/schemas/dockerRegistryNameComponent'
- AiApi_capabilities_logs:
- type: object
- properties:
- executions:
- type: boolean
- default: true
- deployments:
- type: boolean
- default: true
- AiApi_capabilities_bulkUpdates:
- type: object
- properties:
- executions:
- type: boolean
- default: false
- deployments:
- type: boolean
- default: false
- description: Services that support patch on /executions and /deployments to change targetStatus of multiple executions and deployments.
- AiApi_capabilities:
- type: object
- properties:
- multitenant:
- type: boolean
- description: true-> AI API implementation supports resource groups (Main Tenant scenario), false-> implementation does not support resource groups (Service Tenant scenario)
- default: true
- shareable:
- type: boolean
- description: true-> clients can use just one instance (global static models), false-> clients should avoid sharing an instance
- default: true
- staticDeployments:
- type: boolean
- description: There are static always running endpoints that can be used for inference without the need to do user deployments.
- default: true
- userDeployments:
- type: boolean
- description: Services that only support batch inference typically neither allow listing nor creation of deployments. For these, userDeployments == false
- default: true
- userExecutions:
- type: boolean
- default: true
- timeToLiveDeployments:
- type: boolean
- default: false
- executionSchedules:
- type: boolean
- default: false
- logs:
- $ref: '#/components/schemas/AiApi_capabilities_logs'
- bulkUpdates:
- $ref: '#/components/schemas/AiApi_capabilities_bulkUpdates'
- AiApi_limits_executions:
- type: object
- properties:
- maxRunningCount:
- type: integer
- description: Max nr of executions allowed by this runtime per resource group. <0 means unlimited.
- default: -1
- AiApi_limits_deployments:
- type: object
- properties:
- maxRunningCount:
- type: integer
- description: Max nr of deployments allowed by this runtime per resource group. <0 means unlimited.
- default: -1
- AiApi_limits_timeToLiveDeployments:
- type: object
- properties:
- minimum:
- type: string
- default: 10m
- maximum:
- type: string
- default: -1
- AiApi_limits:
- type: object
- properties:
- executions:
- $ref: '#/components/schemas/AiApi_limits_executions'
- deployments:
- $ref: '#/components/schemas/AiApi_limits_deployments'
- timeToLiveDeployments:
- $ref: '#/components/schemas/AiApi_limits_timeToLiveDeployments'
- Error_details:
- required:
- - code
- - message
- properties:
- code:
- minLength: 1
- type: string
- message:
- minLength: 1
- type: string
- objectStoreSecretStatus_metadata:
- type: object
- properties:
- serving.kubeflow.org/s3-usehttps:
- type: string
- description: 0 and 1 values for setting the flag
- example: '1'
- serving.kubeflow.org/s3-verifyssl:
- type: string
- description: 0 and 1 values for setting the flag
- example: '0'
- serving.kubeflow.org/s3-endpoint:
- type: string
- description: Annotation for endpoint required by KF_Serving
- example: some_endpoint
- serving.kubeflow.org/s3-region:
- type: string
- description: Annotation for region required by KF_Serving
- example: EU
- storage.ai.sap.com/type:
- type: string
- description: Storage type of the secret
- example: S3
- storage.ai.sap.com/bucket:
- type: string
- description: bucket assigned to the secret on creation
- example: my_bucket
- storage.ai.sap.com/endpoint:
- type: string
- description: Endpoint assigned to the secret on creation
- example: some_endpoint
- storage.ai.sap.com/region:
- type: string
- description: Region of the storage server
- example: EU
- storage.ai.sap.com/pathPrefix:
- type: string
- description: Pathprefix type assigned to the secret on creation.
- example: mnist_folder
- storage.ai.sap.com/hdfsNameNode:
- type: string
- description: name node of the HDFS file system
- example: https://c3272xxxxxfa8f.files.hdl.canary-eu10.hanacloud.ondemand.com
- storage.ai.sap.com/headers:
- type: string
- description: headers for webHDFS and other protocols
- example: '{"x-sap-filecontainer": "c32727xxxxxxx322dcfa8f"}'
- storage.ai.sap.com/containerUri:
- type: string
- description: container uri of azure storage
- example: https://sapcv842awjkfb2.blob.core.windows.net/sapcp-osaas-xxx-xxxx-xxxx-xxxx-xxxx-zrs
- storage.ai.sap.com/subscriptionId:
- type: string
- description: subscription id
- example: dgewg2-gkrwnegiw
- storage.ai.sap.com/tenantId:
- type: string
- description: tenant id
- example: dawd2120-dadwad2
- description: Key value paris of meta-data assigned to the secret when the secret was being created.
- ArgoCDApplicationStatus_source:
- type: object
- properties:
- repoURL:
- type: string
- description: URL of the repository
- path:
- type: string
- description: Path of the repository
- revision:
- type: string
- description: Revision number of the ArgoCD application
- description: Information about the ArgoCD application itself
- ArgoCDApplicationStatus_syncResourcesStatus:
- type: object
- properties:
- name:
- type: string
- description: ArgoCD application object name
- kind:
- type: string
- description: ArgoCD application object kind
- status:
- type: string
- description: ArgoCD application object sync status
- message:
- type: string
- description: ArgoCD application object message
- ServiceCapabilities_logs:
- type: object
- properties:
- deployments:
- type: boolean
- executions:
- type: boolean
- description: Capabilities to read logs from deployments and executions.
- ServiceCapabilities_basic:
- type: object
- properties:
- staticDeployments:
- type: boolean
- description: There are static always running endpoints that can be used for inference without the need to do user deployments.
- userDeployments:
- type: boolean
- description: Services that only support batch inference typically neither allow listing nor creation of deployments. For these, userDeployments == false
- createExecutions:
- type: boolean
- description: Services that only support deployment typically neither allow create executions. For these, createExecutions == false
- multitenant:
- type: boolean
- description: true-> AI API implementation supports resource groups (Main Tenant scenario), false-> implementation does not support resource groups (Service Tenant scenario)
- description: Basic capabilities like creating deployments and executions.
- ServiceServiceCatalogItemExtendCredentials_shared_serviceUrls:
- type: object
- properties:
- AI_API_URL:
- type: string
- ServiceServiceCatalogItemExtendCredentials_shared:
- type: object
- properties:
- serviceUrls:
- $ref: '#/components/schemas/ServiceServiceCatalogItemExtendCredentials_shared_serviceUrls'
- CommonResourceQuotaResponse_usage:
- type: object
- properties:
- count:
- type: integer
- CommonResourceQuotaResponse_quota:
- type: object
- properties:
- maxCount:
- type: integer
- description: The value can be 0(disabled) or a positive integer defining the maximum allowed number
- example: 10
- ExecutableResourceQuotaResponse_usage:
- type: object
- properties:
- servingTemplateCount:
- type: integer
- workflowTemplateCount:
- type: integer
- ExecutableResourceQuotaResponse_quota:
- type: object
- properties:
- servingTemplateMaxCount:
- type: integer
- description: The value can be 0(disabled) or a positive integer defining the maximum allowed number
- example: 10
- workflowTemplateMaxCount:
- type: integer
- description: The value can be 0(disabled) or a positive integer defining the maximum allowed number
- example: 10
- securitySchemes:
- Oauth2:
- type: oauth2
- description: OAuth client credentials (client ID and secret) are required. These can be requested from SAP BTP cloud cockpit.
- flows:
- clientCredentials:
- tokenUrl: https://(subdomain_identity_zone).authentication.(host)/oauth/token
- scopes: {}
-x-sap-shortText: Create and manage AI scenarios, trainings, deployments, and artifacts in SAP AI Core.
diff --git a/packages/ai-core/src/ai-core.test.ts b/packages/ai-core/src/ai-core.test.ts
deleted file mode 100644
index 318f2022..00000000
--- a/packages/ai-core/src/ai-core.test.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-describe('test', () => {
- it('should work', () => {
- expect(true).toBe(true);
- });
-});
diff --git a/packages/ai-core/src/application-api.ts b/packages/ai-core/src/client/AI_CORE_API/application-api.ts
similarity index 83%
rename from packages/ai-core/src/application-api.ts
rename to packages/ai-core/src/client/AI_CORE_API/application-api.ts
index 780f324d..9b4a27c2 100644
--- a/packages/ai-core/src/application-api.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/application-api.ts
@@ -5,15 +5,15 @@
*/
import { OpenApiRequestBuilder } from '@sap-cloud-sdk/openapi';
import type {
- AllArgoCDApplicationData,
- Body,
- ArgoCDApplicationCreationResponse,
- ArgoCDApplicationStatus,
- ArgoCDApplicationData,
- ArgoCDApplicationBaseData,
- ArgoCDApplicationModificationResponse,
- ArgoCDApplicationDeletionResponse,
- ArgoCDApplicationRefreshResponse
+ BckndAllArgoCDApplicationData,
+ BckndArgoCDApplicationData,
+ BckndArgoCDApplicationDataRepoName,
+ BckndArgoCDApplicationCreationResponse,
+ BckndArgoCDApplicationStatus,
+ BckndArgoCDApplicationBaseData,
+ BckndArgoCDApplicationModificationResponse,
+ BckndArgoCDApplicationDeletionResponse,
+ BckndArgoCDApplicationRefreshResponse
} from './schema/index.js';
/**
* Representation of the 'ApplicationApi'.
@@ -31,7 +31,7 @@ export const ApplicationApi = {
queryParameters?: { $top?: number; $skip?: number; $count?: boolean },
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/admin/applications',
{
@@ -47,10 +47,10 @@ export const ApplicationApi = {
* @returns The request builder, use the `execute()` method to trigger the request.
*/
kubesubmitV4ApplicationsCreate: (
- body: Body,
+ body: BckndArgoCDApplicationData | BckndArgoCDApplicationDataRepoName,
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'post',
'/admin/applications',
{
@@ -69,7 +69,7 @@ export const ApplicationApi = {
applicationName: string,
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/admin/applications/{applicationName}/status',
{
@@ -88,7 +88,7 @@ export const ApplicationApi = {
applicationName: string,
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/admin/applications/{applicationName}',
{
@@ -106,10 +106,10 @@ export const ApplicationApi = {
*/
kubesubmitV4ApplicationsUpdate: (
applicationName: string,
- body: ArgoCDApplicationBaseData,
+ body: BckndArgoCDApplicationBaseData,
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'patch',
'/admin/applications/{applicationName}',
{
@@ -128,7 +128,7 @@ export const ApplicationApi = {
applicationName: string,
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'delete',
'/admin/applications/{applicationName}',
{
@@ -147,7 +147,7 @@ export const ApplicationApi = {
applicationName: string,
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'post',
'/admin/applications/{applicationName}/refresh',
{
diff --git a/packages/ai-core/src/artifact-api.test.ts b/packages/ai-core/src/client/AI_CORE_API/artifact-api.test.ts
similarity index 78%
rename from packages/ai-core/src/artifact-api.test.ts
rename to packages/ai-core/src/client/AI_CORE_API/artifact-api.test.ts
index 22943ddc..082cd4e0 100644
--- a/packages/ai-core/src/artifact-api.test.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/artifact-api.test.ts
@@ -1,11 +1,11 @@
import nock from 'nock';
import { HttpDestination } from '@sap-cloud-sdk/connectivity';
import {
- ArtifactApi,
- ArtifactCreationResponse,
- ArtifactList,
- ArtifactPostData
-} from './index.js';
+ AiArtifactCreationResponse,
+ AiArtifactList,
+ AiArtifactPostData
+} from './schema/index.js';
+import { ArtifactApi } from './artifact-api.js';
describe('artifact', () => {
const destination: HttpDestination = {
@@ -17,7 +17,7 @@ describe('artifact', () => {
});
it('parses a successful response for get request', async () => {
- const expectedResponse: ArtifactList = {
+ const expectedResponse: AiArtifactList = {
count: 1,
resources: [
{
@@ -43,7 +43,7 @@ describe('artifact', () => {
'Content-Type': 'application/json'
});
- const result: ArtifactList = await ArtifactApi.artifactQuery(
+ const result: AiArtifactList = await ArtifactApi.artifactQuery(
{},
{ 'AI-Resource-Group': 'default' }
).execute(destination);
@@ -52,7 +52,7 @@ describe('artifact', () => {
});
it('parses a successful response for post request', async () => {
- const expectedResponse: ArtifactCreationResponse = {
+ const expectedResponse: AiArtifactCreationResponse = {
id: '3d2c1b0a',
message: 'Artifact acknowledged',
url: 'ai://default/spam/data'
@@ -68,7 +68,7 @@ describe('artifact', () => {
'Content-Type': 'application/json'
});
- const artifactPostData: ArtifactPostData = {
+ const AiArtifactPostData: AiArtifactPostData = {
description: 'dataset for training test',
kind: 'dataset',
name: 'training-test-data',
@@ -76,8 +76,8 @@ describe('artifact', () => {
url: 'ai://default/spam/data'
};
- const result: ArtifactCreationResponse = await ArtifactApi.artifactCreate(
- artifactPostData,
+ const result: AiArtifactCreationResponse = await ArtifactApi.artifactCreate(
+ AiArtifactPostData,
{ 'AI-Resource-Group': 'default' }
).execute(destination);
diff --git a/packages/ai-core/src/artifact-api.ts b/packages/ai-core/src/client/AI_CORE_API/artifact-api.ts
similarity index 90%
rename from packages/ai-core/src/artifact-api.ts
rename to packages/ai-core/src/client/AI_CORE_API/artifact-api.ts
index 76a4cb16..2402ae6b 100644
--- a/packages/ai-core/src/artifact-api.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/artifact-api.ts
@@ -5,11 +5,11 @@
*/
import { OpenApiRequestBuilder } from '@sap-cloud-sdk/openapi';
import type {
- ArtifactList,
- Name_1,
- ArtifactPostData,
- ArtifactCreationResponse,
- Artifact
+ AiArtifactList,
+ AiArtifactName,
+ AiArtifactPostData,
+ AiArtifactCreationResponse,
+ AiArtifact
} from './schema/index.js';
/**
* Representation of the 'ArtifactApi'.
@@ -30,7 +30,7 @@ export const ArtifactApi = {
queryParameters: {
scenarioId?: string;
executionId?: string;
- name?: Name_1;
+ name?: AiArtifactName;
kind?: 'model' | 'dataset' | 'resultset' | 'other';
artifactLabelSelector?: string[];
$top?: number;
@@ -41,7 +41,7 @@ export const ArtifactApi = {
},
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder('get', '/lm/artifacts', {
+ new OpenApiRequestBuilder('get', '/lm/artifacts', {
queryParameters,
headerParameters
}),
@@ -52,10 +52,10 @@ export const ArtifactApi = {
* @returns The request builder, use the `execute()` method to trigger the request.
*/
artifactCreate: (
- body: ArtifactPostData,
+ body: AiArtifactPostData,
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'post',
'/lm/artifacts',
{
@@ -75,7 +75,7 @@ export const ArtifactApi = {
queryParameters: { $expand?: 'scenario' },
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder('get', '/lm/artifacts/{artifactId}', {
+ new OpenApiRequestBuilder('get', '/lm/artifacts/{artifactId}', {
pathParameters: { artifactId },
queryParameters,
headerParameters
@@ -93,7 +93,7 @@ export const ArtifactApi = {
queryParameters: {
scenarioId?: string;
executionId?: string;
- name?: Name_1;
+ name?: AiArtifactName;
kind?: 'model' | 'dataset' | 'resultset' | 'other';
$search?: string;
searchCaseInsensitive?: boolean;
diff --git a/packages/ai-core/src/configuration-api.test.ts b/packages/ai-core/src/client/AI_CORE_API/configuration-api.test.ts
similarity index 77%
rename from packages/ai-core/src/configuration-api.test.ts
rename to packages/ai-core/src/client/AI_CORE_API/configuration-api.test.ts
index 0731f1b7..4be1b616 100644
--- a/packages/ai-core/src/configuration-api.test.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/configuration-api.test.ts
@@ -1,11 +1,11 @@
import nock from 'nock';
import { HttpDestination } from '@sap-cloud-sdk/connectivity';
import {
- ConfigurationApi,
- ConfigurationBaseData,
- ConfigurationCreationResponse,
- ConfigurationList
-} from './index.js';
+ AiConfigurationBaseData,
+ AiConfigurationCreationResponse,
+ AiConfigurationList
+} from './schema/index.js';
+import { ConfigurationApi } from './configuration-api.js';
describe('configuration', () => {
const destination: HttpDestination = {
@@ -17,7 +17,7 @@ describe('configuration', () => {
});
it('parses a successful response for get request', async () => {
- const expectedResponse: ConfigurationList = {
+ const expectedResponse: AiConfigurationList = {
count: 1,
resources: [
{
@@ -51,16 +51,17 @@ describe('configuration', () => {
'Content-Type': 'application/json'
});
- const result: ConfigurationList = await ConfigurationApi.configurationQuery(
- {},
- { 'AI-Resource-Group': 'default' }
- ).execute(destination);
+ const result: AiConfigurationList =
+ await ConfigurationApi.configurationQuery(
+ {},
+ { 'AI-Resource-Group': 'default' }
+ ).execute(destination);
expect(result).toEqual(expectedResponse);
});
it('parses a successful response for post request', async () => {
- const expectedResponse: ConfigurationCreationResponse = {
+ const expectedResponse: AiConfigurationCreationResponse = {
id: '3d2c1b0a',
message: 'Configuration created'
};
@@ -75,7 +76,7 @@ describe('configuration', () => {
'Content-Type': 'application/json'
});
- const configurationPostData: ConfigurationBaseData = {
+ const configurationPostData: AiConfigurationBaseData = {
name: 'training-test-config',
executableId: 'azure-openai',
scenarioId: 'foundation-models',
@@ -87,7 +88,7 @@ describe('configuration', () => {
]
};
- const result: ConfigurationCreationResponse =
+ const result: AiConfigurationCreationResponse =
await ConfigurationApi.configurationCreate(configurationPostData, {
'AI-Resource-Group': 'default'
}).execute(destination);
diff --git a/packages/ai-core/src/configuration-api.ts b/packages/ai-core/src/client/AI_CORE_API/configuration-api.ts
similarity index 89%
rename from packages/ai-core/src/configuration-api.ts
rename to packages/ai-core/src/client/AI_CORE_API/configuration-api.ts
index b3223fda..6b6a15d2 100644
--- a/packages/ai-core/src/configuration-api.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/configuration-api.ts
@@ -5,10 +5,10 @@
*/
import { OpenApiRequestBuilder } from '@sap-cloud-sdk/openapi';
import type {
- ConfigurationList,
- ConfigurationBaseData,
- ConfigurationCreationResponse,
- Configuration
+ AiConfigurationList,
+ AiConfigurationBaseData,
+ AiConfigurationCreationResponse,
+ AiConfiguration
} from './schema/index.js';
/**
* Representation of the 'ConfigurationApi'.
@@ -35,10 +35,14 @@ export const ConfigurationApi = {
},
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder('get', '/lm/configurations', {
- queryParameters,
- headerParameters
- }),
+ new OpenApiRequestBuilder(
+ 'get',
+ '/lm/configurations',
+ {
+ queryParameters,
+ headerParameters
+ }
+ ),
/**
* Create a new configuration linked to a specific scenario and executable for use in an execution
* or deployment.
@@ -48,10 +52,10 @@ export const ConfigurationApi = {
* @returns The request builder, use the `execute()` method to trigger the request.
*/
configurationCreate: (
- body: ConfigurationBaseData,
+ body: AiConfigurationBaseData,
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'post',
'/lm/configurations',
{
@@ -71,7 +75,7 @@ export const ConfigurationApi = {
queryParameters: { $expand?: 'scenario' },
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/lm/configurations/{configurationId}',
{
diff --git a/packages/ai-core/src/deployment-api.test.ts b/packages/ai-core/src/client/AI_CORE_API/deployment-api.test.ts
similarity index 80%
rename from packages/ai-core/src/deployment-api.test.ts
rename to packages/ai-core/src/client/AI_CORE_API/deployment-api.test.ts
index a8860993..bbd9c001 100644
--- a/packages/ai-core/src/deployment-api.test.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/deployment-api.test.ts
@@ -1,15 +1,15 @@
import nock from 'nock';
import { HttpDestination } from '@sap-cloud-sdk/connectivity';
import {
- DeploymentCreationRequest,
- DeploymentCreationResponse,
- DeploymentDeletionResponse,
- DeploymentList,
- DeploymentModificationRequest,
- DeploymentApi,
- DeploymentModificationResponse,
- DeploymentTargetStatus
-} from './index.js';
+ AiDeploymentCreationRequest,
+ AiDeploymentCreationResponse,
+ AiDeploymentDeletionResponse,
+ AiDeploymentList,
+ AiDeploymentModificationRequest,
+ AiDeploymentModificationResponse,
+ AiDeploymentTargetStatus
+} from './schema/index.js';
+import { DeploymentApi } from './deployment-api.js';
describe('deployment', () => {
const destination: HttpDestination = {
@@ -21,7 +21,7 @@ describe('deployment', () => {
});
it('parses a successful response for get request', async () => {
- const expectedResponse: DeploymentList = {
+ const expectedResponse: AiDeploymentList = {
count: 1,
resources: [
{
@@ -66,7 +66,7 @@ describe('deployment', () => {
'Content-Type': 'application/json'
});
- const result: DeploymentList = await DeploymentApi.deploymentQuery(
+ const result: AiDeploymentList = await DeploymentApi.deploymentQuery(
{},
{ 'AI-Resource-Group': 'default' }
).execute(destination);
@@ -75,7 +75,7 @@ describe('deployment', () => {
});
it('parses a successful response for post request', async () => {
- const expectedResponse: DeploymentCreationResponse = {
+ const expectedResponse: AiDeploymentCreationResponse = {
deploymentUrl: '',
id: '4e5f6g7h',
message: 'Deployment scheduled',
@@ -92,11 +92,11 @@ describe('deployment', () => {
'Content-Type': 'application/json'
});
- const deploymentPostData: DeploymentCreationRequest = {
+ const deploymentPostData: AiDeploymentCreationRequest = {
configurationId: '3d2c1b0a'
};
- const result: DeploymentCreationResponse =
+ const result: AiDeploymentCreationResponse =
await DeploymentApi.deploymentCreate(deploymentPostData, {
'AI-Resource-Group': 'default'
}).execute(destination);
@@ -109,7 +109,7 @@ describe('deployment', () => {
const expectedRequestBody = {
targetStatus: 'STOPPED'
};
- const expectedResponse: DeploymentModificationResponse = {
+ const expectedResponse: AiDeploymentModificationResponse = {
id: '4e5f6g7h',
message: 'Deployment modification scheduled'
};
@@ -127,11 +127,11 @@ describe('deployment', () => {
'Content-Type': 'application/json'
});
- const deploymentPatchData: DeploymentModificationRequest = {
- targetStatus: 'STOPPED' as DeploymentTargetStatus
+ const deploymentPatchData: AiDeploymentModificationRequest = {
+ targetStatus: 'STOPPED' as AiDeploymentTargetStatus
};
- const result: DeploymentModificationResponse =
+ const result: AiDeploymentModificationResponse =
await DeploymentApi.deploymentModify(deploymentId, deploymentPatchData, {
'AI-Resource-Group': 'default'
}).execute(destination);
@@ -141,7 +141,7 @@ describe('deployment', () => {
it('parses a successful response for delete request', async () => {
const deploymentId = '4e5f6g7h';
- const expectedResponse: DeploymentDeletionResponse = {
+ const expectedResponse: AiDeploymentDeletionResponse = {
id: '4e5f6g7h',
message: 'Deletion scheduled',
targetStatus: 'DELETED'
@@ -157,7 +157,7 @@ describe('deployment', () => {
'Content-Type': 'application/json'
});
- const result: DeploymentDeletionResponse =
+ const result: AiDeploymentDeletionResponse =
await DeploymentApi.deploymentDelete(deploymentId, {
'AI-Resource-Group': 'default'
}).execute(destination);
diff --git a/packages/ai-core/src/deployment-api.ts b/packages/ai-core/src/client/AI_CORE_API/deployment-api.ts
similarity index 79%
rename from packages/ai-core/src/deployment-api.ts
rename to packages/ai-core/src/client/AI_CORE_API/deployment-api.ts
index 24bbad86..e8141da9 100644
--- a/packages/ai-core/src/deployment-api.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/deployment-api.ts
@@ -5,39 +5,22 @@
*/
import { OpenApiRequestBuilder } from '@sap-cloud-sdk/openapi';
import type {
- DeploymentCreationResponse,
- DeploymentList,
- DeploymentCreationRequest,
- DeploymentBulkModificationResponse,
- DeploymentResponseWithDetails,
- DeploymentModificationRequest,
- DeploymentModificationResponse,
- DeploymentDeletionResponse,
- LogCommonResponse
+ AiDeploymentList,
+ AiDeploymentCreationRequest,
+ AiDeploymentCreationResponse,
+ AiDeploymentBulkModificationRequest,
+ AiDeploymentBulkModificationResponse,
+ AiDeploymentResponseWithDetails,
+ AiDeploymentModificationRequest,
+ AiDeploymentModificationResponse,
+ AiDeploymentDeletionResponse,
+ RTALogCommonResponse
} from './schema/index.js';
/**
* Representation of the 'DeploymentApi'.
* This API is part of the 'AI_CORE_API' service.
*/
export const DeploymentApi = {
- /**
- * Create deployment. Deprecated, use POST /deployments instead
- * @param configurationId - Configuration identifier
- * @param headerParameters - Object containing the following keys: AI-Resource-Group.
- * @returns The request builder, use the `execute()` method to trigger the request.
- */
- deploymentCreateDeprecated: (
- configurationId: string,
- headerParameters: { 'AI-Resource-Group': string }
- ) =>
- new OpenApiRequestBuilder(
- 'post',
- '/lm/configurations/{configurationId}/deployments',
- {
- pathParameters: { configurationId },
- headerParameters
- }
- ),
/**
* Retrieve a list of deployments that match the specified filter criteria.
* Filter criteria include a list of executableIds, a scenarioId, a configurationId, or a deployment status.
@@ -67,21 +50,23 @@ export const DeploymentApi = {
},
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder('get', '/lm/deployments', {
+ new OpenApiRequestBuilder('get', '/lm/deployments', {
queryParameters,
headerParameters
}),
/**
- * Create a deployment using the configuration specified by configurationId.
+ * Create a deployment using the configuration specified by configurationId after synchronously checking the
+ * correctness of the configuration.
+ *
* @param body - Request body.
* @param headerParameters - Object containing the following keys: AI-Resource-Group.
* @returns The request builder, use the `execute()` method to trigger the request.
*/
deploymentCreate: (
- body: DeploymentCreationRequest,
+ body: AiDeploymentCreationRequest,
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'post',
'/lm/deployments',
{
@@ -96,10 +81,10 @@ export const DeploymentApi = {
* @returns The request builder, use the `execute()` method to trigger the request.
*/
deploymentBatchModify: (
- body: any,
+ body: AiDeploymentBulkModificationRequest,
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'patch',
'/lm/deployments',
{
@@ -119,7 +104,7 @@ export const DeploymentApi = {
queryParameters: { $select?: 'status' },
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/lm/deployments/{deploymentId}',
{
@@ -129,7 +114,10 @@ export const DeploymentApi = {
}
),
/**
- * Update target status of a deployment to stop a deployment or change the configuration to be used by the deployment. A change of configuration is only allowed for RUNNING and PENDING deployments.
+ * Update target status of a deployment to stop a deployment or change the configuration to be used by the
+ * deployment after synchronously checking the correctness of the configuration. A change of configuration is only
+ * allowed for RUNNING and PENDING deployments.
+ *
* @param deploymentId - Deployment identifier
* @param body - Request body.
* @param headerParameters - Object containing the following keys: AI-Resource-Group.
@@ -137,10 +125,10 @@ export const DeploymentApi = {
*/
deploymentModify: (
deploymentId: string,
- body: DeploymentModificationRequest,
+ body: AiDeploymentModificationRequest,
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'patch',
'/lm/deployments/{deploymentId}',
{
@@ -159,7 +147,7 @@ export const DeploymentApi = {
deploymentId: string,
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'delete',
'/lm/deployments/{deploymentId}',
{
@@ -212,7 +200,7 @@ export const DeploymentApi = {
},
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/lm/deployments/{deploymentId}/logs',
{
diff --git a/packages/ai-core/src/docker-registry-secret-api.ts b/packages/ai-core/src/client/AI_CORE_API/docker-registry-secret-api.ts
similarity index 80%
rename from packages/ai-core/src/docker-registry-secret-api.ts
rename to packages/ai-core/src/client/AI_CORE_API/docker-registry-secret-api.ts
index 28355f78..9474ac31 100644
--- a/packages/ai-core/src/docker-registry-secret-api.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/docker-registry-secret-api.ts
@@ -5,12 +5,13 @@
*/
import { OpenApiRequestBuilder } from '@sap-cloud-sdk/openapi';
import type {
- DockerRegistrySecretStatus,
- DockerRegistrySecretModificationResponse,
- DockerRegistrySecretDeletionResponse,
- DockerRegistrySecretStatusResponse,
- Body1,
- DockerRegistrySecretCreationResponse
+ BcknddockerRegistrySecretStatus,
+ BcknddockerRegistrySecretWithSensitiveDataRequest,
+ BcknddockerRegistrySecretModificationResponse,
+ BcknddockerRegistrySecretDeletionResponse,
+ BcknddockerRegistrySecretStatusResponse,
+ BcknddockerRegistryNameComponent,
+ BcknddockerRegistrySecretCreationResponse
} from './schema/index.js';
/**
* Representation of the 'DockerRegistrySecretApi'.
@@ -28,7 +29,7 @@ export const DockerRegistrySecretApi = {
dockerRegistryName: string,
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/admin/dockerRegistrySecrets/{dockerRegistryName}',
{
@@ -46,10 +47,10 @@ export const DockerRegistrySecretApi = {
*/
kubesubmitV4DockerRegistrySecretsPatch: (
dockerRegistryName: string,
- body: any,
+ body: BcknddockerRegistrySecretWithSensitiveDataRequest,
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'patch',
'/admin/dockerRegistrySecrets/{dockerRegistryName}',
{
@@ -68,7 +69,7 @@ export const DockerRegistrySecretApi = {
dockerRegistryName: string,
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'delete',
'/admin/dockerRegistrySecrets/{dockerRegistryName}',
{
@@ -87,7 +88,7 @@ export const DockerRegistrySecretApi = {
queryParameters?: { $top?: number; $skip?: number; $count?: boolean },
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/admin/dockerRegistrySecrets',
{
@@ -103,10 +104,12 @@ export const DockerRegistrySecretApi = {
* @returns The request builder, use the `execute()` method to trigger the request.
*/
kubesubmitV4DockerRegistrySecretsCreate: (
- body: Body1,
+ body: BcknddockerRegistrySecretWithSensitiveDataRequest & {
+ name: BcknddockerRegistryNameComponent;
+ } & Record,
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'post',
'/admin/dockerRegistrySecrets',
{
diff --git a/packages/ai-core/src/executable-api.ts b/packages/ai-core/src/client/AI_CORE_API/executable-api.ts
similarity index 91%
rename from packages/ai-core/src/executable-api.ts
rename to packages/ai-core/src/client/AI_CORE_API/executable-api.ts
index 513b301f..bb93daee 100644
--- a/packages/ai-core/src/executable-api.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/executable-api.ts
@@ -4,7 +4,7 @@
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
import { OpenApiRequestBuilder } from '@sap-cloud-sdk/openapi';
-import type { ExecutableList, Executable } from './schema/index.js';
+import type { AiExecutableList, AiExecutable } from './schema/index.js';
/**
* Representation of the 'ExecutableApi'.
* This API is part of the 'AI_CORE_API' service.
@@ -23,7 +23,7 @@ export const ExecutableApi = {
queryParameters: { versionId?: string },
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/lm/scenarios/{scenarioId}/executables',
{
@@ -46,7 +46,7 @@ export const ExecutableApi = {
executableId: string,
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/lm/scenarios/{scenarioId}/executables/{executableId}',
{
diff --git a/packages/ai-core/src/execution-api.test.ts b/packages/ai-core/src/client/AI_CORE_API/execution-api.test.ts
similarity index 84%
rename from packages/ai-core/src/execution-api.test.ts
rename to packages/ai-core/src/client/AI_CORE_API/execution-api.test.ts
index 07914ef6..0098d816 100644
--- a/packages/ai-core/src/execution-api.test.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/execution-api.test.ts
@@ -1,11 +1,11 @@
import nock from 'nock';
import { HttpDestination } from '@sap-cloud-sdk/connectivity';
import {
- EnactmentCreationRequest,
- ExecutionApi,
- ExecutionCreationResponse,
- ExecutionList
-} from './index.js';
+ AiEnactmentCreationRequest,
+ AiExecutionCreationResponse,
+ AiExecutionList
+} from './schema/index.js';
+import { ExecutionApi } from './execution-api.js';
describe('execution', () => {
const destination: HttpDestination = {
@@ -17,7 +17,7 @@ describe('execution', () => {
});
it('parses a successful response for get request', async () => {
- const expectedResponse: ExecutionList = {
+ const expectedResponse: AiExecutionList = {
count: 1,
resources: [
{
@@ -59,7 +59,7 @@ describe('execution', () => {
'Content-Type': 'application/json'
});
- const result: ExecutionList = await ExecutionApi.executionQuery(
+ const result: AiExecutionList = await ExecutionApi.executionQuery(
{},
{ 'AI-Resource-Group': 'default' }
).execute(destination);
@@ -68,7 +68,7 @@ describe('execution', () => {
});
it('parses a successful response for post request', async () => {
- const expectedResponse: ExecutionCreationResponse = {
+ const expectedResponse: AiExecutionCreationResponse = {
id: '8i9j0k1l',
message: 'Execution acknowledged',
url: 'ai://default/8i9j0k1l'
@@ -83,11 +83,11 @@ describe('execution', () => {
'Content-Type': 'application/json'
});
- const executionPostData: EnactmentCreationRequest = {
+ const executionPostData: AiEnactmentCreationRequest = {
configurationId: '8i9j0k1l'
};
- const result: ExecutionCreationResponse =
+ const result: AiExecutionCreationResponse =
await ExecutionApi.executionCreate(executionPostData, {
'AI-Resource-Group': 'default'
}).execute(destination);
diff --git a/packages/ai-core/src/execution-api.ts b/packages/ai-core/src/client/AI_CORE_API/execution-api.ts
similarity index 81%
rename from packages/ai-core/src/execution-api.ts
rename to packages/ai-core/src/client/AI_CORE_API/execution-api.ts
index 835236e1..8cb87dec 100644
--- a/packages/ai-core/src/execution-api.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/execution-api.ts
@@ -5,39 +5,22 @@
*/
import { OpenApiRequestBuilder } from '@sap-cloud-sdk/openapi';
import type {
- ExecutionCreationResponse,
- ExecutionList,
- EnactmentCreationRequest,
- ExecutionBulkModificationResponse,
- ExecutionResponseWithDetails,
- ExecutionModificationRequest,
- ExecutionModificationResponse,
- ExecutionDeletionResponse,
- LogCommonResponse
+ AiExecutionList,
+ AiEnactmentCreationRequest,
+ AiExecutionCreationResponse,
+ AiExecutionBulkModificationRequest,
+ AiExecutionBulkModificationResponse,
+ AiExecutionResponseWithDetails,
+ AiExecutionModificationRequest,
+ AiExecutionModificationResponse,
+ AiExecutionDeletionResponse,
+ RTALogCommonResponse
} from './schema/index.js';
/**
* Representation of the 'ExecutionApi'.
* This API is part of the 'AI_CORE_API' service.
*/
export const ExecutionApi = {
- /**
- * Trigger execution. Deprecated. Use POST /executions instead
- * @param configurationId - Configuration identifier
- * @param headerParameters - Object containing the following keys: AI-Resource-Group.
- * @returns The request builder, use the `execute()` method to trigger the request.
- */
- executionCreateDeprecated: (
- configurationId: string,
- headerParameters: { 'AI-Resource-Group': string }
- ) =>
- new OpenApiRequestBuilder(
- 'post',
- '/lm/configurations/{configurationId}/executions',
- {
- pathParameters: { configurationId },
- headerParameters
- }
- ),
/**
* Retrieve a list of executions that match the specified filter criteria.
* Filter criteria include a list of executableIds, a scenarioId, a configurationId, or a execution status.
@@ -68,7 +51,7 @@ export const ExecutionApi = {
},
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder('get', '/lm/executions', {
+ new OpenApiRequestBuilder('get', '/lm/executions', {
queryParameters,
headerParameters
}),
@@ -79,10 +62,10 @@ export const ExecutionApi = {
* @returns The request builder, use the `execute()` method to trigger the request.
*/
executionCreate: (
- body: EnactmentCreationRequest,
+ body: AiEnactmentCreationRequest,
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'post',
'/lm/executions',
{
@@ -97,10 +80,10 @@ export const ExecutionApi = {
* @returns The request builder, use the `execute()` method to trigger the request.
*/
executionBatchModify: (
- body: any,
+ body: AiExecutionBulkModificationRequest,
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'patch',
'/lm/executions',
{
@@ -120,7 +103,7 @@ export const ExecutionApi = {
queryParameters: { $select?: 'status' },
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/lm/executions/{executionId}',
{
@@ -138,10 +121,10 @@ export const ExecutionApi = {
*/
executionModify: (
executionId: string,
- body: ExecutionModificationRequest,
+ body: AiExecutionModificationRequest,
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'patch',
'/lm/executions/{executionId}',
{
@@ -160,7 +143,7 @@ export const ExecutionApi = {
executionId: string,
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'delete',
'/lm/executions/{executionId}',
{
@@ -214,7 +197,7 @@ export const ExecutionApi = {
},
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/lm/executions/{executionId}/logs',
{
diff --git a/packages/ai-core/src/execution-schedule-api.ts b/packages/ai-core/src/client/AI_CORE_API/execution-schedule-api.ts
similarity index 86%
rename from packages/ai-core/src/execution-schedule-api.ts
rename to packages/ai-core/src/client/AI_CORE_API/execution-schedule-api.ts
index 9563d827..308858ae 100644
--- a/packages/ai-core/src/execution-schedule-api.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/execution-schedule-api.ts
@@ -5,13 +5,13 @@
*/
import { OpenApiRequestBuilder } from '@sap-cloud-sdk/openapi';
import type {
- ExecutionScheduleList,
- ExecutionScheduleCreationData,
- ExecutionScheduleCreationResponse,
- ExecutionSchedule,
- ExecutionScheduleModificationRequest,
- ExecutionScheduleModificationResponse,
- ExecutionScheduleDeletionResponse
+ AiExecutionScheduleList,
+ AiExecutionScheduleCreationData,
+ AiExecutionScheduleCreationResponse,
+ AiExecutionSchedule,
+ AiExecutionScheduleModificationRequest,
+ AiExecutionScheduleModificationResponse,
+ AiExecutionScheduleDeletionResponse
} from './schema/index.js';
/**
* Representation of the 'ExecutionScheduleApi'.
@@ -36,7 +36,7 @@ export const ExecutionScheduleApi = {
},
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/lm/executionSchedules',
{
@@ -51,10 +51,10 @@ export const ExecutionScheduleApi = {
* @returns The request builder, use the `execute()` method to trigger the request.
*/
executionScheduleCreate: (
- body: ExecutionScheduleCreationData,
+ body: AiExecutionScheduleCreationData,
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'post',
'/lm/executionSchedules',
{
@@ -72,7 +72,7 @@ export const ExecutionScheduleApi = {
executionScheduleId: string,
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/lm/executionSchedules/{executionScheduleId}',
{
@@ -89,10 +89,10 @@ export const ExecutionScheduleApi = {
*/
executionScheduleModify: (
executionScheduleId: string,
- body: ExecutionScheduleModificationRequest,
+ body: AiExecutionScheduleModificationRequest,
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'patch',
'/lm/executionSchedules/{executionScheduleId}',
{
@@ -111,7 +111,7 @@ export const ExecutionScheduleApi = {
executionScheduleId: string,
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'delete',
'/lm/executionSchedules/{executionScheduleId}',
{
diff --git a/packages/ai-core/src/file-api.ts b/packages/ai-core/src/client/AI_CORE_API/file-api.ts
similarity index 96%
rename from packages/ai-core/src/file-api.ts
rename to packages/ai-core/src/client/AI_CORE_API/file-api.ts
index 91a41718..864eda31 100644
--- a/packages/ai-core/src/file-api.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/file-api.ts
@@ -4,7 +4,7 @@
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
import { OpenApiRequestBuilder } from '@sap-cloud-sdk/openapi';
-import type { FileCreationResponse } from './schema/index.js';
+import type { DSetFileCreationResponse } from './schema/index.js';
/**
* Representation of the 'FileApi'.
* This API is part of the 'AI_CORE_API' service.
@@ -54,7 +54,7 @@ export const FileApi = {
queryParameters?: { overwrite?: boolean },
headerParameters?: { 'AI-Resource-Group'?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'put',
'/lm/dataset/files/{path}',
{
diff --git a/packages/ai-core/src/client/AI_CORE_API/index.ts b/packages/ai-core/src/client/AI_CORE_API/index.ts
new file mode 100644
index 00000000..88db80b1
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/index.ts
@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+export * from './artifact-api.js';
+export * from './configuration-api.js';
+export * from './deployment-api.js';
+export * from './execution-api.js';
+export * from './execution-schedule-api.js';
+export * from './scenario-api.js';
+export * from './executable-api.js';
+export * from './model-api.js';
+export * from './meta-api.js';
+export * from './metrics-api.js';
+export * from './kpi-api.js';
+export * from './file-api.js';
+export * from './object-store-secret-api.js';
+export * from './secret-api.js';
+export * from './resource-group-api.js';
+export * from './resource-api.js';
+export * from './repository-api.js';
+export * from './application-api.js';
+export * from './docker-registry-secret-api.js';
+export * from './service-api.js';
+export * from './resource-quota-api.js';
+export * from './schema/index.js';
diff --git a/packages/ai-core/src/kpi-api.ts b/packages/ai-core/src/client/AI_CORE_API/kpi-api.ts
similarity index 78%
rename from packages/ai-core/src/kpi-api.ts
rename to packages/ai-core/src/client/AI_CORE_API/kpi-api.ts
index 982653a3..ea894873 100644
--- a/packages/ai-core/src/kpi-api.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/kpi-api.ts
@@ -4,7 +4,7 @@
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
import { OpenApiRequestBuilder } from '@sap-cloud-sdk/openapi';
-import type { ResultSet, ArrayOfColumnNames } from './schema/index.js';
+import type { KpiResultSet, KpiColumnName } from './schema/index.js';
/**
* Representation of the 'KPIApi'.
* This API is part of the 'AI_CORE_API' service.
@@ -17,8 +17,8 @@ export const KPIApi = {
* @param queryParameters - Object containing the following keys: $select.
* @returns The request builder, use the `execute()` method to trigger the request.
*/
- kpiGet: (queryParameters?: { $select?: ArrayOfColumnNames }) =>
- new OpenApiRequestBuilder('get', '/analytics/kpis', {
+ kpiGet: (queryParameters?: { $select?: Set }) =>
+ new OpenApiRequestBuilder('get', '/analytics/kpis', {
queryParameters
})
};
diff --git a/packages/ai-core/src/meta-api.ts b/packages/ai-core/src/client/AI_CORE_API/meta-api.ts
similarity index 79%
rename from packages/ai-core/src/meta-api.ts
rename to packages/ai-core/src/client/AI_CORE_API/meta-api.ts
index 761ce8f6..457e12a0 100644
--- a/packages/ai-core/src/meta-api.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/meta-api.ts
@@ -4,7 +4,7 @@
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
import { OpenApiRequestBuilder } from '@sap-cloud-sdk/openapi';
-import type { Capabilities } from './schema/index.js';
+import type { MetaCapabilities } from './schema/index.js';
/**
* Representation of the 'MetaApi'.
* This API is part of the 'AI_CORE_API' service.
@@ -14,5 +14,5 @@ export const MetaApi = {
* Meta information about an implementation of AI API, describing its capabilities, limits and extensions
* @returns The request builder, use the `execute()` method to trigger the request.
*/
- metaGet: () => new OpenApiRequestBuilder('get', '/lm/meta')
+ metaGet: () => new OpenApiRequestBuilder('get', '/lm/meta')
};
diff --git a/packages/ai-core/src/metrics-api.ts b/packages/ai-core/src/client/AI_CORE_API/metrics-api.ts
similarity index 77%
rename from packages/ai-core/src/metrics-api.ts
rename to packages/ai-core/src/client/AI_CORE_API/metrics-api.ts
index ca4a923a..464cda5b 100644
--- a/packages/ai-core/src/metrics-api.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/metrics-api.ts
@@ -5,11 +5,12 @@
*/
import { OpenApiRequestBuilder } from '@sap-cloud-sdk/openapi';
import type {
- GetMetricResourceList,
- StringArray,
- MetricSelectorPermissibleValues,
- DeleteMetricsResponse,
- ExecutionId2
+ TrckGetMetricResourceList,
+ TrckStringArray,
+ TrckmetricSelectorPermissibleValues,
+ TrckMetricResource,
+ TrckDeleteMetricsResponse,
+ TrckExecutionId
} from './schema/index.js';
/**
* Representation of the 'MetricsApi'.
@@ -28,12 +29,12 @@ export const MetricsApi = {
metricsFind: (
queryParameters: {
$filter?: string;
- executionIds?: StringArray;
- $select?: MetricSelectorPermissibleValues;
+ executionIds?: TrckStringArray;
+ $select?: TrckmetricSelectorPermissibleValues;
},
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder('get', '/lm/metrics', {
+ new OpenApiRequestBuilder('get', '/lm/metrics', {
queryParameters,
headerParameters
}),
@@ -45,7 +46,7 @@ export const MetricsApi = {
* @returns The request builder, use the `execute()` method to trigger the request.
*/
metricsPatch: (
- body: any,
+ body: TrckMetricResource,
headerParameters: { 'AI-Resource-Group': string }
) =>
new OpenApiRequestBuilder('patch', '/lm/metrics', {
@@ -59,11 +60,15 @@ export const MetricsApi = {
* @returns The request builder, use the `execute()` method to trigger the request.
*/
metricsDelete: (
- queryParameters: { executionId: ExecutionId2 },
+ queryParameters: { executionId: TrckExecutionId },
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder('delete', '/lm/metrics', {
- queryParameters,
- headerParameters
- })
+ new OpenApiRequestBuilder(
+ 'delete',
+ '/lm/metrics',
+ {
+ queryParameters,
+ headerParameters
+ }
+ )
};
diff --git a/packages/ai-core/src/client/AI_CORE_API/model-api.ts b/packages/ai-core/src/client/AI_CORE_API/model-api.ts
new file mode 100644
index 00000000..353377ee
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/model-api.ts
@@ -0,0 +1,26 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import { OpenApiRequestBuilder } from '@sap-cloud-sdk/openapi';
+import type { AiModelList } from './schema/index.js';
+/**
+ * Representation of the 'ModelApi'.
+ * This API is part of the 'AI_CORE_API' service.
+ */
+export const ModelApi = {
+ /**
+ * Retrieve information about all models available in LLM global scenario
+ * @param scenarioId - Scenario identifier
+ * @returns The request builder, use the `execute()` method to trigger the request.
+ */
+ modelsGet: (scenarioId: string) =>
+ new OpenApiRequestBuilder(
+ 'get',
+ '/lm/scenarios/{scenarioId}/models',
+ {
+ pathParameters: { scenarioId }
+ }
+ )
+};
diff --git a/packages/ai-core/src/object-store-secret-api.ts b/packages/ai-core/src/client/AI_CORE_API/object-store-secret-api.ts
similarity index 83%
rename from packages/ai-core/src/object-store-secret-api.ts
rename to packages/ai-core/src/client/AI_CORE_API/object-store-secret-api.ts
index 61f9788f..9c7039f8 100644
--- a/packages/ai-core/src/object-store-secret-api.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/object-store-secret-api.ts
@@ -5,13 +5,13 @@
*/
import { OpenApiRequestBuilder } from '@sap-cloud-sdk/openapi';
import type {
- ObjectStoreSecretStatusResponse,
- ObjectStoreSecretWithSensitiveDataRequestForPostCall,
- ObjectStoreSecretCreationResponse,
- ObjectStoreSecretStatus,
- ObjectStoreSecretWithSensitiveDataRequest,
- ObjectStoreSecretModificationResponse,
- ObjectStoreSecretDeletionResponse
+ BckndobjectStoreSecretStatusResponse,
+ BckndobjectStoreSecretWithSensitiveDataRequestForPostCall,
+ BckndobjectStoreSecretCreationResponse,
+ BckndobjectStoreSecretStatus,
+ BckndobjectStoreSecretWithSensitiveDataRequest,
+ BckndobjectStoreSecretModificationResponse,
+ BckndobjectStoreSecretDeletionResponse
} from './schema/index.js';
/**
* Representation of the 'ObjectStoreSecretApi'.
@@ -29,7 +29,7 @@ export const ObjectStoreSecretApi = {
queryParameters?: { $top?: number; $skip?: number; $count?: boolean },
headerParameters?: { Authorization?: string; 'AI-Resource-Group'?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/admin/objectStoreSecrets',
{
@@ -45,10 +45,10 @@ export const ObjectStoreSecretApi = {
* @returns The request builder, use the `execute()` method to trigger the request.
*/
kubesubmitV4ObjectStoreSecretsCreate: (
- body: ObjectStoreSecretWithSensitiveDataRequestForPostCall,
+ body: BckndobjectStoreSecretWithSensitiveDataRequestForPostCall,
headerParameters?: { Authorization?: string; 'AI-Resource-Group'?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'post',
'/admin/objectStoreSecrets',
{
@@ -69,7 +69,7 @@ export const ObjectStoreSecretApi = {
objectStoreName: string,
headerParameters?: { Authorization?: string; 'AI-Resource-Group'?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/admin/objectStoreSecrets/{objectStoreName}',
{
@@ -87,10 +87,10 @@ export const ObjectStoreSecretApi = {
*/
kubesubmitV4ObjectStoreSecretsPatch: (
objectStoreName: string,
- body: ObjectStoreSecretWithSensitiveDataRequest,
+ body: BckndobjectStoreSecretWithSensitiveDataRequest,
headerParameters?: { Authorization?: string; 'AI-Resource-Group'?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'patch',
'/admin/objectStoreSecrets/{objectStoreName}',
{
@@ -109,7 +109,7 @@ export const ObjectStoreSecretApi = {
objectStoreName: string,
headerParameters?: { Authorization?: string; 'AI-Resource-Group'?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'delete',
'/admin/objectStoreSecrets/{objectStoreName}',
{
diff --git a/packages/ai-core/src/repository-api.ts b/packages/ai-core/src/client/AI_CORE_API/repository-api.ts
similarity index 82%
rename from packages/ai-core/src/repository-api.ts
rename to packages/ai-core/src/client/AI_CORE_API/repository-api.ts
index f0bdbc93..c2785dbf 100644
--- a/packages/ai-core/src/repository-api.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/repository-api.ts
@@ -5,13 +5,13 @@
*/
import { OpenApiRequestBuilder } from '@sap-cloud-sdk/openapi';
import type {
- ArgoCDRepositoryDataResponse,
- ArgoCDRepositoryData,
- ArgoCDRepositoryCreationResponse,
- ArgoCDRepositoryDetails,
- ArgoCDRepositoryCredentials,
- ArgoCDRepositoryModificationResponse,
- ArgoCDRepositoryDeletionResponse
+ BckndArgoCDRepositoryDataResponse,
+ BckndArgoCDRepositoryData,
+ BckndArgoCDRepositoryCreationResponse,
+ BckndArgoCDRepositoryDetails,
+ BckndArgoCDRepositoryCredentials,
+ BckndArgoCDRepositoryModificationResponse,
+ BckndArgoCDRepositoryDeletionResponse
} from './schema/index.js';
/**
* Representation of the 'RepositoryApi'.
@@ -28,7 +28,7 @@ export const RepositoryApi = {
queryParameters?: { $top?: number; $skip?: number; $count?: boolean },
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/admin/repositories',
{
@@ -43,10 +43,10 @@ export const RepositoryApi = {
* @returns The request builder, use the `execute()` method to trigger the request.
*/
kubesubmitV4RepositoriesCreate: (
- body: ArgoCDRepositoryData,
+ body: BckndArgoCDRepositoryData,
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'post',
'/admin/repositories',
{
@@ -64,7 +64,7 @@ export const RepositoryApi = {
repositoryName: string,
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/admin/repositories/{repositoryName}',
{
@@ -82,10 +82,10 @@ export const RepositoryApi = {
*/
kubesubmitV4RepositoriesUpdate: (
repositoryName: string,
- body: ArgoCDRepositoryCredentials,
+ body: BckndArgoCDRepositoryCredentials,
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'patch',
'/admin/repositories/{repositoryName}',
{
@@ -104,7 +104,7 @@ export const RepositoryApi = {
repositoryName: string,
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'delete',
'/admin/repositories/{repositoryName}',
{
diff --git a/packages/ai-core/src/resource-api.ts b/packages/ai-core/src/client/AI_CORE_API/resource-api.ts
similarity index 84%
rename from packages/ai-core/src/resource-api.ts
rename to packages/ai-core/src/client/AI_CORE_API/resource-api.ts
index 39445fe1..d116bfa5 100644
--- a/packages/ai-core/src/resource-api.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/resource-api.ts
@@ -5,9 +5,9 @@
*/
import { OpenApiRequestBuilder } from '@sap-cloud-sdk/openapi';
import type {
- ResourceGetResponse,
- ResourcePatchBody,
- ResourcePatchResponse
+ BckndResourceGetResponse,
+ BckndResourcePatchBody,
+ BckndResourcePatchResponse
} from './schema/index.js';
/**
* Representation of the 'ResourceApi'.
@@ -20,7 +20,7 @@ export const ResourceApi = {
* @returns The request builder, use the `execute()` method to trigger the request.
*/
kubesubmitV4ResourcesGet: (headerParameters?: { Authorization?: string }) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/admin/resources/nodes',
{
@@ -34,10 +34,10 @@ export const ResourceApi = {
* @returns The request builder, use the `execute()` method to trigger the request.
*/
kubesubmitV4ResourcesPatch: (
- body: ResourcePatchBody,
+ body: BckndResourcePatchBody,
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'patch',
'/admin/resources/nodes',
{
diff --git a/packages/ai-core/src/resource-group-api.ts b/packages/ai-core/src/client/AI_CORE_API/resource-group-api.ts
similarity index 87%
rename from packages/ai-core/src/resource-group-api.ts
rename to packages/ai-core/src/client/AI_CORE_API/resource-group-api.ts
index 7f235723..63e5384c 100644
--- a/packages/ai-core/src/resource-group-api.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/resource-group-api.ts
@@ -5,12 +5,12 @@
*/
import { OpenApiRequestBuilder } from '@sap-cloud-sdk/openapi';
import type {
- ResourceGroupList,
- ResourceGroupsPostRequest,
- ResourceGroupBase,
- ResourceGroup,
- ResourceGroupPatchRequest,
- ResourceGroupDeletionResponse
+ BckndResourceGroupList,
+ BckndResourceGroupsPostRequest,
+ BckndResourceGroupBase,
+ BckndResourceGroup,
+ BckndResourceGroupPatchRequest,
+ BckndResourceGroupDeletionResponse
} from './schema/index.js';
/**
* Representation of the 'ResourceGroupApi'.
@@ -34,7 +34,7 @@ export const ResourceGroupApi = {
},
headerParameters?: { Authorization?: string; Prefer?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/admin/resourceGroups',
{
@@ -50,10 +50,10 @@ export const ResourceGroupApi = {
* @returns The request builder, use the `execute()` method to trigger the request.
*/
kubesubmitV4ResourcegroupsCreate: (
- body: ResourceGroupsPostRequest,
+ body: BckndResourceGroupsPostRequest,
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'post',
'/admin/resourceGroups',
{
@@ -72,7 +72,7 @@ export const ResourceGroupApi = {
resourceGroupId: string,
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/admin/resourceGroups/{resourceGroupId}',
{
@@ -90,7 +90,7 @@ export const ResourceGroupApi = {
*/
kubesubmitV4ResourcegroupsPatch: (
resourceGroupId: string,
- body: ResourceGroupPatchRequest,
+ body: BckndResourceGroupPatchRequest,
headerParameters?: { Authorization?: string }
) =>
new OpenApiRequestBuilder(
@@ -113,7 +113,7 @@ export const ResourceGroupApi = {
resourceGroupId: string,
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'delete',
'/admin/resourceGroups/{resourceGroupId}',
{
diff --git a/packages/ai-core/src/resource-quota-api.ts b/packages/ai-core/src/client/AI_CORE_API/resource-quota-api.ts
similarity index 89%
rename from packages/ai-core/src/resource-quota-api.ts
rename to packages/ai-core/src/client/AI_CORE_API/resource-quota-api.ts
index 85eb2659..97835a3a 100644
--- a/packages/ai-core/src/resource-quota-api.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/resource-quota-api.ts
@@ -5,8 +5,8 @@
*/
import { OpenApiRequestBuilder } from '@sap-cloud-sdk/openapi';
import type {
- CommonResourceQuotaResponse,
- ExecutableResourceQuotaResponse
+ BckndCommonResourceQuotaResponse,
+ BckndExecutableResourceQuotaResponse
} from './schema/index.js';
/**
* Representation of the 'ResourceQuotaApi'.
@@ -23,7 +23,7 @@ export const ResourceQuotaApi = {
queryParameters?: { quotaOnly?: boolean },
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/admin/resourceQuota/resourceGroups',
{
@@ -41,7 +41,7 @@ export const ResourceQuotaApi = {
queryParameters?: { quotaOnly?: boolean },
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/admin/resourceQuota/executables',
{
@@ -59,7 +59,7 @@ export const ResourceQuotaApi = {
queryParameters?: { quotaOnly?: boolean },
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/admin/resourceQuota/applications',
{
@@ -77,7 +77,7 @@ export const ResourceQuotaApi = {
queryParameters?: { quotaOnly?: boolean },
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/admin/resourceQuota/repositories',
{
@@ -95,7 +95,7 @@ export const ResourceQuotaApi = {
queryParameters?: { quotaOnly?: boolean },
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/admin/resourceQuota/secrets',
{
@@ -113,7 +113,7 @@ export const ResourceQuotaApi = {
queryParameters?: { quotaOnly?: boolean },
headerParameters?: { Authorization?: string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/admin/resourceQuota/dockerRegistrySecrets',
{
diff --git a/packages/ai-core/src/scenario-api.test.ts b/packages/ai-core/src/client/AI_CORE_API/scenario-api.test.ts
similarity index 83%
rename from packages/ai-core/src/scenario-api.test.ts
rename to packages/ai-core/src/client/AI_CORE_API/scenario-api.test.ts
index e7764b42..44572804 100644
--- a/packages/ai-core/src/scenario-api.test.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/scenario-api.test.ts
@@ -1,6 +1,7 @@
import nock from 'nock';
import { HttpDestination } from '@sap-cloud-sdk/connectivity';
-import { ScenarioApi, ScenarioList } from './index.js';
+import { AiScenarioList } from './schema/index.js';
+import { ScenarioApi } from './scenario-api.js';
describe('scenario', () => {
const destination: HttpDestination = {
@@ -12,7 +13,7 @@ describe('scenario', () => {
});
it('parses a successful response for get request', async () => {
- const expectedResponse: ScenarioList = {
+ const expectedResponse: AiScenarioList = {
count: 1,
resources: [
{
@@ -40,7 +41,7 @@ describe('scenario', () => {
'Content-Type': 'application/json'
});
- const result: ScenarioList = await ScenarioApi.scenarioQuery({
+ const result: AiScenarioList = await ScenarioApi.scenarioQuery({
'AI-Resource-Group': 'default'
}).execute(destination);
diff --git a/packages/ai-core/src/scenario-api.ts b/packages/ai-core/src/client/AI_CORE_API/scenario-api.ts
similarity index 86%
rename from packages/ai-core/src/scenario-api.ts
rename to packages/ai-core/src/client/AI_CORE_API/scenario-api.ts
index 4af6a914..450cbb9b 100644
--- a/packages/ai-core/src/scenario-api.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/scenario-api.ts
@@ -4,7 +4,11 @@
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
import { OpenApiRequestBuilder } from '@sap-cloud-sdk/openapi';
-import type { ScenarioList, Scenario, VersionList } from './schema/index.js';
+import type {
+ AiScenarioList,
+ AiScenario,
+ AiVersionList
+} from './schema/index.js';
/**
* Representation of the 'ScenarioApi'.
* This API is part of the 'AI_CORE_API' service.
@@ -16,7 +20,7 @@ export const ScenarioApi = {
* @returns The request builder, use the `execute()` method to trigger the request.
*/
scenarioQuery: (headerParameters: { 'AI-Resource-Group': string }) =>
- new OpenApiRequestBuilder('get', '/lm/scenarios', {
+ new OpenApiRequestBuilder('get', '/lm/scenarios', {
headerParameters
}),
/**
@@ -29,7 +33,7 @@ export const ScenarioApi = {
scenarioId: string,
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder('get', '/lm/scenarios/{scenarioId}', {
+ new OpenApiRequestBuilder('get', '/lm/scenarios/{scenarioId}', {
pathParameters: { scenarioId },
headerParameters
}),
@@ -47,7 +51,7 @@ export const ScenarioApi = {
queryParameters: { labelSelector?: string[] },
headerParameters: { 'AI-Resource-Group': string }
) =>
- new OpenApiRequestBuilder(
+ new OpenApiRequestBuilder(
'get',
'/lm/scenarios/{scenarioId}/versions',
{
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-api-error-with-id.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-api-error-with-id.ts
new file mode 100644
index 00000000..986fae03
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-api-error-with-id.ts
@@ -0,0 +1,14 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiId } from './ai-id.js';
+import type { AiApiError } from './ai-api-error.js';
+/**
+ * Representation of the 'AiApiErrorWithId' schema.
+ */
+export type AiApiErrorWithId = {
+ id: AiId;
+ error: AiApiError;
+} & Record;
diff --git a/packages/ai-core/src/schema/api-error.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-api-error.ts
similarity index 88%
rename from packages/ai-core/src/schema/api-error.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-api-error.ts
index ffb519b6..6bccf873 100644
--- a/packages/ai-core/src/schema/api-error.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-api-error.ts
@@ -5,9 +5,9 @@
*/
/**
- * Representation of the 'ApiError' schema.
+ * Representation of the 'AiApiError' schema.
*/
-export type ApiError = {
+export type AiApiError = {
/**
* Descriptive error code (not http status code)
*/
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-argument-binding-list.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-argument-binding-list.ts
new file mode 100644
index 00000000..0ee60b62
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-argument-binding-list.ts
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiArtifactArgumentBinding } from './ai-artifact-argument-binding.js';
+/**
+ * Representation of the 'AiArtifactArgumentBindingList' schema.
+ * Max Items: 1000.
+ */
+export type AiArtifactArgumentBindingList = AiArtifactArgumentBinding[];
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-argument-binding.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-argument-binding.ts
new file mode 100644
index 00000000..219b0cb7
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-argument-binding.ts
@@ -0,0 +1,18 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiArtifactId } from './ai-artifact-id.js';
+/**
+ * Required for execution
+ * Result of activation
+ *
+ */
+export type AiArtifactArgumentBinding = {
+ /**
+ * Max Length: 256.
+ */
+ key: string;
+ artifactId: AiArtifactId;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-array.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-array.ts
new file mode 100644
index 00000000..ada8dce7
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-array.ts
@@ -0,0 +1,10 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiArtifact } from './ai-artifact.js';
+/**
+ * Representation of the 'AiArtifactArray' schema.
+ */
+export type AiArtifactArray = AiArtifact[];
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-creation-response-message.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-creation-response-message.ts
new file mode 100644
index 00000000..0068aeac
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-creation-response-message.ts
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Message
+ * @example "Artifact acknowledged"
+ */
+export type AiArtifactCreationResponseMessage = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-creation-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-creation-response.ts
new file mode 100644
index 00000000..e5b4c290
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-creation-response.ts
@@ -0,0 +1,16 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiId } from './ai-id.js';
+import type { AiArtifactCreationResponseMessage } from './ai-artifact-creation-response-message.js';
+import type { AiArtifactUrl } from './ai-artifact-url.js';
+/**
+ * Representation of the 'AiArtifactCreationResponse' schema.
+ */
+export type AiArtifactCreationResponse = {
+ id: AiId;
+ message: AiArtifactCreationResponseMessage;
+ url: AiArtifactUrl;
+} & Record;
diff --git a/packages/ai-core/src/schema/artifact-description.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-description.ts
similarity index 83%
rename from packages/ai-core/src/schema/artifact-description.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-description.ts
index 9d3d50a2..83e6da0f 100644
--- a/packages/ai-core/src/schema/artifact-description.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-description.ts
@@ -8,4 +8,4 @@
* Description of the artifact
* Max Length: 5000.
*/
-export type ArtifactDescription = string;
+export type AiArtifactDescription = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-id.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-id.ts
new file mode 100644
index 00000000..fc03c003
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-id.ts
@@ -0,0 +1,12 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * ID of the artifact
+ * @example "aa97b177-9383-4934-8543-0f91a7a0283a"
+ * Pattern: "^[\\w.-]{4,64}$".
+ */
+export type AiArtifactId = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-list.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-list.ts
new file mode 100644
index 00000000..a5173062
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-list.ts
@@ -0,0 +1,16 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiArtifactArray } from './ai-artifact-array.js';
+/**
+ * Representation of the 'AiArtifactList' schema.
+ */
+export type AiArtifactList = {
+ /**
+ * Number of the resource instances in the list
+ */
+ count: number;
+ resources: AiArtifactArray;
+} & Record;
diff --git a/packages/ai-core/src/schema/generic-natural-language-term.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-name.ts
similarity index 68%
rename from packages/ai-core/src/schema/generic-natural-language-term.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-name.ts
index e811b42b..a5219b9c 100644
--- a/packages/ai-core/src/schema/generic-natural-language-term.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-name.ts
@@ -5,7 +5,8 @@
*/
/**
- * Representation of the 'GenericNaturalLanguageTerm' schema.
+ * Name of the artifact
+ * Max Length: 256.
* Pattern: "^[\\w\\s.!?,;:\\[\\](){}<>\"'=+\*\/\\\\^&%@~$#|-]*$".
*/
-export type GenericNaturalLanguageTerm = string;
+export type AiArtifactName = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-post-data.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-post-data.ts
new file mode 100644
index 00000000..d8abac21
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-post-data.ts
@@ -0,0 +1,25 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiLabelList } from './ai-label-list.js';
+import type { AiArtifactName } from './ai-artifact-name.js';
+import type { AiArtifactUrl } from './ai-artifact-url.js';
+import type { AiArtifactDescription } from './ai-artifact-description.js';
+import type { AiScenarioId } from './ai-scenario-id.js';
+/**
+ * Base data of the artifact; this is the data that can be provided when the artifact is created; `name` and `kind` are required because they constitute important semantic filtering criteria for use in training / inference executables (`name` is a semantic handle of the artifact within a scenario and `kind` specifies the type of usage, e.g. you would only want to allow models in the model operator).
+ *
+ */
+export type AiArtifactPostData = {
+ labels?: AiLabelList;
+ name: AiArtifactName;
+ /**
+ * Kind of the artifact, i.e. model or dataset
+ */
+ kind: 'model' | 'dataset' | 'resultset' | 'other';
+ url: AiArtifactUrl;
+ description?: AiArtifactDescription;
+ scenarioId: AiScenarioId;
+} & Record;
diff --git a/packages/ai-core/src/schema/artifact-url.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-url.ts
similarity index 89%
rename from packages/ai-core/src/schema/artifact-url.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-url.ts
index 53f6d246..11f76aee 100644
--- a/packages/ai-core/src/schema/artifact-url.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact-url.ts
@@ -11,4 +11,4 @@
* Max Length: 1024.
* Pattern: "([a-z0-9-]+):\\/\\/.+".
*/
-export type ArtifactUrl = string;
+export type AiArtifactUrl = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact.ts
new file mode 100644
index 00000000..300f5ee1
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-artifact.ts
@@ -0,0 +1,42 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiLabelList } from './ai-label-list.js';
+import type { AiArtifactName } from './ai-artifact-name.js';
+import type { AiArtifactUrl } from './ai-artifact-url.js';
+import type { AiArtifactDescription } from './ai-artifact-description.js';
+import type { AiArtifactId } from './ai-artifact-id.js';
+import type { AiScenarioId } from './ai-scenario-id.js';
+import type { AiConfigurationId } from './ai-configuration-id.js';
+import type { AiExecutionId } from './ai-execution-id.js';
+/**
+ * Base data of the artifact; this is the data that can be provided when the artifact is created; `name` and `kind` are required because they constitute important semantic filtering criteria for use in training / inference executables (`name` is a semantic handle of the artifact within a scenario and `kind` specifies the type of usage, e.g. you would only want to allow models in the model operator).
+ *
+ */
+export type AiArtifact = {
+ labels?: AiLabelList;
+ name: AiArtifactName;
+ /**
+ * Kind of the artifact, i.e. model or dataset
+ */
+ kind: 'model' | 'dataset' | 'resultset' | 'other';
+ url: AiArtifactUrl;
+ description?: AiArtifactDescription;
+ id: AiArtifactId;
+ scenarioId: AiScenarioId;
+ configurationId?: AiConfigurationId;
+ executionId?: AiExecutionId;
+ /**
+ * Timestamp of resource creation
+ * Format: "date-time".
+ */
+ createdAt: string;
+ /**
+ * Timestamp of latest resource modification
+ * Format: "date-time".
+ */
+ modifiedAt: string;
+ scenario?: Record;
+} & Record;
diff --git a/packages/ai-core/src/schema/backend-details.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-backend-details.ts
similarity index 80%
rename from packages/ai-core/src/schema/backend-details.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-backend-details.ts
index 7266767b..5bfbac1d 100644
--- a/packages/ai-core/src/schema/backend-details.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-backend-details.ts
@@ -7,4 +7,4 @@
/**
* backend-specific details of the deployment
*/
-export type BackendDetails = Record;
+export type AiBackendDetails = Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-configuration-base-data.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-configuration-base-data.ts
new file mode 100644
index 00000000..7eb98a9e
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-configuration-base-data.ts
@@ -0,0 +1,20 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiConfigurationName } from './ai-configuration-name.js';
+import type { AiExecutableId } from './ai-executable-id.js';
+import type { AiScenarioId } from './ai-scenario-id.js';
+import type { AiParameterArgumentBindingList } from './ai-parameter-argument-binding-list.js';
+import type { AiArtifactArgumentBindingList } from './ai-artifact-argument-binding-list.js';
+/**
+ * Representation of the 'AiConfigurationBaseData' schema.
+ */
+export type AiConfigurationBaseData = {
+ name: AiConfigurationName;
+ executableId: AiExecutableId;
+ scenarioId: AiScenarioId;
+ parameterBindings?: AiParameterArgumentBindingList;
+ inputArtifactBindings?: AiArtifactArgumentBindingList;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-configuration-creation-response-message.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-configuration-creation-response-message.ts
new file mode 100644
index 00000000..5780c58d
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-configuration-creation-response-message.ts
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Message
+ * @example "Configuration created"
+ */
+export type AiConfigurationCreationResponseMessage = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-configuration-creation-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-configuration-creation-response.ts
new file mode 100644
index 00000000..a6a1c6a5
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-configuration-creation-response.ts
@@ -0,0 +1,14 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiId } from './ai-id.js';
+import type { AiConfigurationCreationResponseMessage } from './ai-configuration-creation-response-message.js';
+/**
+ * Representation of the 'AiConfigurationCreationResponse' schema.
+ */
+export type AiConfigurationCreationResponse = {
+ id: AiId;
+ message: AiConfigurationCreationResponseMessage;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-configuration-id.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-configuration-id.ts
new file mode 100644
index 00000000..e571d293
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-configuration-id.ts
@@ -0,0 +1,12 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * ID of the configuration
+ * @example "aa97b177-9383-4934-8543-0f91a7a0283a"
+ * Pattern: "^[\\w.-]{4,64}$".
+ */
+export type AiConfigurationId = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-configuration-list.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-configuration-list.ts
new file mode 100644
index 00000000..6fa863da
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-configuration-list.ts
@@ -0,0 +1,16 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiConfiguration } from './ai-configuration.js';
+/**
+ * Representation of the 'AiConfigurationList' schema.
+ */
+export type AiConfigurationList = {
+ /**
+ * Number of the resource instances in the list
+ */
+ count: number;
+ resources: AiConfiguration[];
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-configuration-name.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-configuration-name.ts
new file mode 100644
index 00000000..8d3fb55b
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-configuration-name.ts
@@ -0,0 +1,12 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Name of the configuration
+ * Max Length: 256.
+ * Pattern: "^[\\w\\s.!?,;:\\[\\](){}<>\"'=+\*\/\\\\^&%@~$#|-]*$".
+ */
+export type AiConfigurationName = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-configuration.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-configuration.ts
new file mode 100644
index 00000000..858bdd46
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-configuration.ts
@@ -0,0 +1,28 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiConfigurationName } from './ai-configuration-name.js';
+import type { AiExecutableId } from './ai-executable-id.js';
+import type { AiScenarioId } from './ai-scenario-id.js';
+import type { AiParameterArgumentBindingList } from './ai-parameter-argument-binding-list.js';
+import type { AiArtifactArgumentBindingList } from './ai-artifact-argument-binding-list.js';
+import type { AiConfigurationId } from './ai-configuration-id.js';
+/**
+ * Representation of the 'AiConfiguration' schema.
+ */
+export type AiConfiguration = {
+ name: AiConfigurationName;
+ executableId: AiExecutableId;
+ scenarioId: AiScenarioId;
+ parameterBindings?: AiParameterArgumentBindingList;
+ inputArtifactBindings?: AiArtifactArgumentBindingList;
+ id: AiConfigurationId;
+ /**
+ * Timestamp of resource creation
+ * Format: "date-time".
+ */
+ createdAt: string;
+ scenario?: Record;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-creation-response-message.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-creation-response-message.ts
new file mode 100644
index 00000000..d0303c61
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-creation-response-message.ts
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Message
+ * @example "Created"
+ */
+export type AiCreationResponseMessage = string;
diff --git a/packages/ai-core/src/schema/cron.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-cron.ts
similarity index 89%
rename from packages/ai-core/src/schema/cron.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-cron.ts
index 5e9f6d2b..56acc9c7 100644
--- a/packages/ai-core/src/schema/cron.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-cron.ts
@@ -8,4 +8,4 @@
* Cron defining the schedule to run the executions.
* @example "0 0 0 1 *"
*/
-export type Cron = string;
+export type AiCron = string;
diff --git a/packages/ai-core/src/schema/deployment-bulk-modification-request.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-bulk-modification-request.ts
similarity index 56%
rename from packages/ai-core/src/schema/deployment-bulk-modification-request.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-bulk-modification-request.ts
index 35fca0ba..97c4ad23 100644
--- a/packages/ai-core/src/schema/deployment-bulk-modification-request.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-bulk-modification-request.ts
@@ -3,10 +3,10 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-import type { DeploymentModificationRequestList } from './deployment-modification-request-list.js';
+import type { AiDeploymentModificationRequestList } from './ai-deployment-modification-request-list.js';
/**
* Request object for changing the target status of multiple deployments
*/
-export type DeploymentBulkModificationRequest = {
- deployments?: DeploymentModificationRequestList;
+export type AiDeploymentBulkModificationRequest = {
+ deployments?: AiDeploymentModificationRequestList;
} & Record;
diff --git a/packages/ai-core/src/schema/deployment-bulk-modification-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-bulk-modification-response.ts
similarity index 52%
rename from packages/ai-core/src/schema/deployment-bulk-modification-response.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-bulk-modification-response.ts
index a7c4a6ef..aad4be81 100644
--- a/packages/ai-core/src/schema/deployment-bulk-modification-response.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-bulk-modification-response.ts
@@ -3,10 +3,10 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-import type { DeploymentModificationResponseList } from './deployment-modification-response-list.js';
+import type { AiDeploymentModificationResponseList } from './ai-deployment-modification-response-list.js';
/**
* Response object with array of deployments
*/
-export type DeploymentBulkModificationResponse = {
- deployments?: DeploymentModificationResponseList;
+export type AiDeploymentBulkModificationResponse = {
+ deployments?: AiDeploymentModificationResponseList;
} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-creation-request.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-creation-request.ts
new file mode 100644
index 00000000..94c59979
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-creation-request.ts
@@ -0,0 +1,14 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiDeploymentTimeToLive } from './ai-deployment-time-to-live.js';
+import type { AiConfigurationId } from './ai-configuration-id.js';
+/**
+ * Request object for creating an execution or an deployment
+ */
+export type AiDeploymentCreationRequest = {
+ ttl?: AiDeploymentTimeToLive;
+ configurationId: AiConfigurationId;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-creation-response-message.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-creation-response-message.ts
new file mode 100644
index 00000000..1ecc44d1
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-creation-response-message.ts
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Message
+ * @example "Deployment scheduled"
+ */
+export type AiDeploymentCreationResponseMessage = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-creation-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-creation-response.ts
new file mode 100644
index 00000000..ad88f59d
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-creation-response.ts
@@ -0,0 +1,20 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiId } from './ai-id.js';
+import type { AiDeploymentCreationResponseMessage } from './ai-deployment-creation-response-message.js';
+import type { AiDeploymentUrl } from './ai-deployment-url.js';
+import type { AiExecutionStatus } from './ai-execution-status.js';
+import type { AiDeploymentTimeToLive } from './ai-deployment-time-to-live.js';
+/**
+ * Representation of the 'AiDeploymentCreationResponse' schema.
+ */
+export type AiDeploymentCreationResponse = {
+ id: AiId;
+ message: AiDeploymentCreationResponseMessage;
+ deploymentUrl?: AiDeploymentUrl;
+ status?: AiExecutionStatus;
+ ttl?: AiDeploymentTimeToLive;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-deletion-response-message.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-deletion-response-message.ts
new file mode 100644
index 00000000..300a72a5
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-deletion-response-message.ts
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Message
+ * @example "Deployment deletion scheduled"
+ */
+export type AiDeploymentDeletionResponseMessage = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-deletion-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-deletion-response.ts
new file mode 100644
index 00000000..7af98b89
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-deletion-response.ts
@@ -0,0 +1,14 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiId } from './ai-id.js';
+import type { AiDeploymentDeletionResponseMessage } from './ai-deployment-deletion-response-message.js';
+/**
+ * Representation of the 'AiDeploymentDeletionResponse' schema.
+ */
+export type AiDeploymentDeletionResponse = {
+ id: AiId;
+ message: AiDeploymentDeletionResponseMessage;
+} & Record;
diff --git a/packages/ai-core/src/schema/deployment-details.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-details.ts
similarity index 61%
rename from packages/ai-core/src/schema/deployment-details.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-details.ts
index dc377ad7..7f9f09ee 100644
--- a/packages/ai-core/src/schema/deployment-details.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-details.ts
@@ -3,14 +3,14 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-import type { ScalingDetails } from './scaling-details.js';
-import type { ResourcesDetails } from './resources-details.js';
+import type { AiScalingDetails } from './ai-scaling-details.js';
+import type { AiResourcesDetails } from './ai-resources-details.js';
/**
* Detail information about a deployment (including predefined sections: `scaling` and `resources`).
* JSON String representation of this object is limited to 5000 characters
*
*/
-export type DeploymentDetails = {
- scaling?: ScalingDetails;
- resources?: ResourcesDetails;
+export type AiDeploymentDetails = {
+ scaling?: AiScalingDetails;
+ resources?: AiResourcesDetails;
} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-id.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-id.ts
new file mode 100644
index 00000000..39ca218a
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-id.ts
@@ -0,0 +1,12 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * ID of the deployment
+ * @example "aa97b177-9383-4934-8543-0f91a7a0283a"
+ * Pattern: "^[\\w.-]{4,64}$".
+ */
+export type AiDeploymentId = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-list.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-list.ts
new file mode 100644
index 00000000..baa5fa8d
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-list.ts
@@ -0,0 +1,16 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiDeployment } from './ai-deployment.js';
+/**
+ * Representation of the 'AiDeploymentList' schema.
+ */
+export type AiDeploymentList = {
+ /**
+ * Number of the resource instances in the list
+ */
+ count: number;
+ resources: AiDeployment[];
+} & Record;
diff --git a/packages/ai-core/src/schema/execution-modification-request-list.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-modification-request-list.ts
similarity index 58%
rename from packages/ai-core/src/schema/execution-modification-request-list.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-modification-request-list.ts
index 513d9064..5068931c 100644
--- a/packages/ai-core/src/schema/execution-modification-request-list.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-modification-request-list.ts
@@ -3,9 +3,9 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-import type { ExecutionModificationRequestWithIdentifier } from './execution-modification-request-with-identifier.js';
+import type { AiDeploymentModificationRequestWithIdentifier } from './ai-deployment-modification-request-with-identifier.js';
/**
- * Representation of the 'ExecutionModificationRequestList' schema.
+ * Representation of the 'AiDeploymentModificationRequestList' schema.
* @example [
* {
* "id": "aa97b177-9383-4934-8543-0f91a7a0283a",
@@ -19,5 +19,5 @@ import type { ExecutionModificationRequestWithIdentifier } from './execution-mod
* Min Items: 1.
* Max Items: 100.
*/
-export type ExecutionModificationRequestList =
- Set;
+export type AiDeploymentModificationRequestList =
+ Set;
diff --git a/packages/ai-core/src/schema/deployment-modification-request-with-identifier.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-modification-request-with-identifier.ts
similarity index 64%
rename from packages/ai-core/src/schema/deployment-modification-request-with-identifier.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-modification-request-with-identifier.ts
index e49f2422..5515007b 100644
--- a/packages/ai-core/src/schema/deployment-modification-request-with-identifier.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-modification-request-with-identifier.ts
@@ -3,14 +3,14 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-import type { DeploymentId } from './deployment-id.js';
+import type { AiDeploymentId } from './ai-deployment-id.js';
/**
* Request object for changing the target status of a deployment ( STOPPED and DELETED are supported)
*/
-export type DeploymentModificationRequestWithIdentifier = {
- id: DeploymentId;
+export type AiDeploymentModificationRequestWithIdentifier = {
+ id: AiDeploymentId;
/**
* Deployment target status
*/
- targetStatus: 'STOPPED' | 'DELETED.js';
+ targetStatus: 'STOPPED' | 'DELETED';
} & Record;
diff --git a/packages/ai-core/src/schema/deployment-modification-request.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-modification-request.ts
similarity index 51%
rename from packages/ai-core/src/schema/deployment-modification-request.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-modification-request.ts
index 0f4f6f9b..b067d2a2 100644
--- a/packages/ai-core/src/schema/deployment-modification-request.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-modification-request.ts
@@ -3,12 +3,12 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-import type { DeploymentTargetStatus } from './deployment-target-status.js';
-import type { ConfigurationId } from './configuration-id.js';
+import type { AiDeploymentTargetStatus } from './ai-deployment-target-status.js';
+import type { AiConfigurationId } from './ai-configuration-id.js';
/**
* Request object for changing the target status of a deployment (currently only STOPPED is supported)
*/
-export type DeploymentModificationRequest = {
- targetStatus?: DeploymentTargetStatus;
- configurationId?: ConfigurationId;
+export type AiDeploymentModificationRequest = {
+ targetStatus?: AiDeploymentTargetStatus;
+ configurationId?: AiConfigurationId;
} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-modification-response-list.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-modification-response-list.ts
new file mode 100644
index 00000000..a818c058
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-modification-response-list.ts
@@ -0,0 +1,13 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiDeploymentModificationResponse } from './ai-deployment-modification-response.js';
+import type { AiApiErrorWithId } from './ai-api-error-with-id.js';
+/**
+ * Representation of the 'AiDeploymentModificationResponseList' schema.
+ */
+export type AiDeploymentModificationResponseList =
+ | AiDeploymentModificationResponse
+ | AiApiErrorWithId[];
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-modification-response-message.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-modification-response-message.ts
new file mode 100644
index 00000000..e27c7812
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-modification-response-message.ts
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Message
+ * @example "Deployment modification scheduled"
+ */
+export type AiDeploymentModificationResponseMessage = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-modification-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-modification-response.ts
new file mode 100644
index 00000000..518fd75f
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-modification-response.ts
@@ -0,0 +1,14 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiId } from './ai-id.js';
+import type { AiDeploymentModificationResponseMessage } from './ai-deployment-modification-response-message.js';
+/**
+ * Representation of the 'AiDeploymentModificationResponse' schema.
+ */
+export type AiDeploymentModificationResponse = {
+ id: AiId;
+ message: AiDeploymentModificationResponseMessage;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-response-with-details.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-response-with-details.ts
new file mode 100644
index 00000000..6f215e0f
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-response-with-details.ts
@@ -0,0 +1,69 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiDeploymentId } from './ai-deployment-id.js';
+import type { AiDeploymentUrl } from './ai-deployment-url.js';
+import type { AiConfigurationId } from './ai-configuration-id.js';
+import type { AiConfigurationName } from './ai-configuration-name.js';
+import type { AiScenarioId } from './ai-scenario-id.js';
+import type { AiDeploymentStatus } from './ai-deployment-status.js';
+import type { AiDeploymentStatusMessage } from './ai-deployment-status-message.js';
+import type { AiDeploymentTimeToLive } from './ai-deployment-time-to-live.js';
+import type { AiDeploymentDetails } from './ai-deployment-details.js';
+import type { AiDeploymentStatusDetails } from './ai-deployment-status-details.js';
+/**
+ * Detail properties of the deployment
+ */
+export type AiDeploymentResponseWithDetails = {
+ id: AiDeploymentId;
+ deploymentUrl?: AiDeploymentUrl;
+ configurationId: AiConfigurationId;
+ configurationName?: AiConfigurationName;
+ scenarioId?: AiScenarioId;
+ status: AiDeploymentStatus;
+ statusMessage?: AiDeploymentStatusMessage;
+ /**
+ * Deployment target status
+ */
+ targetStatus?: 'RUNNING' | 'STOPPED' | 'DELETED';
+ /**
+ * Last operation applied to this deployment.
+ */
+ lastOperation?: 'CREATE' | 'UPDATE' | 'DELETE' | 'CASCADE-UPDATE' | any;
+ /**
+ * configurationId that was running before a PATCH operation has modified the configurationId of the deployment. This can be used for a manual rollback in case the new configurationId results in a DEAD deployment
+ * @example "aa97b177-9383-4934-8543-0f91a7a0283a"
+ * Pattern: "^[\\w.-]{4,64}$".
+ */
+ latestRunningConfigurationId?: string;
+ ttl?: AiDeploymentTimeToLive;
+ details?: AiDeploymentDetails;
+ /**
+ * Timestamp of resource creation
+ * Format: "date-time".
+ */
+ createdAt: string;
+ /**
+ * Timestamp of latest resource modification
+ * Format: "date-time".
+ */
+ modifiedAt: string;
+ /**
+ * Timestamp of job submitted
+ * Format: "date-time".
+ */
+ submissionTime?: string;
+ /**
+ * Timestamp of job status changed to RUNNING
+ * Format: "date-time".
+ */
+ startTime?: string;
+ /**
+ * Timestamp of job status changed to COMPLETED/DEAD/STOPPED
+ * Format: "date-time".
+ */
+ completionTime?: string;
+ statusDetails?: AiDeploymentStatusDetails;
+} & Record;
diff --git a/packages/ai-core/src/schema/deployment-status-details.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-status-details.ts
similarity index 77%
rename from packages/ai-core/src/schema/deployment-status-details.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-status-details.ts
index 65131ef0..d6a4c3d7 100644
--- a/packages/ai-core/src/schema/deployment-status-details.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-status-details.ts
@@ -7,4 +7,4 @@
/**
* Current status details of the deployment
*/
-export type DeploymentStatusDetails = Record;
+export type AiDeploymentStatusDetails = Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-status-message.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-status-message.ts
new file mode 100644
index 00000000..446261da
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-status-message.ts
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Deployment status message
+ * Max Length: 256.
+ */
+export type AiDeploymentStatusMessage = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-status.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-status.ts
new file mode 100644
index 00000000..68b084a3
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-status.ts
@@ -0,0 +1,18 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Deployment status
+ * @example "COMPLETED"
+ */
+export type AiDeploymentStatus =
+ | 'PENDING'
+ | 'RUNNING'
+ | 'COMPLETED'
+ | 'DEAD'
+ | 'STOPPING'
+ | 'STOPPED'
+ | 'UNKNOWN';
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-target-status.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-target-status.ts
new file mode 100644
index 00000000..47781a65
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-target-status.ts
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Status
+ * @example "STOPPED"
+ */
+export type AiDeploymentTargetStatus = 'STOPPED';
diff --git a/packages/ai-core/src/schema/deployment-time-to-live.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-time-to-live.ts
similarity index 89%
rename from packages/ai-core/src/schema/deployment-time-to-live.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-time-to-live.ts
index 387b7a04..dc1fadf1 100644
--- a/packages/ai-core/src/schema/deployment-time-to-live.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-time-to-live.ts
@@ -9,4 +9,4 @@
* @example "24H"
* Pattern: "^[0-9]+[m,M,h,H,d,D]$".
*/
-export type DeploymentTimeToLive = string;
+export type AiDeploymentTimeToLive = string;
diff --git a/packages/ai-core/src/schema/deployment-url.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-url.ts
similarity index 85%
rename from packages/ai-core/src/schema/deployment-url.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-url.ts
index 60292aeb..dda61e62 100644
--- a/packages/ai-core/src/schema/deployment-url.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment-url.ts
@@ -8,4 +8,4 @@
* Consumption URL of the deployment
* Format: "url".
*/
-export type DeploymentUrl = string;
+export type AiDeploymentUrl = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment.ts
new file mode 100644
index 00000000..18b27ef6
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-deployment.ts
@@ -0,0 +1,67 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiDeploymentId } from './ai-deployment-id.js';
+import type { AiDeploymentUrl } from './ai-deployment-url.js';
+import type { AiConfigurationId } from './ai-configuration-id.js';
+import type { AiConfigurationName } from './ai-configuration-name.js';
+import type { AiScenarioId } from './ai-scenario-id.js';
+import type { AiDeploymentStatus } from './ai-deployment-status.js';
+import type { AiDeploymentStatusMessage } from './ai-deployment-status-message.js';
+import type { AiDeploymentTimeToLive } from './ai-deployment-time-to-live.js';
+import type { AiDeploymentDetails } from './ai-deployment-details.js';
+/**
+ * Detailed data about a deployment
+ */
+export type AiDeployment = {
+ id: AiDeploymentId;
+ deploymentUrl?: AiDeploymentUrl;
+ configurationId: AiConfigurationId;
+ configurationName?: AiConfigurationName;
+ scenarioId?: AiScenarioId;
+ status: AiDeploymentStatus;
+ statusMessage?: AiDeploymentStatusMessage;
+ /**
+ * Deployment target status
+ */
+ targetStatus?: 'RUNNING' | 'STOPPED' | 'DELETED';
+ /**
+ * Last operation applied to this deployment.
+ */
+ lastOperation?: 'CREATE' | 'UPDATE' | 'DELETE' | 'CASCADE-UPDATE' | any;
+ /**
+ * configurationId that was running before a PATCH operation has modified the configurationId of the deployment. This can be used for a manual rollback in case the new configurationId results in a DEAD deployment
+ * @example "aa97b177-9383-4934-8543-0f91a7a0283a"
+ * Pattern: "^[\\w.-]{4,64}$".
+ */
+ latestRunningConfigurationId?: string;
+ ttl?: AiDeploymentTimeToLive;
+ details?: AiDeploymentDetails;
+ /**
+ * Timestamp of resource creation
+ * Format: "date-time".
+ */
+ createdAt: string;
+ /**
+ * Timestamp of latest resource modification
+ * Format: "date-time".
+ */
+ modifiedAt: string;
+ /**
+ * Timestamp of job submitted
+ * Format: "date-time".
+ */
+ submissionTime?: string;
+ /**
+ * Timestamp of job status changed to RUNNING
+ * Format: "date-time".
+ */
+ startTime?: string;
+ /**
+ * Timestamp of job status changed to COMPLETED/DEAD/STOPPED
+ * Format: "date-time".
+ */
+ completionTime?: string;
+} & Record;
diff --git a/packages/ai-core/src/schema/enactment-creation-request.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-enactment-creation-request.ts
similarity index 63%
rename from packages/ai-core/src/schema/enactment-creation-request.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-enactment-creation-request.ts
index 4266f9ab..a2d4c337 100644
--- a/packages/ai-core/src/schema/enactment-creation-request.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-enactment-creation-request.ts
@@ -3,10 +3,10 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-import type { ConfigurationId } from './configuration-id.js';
+import type { AiConfigurationId } from './ai-configuration-id.js';
/**
* Request object for creating an execution or an deployment
*/
-export type EnactmentCreationRequest = {
- configurationId: ConfigurationId;
+export type AiEnactmentCreationRequest = {
+ configurationId: AiConfigurationId;
} & Record;
diff --git a/packages/ai-core/src/schema/executable-artifact-list.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-executable-artifact-list.ts
similarity index 58%
rename from packages/ai-core/src/schema/executable-artifact-list.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-executable-artifact-list.ts
index ba765473..d0534d01 100644
--- a/packages/ai-core/src/schema/executable-artifact-list.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-executable-artifact-list.ts
@@ -3,8 +3,8 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-import type { ExecutableArtifact } from './executable-artifact.js';
+import type { AiExecutableArtifact } from './ai-executable-artifact.js';
/**
* Executable parameters
*/
-export type ExecutableArtifactList = ExecutableArtifact[];
+export type AiExecutableArtifactList = AiExecutableArtifact[];
diff --git a/packages/ai-core/src/schema/executable-artifact.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-executable-artifact.ts
similarity index 70%
rename from packages/ai-core/src/schema/executable-artifact.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-executable-artifact.ts
index 35be8ab7..bbc8d488 100644
--- a/packages/ai-core/src/schema/executable-artifact.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-executable-artifact.ts
@@ -3,11 +3,11 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-import type { LabelList } from './label-list.js';
+import type { AiLabelList } from './ai-label-list.js';
/**
- * Representation of the 'ExecutableArtifact' schema.
+ * Representation of the 'AiExecutableArtifact' schema.
*/
-export type ExecutableArtifact = {
+export type AiExecutableArtifact = {
/**
* Name of the executable input artifacts
*/
@@ -20,5 +20,5 @@ export type ExecutableArtifact = {
* Description of the signature argument
*/
description?: string;
- labels?: LabelList;
+ labels?: AiLabelList;
} & Record;
diff --git a/packages/ai-core/src/schema/execution-schedule-id.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-executable-id.ts
similarity index 65%
rename from packages/ai-core/src/schema/execution-schedule-id.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-executable-id.ts
index 0d5bf16e..056dccdf 100644
--- a/packages/ai-core/src/schema/execution-schedule-id.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-executable-id.ts
@@ -3,8 +3,10 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-import type { Id } from './id.js';
+
/**
- * Representation of the 'ExecutionScheduleId' schema.
+ * ID of the executable
+ * @example "aa97b177-9383-4934-8543-0f91a7a0283a"
+ * Pattern: "^[\\w.-]{4,64}$".
*/
-export type ExecutionScheduleId = Id & any;
+export type AiExecutableId = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-executable-list.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-executable-list.ts
new file mode 100644
index 00000000..1a31e64a
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-executable-list.ts
@@ -0,0 +1,16 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiExecutable } from './ai-executable.js';
+/**
+ * Representation of the 'AiExecutableList' schema.
+ */
+export type AiExecutableList = {
+ /**
+ * Number of the resource instances in the list
+ */
+ count: number;
+ resources: AiExecutable[];
+} & Record;
diff --git a/packages/ai-core/src/schema/executable-parameter-list.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-executable-parameter-list.ts
similarity index 58%
rename from packages/ai-core/src/schema/executable-parameter-list.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-executable-parameter-list.ts
index 91af7fcf..e06abe81 100644
--- a/packages/ai-core/src/schema/executable-parameter-list.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-executable-parameter-list.ts
@@ -3,8 +3,8 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-import type { ExecutableParameter } from './executable-parameter.js';
+import type { AiExecutableParameter } from './ai-executable-parameter.js';
/**
* Executable parameters
*/
-export type ExecutableParameterList = ExecutableParameter[];
+export type AiExecutableParameterList = AiExecutableParameter[];
diff --git a/packages/ai-core/src/schema/executable-parameter.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-executable-parameter.ts
similarity index 80%
rename from packages/ai-core/src/schema/executable-parameter.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-executable-parameter.ts
index 8b10c15a..7bbef907 100644
--- a/packages/ai-core/src/schema/executable-parameter.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-executable-parameter.ts
@@ -5,9 +5,9 @@
*/
/**
- * Representation of the 'ExecutableParameter' schema.
+ * Representation of the 'AiExecutableParameter' schema.
*/
-export type ExecutableParameter = {
+export type AiExecutableParameter = {
/**
* Name of the executable parameter
*/
@@ -23,5 +23,5 @@ export type ExecutableParameter = {
/**
* Type of the executable parameter
*/
- type?: 'string.js';
+ type?: 'string';
} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-executable.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-executable.ts
new file mode 100644
index 00000000..4f9ae052
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-executable.ts
@@ -0,0 +1,46 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiLabelList } from './ai-label-list.js';
+import type { AiExecutableId } from './ai-executable-id.js';
+import type { AiScenarioId } from './ai-scenario-id.js';
+import type { AiVersionId } from './ai-version-id.js';
+import type { AiExecutableParameterList } from './ai-executable-parameter-list.js';
+import type { AiExecutableArtifactList } from './ai-executable-artifact-list.js';
+/**
+ * An ML executable consists of a set of ML tasks, flows between tasks, dependencies between tasks, models (or model versions?).
+ *
+ */
+export type AiExecutable = {
+ labels?: AiLabelList;
+ /**
+ * Name of the executable
+ */
+ name: string;
+ /**
+ * Description of the executable
+ */
+ description?: string;
+ id: AiExecutableId;
+ scenarioId?: AiScenarioId;
+ versionId: AiVersionId;
+ parameters?: AiExecutableParameterList;
+ inputArtifacts?: AiExecutableArtifactList;
+ outputArtifacts?: AiExecutableArtifactList;
+ /**
+ * Whether this executable is deployable
+ */
+ deployable: boolean;
+ /**
+ * Timestamp of resource creation
+ * Format: "date-time".
+ */
+ createdAt: string;
+ /**
+ * Timestamp of latest resource modification
+ * Format: "date-time".
+ */
+ modifiedAt: string;
+} & Record;
diff --git a/packages/ai-core/src/schema/execution-bulk-modification-request.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-bulk-modification-request.ts
similarity index 55%
rename from packages/ai-core/src/schema/execution-bulk-modification-request.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-bulk-modification-request.ts
index 26805271..df5eec7d 100644
--- a/packages/ai-core/src/schema/execution-bulk-modification-request.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-bulk-modification-request.ts
@@ -3,10 +3,10 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-import type { ExecutionModificationRequestList } from './execution-modification-request-list.js';
+import type { AiExecutionModificationRequestList } from './ai-execution-modification-request-list.js';
/**
* Request object to change status of multiple executions
*/
-export type ExecutionBulkModificationRequest = {
- executions?: ExecutionModificationRequestList;
+export type AiExecutionBulkModificationRequest = {
+ executions?: AiExecutionModificationRequestList;
} & Record;
diff --git a/packages/ai-core/src/schema/execution-bulk-modification-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-bulk-modification-response.ts
similarity index 54%
rename from packages/ai-core/src/schema/execution-bulk-modification-response.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-bulk-modification-response.ts
index 0327c579..72b11714 100644
--- a/packages/ai-core/src/schema/execution-bulk-modification-response.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-bulk-modification-response.ts
@@ -3,10 +3,10 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-import type { ExecutionModificationResponseList } from './execution-modification-response-list.js';
+import type { AiExecutionModificationResponseList } from './ai-execution-modification-response-list.js';
/**
* Response object with array of executions and its status
*/
-export type ExecutionBulkModificationResponse = {
- executions?: ExecutionModificationResponseList;
+export type AiExecutionBulkModificationResponse = {
+ executions?: AiExecutionModificationResponseList;
} & Record;
diff --git a/packages/ai-core/src/schema/aggregation-attribute.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-creation-response-message.ts
similarity index 62%
rename from packages/ai-core/src/schema/aggregation-attribute.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-creation-response-message.ts
index bd2c27d8..888526b9 100644
--- a/packages/ai-core/src/schema/aggregation-attribute.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-creation-response-message.ts
@@ -5,6 +5,7 @@
*/
/**
- * Representation of the 'AggregationAttribute' schema.
+ * Message
+ * @example "Execution scheduled"
*/
-export type AggregationAttribute = string;
+export type AiExecutionCreationResponseMessage = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-creation-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-creation-response.ts
new file mode 100644
index 00000000..38a938d1
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-creation-response.ts
@@ -0,0 +1,16 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiId } from './ai-id.js';
+import type { AiExecutionCreationResponseMessage } from './ai-execution-creation-response-message.js';
+import type { AiExecutionStatus } from './ai-execution-status.js';
+/**
+ * Representation of the 'AiExecutionCreationResponse' schema.
+ */
+export type AiExecutionCreationResponse = {
+ id: AiId;
+ message: AiExecutionCreationResponseMessage;
+ status?: AiExecutionStatus;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-deletion-response-message.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-deletion-response-message.ts
new file mode 100644
index 00000000..c767ce08
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-deletion-response-message.ts
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Message
+ * @example "Execution deletion scheduled"
+ */
+export type AiExecutionDeletionResponseMessage = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-deletion-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-deletion-response.ts
new file mode 100644
index 00000000..a425cd80
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-deletion-response.ts
@@ -0,0 +1,14 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiId } from './ai-id.js';
+import type { AiExecutionDeletionResponseMessage } from './ai-execution-deletion-response-message.js';
+/**
+ * Representation of the 'AiExecutionDeletionResponse' schema.
+ */
+export type AiExecutionDeletionResponse = {
+ id: AiId;
+ message: AiExecutionDeletionResponseMessage;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-id.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-id.ts
new file mode 100644
index 00000000..f7c4c3e1
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-id.ts
@@ -0,0 +1,12 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * ID of the execution
+ * @example "aa97b177-9383-4934-8543-0f91a7a0283a"
+ * Pattern: "^[\\w.-]{4,64}$".
+ */
+export type AiExecutionId = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-list.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-list.ts
new file mode 100644
index 00000000..0d466f4a
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-list.ts
@@ -0,0 +1,16 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiExecution } from './ai-execution.js';
+/**
+ * Representation of the 'AiExecutionList' schema.
+ */
+export type AiExecutionList = {
+ /**
+ * Number of the resource instances in the list
+ */
+ count: number;
+ resources: AiExecution[];
+} & Record;
diff --git a/packages/ai-core/src/schema/deployment-modification-request-list.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-modification-request-list.ts
similarity index 59%
rename from packages/ai-core/src/schema/deployment-modification-request-list.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-modification-request-list.ts
index 69b06ab7..28f79912 100644
--- a/packages/ai-core/src/schema/deployment-modification-request-list.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-modification-request-list.ts
@@ -3,9 +3,9 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-import type { DeploymentModificationRequestWithIdentifier } from './deployment-modification-request-with-identifier.js';
+import type { AiExecutionModificationRequestWithIdentifier } from './ai-execution-modification-request-with-identifier.js';
/**
- * Representation of the 'DeploymentModificationRequestList' schema.
+ * Representation of the 'AiExecutionModificationRequestList' schema.
* @example [
* {
* "id": "aa97b177-9383-4934-8543-0f91a7a0283a",
@@ -19,5 +19,5 @@ import type { DeploymentModificationRequestWithIdentifier } from './deployment-m
* Min Items: 1.
* Max Items: 100.
*/
-export type DeploymentModificationRequestList =
- Set;
+export type AiExecutionModificationRequestList =
+ Set;
diff --git a/packages/ai-core/src/schema/execution-modification-request-with-identifier.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-modification-request-with-identifier.ts
similarity index 69%
rename from packages/ai-core/src/schema/execution-modification-request-with-identifier.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-modification-request-with-identifier.ts
index 736a71e7..211eac2a 100644
--- a/packages/ai-core/src/schema/execution-modification-request-with-identifier.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-modification-request-with-identifier.ts
@@ -3,14 +3,14 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-import type { ExecutionId } from './execution-id.js';
+import type { AiExecutionId } from './ai-execution-id.js';
/**
* Request object for changing the target status of an execution (currently STOPPED and DELETED are supported)
*/
-export type ExecutionModificationRequestWithIdentifier = {
- id: ExecutionId;
+export type AiExecutionModificationRequestWithIdentifier = {
+ id: AiExecutionId;
/**
* Desired target status of the execution (currently STOPPED and DELETED are supported)
*/
- targetStatus: 'STOPPED' | 'DELETED.js';
+ targetStatus: 'STOPPED' | 'DELETED';
} & Record;
diff --git a/packages/ai-core/src/schema/execution-modification-request.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-modification-request.ts
similarity index 83%
rename from packages/ai-core/src/schema/execution-modification-request.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-modification-request.ts
index 9f936935..4f7e0c10 100644
--- a/packages/ai-core/src/schema/execution-modification-request.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-modification-request.ts
@@ -7,9 +7,9 @@
/**
* Request object for changing the target status of an execution (currently only STOPPED is supported)
*/
-export type ExecutionModificationRequest = {
+export type AiExecutionModificationRequest = {
/**
* Desired target status of the execution (currently only STOPPED is supported)
*/
- targetStatus: 'STOPPED.js';
+ targetStatus: 'STOPPED';
} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-modification-response-list.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-modification-response-list.ts
new file mode 100644
index 00000000..00e43a6b
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-modification-response-list.ts
@@ -0,0 +1,13 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiExecutionModificationResponse } from './ai-execution-modification-response.js';
+import type { AiApiErrorWithId } from './ai-api-error-with-id.js';
+/**
+ * Representation of the 'AiExecutionModificationResponseList' schema.
+ */
+export type AiExecutionModificationResponseList =
+ | AiExecutionModificationResponse
+ | AiApiErrorWithId[];
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-modification-response-message.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-modification-response-message.ts
new file mode 100644
index 00000000..f53440d3
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-modification-response-message.ts
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Message
+ * @example "Execution modification scheduled"
+ */
+export type AiExecutionModificationResponseMessage = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-modification-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-modification-response.ts
new file mode 100644
index 00000000..0a2878bb
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-modification-response.ts
@@ -0,0 +1,14 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiId } from './ai-id.js';
+import type { AiExecutionModificationResponseMessage } from './ai-execution-modification-response-message.js';
+/**
+ * Representation of the 'AiExecutionModificationResponse' schema.
+ */
+export type AiExecutionModificationResponse = {
+ id: AiId;
+ message: AiExecutionModificationResponseMessage;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-response-with-details.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-response-with-details.ts
new file mode 100644
index 00000000..1e435fbc
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-response-with-details.ts
@@ -0,0 +1,58 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiExecutionId } from './ai-execution-id.js';
+import type { AiConfigurationId } from './ai-configuration-id.js';
+import type { AiConfigurationName } from './ai-configuration-name.js';
+import type { AiScenarioId } from './ai-scenario-id.js';
+import type { AiExecutionStatus } from './ai-execution-status.js';
+import type { AiExecutionStatusMessage } from './ai-execution-status-message.js';
+import type { AiArtifactArray } from './ai-artifact-array.js';
+import type { AiExecutionScheduleId } from './ai-execution-schedule-id.js';
+import type { AiExecutionStatusDetails } from './ai-execution-status-details.js';
+/**
+ * Execution that may generate artifacts
+ */
+export type AiExecutionResponseWithDetails = {
+ id: AiExecutionId;
+ configurationId: AiConfigurationId;
+ configurationName?: AiConfigurationName;
+ scenarioId?: AiScenarioId;
+ /**
+ * Target status of the execution
+ * @example "STOPPED"
+ */
+ targetStatus?: 'COMPLETED' | 'RUNNING' | 'STOPPED' | 'DELETED';
+ status: AiExecutionStatus;
+ statusMessage?: AiExecutionStatusMessage;
+ outputArtifacts?: AiArtifactArray;
+ executionScheduleId?: AiExecutionScheduleId;
+ /**
+ * Timestamp of resource creation
+ * Format: "date-time".
+ */
+ createdAt: string;
+ /**
+ * Timestamp of latest resource modification
+ * Format: "date-time".
+ */
+ modifiedAt: string;
+ /**
+ * Timestamp of job submitted
+ * Format: "date-time".
+ */
+ submissionTime?: string;
+ /**
+ * Timestamp of job status changed to RUNNING
+ * Format: "date-time".
+ */
+ startTime?: string;
+ /**
+ * Timestamp of job status changed to COMPLETED/DEAD/STOPPED
+ * Format: "date-time".
+ */
+ completionTime?: string;
+ statusDetails?: AiExecutionStatusDetails;
+} & Record;
diff --git a/packages/ai-core/src/schema/schedule-start-end.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-creation-data.ts
similarity index 62%
rename from packages/ai-core/src/schema/schedule-start-end.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-creation-data.ts
index 83d69112..614a38c6 100644
--- a/packages/ai-core/src/schema/schedule-start-end.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-creation-data.ts
@@ -3,11 +3,19 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-
+import type { AiCron } from './ai-cron.js';
+import type { AiConfigurationId } from './ai-configuration-id.js';
/**
* Start and end an execution schedule.
*/
-export type ScheduleStartEnd = {
+export type AiExecutionScheduleCreationData = {
+ cron: AiCron;
+ /**
+ * Name of the execution schedule
+ * Max Length: 256.
+ */
+ name: string;
+ configurationId: AiConfigurationId;
/**
* Timestamp, defining when the executions should start running periodically, defaults to now
* Format: "date-time".
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-creation-response-message.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-creation-response-message.ts
new file mode 100644
index 00000000..91860238
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-creation-response-message.ts
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Message
+ * @example "Execution Schedule created"
+ */
+export type AiExecutionScheduleCreationResponseMessage = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-creation-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-creation-response.ts
new file mode 100644
index 00000000..a9dadfe9
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-creation-response.ts
@@ -0,0 +1,14 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiId } from './ai-id.js';
+import type { AiExecutionScheduleCreationResponseMessage } from './ai-execution-schedule-creation-response-message.js';
+/**
+ * Representation of the 'AiExecutionScheduleCreationResponse' schema.
+ */
+export type AiExecutionScheduleCreationResponse = {
+ id: AiId;
+ message: AiExecutionScheduleCreationResponseMessage;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-deletion-response-message.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-deletion-response-message.ts
new file mode 100644
index 00000000..6ae6266a
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-deletion-response-message.ts
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Message
+ * @example "Execution Schedule deleted"
+ */
+export type AiExecutionScheduleDeletionResponseMessage = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-deletion-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-deletion-response.ts
new file mode 100644
index 00000000..d0e3f905
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-deletion-response.ts
@@ -0,0 +1,14 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiId } from './ai-id.js';
+import type { AiExecutionScheduleDeletionResponseMessage } from './ai-execution-schedule-deletion-response-message.js';
+/**
+ * Representation of the 'AiExecutionScheduleDeletionResponse' schema.
+ */
+export type AiExecutionScheduleDeletionResponse = {
+ id: AiId;
+ message: AiExecutionScheduleDeletionResponseMessage;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-id.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-id.ts
new file mode 100644
index 00000000..442525db
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-id.ts
@@ -0,0 +1,12 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * ID of the execution schedule
+ * @example "aa97b177-9383-4934-8543-0f91a7a0283a"
+ * Pattern: "^[\\w.-]{4,64}$".
+ */
+export type AiExecutionScheduleId = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-list.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-list.ts
new file mode 100644
index 00000000..59fa6101
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-list.ts
@@ -0,0 +1,16 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiExecutionSchedule } from './ai-execution-schedule.js';
+/**
+ * Representation of the 'AiExecutionScheduleList' schema.
+ */
+export type AiExecutionScheduleList = {
+ /**
+ * Number of the resource instances in the list
+ */
+ count: number;
+ resources: AiExecutionSchedule[];
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-modification-request.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-modification-request.ts
new file mode 100644
index 00000000..a01aa2b5
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-modification-request.ts
@@ -0,0 +1,26 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiCron } from './ai-cron.js';
+import type { AiConfigurationId } from './ai-configuration-id.js';
+import type { AiExecutionScheduleStatus } from './ai-execution-schedule-status.js';
+/**
+ * Request object for changing the execution schedule
+ */
+export type AiExecutionScheduleModificationRequest = {
+ cron?: AiCron;
+ /**
+ * Timestamp, defining when the executions should start running periodically, defaults to now
+ * Format: "date-time".
+ */
+ start?: string;
+ /**
+ * Timestamp, defining when the executions should stop running
+ * Format: "date-time".
+ */
+ end?: string;
+ configurationId?: AiConfigurationId;
+ status?: AiExecutionScheduleStatus;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-modification-response-message.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-modification-response-message.ts
new file mode 100644
index 00000000..6c2e66ca
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-modification-response-message.ts
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Message
+ * @example "Execution Schedule modified"
+ */
+export type AiExecutionScheduleModificationResponseMessage = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-modification-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-modification-response.ts
new file mode 100644
index 00000000..c9aa0bcd
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-modification-response.ts
@@ -0,0 +1,14 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiId } from './ai-id.js';
+import type { AiExecutionScheduleModificationResponseMessage } from './ai-execution-schedule-modification-response-message.js';
+/**
+ * Representation of the 'AiExecutionScheduleModificationResponse' schema.
+ */
+export type AiExecutionScheduleModificationResponse = {
+ id: AiId;
+ message: AiExecutionScheduleModificationResponseMessage;
+} & Record;
diff --git a/packages/ai-core/src/schema/execution-schedule-status.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-status.ts
similarity index 77%
rename from packages/ai-core/src/schema/execution-schedule-status.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-status.ts
index 43980a63..67871510 100644
--- a/packages/ai-core/src/schema/execution-schedule-status.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule-status.ts
@@ -8,4 +8,4 @@
* Execution Schedule Status
* @example "ACTIVE"
*/
-export type ExecutionScheduleStatus = 'ACTIVE' | 'INACTIVE.js';
+export type AiExecutionScheduleStatus = 'ACTIVE' | 'INACTIVE';
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule.ts
new file mode 100644
index 00000000..d13886e1
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-schedule.ts
@@ -0,0 +1,43 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiCron } from './ai-cron.js';
+import type { AiConfigurationId } from './ai-configuration-id.js';
+import type { AiExecutionScheduleId } from './ai-execution-schedule-id.js';
+import type { AiExecutionScheduleStatus } from './ai-execution-schedule-status.js';
+/**
+ * Data about execution schedule
+ */
+export type AiExecutionSchedule = {
+ cron: AiCron;
+ /**
+ * Name of the execution schedule
+ * Max Length: 256.
+ */
+ name: string;
+ configurationId: AiConfigurationId;
+ /**
+ * Timestamp, defining when the executions should start running periodically, defaults to now
+ * Format: "date-time".
+ */
+ start?: string;
+ /**
+ * Timestamp, defining when the executions should stop running
+ * Format: "date-time".
+ */
+ end?: string;
+ id?: AiExecutionScheduleId;
+ status?: AiExecutionScheduleStatus;
+ /**
+ * Timestamp of resource creation
+ * Format: "date-time".
+ */
+ createdAt: string;
+ /**
+ * Timestamp of latest resource modification
+ * Format: "date-time".
+ */
+ modifiedAt: string;
+} & Record;
diff --git a/packages/ai-core/src/schema/execution-status-details.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-status-details.ts
similarity index 78%
rename from packages/ai-core/src/schema/execution-status-details.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-status-details.ts
index 718c19fa..ea68b58d 100644
--- a/packages/ai-core/src/schema/execution-status-details.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-status-details.ts
@@ -7,4 +7,4 @@
/**
* Current status details of the execution
*/
-export type ExecutionStatusDetails = Record;
+export type AiExecutionStatusDetails = Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-status-message.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-status-message.ts
new file mode 100644
index 00000000..68a4cf44
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-status-message.ts
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Execution status message
+ * Max Length: 256.
+ */
+export type AiExecutionStatusMessage = string;
diff --git a/packages/ai-core/src/schema/status.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-status.ts
similarity index 80%
rename from packages/ai-core/src/schema/status.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-status.ts
index 368bac7f..c8addd61 100644
--- a/packages/ai-core/src/schema/status.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution-status.ts
@@ -5,14 +5,14 @@
*/
/**
- * Status
+ * Execution status
* @example "COMPLETED"
*/
-export type Status =
+export type AiExecutionStatus =
| 'PENDING'
| 'RUNNING'
| 'COMPLETED'
| 'DEAD'
| 'STOPPING'
| 'STOPPED'
- | 'UNKNOWN.js';
+ | 'UNKNOWN';
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution.ts
new file mode 100644
index 00000000..2cef0f32
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-execution.ts
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiExecutionId } from './ai-execution-id.js';
+import type { AiConfigurationId } from './ai-configuration-id.js';
+import type { AiConfigurationName } from './ai-configuration-name.js';
+import type { AiScenarioId } from './ai-scenario-id.js';
+import type { AiExecutionStatus } from './ai-execution-status.js';
+import type { AiExecutionStatusMessage } from './ai-execution-status-message.js';
+import type { AiArtifactArray } from './ai-artifact-array.js';
+import type { AiExecutionScheduleId } from './ai-execution-schedule-id.js';
+/**
+ * Execution that may generate artifacts
+ */
+export type AiExecution = {
+ id: AiExecutionId;
+ configurationId: AiConfigurationId;
+ configurationName?: AiConfigurationName;
+ scenarioId?: AiScenarioId;
+ /**
+ * Target status of the execution
+ * @example "STOPPED"
+ */
+ targetStatus?: 'COMPLETED' | 'RUNNING' | 'STOPPED' | 'DELETED';
+ status: AiExecutionStatus;
+ statusMessage?: AiExecutionStatusMessage;
+ outputArtifacts?: AiArtifactArray;
+ executionScheduleId?: AiExecutionScheduleId;
+ /**
+ * Timestamp of resource creation
+ * Format: "date-time".
+ */
+ createdAt: string;
+ /**
+ * Timestamp of latest resource modification
+ * Format: "date-time".
+ */
+ modifiedAt: string;
+ /**
+ * Timestamp of job submitted
+ * Format: "date-time".
+ */
+ submissionTime?: string;
+ /**
+ * Timestamp of job status changed to RUNNING
+ * Format: "date-time".
+ */
+ startTime?: string;
+ /**
+ * Timestamp of job status changed to COMPLETED/DEAD/STOPPED
+ * Format: "date-time".
+ */
+ completionTime?: string;
+} & Record;
diff --git a/packages/ai-core/src/schema/id.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-id.ts
similarity index 90%
rename from packages/ai-core/src/schema/id.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-id.ts
index 2f1c577f..0c1ccd37 100644
--- a/packages/ai-core/src/schema/id.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-id.ts
@@ -9,4 +9,4 @@
* @example "aa97b177-9383-4934-8543-0f91a7a0283a"
* Pattern: "^[\\w.-]{4,64}$".
*/
-export type Id = string;
+export type AiId = string;
diff --git a/packages/ai-core/src/schema/label-key.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-label-key.ts
similarity index 78%
rename from packages/ai-core/src/schema/label-key.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-label-key.ts
index dd8c23ad..5e6f2630 100644
--- a/packages/ai-core/src/schema/label-key.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-label-key.ts
@@ -5,9 +5,9 @@
*/
/**
- * Representation of the 'LabelKey' schema.
+ * Representation of the 'AiLabelKey' schema.
* @example "ext.ai.sap.com/s4hana-version"
* Max Length: 256.
* Pattern: "^ext\\.ai\\.sap\\.com\\/[\\w\\.-]+$".
*/
-export type LabelKey = string;
+export type AiLabelKey = string;
diff --git a/packages/ai-core/src/schema/label-list.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-label-list.ts
similarity index 71%
rename from packages/ai-core/src/schema/label-list.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-label-list.ts
index b932044a..e658e4aa 100644
--- a/packages/ai-core/src/schema/label-list.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-label-list.ts
@@ -3,8 +3,8 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-import type { Label } from './label.js';
+import type { AiLabel } from './ai-label.js';
/**
* Arbitrary labels as meta information
*/
-export type LabelList = Label[];
+export type AiLabelList = AiLabel[];
diff --git a/packages/ai-core/src/schema/label-value.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-label-value.ts
similarity index 69%
rename from packages/ai-core/src/schema/label-value.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-label-value.ts
index 26613c27..c38c784f 100644
--- a/packages/ai-core/src/schema/label-value.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-label-value.ts
@@ -5,7 +5,7 @@
*/
/**
- * Representation of the 'LabelValue' schema.
+ * Representation of the 'AiLabelValue' schema.
* Max Length: 5000.
*/
-export type LabelValue = string;
+export type AiLabelValue = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-label.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-label.ts
new file mode 100644
index 00000000..fd506e5b
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-label.ts
@@ -0,0 +1,14 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiLabelKey } from './ai-label-key.js';
+import type { AiLabelValue } from './ai-label-value.js';
+/**
+ * Representation of the 'AiLabel' schema.
+ */
+export type AiLabel = {
+ key: AiLabelKey;
+ value: AiLabelValue;
+} & Record;
diff --git a/packages/ai-core/src/schema/version-base-data.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-log-common-data.ts
similarity index 52%
rename from packages/ai-core/src/schema/version-base-data.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-log-common-data.ts
index c3d91c4c..5dbea256 100644
--- a/packages/ai-core/src/schema/version-base-data.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-log-common-data.ts
@@ -3,10 +3,10 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-import type { VersionDescription } from './version-description.js';
+import type { AiLogCommonResult } from './ai-log-common-result.js';
/**
- * Representation of the 'VersionBaseData' schema.
+ * Representation of the 'AiLogCommonData' schema.
*/
-export type VersionBaseData = {
- description?: VersionDescription;
+export type AiLogCommonData = {
+ result?: AiLogCommonResult;
} & Record;
diff --git a/packages/ai-core/src/schema/modification-data.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-log-common-result-item.ts
similarity index 53%
rename from packages/ai-core/src/schema/modification-data.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-log-common-result-item.ts
index 2f20bb4d..21b0cd68 100644
--- a/packages/ai-core/src/schema/modification-data.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-log-common-result-item.ts
@@ -5,12 +5,17 @@
*/
/**
- * Representation of the 'ModificationData' schema.
+ * Common log record.
*/
-export type ModificationData = {
+export type AiLogCommonResultItem = {
/**
- * Timestamp of latest resource modification
+ * Datetime in RFC 3339.
+ * @example "2021-05-19T00:00:14.347+00:00"
* Format: "date-time".
*/
- modifiedAt: string;
+ timestamp?: string;
+ /**
+ * message content.
+ */
+ msg?: string;
} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-log-common-result.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-log-common-result.ts
new file mode 100644
index 00000000..aea1e683
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-log-common-result.ts
@@ -0,0 +1,10 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiLogCommonResultItem } from './ai-log-common-result-item.js';
+/**
+ * Representation of the 'AiLogCommonResult' schema.
+ */
+export type AiLogCommonResult = AiLogCommonResultItem[];
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-model-base-data.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-model-base-data.ts
new file mode 100644
index 00000000..703299e1
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-model-base-data.ts
@@ -0,0 +1,22 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiExecutableId } from './ai-executable-id.js';
+import type { AiModelVersionList } from './ai-model-version-list.js';
+/**
+ * Representation of the 'AiModelBaseData' schema.
+ */
+export type AiModelBaseData = {
+ /**
+ * Name of the model
+ */
+ model: string;
+ executableId: AiExecutableId;
+ /**
+ * Description of the model and its capabilities
+ */
+ description: string;
+ versions: AiModelVersionList;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-model-list.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-model-list.ts
new file mode 100644
index 00000000..b1b78d85
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-model-list.ts
@@ -0,0 +1,16 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiModelBaseData } from './ai-model-base-data.js';
+/**
+ * Representation of the 'AiModelList' schema.
+ */
+export type AiModelList = {
+ /**
+ * Number of the resource instances in the list
+ */
+ count: number;
+ resources: AiModelBaseData[];
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-model-version-list.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-model-version-list.ts
new file mode 100644
index 00000000..08fadf7e
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-model-version-list.ts
@@ -0,0 +1,10 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiModelVersion } from './ai-model-version.js';
+/**
+ * List of model versions that the model object has
+ */
+export type AiModelVersionList = AiModelVersion[];
diff --git a/packages/ai-core/src/schema/executable-base-data.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-model-version.ts
similarity index 50%
rename from packages/ai-core/src/schema/executable-base-data.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-model-version.ts
index 8396815c..6c053665 100644
--- a/packages/ai-core/src/schema/executable-base-data.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-model-version.ts
@@ -3,17 +3,17 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-import type { Labeled } from './labeled.js';
+
/**
- * Representation of the 'ExecutableBaseData' schema.
+ * Model version information including whether it is latest version
*/
-export type ExecutableBaseData = Labeled & {
+export type AiModelVersion = {
/**
- * Name of the executable
+ * Name of model version
*/
name: string;
/**
- * Description of the executable
+ * Displays whether it is the latest version offered for the model
*/
- description?: string;
+ isLatest: boolean;
} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-parameter-argument-binding-list.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-parameter-argument-binding-list.ts
new file mode 100644
index 00000000..6e7bf9c9
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-parameter-argument-binding-list.ts
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiParameterArgumentBinding } from './ai-parameter-argument-binding.js';
+/**
+ * Representation of the 'AiParameterArgumentBindingList' schema.
+ * Max Items: 1000.
+ */
+export type AiParameterArgumentBindingList = AiParameterArgumentBinding[];
diff --git a/packages/ai-core/src/schema/parameter-argument-binding.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-parameter-argument-binding.ts
similarity index 89%
rename from packages/ai-core/src/schema/parameter-argument-binding.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-parameter-argument-binding.ts
index 380aa706..ba73c941 100644
--- a/packages/ai-core/src/schema/parameter-argument-binding.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-parameter-argument-binding.ts
@@ -9,7 +9,7 @@
* Result of activation
*
*/
-export type ParameterArgumentBinding = {
+export type AiParameterArgumentBinding = {
/**
* Max Length: 256.
*/
diff --git a/packages/ai-core/src/schema/resources-details.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-resources-details.ts
similarity index 71%
rename from packages/ai-core/src/schema/resources-details.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-resources-details.ts
index 303c7a82..c92afb30 100644
--- a/packages/ai-core/src/schema/resources-details.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-resources-details.ts
@@ -3,7 +3,7 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-import type { BackendDetails } from './backend-details.js';
+import type { AiBackendDetails } from './ai-backend-details.js';
/**
* Resources details of a deployment
* @example {
@@ -14,6 +14,6 @@ import type { BackendDetails } from './backend-details.js';
* }
* }
*/
-export type ResourcesDetails = {
- backendDetails?: BackendDetails;
+export type AiResourcesDetails = {
+ backendDetails?: AiBackendDetails;
} & Record;
diff --git a/packages/ai-core/src/schema/scaling-details.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-scaling-details.ts
similarity index 74%
rename from packages/ai-core/src/schema/scaling-details.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-scaling-details.ts
index e640bc91..d7bf723f 100644
--- a/packages/ai-core/src/schema/scaling-details.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-scaling-details.ts
@@ -3,7 +3,7 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-import type { BackendDetails } from './backend-details.js';
+import type { AiBackendDetails } from './ai-backend-details.js';
/**
* Scaling details of a deployment
* @example {
@@ -16,6 +16,6 @@ import type { BackendDetails } from './backend-details.js';
* }
* }
*/
-export type ScalingDetails = {
- backendDetails?: BackendDetails;
+export type AiScalingDetails = {
+ backendDetails?: AiBackendDetails;
} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-scenario-id.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-scenario-id.ts
new file mode 100644
index 00000000..a9a810af
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-scenario-id.ts
@@ -0,0 +1,12 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * ID of the scenario
+ * @example "aa97b177-9383-4934-8543-0f91a7a0283a"
+ * Pattern: "^[\\w.-]{4,64}$".
+ */
+export type AiScenarioId = string;
diff --git a/packages/ai-core/src/schema/scenario-label-key.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-scenario-label-key.ts
similarity index 76%
rename from packages/ai-core/src/schema/scenario-label-key.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-scenario-label-key.ts
index 173a375b..3c529558 100644
--- a/packages/ai-core/src/schema/scenario-label-key.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-scenario-label-key.ts
@@ -5,9 +5,9 @@
*/
/**
- * Representation of the 'ScenarioLabelKey' schema.
+ * Representation of the 'AiScenarioLabelKey' schema.
* @example "scenarios.ai.sap.com/s4hana-version"
* Max Length: 256.
* Pattern: "^(scenarios|ext)\\.ai\\.sap\\.com\\/[\\w\\.-]+$".
*/
-export type ScenarioLabelKey = string;
+export type AiScenarioLabelKey = string;
diff --git a/packages/ai-core/src/schema/resource-group-labels.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-scenario-label-list.ts
similarity index 62%
rename from packages/ai-core/src/schema/resource-group-labels.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-scenario-label-list.ts
index fda8a884..c38f26f7 100644
--- a/packages/ai-core/src/schema/resource-group-labels.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-scenario-label-list.ts
@@ -3,8 +3,8 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-import type { ResourceGroupLabel } from './resource-group-label.js';
+import type { AiScenarioLabel } from './ai-scenario-label.js';
/**
* Arbitrary labels as meta information
*/
-export type ResourceGroupLabels = ResourceGroupLabel[];
+export type AiScenarioLabelList = AiScenarioLabel[];
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-scenario-label.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-scenario-label.ts
new file mode 100644
index 00000000..0d953f95
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-scenario-label.ts
@@ -0,0 +1,14 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiScenarioLabelKey } from './ai-scenario-label-key.js';
+import type { AiLabelValue } from './ai-label-value.js';
+/**
+ * Representation of the 'AiScenarioLabel' schema.
+ */
+export type AiScenarioLabel = {
+ key: AiScenarioLabelKey;
+ value: AiLabelValue;
+} & Record;
diff --git a/packages/ai-core/src/schema/resource-count.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-scenario-list.ts
similarity index 59%
rename from packages/ai-core/src/schema/resource-count.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-scenario-list.ts
index 88d2d9c7..55cb2502 100644
--- a/packages/ai-core/src/schema/resource-count.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-scenario-list.ts
@@ -3,13 +3,14 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-
+import type { AiScenario } from './ai-scenario.js';
/**
- * Representation of the 'ResourceCount' schema.
+ * Representation of the 'AiScenarioList' schema.
*/
-export type ResourceCount = {
+export type AiScenarioList = {
/**
* Number of the resource instances in the list
*/
- count?: number;
+ count: number;
+ resources: AiScenario[];
} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-scenario.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-scenario.ts
new file mode 100644
index 00000000..592d8d15
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-scenario.ts
@@ -0,0 +1,35 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiScenarioLabelList } from './ai-scenario-label-list.js';
+import type { AiScenarioId } from './ai-scenario-id.js';
+/**
+ * An ML Scenario consists of a number of executables. E.g., there can be one or several training executables, an inference (deployment) executable. An ML Scenario is versioned.
+ *
+ */
+export type AiScenario = {
+ /**
+ * Name of the scenario
+ * Max Length: 256.
+ */
+ name: string;
+ /**
+ * Description of the scenario
+ * Max Length: 5000.
+ */
+ description?: string;
+ labels?: AiScenarioLabelList;
+ id: AiScenarioId;
+ /**
+ * Timestamp of resource creation
+ * Format: "date-time".
+ */
+ createdAt: string;
+ /**
+ * Timestamp of latest resource modification
+ * Format: "date-time".
+ */
+ modifiedAt: string;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-url.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-url.ts
new file mode 100644
index 00000000..0ca6c3c8
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-url.ts
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Representation of the 'AiUrl' schema.
+ * Format: "url".
+ */
+export type AiUrl = string;
diff --git a/packages/ai-core/src/schema/version-description.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-version-description.ts
similarity index 85%
rename from packages/ai-core/src/schema/version-description.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-version-description.ts
index 84c78a90..174c1db7 100644
--- a/packages/ai-core/src/schema/version-description.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-version-description.ts
@@ -9,4 +9,4 @@
* @example "This is version v1"
* Max Length: 5000.
*/
-export type VersionDescription = string;
+export type AiVersionDescription = string;
diff --git a/packages/ai-core/src/schema/version-id.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-version-id.ts
similarity index 84%
rename from packages/ai-core/src/schema/version-id.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-version-id.ts
index 2e9de0eb..d4a2a7ca 100644
--- a/packages/ai-core/src/schema/version-id.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-version-id.ts
@@ -7,4 +7,4 @@
/**
* Version ID
*/
-export type VersionId = string;
+export type AiVersionId = string;
diff --git a/packages/ai-core/src/schema/resource-list.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-version-list.ts
similarity index 63%
rename from packages/ai-core/src/schema/resource-list.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/ai-version-list.ts
index 4fef7042..b8032d6a 100644
--- a/packages/ai-core/src/schema/resource-list.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-version-list.ts
@@ -3,14 +3,14 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-
+import type { AiVersion } from './ai-version.js';
/**
- * Representation of the 'ResourceList' schema.
+ * Representation of the 'AiVersionList' schema.
*/
-export type ResourceList = {
+export type AiVersionList = {
/**
* Number of the resource instances in the list
*/
count: number;
- resources: Record[];
+ resources: AiVersion[];
} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/ai-version.ts b/packages/ai-core/src/client/AI_CORE_API/schema/ai-version.ts
new file mode 100644
index 00000000..127e15ad
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/ai-version.ts
@@ -0,0 +1,26 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { AiVersionDescription } from './ai-version-description.js';
+import type { AiVersionId } from './ai-version-id.js';
+import type { AiScenarioId } from './ai-scenario-id.js';
+/**
+ * Representation of the 'AiVersion' schema.
+ */
+export type AiVersion = {
+ description?: AiVersionDescription;
+ id: AiVersionId;
+ scenarioId?: AiScenarioId;
+ /**
+ * Timestamp of resource creation
+ * Format: "date-time".
+ */
+ createdAt: string;
+ /**
+ * Timestamp of latest resource modification
+ * Format: "date-time".
+ */
+ modifiedAt: string;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-all-argo-cd-application-data.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-all-argo-cd-application-data.ts
new file mode 100644
index 00000000..dbdf0795
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-all-argo-cd-application-data.ts
@@ -0,0 +1,16 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { BckndArgoCDApplicationData } from './bcknd-argo-cd-application-data.js';
+/**
+ * list of applications
+ */
+export type BckndAllArgoCDApplicationData = {
+ /**
+ * Number of the resource instances in the list
+ */
+ count: number;
+ resources: BckndArgoCDApplicationData[];
+} & Record;
diff --git a/packages/ai-core/src/schema/argo-cd-application-base-data.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-base-data.ts
similarity index 78%
rename from packages/ai-core/src/schema/argo-cd-application-base-data.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-base-data.ts
index d90fa68c..c8cb7d87 100644
--- a/packages/ai-core/src/schema/argo-cd-application-base-data.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-base-data.ts
@@ -5,9 +5,9 @@
*/
/**
- * Representation of the 'ArgoCDApplicationBaseData' schema.
+ * Representation of the 'BckndArgoCDApplicationBaseData' schema.
*/
-export type ArgoCDApplicationBaseData = {
+export type BckndArgoCDApplicationBaseData = {
/**
* URL of the repository to synchronise
*/
diff --git a/packages/ai-core/src/schema/argo-cd-repository-data-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-creation-response-message.ts
similarity index 57%
rename from packages/ai-core/src/schema/argo-cd-repository-data-response.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-creation-response-message.ts
index 587eb259..4fba3ede 100644
--- a/packages/ai-core/src/schema/argo-cd-repository-data-response.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-creation-response-message.ts
@@ -5,6 +5,7 @@
*/
/**
- * This represents a list of GitOps repositories for the tenant.
+ * Message
+ * @example "ArgoCD application has been created"
*/
-export type ArgoCDRepositoryDataResponse = Record;
+export type BckndArgoCDApplicationCreationResponseMessage = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-creation-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-creation-response.ts
new file mode 100644
index 00000000..71c12222
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-creation-response.ts
@@ -0,0 +1,14 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { BckndId } from './bcknd-id.js';
+import type { BckndArgoCDApplicationCreationResponseMessage } from './bcknd-argo-cd-application-creation-response-message.js';
+/**
+ * Representation of the 'BckndArgoCDApplicationCreationResponse' schema.
+ */
+export type BckndArgoCDApplicationCreationResponse = {
+ id: BckndId;
+ message: BckndArgoCDApplicationCreationResponseMessage;
+} & Record;
diff --git a/packages/ai-core/src/schema/argo-cd-application-data-repo-name.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-data-repo-name.ts
similarity index 82%
rename from packages/ai-core/src/schema/argo-cd-application-data-repo-name.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-data-repo-name.ts
index c10cb63c..f162dccd 100644
--- a/packages/ai-core/src/schema/argo-cd-application-data-repo-name.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-data-repo-name.ts
@@ -5,9 +5,9 @@
*/
/**
- * Representation of the 'ArgoCDApplicationDataRepoName' schema.
+ * Representation of the 'BckndArgoCDApplicationDataRepoName' schema.
*/
-export type ArgoCDApplicationDataRepoName = {
+export type BckndArgoCDApplicationDataRepoName = {
/**
* Name of the repository to synchronise
*/
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-data.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-data.ts
new file mode 100644
index 00000000..2b6b06b7
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-data.ts
@@ -0,0 +1,30 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Representation of the 'BckndArgoCDApplicationData' schema.
+ */
+export type BckndArgoCDApplicationData = {
+ /**
+ * URL of the repository to synchronise
+ */
+ repositoryUrl: string;
+ /**
+ * revision to synchronise
+ */
+ revision: string;
+ /**
+ * path within the repository to synchronise
+ */
+ path: string;
+ /**
+ * ArgoCD application name
+ * Max Length: 54.
+ * Min Length: 3.
+ * Pattern: "^[a-z0-9\\-]+$".
+ */
+ applicationName?: string;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-deletion-response-message.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-deletion-response-message.ts
new file mode 100644
index 00000000..73bb6935
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-deletion-response-message.ts
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Message
+ * @example "ArgoCD application has been deleted"
+ */
+export type BckndArgoCDApplicationDeletionResponseMessage = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-deletion-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-deletion-response.ts
new file mode 100644
index 00000000..b0b10a24
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-deletion-response.ts
@@ -0,0 +1,14 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { BckndId } from './bcknd-id.js';
+import type { BckndArgoCDApplicationDeletionResponseMessage } from './bcknd-argo-cd-application-deletion-response-message.js';
+/**
+ * Representation of the 'BckndArgoCDApplicationDeletionResponse' schema.
+ */
+export type BckndArgoCDApplicationDeletionResponse = {
+ id: BckndId;
+ message: BckndArgoCDApplicationDeletionResponseMessage;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-modification-response-message.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-modification-response-message.ts
new file mode 100644
index 00000000..0ec31e28
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-modification-response-message.ts
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Message
+ * @example "ArgoCD application has been updated"
+ */
+export type BckndArgoCDApplicationModificationResponseMessage = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-modification-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-modification-response.ts
new file mode 100644
index 00000000..0bcfe1b5
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-modification-response.ts
@@ -0,0 +1,14 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { BckndId } from './bcknd-id.js';
+import type { BckndArgoCDApplicationModificationResponseMessage } from './bcknd-argo-cd-application-modification-response-message.js';
+/**
+ * Representation of the 'BckndArgoCDApplicationModificationResponse' schema.
+ */
+export type BckndArgoCDApplicationModificationResponse = {
+ id: BckndId;
+ message: BckndArgoCDApplicationModificationResponseMessage;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-refresh-response-message.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-refresh-response-message.ts
new file mode 100644
index 00000000..a3cb224e
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-refresh-response-message.ts
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Message
+ * @example "Refresh of ArgoCD application has been scheduled"
+ */
+export type BckndArgoCDApplicationRefreshResponseMessage = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-refresh-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-refresh-response.ts
new file mode 100644
index 00000000..dca2fe47
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-refresh-response.ts
@@ -0,0 +1,14 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { BckndId } from './bcknd-id.js';
+import type { BckndArgoCDApplicationRefreshResponseMessage } from './bcknd-argo-cd-application-refresh-response-message.js';
+/**
+ * Representation of the 'BckndArgoCDApplicationRefreshResponse' schema.
+ */
+export type BckndArgoCDApplicationRefreshResponse = {
+ id: BckndId;
+ message: BckndArgoCDApplicationRefreshResponseMessage;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-status.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-status.ts
new file mode 100644
index 00000000..667d40de
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-application-status.ts
@@ -0,0 +1,95 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * ArgoCD application definition and status
+ */
+export type BckndArgoCDApplicationStatus = {
+ /**
+ * ArgoCD application health status
+ */
+ healthStatus?: string;
+ /**
+ * ArgoCD application sync status
+ */
+ syncStatus?: string;
+ /**
+ * ArgoCD application health status message
+ */
+ message?: string;
+ /**
+ * Information about the ArgoCD application itself
+ */
+ source?: {
+ /**
+ * URL of the repository
+ */
+ repoURL?: string;
+ /**
+ * Path of the repository
+ */
+ path?: string;
+ /**
+ * Revision number of the ArgoCD application
+ */
+ revision?: string;
+ } & Record;
+ /**
+ * Gets the timestamp information related to the sync state of the ArgoCD application
+ */
+ syncFinishedAt?: string;
+ /**
+ * Get timestamp information related to the sync state of the ArgoCD application
+ */
+ syncStartedAt?: string;
+ /**
+ * Get timestamp information related to the sync state of the ArgoCD application
+ */
+ reconciledAt?: string;
+ /**
+ * Status of all resources that need to be synchronized with the gitops repo
+ */
+ syncResourcesStatus?: ({
+ /**
+ * ArgoCD application object name
+ */
+ name?: string;
+ /**
+ * ArgoCD application object kind
+ */
+ kind?: string;
+ /**
+ * ArgoCD application object sync status
+ */
+ status?: string;
+ /**
+ * ArgoCD application object message
+ */
+ message?: string;
+ } & Record)[];
+ /**
+ * Status of all resources that need to be synchronized with the gitops repo. Misspelled and deprecated, use syncResourcesStatus instead.
+ * @deprecated
+ */
+ syncRessourcesStatus?: ({
+ /**
+ * ArgoCD application object name
+ */
+ name?: string;
+ /**
+ * ArgoCD application object kind
+ */
+ kind?: string;
+ /**
+ * ArgoCD application object sync status
+ */
+ status?: string;
+ /**
+ * ArgoCD application object message
+ */
+ message?: string;
+ } & Record)[];
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-creation-response-message.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-creation-response-message.ts
new file mode 100644
index 00000000..a85b0798
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-creation-response-message.ts
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Message
+ * @example "Repository has been on-boarded"
+ */
+export type BckndArgoCDRepositoryCreationResponseMessage = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-creation-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-creation-response.ts
new file mode 100644
index 00000000..a00a3f12
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-creation-response.ts
@@ -0,0 +1,14 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { BckndId } from './bcknd-id.js';
+import type { BckndArgoCDRepositoryCreationResponseMessage } from './bcknd-argo-cd-repository-creation-response-message.js';
+/**
+ * Representation of the 'BckndArgoCDRepositoryCreationResponse' schema.
+ */
+export type BckndArgoCDRepositoryCreationResponse = {
+ id: BckndId;
+ message: BckndArgoCDRepositoryCreationResponseMessage;
+} & Record;
diff --git a/packages/ai-core/src/schema/argo-cd-repository-credentials.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-credentials.ts
similarity index 75%
rename from packages/ai-core/src/schema/argo-cd-repository-credentials.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-credentials.ts
index e85054e5..1b7784e5 100644
--- a/packages/ai-core/src/schema/argo-cd-repository-credentials.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-credentials.ts
@@ -5,9 +5,9 @@
*/
/**
- * Representation of the 'ArgoCDRepositoryCredentials' schema.
+ * Representation of the 'BckndArgoCDRepositoryCredentials' schema.
*/
-export type ArgoCDRepositoryCredentials = {
+export type BckndArgoCDRepositoryCredentials = {
/**
* Username for read-access to the repository
*/
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-data-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-data-response.ts
new file mode 100644
index 00000000..40204312
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-data-response.ts
@@ -0,0 +1,16 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { BckndArgoCDRepositoryDetails } from './bcknd-argo-cd-repository-details.js';
+/**
+ * This represents a list of GitOps repositories for the tenant.
+ */
+export type BckndArgoCDRepositoryDataResponse = {
+ /**
+ * Number of the resource instances in the list
+ */
+ count: number;
+ resources: BckndArgoCDRepositoryDetails[];
+} & Record;
diff --git a/packages/ai-core/src/schema/argo-cd-repository-data.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-data.ts
similarity index 84%
rename from packages/ai-core/src/schema/argo-cd-repository-data.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-data.ts
index f736d9b8..a688b139 100644
--- a/packages/ai-core/src/schema/argo-cd-repository-data.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-data.ts
@@ -5,9 +5,9 @@
*/
/**
- * Representation of the 'ArgoCDRepositoryData' schema.
+ * Representation of the 'BckndArgoCDRepositoryData' schema.
*/
-export type ArgoCDRepositoryData = {
+export type BckndArgoCDRepositoryData = {
/**
* Name of the repository
* Max Length: 51.
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-deletion-response-message.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-deletion-response-message.ts
new file mode 100644
index 00000000..310bc6a5
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-deletion-response-message.ts
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Message
+ * @example "The repository has been off-boarded."
+ */
+export type BckndArgoCDRepositoryDeletionResponseMessage = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-deletion-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-deletion-response.ts
new file mode 100644
index 00000000..834c135d
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-deletion-response.ts
@@ -0,0 +1,14 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { BckndId } from './bcknd-id.js';
+import type { BckndArgoCDRepositoryDeletionResponseMessage } from './bcknd-argo-cd-repository-deletion-response-message.js';
+/**
+ * Representation of the 'BckndArgoCDRepositoryDeletionResponse' schema.
+ */
+export type BckndArgoCDRepositoryDeletionResponse = {
+ id: BckndId;
+ message: BckndArgoCDRepositoryDeletionResponseMessage;
+} & Record;
diff --git a/packages/ai-core/src/schema/argo-cd-repository-details.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-details.ts
similarity index 81%
rename from packages/ai-core/src/schema/argo-cd-repository-details.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-details.ts
index 62d8fd7c..a54c307b 100644
--- a/packages/ai-core/src/schema/argo-cd-repository-details.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-details.ts
@@ -7,7 +7,7 @@
/**
* Repository details
*/
-export type ArgoCDRepositoryDetails = {
+export type BckndArgoCDRepositoryDetails = {
/**
* The name of the repository
*/
@@ -20,5 +20,5 @@ export type ArgoCDRepositoryDetails = {
* The status of the repository's on-boarding
* @example "COMPLETED"
*/
- status?: 'ERROR' | 'IN-PROGRESS' | 'COMPLETED.js';
+ status?: 'ERROR' | 'IN-PROGRESS' | 'COMPLETED';
} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-modification-response-message.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-modification-response-message.ts
new file mode 100644
index 00000000..5c71ad52
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-modification-response-message.ts
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Message
+ * @example "ArgoCD application has been updated"
+ */
+export type BckndArgoCDRepositoryModificationResponseMessage = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-modification-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-modification-response.ts
new file mode 100644
index 00000000..65d49499
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-argo-cd-repository-modification-response.ts
@@ -0,0 +1,14 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { BckndId } from './bcknd-id.js';
+import type { BckndArgoCDRepositoryModificationResponseMessage } from './bcknd-argo-cd-repository-modification-response-message.js';
+/**
+ * Representation of the 'BckndArgoCDRepositoryModificationResponse' schema.
+ */
+export type BckndArgoCDRepositoryModificationResponse = {
+ id: BckndId;
+ message: BckndArgoCDRepositoryModificationResponseMessage;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-common-resource-quota-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-common-resource-quota-response.ts
new file mode 100644
index 00000000..a88ef127
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-common-resource-quota-response.ts
@@ -0,0 +1,21 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Representation of the 'BckndCommonResourceQuotaResponse' schema.
+ */
+export type BckndCommonResourceQuotaResponse = {
+ usage?: {
+ count?: number;
+ } & Record;
+ quota: {
+ /**
+ * The value can be 0(disabled) or a positive integer defining the maximum allowed number
+ * @example 10
+ */
+ maxCount?: number;
+ } & Record;
+} & Record;
diff --git a/packages/ai-core/src/schema/all-argo-cd-application-data.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-creation-response-message.ts
similarity index 67%
rename from packages/ai-core/src/schema/all-argo-cd-application-data.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/bcknd-creation-response-message.ts
index b0934844..36da9693 100644
--- a/packages/ai-core/src/schema/all-argo-cd-application-data.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-creation-response-message.ts
@@ -5,6 +5,7 @@
*/
/**
- * list of applications
+ * Message
+ * @example "Created"
*/
-export type AllArgoCDApplicationData = Record;
+export type BckndCreationResponseMessage = string;
diff --git a/packages/ai-core/src/schema/common-resource-quota-response-quota.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-deployment-quota.ts
similarity index 68%
rename from packages/ai-core/src/schema/common-resource-quota-response-quota.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/bcknd-deployment-quota.ts
index 66fe9c33..7589582e 100644
--- a/packages/ai-core/src/schema/common-resource-quota-response-quota.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-deployment-quota.ts
@@ -5,12 +5,13 @@
*/
/**
- * Representation of the 'CommonResourceQuotaResponseQuota' schema.
+ * Representation of the 'BckndDeploymentQuota' schema.
*/
-export type CommonResourceQuotaResponseQuota = {
+export type BckndDeploymentQuota = {
/**
* The value can be 0(disabled) or a positive integer defining the maximum allowed number
* @example 10
*/
- maxCount?: number;
+ maxCount: number;
+ maxReplicaPerDeployment: number;
} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-deployment-usage.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-deployment-usage.ts
new file mode 100644
index 00000000..4ccec55d
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-deployment-usage.ts
@@ -0,0 +1,13 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { BckndUsageResourcePlanItem } from './bcknd-usage-resource-plan-item.js';
+/**
+ * Representation of the 'BckndDeploymentUsage' schema.
+ */
+export type BckndDeploymentUsage = {
+ count: number;
+ resourcePlans: BckndUsageResourcePlanItem[];
+} & Record;
diff --git a/packages/ai-core/src/schema/error-response-2.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-error-response.ts
similarity index 54%
rename from packages/ai-core/src/schema/error-response-2.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/bcknd-error-response.ts
index e4c867a5..65a57cb6 100644
--- a/packages/ai-core/src/schema/error-response-2.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-error-response.ts
@@ -3,10 +3,10 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-import type { Error2 } from './error-2.js';
+import type { BckndError } from './bcknd-error.js';
/**
- * Representation of the 'ErrorResponse2' schema.
+ * Representation of the 'BckndErrorResponse' schema.
*/
-export type ErrorResponse2 = {
- error?: Error2;
+export type BckndErrorResponse = {
+ error?: BckndError;
} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-error.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-error.ts
new file mode 100644
index 00000000..b1564067
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-error.ts
@@ -0,0 +1,32 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Representation of the 'BckndError' schema.
+ */
+export type BckndError = {
+ /**
+ * Descriptive error code (not http status code)
+ */
+ code: string;
+ /**
+ * Plaintext error description
+ * @example "something went wrong"
+ */
+ message: string;
+ /**
+ * ID of the individual request
+ */
+ requestId?: string;
+ /**
+ * Invoked URL
+ */
+ target?: string;
+ /**
+ * Optional details of the error message
+ */
+ details?: Record;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-event.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-event.ts
new file mode 100644
index 00000000..a9cdbb9d
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-event.ts
@@ -0,0 +1,26 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Representation of the 'BckndEvent' schema.
+ */
+export type BckndEvent = {
+ /**
+ * tenant id
+ */
+ tenantId?: string;
+ action?: 'PROVISION' | 'DEPROVISION';
+ state?: 'SUCCESSFUL' | 'FAILED' | 'PENDING';
+ /**
+ * describes the event state
+ */
+ description?: string;
+ /**
+ * @example "2017-09-28T08:56:23.275Z"
+ * Format: "date-time".
+ */
+ createdAt?: string;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-executable-resource-quota-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-executable-resource-quota-response.ts
new file mode 100644
index 00000000..417ae209
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-executable-resource-quota-response.ts
@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Representation of the 'BckndExecutableResourceQuotaResponse' schema.
+ */
+export type BckndExecutableResourceQuotaResponse = {
+ usage?: {
+ servingTemplateCount?: number;
+ workflowTemplateCount?: number;
+ } & Record;
+ quota: {
+ /**
+ * The value can be 0(disabled) or a positive integer defining the maximum allowed number
+ * @example 10
+ */
+ servingTemplateMaxCount?: number;
+ /**
+ * The value can be 0(disabled) or a positive integer defining the maximum allowed number
+ * @example 10
+ */
+ workflowTemplateMaxCount?: number;
+ } & Record;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-extended-service.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-extended-service.ts
new file mode 100644
index 00000000..aaf59a37
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-extended-service.ts
@@ -0,0 +1,36 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { BckndServiceBrokerSecret } from './bcknd-service-broker-secret.js';
+import type { BckndServiceCapabilities } from './bcknd-service-capabilities.js';
+import type { BckndServiceServiceCatalog } from './bcknd-service-service-catalog.js';
+/**
+ * Representation of the 'BckndExtendedService' schema.
+ */
+export type BckndExtendedService = {
+ /**
+ * service name
+ */
+ name?: string;
+ /**
+ * service description
+ */
+ description?: string;
+ /**
+ * service broker url
+ */
+ url?: string;
+ brokerSecret?: BckndServiceBrokerSecret;
+ capabilities?: BckndServiceCapabilities;
+ serviceCatalog?: BckndServiceServiceCatalog;
+ /**
+ * aggregated status of the service
+ */
+ status?: 'PROVISIONED' | 'ERROR' | 'PROVISIONING' | 'DEPROVISIONING';
+ /**
+ * status message
+ */
+ statusMessage?: string;
+} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-generic-secret-data-response.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-generic-secret-data-response.ts
new file mode 100644
index 00000000..85004a07
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-generic-secret-data-response.ts
@@ -0,0 +1,14 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { BckndMessage } from './bcknd-message.js';
+import type { BckndName } from './bcknd-name.js';
+/**
+ * Representation of the 'BckndGenericSecretDataResponse' schema.
+ */
+export type BckndGenericSecretDataResponse = {
+ message?: BckndMessage;
+ name?: BckndName;
+} & Record;
diff --git a/packages/ai-core/src/schema/generic-secret-data.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-generic-secret-data.ts
similarity index 76%
rename from packages/ai-core/src/schema/generic-secret-data.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/bcknd-generic-secret-data.ts
index 00c4b889..ab173dea 100644
--- a/packages/ai-core/src/schema/generic-secret-data.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-generic-secret-data.ts
@@ -7,4 +7,4 @@
/**
* Base64 encoded secret data
*/
-export type GenericSecretData = Record;
+export type BckndGenericSecretData = Record;
diff --git a/packages/ai-core/src/schema/generic-secret-details.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-generic-secret-details.ts
similarity index 75%
rename from packages/ai-core/src/schema/generic-secret-details.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/bcknd-generic-secret-details.ts
index 84f4e525..1b073204 100644
--- a/packages/ai-core/src/schema/generic-secret-details.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-generic-secret-details.ts
@@ -5,9 +5,9 @@
*/
/**
- * Representation of the 'GenericSecretDetails' schema.
+ * Representation of the 'BckndGenericSecretDetails' schema.
*/
-export type GenericSecretDetails = {
+export type BckndGenericSecretDetails = {
/**
* Name of the secret
*/
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-generic-secret-patch-body.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-generic-secret-patch-body.ts
new file mode 100644
index 00000000..a4655451
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-generic-secret-patch-body.ts
@@ -0,0 +1,12 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+import type { BckndGenericSecretData } from './bcknd-generic-secret-data.js';
+/**
+ * Representation of the 'BckndGenericSecretPatchBody' schema.
+ */
+export type BckndGenericSecretPatchBody = {
+ data: BckndGenericSecretData;
+} & Record;
diff --git a/packages/ai-core/src/schema/generic-secret-post-body.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-generic-secret-post-body.ts
similarity index 60%
rename from packages/ai-core/src/schema/generic-secret-post-body.ts
rename to packages/ai-core/src/client/AI_CORE_API/schema/bcknd-generic-secret-post-body.ts
index 77323d51..752ec56b 100644
--- a/packages/ai-core/src/schema/generic-secret-post-body.ts
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-generic-secret-post-body.ts
@@ -3,11 +3,11 @@
*
* This is a generated file powered by the SAP Cloud SDK for JavaScript.
*/
-import type { GenericSecretData } from './generic-secret-data.js';
+import type { BckndGenericSecretData } from './bcknd-generic-secret-data.js';
/**
- * Representation of the 'GenericSecretPostBody' schema.
+ * Representation of the 'BckndGenericSecretPostBody' schema.
*/
-export type GenericSecretPostBody = {
+export type BckndGenericSecretPostBody = {
/**
* The name of the secret
* Max Length: 252.
@@ -15,5 +15,5 @@ export type GenericSecretPostBody = {
* Pattern: "^[a-z0-9\\-\\.]+$".
*/
name: string;
- data: GenericSecretData;
+ data: BckndGenericSecretData;
} & Record;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-id.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-id.ts
new file mode 100644
index 00000000..17d8a55a
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-id.ts
@@ -0,0 +1,12 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Generic ID
+ * @example "aa97b177-9383-4934-8543-0f91a7a0283a"
+ * Pattern: "^[\\w.-]{4,64}$".
+ */
+export type BckndId = string;
diff --git a/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-internal-resource-group-annotation.ts b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-internal-resource-group-annotation.ts
new file mode 100644
index 00000000..21164110
--- /dev/null
+++ b/packages/ai-core/src/client/AI_CORE_API/schema/bcknd-internal-resource-group-annotation.ts
@@ -0,0 +1,21 @@
+/*
+ * Copyright (c) 2024 SAP SE or an SAP affiliate company. All rights reserved.
+ *
+ * This is a generated file powered by the SAP Cloud SDK for JavaScript.
+ */
+
+/**
+ * Representation of the 'BckndInternalResourceGroupAnnotation' schema.
+ */
+export type BckndInternalResourceGroupAnnotation = {
+ /**
+ * @example "internal.ai.sap.com/my-annotation"
+ * Max Length: 63.
+ * Pattern: "^internal.ai.sap.com/(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9]){1,43}$".
+ */
+ key: string;
+ /**
+ * Max Length: 5000.
+ */
+ value: string;
+} & Record