From a04d19bbf0ddbf72c77be572238590885f474910 Mon Sep 17 00:00:00 2001 From: Matthias Kuhr Date: Wed, 22 Jan 2025 15:44:34 +0100 Subject: [PATCH 1/5] Fix node setup step --- .github/workflows/spec-update.yaml | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/.github/workflows/spec-update.yaml b/.github/workflows/spec-update.yaml index f17f9b472..72f6122bd 100644 --- a/.github/workflows/spec-update.yaml +++ b/.github/workflows/spec-update.yaml @@ -41,9 +41,9 @@ jobs: REF: ${{ github.event.inputs.file-ref }} CREATE_PR: ${{ github.event.inputs.create-pr }} steps: - - name: "Checkout repository" - uses: actions/checkout@v4 + - uses: sap/ai-sdk-js/.github/actions/setup@main with: + node-version: 20 token: ${{ secrets.GITHUB_TOKEN }} - name: "Checkout or Create Branch" @@ -88,16 +88,10 @@ jobs: echo "spec_diff=false" >> "$GITHUB_OUTPUT" fi - - uses: sap/ai-sdk-js/.github/actions/setup@main - if: steps.spec_diff.outputs.spec_diff == 'true' - with: - node-version: 20 - - name: "Generate" id: generate if: steps.spec_diff.outputs.spec_diff == 'true' run: | - pnpm install pnpm generate - name: "Compile and Test" From dd2e907bfc5c8b6ca55a81021e498b6d69ffc90c Mon Sep 17 00:00:00 2001 From: SAP Cloud SDK Bot Date: Wed, 22 Jan 2025 14:46:10 +0000 Subject: [PATCH 2/5] Update core based on main --- .../ai-api/src/client/AI_CORE_API/file-api.ts | 2 +- .../src/client/AI_CORE_API/scenario-api.ts | 2 +- .../AI_CORE_API/schema/ai-model-base-data.ts | 8 + .../AI_CORE_API/schema/ai-model-version.ts | 22 +- .../schema/bcknd-generic-secret-label.ts | 21 + .../schema/bcknd-generic-secret-labels.ts | 10 + .../schema/bcknd-generic-secret-post-body.ts | 2 + .../src/client/AI_CORE_API/schema/index.ts | 72 +- .../AI_CORE_API/schema/rta-model-base-data.ts | 8 + .../AI_CORE_API/schema/rta-model-version.ts | 14 +- packages/ai-api/src/spec/AI_CORE_API.yaml | 1676 +++++++++-------- 11 files changed, 993 insertions(+), 844 deletions(-) create mode 100644 packages/ai-api/src/client/AI_CORE_API/schema/bcknd-generic-secret-label.ts create mode 100644 packages/ai-api/src/client/AI_CORE_API/schema/bcknd-generic-secret-labels.ts diff --git a/packages/ai-api/src/client/AI_CORE_API/file-api.ts b/packages/ai-api/src/client/AI_CORE_API/file-api.ts index 9e73dd4b7..09eb8f066 100644 --- a/packages/ai-api/src/client/AI_CORE_API/file-api.ts +++ b/packages/ai-api/src/client/AI_CORE_API/file-api.ts @@ -56,7 +56,7 @@ export const FileApi = { */ fileUpload: ( path: string, - body: string | undefined, + body: any | undefined, queryParameters?: { overwrite?: boolean }, headerParameters?: { 'AI-Resource-Group'?: string } ) => diff --git a/packages/ai-api/src/client/AI_CORE_API/scenario-api.ts b/packages/ai-api/src/client/AI_CORE_API/scenario-api.ts index f158de5f1..15c360bc3 100644 --- a/packages/ai-api/src/client/AI_CORE_API/scenario-api.ts +++ b/packages/ai-api/src/client/AI_CORE_API/scenario-api.ts @@ -79,7 +79,7 @@ export const ScenarioApi = { * @param headerParameters - Object containing the following keys: AI-Resource-Group. * @returns The request builder, use the `execute()` method to trigger the request. */ - modelsGet: ( + scenarioQueryModels: ( scenarioId: string, headerParameters: { 'AI-Resource-Group': string } ) => diff --git a/packages/ai-api/src/client/AI_CORE_API/schema/ai-model-base-data.ts b/packages/ai-api/src/client/AI_CORE_API/schema/ai-model-base-data.ts index 4405f4d8f..18c651217 100644 --- a/packages/ai-api/src/client/AI_CORE_API/schema/ai-model-base-data.ts +++ b/packages/ai-api/src/client/AI_CORE_API/schema/ai-model-base-data.ts @@ -19,4 +19,12 @@ export type AiModelBaseData = { */ description: string; versions: AiModelVersionList; + /** + * Display name of the model + */ + displayName?: string; + /** + * Access type of the model + */ + accessType?: string; } & Record; diff --git a/packages/ai-api/src/client/AI_CORE_API/schema/ai-model-version.ts b/packages/ai-api/src/client/AI_CORE_API/schema/ai-model-version.ts index 1ede49f13..5122af0c9 100644 --- a/packages/ai-api/src/client/AI_CORE_API/schema/ai-model-version.ts +++ b/packages/ai-api/src/client/AI_CORE_API/schema/ai-model-version.ts @@ -5,7 +5,7 @@ */ /** - * Model version information including whether it is latest version + * Model version information including whether it is latest version, its deprecation status and optional retirement date */ export type AiModelVersion = { /** @@ -16,4 +16,24 @@ export type AiModelVersion = { * Displays whether it is the latest version offered for the model */ isLatest: boolean; + /** + * Deprecation status of model + */ + deprecated: boolean; + /** + * Retirement date of model in ISO 8601 timestamp + */ + retirementDate?: string; + /** + * Context length of the model + */ + contextLength?: number; + /** + * List of input types supported by the model + */ + inputTypes?: string[]; + /** + * List of capabilities supported by the model + */ + capabilities?: string[]; } & Record; diff --git a/packages/ai-api/src/client/AI_CORE_API/schema/bcknd-generic-secret-label.ts b/packages/ai-api/src/client/AI_CORE_API/schema/bcknd-generic-secret-label.ts new file mode 100644 index 000000000..2b822ba76 --- /dev/null +++ b/packages/ai-api/src/client/AI_CORE_API/schema/bcknd-generic-secret-label.ts @@ -0,0 +1,21 @@ +/* + * Copyright (c) 2025 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 'BckndGenericSecretLabel' schema. + */ +export type BckndGenericSecretLabel = { + /** + * @example "ext.ai.sap.com/my-label" + * Max Length: 63. + * Pattern: "^ext.ai.sap.com/(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9]){1,48}$". + */ + key: string; + /** + * Max Length: 5000. + */ + value: string; +} & Record; diff --git a/packages/ai-api/src/client/AI_CORE_API/schema/bcknd-generic-secret-labels.ts b/packages/ai-api/src/client/AI_CORE_API/schema/bcknd-generic-secret-labels.ts new file mode 100644 index 000000000..75bc827f4 --- /dev/null +++ b/packages/ai-api/src/client/AI_CORE_API/schema/bcknd-generic-secret-labels.ts @@ -0,0 +1,10 @@ +/* + * Copyright (c) 2025 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 { BckndGenericSecretLabel } from './bcknd-generic-secret-label.js'; +/** + * Arbitrary labels as meta information + */ +export type BckndGenericSecretLabels = BckndGenericSecretLabel[]; diff --git a/packages/ai-api/src/client/AI_CORE_API/schema/bcknd-generic-secret-post-body.ts b/packages/ai-api/src/client/AI_CORE_API/schema/bcknd-generic-secret-post-body.ts index ce68826db..9765a5182 100644 --- a/packages/ai-api/src/client/AI_CORE_API/schema/bcknd-generic-secret-post-body.ts +++ b/packages/ai-api/src/client/AI_CORE_API/schema/bcknd-generic-secret-post-body.ts @@ -4,6 +4,7 @@ * This is a generated file powered by the SAP Cloud SDK for JavaScript. */ import type { BckndGenericSecretData } from './bcknd-generic-secret-data.js'; +import type { BckndGenericSecretLabels } from './bcknd-generic-secret-labels.js'; /** * Representation of the 'BckndGenericSecretPostBody' schema. */ @@ -16,4 +17,5 @@ export type BckndGenericSecretPostBody = { */ name: string; data: BckndGenericSecretData; + labels?: BckndGenericSecretLabels; } & Record; diff --git a/packages/ai-api/src/client/AI_CORE_API/schema/index.ts b/packages/ai-api/src/client/AI_CORE_API/schema/index.ts index 9068efd6a..bec7f0c3f 100644 --- a/packages/ai-api/src/client/AI_CORE_API/schema/index.ts +++ b/packages/ai-api/src/client/AI_CORE_API/schema/index.ts @@ -56,9 +56,6 @@ export * from './rt-atimestamp.js'; export * from './rt-amessage.js'; export * from './rta-error-response.js'; export * from './rta-error.js'; -export * from './d-set-url.js'; -export * from './d-set-error.js'; -export * from './d-set-file-creation-response.js'; export * from './ai-scenario.js'; export * from './ai-scenario-label-list.js'; export * from './ai-label-list.js'; @@ -173,6 +170,32 @@ export * from './ai-creation-response-message.js'; export * from './ai-url.js'; export * from './ai-api-error-with-id.js'; export * from './ai-api-error.js'; +export * from './trck-get-metric-resource.js'; +export * from './trck-metric-resource.js'; +export * from './trck-get-metric-resource-list.js'; +export * from './trck-delete-metrics-response.js'; +export * from './trck-execution-id.js'; +export * from './trck-timestamp.js'; +export * from './trck-get-metric-list.js'; +export * from './trck-metric-list.js'; +export * from './trck-get-metric.js'; +export * from './trck-metric.js'; +export * from './trck-metric-name.js'; +export * from './trck-metric-value.js'; +export * from './trckmetric-selector-permissible-values.js'; +export * from './trck-label-list.js'; +export * from './trck-label.js'; +export * from './trck-tag-list.js'; +export * from './trck-tag.js'; +export * from './trck-custom-info-object-list.js'; +export * from './trck-custom-info-object.js'; +export * from './trck-custom-info-object-data.js'; +export * from './trck-mlapi-execution-id.js'; +export * from './trck-generic-name.js'; +export * from './trck-label-name.js'; +export * from './trck-api-error.js'; +export * from './trck-details-error-response.js'; +export * from './trck-string-array.js'; export * from './bcknd-id.js'; export * from './bcknd-message.js'; export * from './bcknd-name.js'; @@ -220,6 +243,8 @@ export * from './bcknd-generic-secret-patch-body.js'; export * from './bcknd-generic-secret-data-response.js'; export * from './bcknd-generic-secret-details.js'; export * from './bcknd-list-generic-secrets-response.js'; +export * from './bcknd-generic-secret-labels.js'; +export * from './bcknd-generic-secret-label.js'; export * from './bcknd-argo-cd-repository-data.js'; export * from './bcknd-argo-cd-repository-credentials.js'; export * from './bcknd-argo-cd-repository-data-response.js'; @@ -269,38 +294,6 @@ export * from './bcknd-resource-get-response.js'; export * from './bcknd-resource-get-resource-plans.js'; export * from './bcknd-error-response.js'; export * from './bcknd-error.js'; -export * from './trck-get-metric-resource.js'; -export * from './trck-metric-resource.js'; -export * from './trck-get-metric-resource-list.js'; -export * from './trck-delete-metrics-response.js'; -export * from './trck-execution-id.js'; -export * from './trck-timestamp.js'; -export * from './trck-get-metric-list.js'; -export * from './trck-metric-list.js'; -export * from './trck-get-metric.js'; -export * from './trck-metric.js'; -export * from './trck-metric-name.js'; -export * from './trck-metric-value.js'; -export * from './trckmetric-selector-permissible-values.js'; -export * from './trck-label-list.js'; -export * from './trck-label.js'; -export * from './trck-tag-list.js'; -export * from './trck-tag.js'; -export * from './trck-custom-info-object-list.js'; -export * from './trck-custom-info-object.js'; -export * from './trck-custom-info-object-data.js'; -export * from './trck-mlapi-execution-id.js'; -export * from './trck-generic-name.js'; -export * from './trck-label-name.js'; -export * from './trck-api-error.js'; -export * from './trck-details-error-response.js'; -export * from './trck-string-array.js'; -export * from './meta-capabilities.js'; -export * from './meta-extensions.js'; -export * from './meta-ai-api.js'; -export * from './meta-version.js'; -export * from './meta-api-version.js'; -export * from './meta-api-error.js'; export * from './kpi-column-name.js'; export * from './kpi-array-of-column-names.js'; export * from './kpi-aggregation-attribute.js'; @@ -310,3 +303,12 @@ export * from './kpi-result-row-item.js'; export * from './kpi-result-row-list.js'; export * from './kpi-result-set.js'; export * from './kpi-api-error.js'; +export * from './d-set-url.js'; +export * from './d-set-error.js'; +export * from './d-set-file-creation-response.js'; +export * from './meta-capabilities.js'; +export * from './meta-extensions.js'; +export * from './meta-ai-api.js'; +export * from './meta-version.js'; +export * from './meta-api-version.js'; +export * from './meta-api-error.js'; diff --git a/packages/ai-api/src/client/AI_CORE_API/schema/rta-model-base-data.ts b/packages/ai-api/src/client/AI_CORE_API/schema/rta-model-base-data.ts index 124d0c23d..bdcbcda5c 100644 --- a/packages/ai-api/src/client/AI_CORE_API/schema/rta-model-base-data.ts +++ b/packages/ai-api/src/client/AI_CORE_API/schema/rta-model-base-data.ts @@ -19,4 +19,12 @@ export type RTAModelBaseData = { */ description: string; versions: RTAModelVersionList; + /** + * Display name of the model + */ + displayName?: string; + /** + * Access type of the model + */ + accessType?: string; } & Record; diff --git a/packages/ai-api/src/client/AI_CORE_API/schema/rta-model-version.ts b/packages/ai-api/src/client/AI_CORE_API/schema/rta-model-version.ts index e97ad68ac..450ecc3b3 100644 --- a/packages/ai-api/src/client/AI_CORE_API/schema/rta-model-version.ts +++ b/packages/ai-api/src/client/AI_CORE_API/schema/rta-model-version.ts @@ -23,5 +23,17 @@ export type RTAModelVersion = { /** * Retirement date of model in ISO 8601 timestamp */ - retirementDate: string; + retirementDate?: string; + /** + * Context length of the model + */ + contextLength?: number; + /** + * List of input types supported by the model + */ + inputTypes?: string[]; + /** + * List of capabilities supported by the model + */ + capabilities?: string[]; } & Record; diff --git a/packages/ai-api/src/spec/AI_CORE_API.yaml b/packages/ai-api/src/spec/AI_CORE_API.yaml index 77b7b8294..f6a14b775 100644 --- a/packages/ai-api/src/spec/AI_CORE_API.yaml +++ b/packages/ai-api/src/spec/AI_CORE_API.yaml @@ -5,11 +5,11 @@ info: "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 + a 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.\n" - version: 2.34.0 + version: 2.37.0 x-sap-shortText: Create and manage AI scenarios, trainings, deployments, and artifacts in SAP AI Core. @@ -28,7 +28,7 @@ servers: - prod-us21.eastus.azure - prod-eu30.europe-west3.gcp - prod-us30.us-central1.gcp - default: prod.eu-central-1 + default: prod.eu-central-1.aws externalDocs: description: Documentation for SAP AI Core url: https://help.sap.com/docs/AI_CORE?version=CLOUD @@ -811,7 +811,7 @@ paths: - Scenario summary: Get information about all models available in LLM global scenario description: Retrieve information about all models available in LLM global scenario - operationId: models.get + operationId: scenario.query_models responses: '200': description: @@ -1127,8 +1127,7 @@ paths: description: Body of the file upload request content: '*/*': - schema: - type: string + schema: {} responses: '201': $ref: '#/components/responses/DSetFileCreated' @@ -2420,10 +2419,10 @@ paths: $ref: '#/components/schemas/BckndDeploymentResourceQuotaResponse' '400': $ref: '#/components/responses/BckndBadRequest' - default: - $ref: '#/components/responses/BckndCommonError' '404': $ref: '#/components/responses/BckndNotFound' + default: + $ref: '#/components/responses/BckndCommonError' components: securitySchemes: Oauth2: @@ -2642,6 +2641,12 @@ components: description: Description of the model and its capabilities versions: $ref: '#/components/schemas/RTAModelVersionList' + displayName: + type: string + description: Display name of the model + accessType: + type: string + description: Access type of the model RTAModelVersionList: type: array description: List of model versions that the model object has @@ -2656,7 +2661,6 @@ components: - name - isLatest - deprecated - - retirementDate properties: name: type: string @@ -2670,6 +2674,19 @@ components: retirementDate: type: string description: Retirement date of model in ISO 8601 timestamp + contextLength: + type: integer + description: Context length of the model + inputTypes: + type: array + description: List of input types supported by the model + items: + type: string + capabilities: + type: array + description: List of capabilities supported by the model + items: + type: string RTAArtifact: description: Entity having labels type: object @@ -3014,65 +3031,6 @@ components: details: description: Optional details of the error message type: object - DSetUrl: - type: string - format: url - example: https://download.example.com/test/file.bin - DSetError: - description: Error Response - type: object - properties: - code: - type: string - minLength: 1 - message: - type: string - minLength: 1 - target: - type: string - minLength: 1 - requestId: - type: string - details: - type: array - uniqueItems: true - minItems: 0 - items: - required: - - code - - message - properties: - code: - type: string - minLength: 1 - message: - type: string - minLength: 1 - required: - - code - - message - 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. - DSetFileCreationResponse: - description: Response for successful file creation - type: object - required: - - message - - url - properties: - message: - type: string - description: File creation response message - example: File creation acknowledged - url: - $ref: '#/components/schemas/DSetUrl' AiScenario: type: object description: @@ -3199,6 +3157,12 @@ components: description: Description of the model and its capabilities versions: $ref: '#/components/schemas/AiModelVersionList' + displayName: + type: string + description: Display name of the model + accessType: + type: string + description: Access type of the model AiModelVersionList: type: array description: List of model versions that the model object has @@ -3206,10 +3170,13 @@ components: $ref: '#/components/schemas/AiModelVersion' AiModelVersion: type: object - description: Model version information including whether it is latest version + description: + Model version information including whether it is latest version, + its deprecation status and optional retirement date required: - name - isLatest + - deprecated properties: name: type: string @@ -3217,6 +3184,25 @@ components: isLatest: type: boolean description: Displays whether it is the latest version offered for the model + deprecated: + type: boolean + description: Deprecation status of model + retirementDate: + type: string + description: Retirement date of model in ISO 8601 timestamp + contextLength: + type: integer + description: Context length of the model + inputTypes: + type: array + description: List of input types supported by the model + items: + type: string + capabilities: + type: array + description: List of capabilities supported by the model + items: + type: string AiVersion: type: object required: @@ -4496,26 +4482,42 @@ components: details: description: Optional details of the error message type: object - BckndId: - type: string - pattern: ^[\w.-]{4,64}$ - example: aa97b177-9383-4934-8543-0f91a7a0283a - description: Generic ID - BckndMessage: - type: string - description: Message - BckndName: - type: string - description: Name - BckndCreationResponseMessage: - type: string - description: Message - example: Created - BckndUrl: - type: string - format: url - BckndResourceGroupList: + TrckGetMetricResource: + description: + Collection of various metrics/tags/labels associated against some + execution/deployment + type: object + properties: + executionId: + $ref: '#/components/schemas/TrckExecutionId' + metrics: + $ref: '#/components/schemas/TrckGetMetricList' + tags: + $ref: '#/components/schemas/TrckTagList' + customInfo: + $ref: '#/components/schemas/TrckCustomInfoObjectList' + required: + - executionId + TrckMetricResource: + description: + Collection of various metrics/tags/labels associated against some + execution/deployment + required: + - executionId + type: object + properties: + executionId: + $ref: '#/components/schemas/TrckExecutionId' + metrics: + $ref: '#/components/schemas/TrckMetricList' + tags: + $ref: '#/components/schemas/TrckTagList' + customInfo: + $ref: '#/components/schemas/TrckCustomInfoObjectList' + TrckGetMetricResourceList: type: object + required: + - resources properties: count: type: integer @@ -4523,209 +4525,488 @@ components: resources: type: array items: - $ref: '#/components/schemas/BckndResourceGroup' - required: - - count - - resources - BckndResourceGroupBase: + $ref: '#/components/schemas/TrckGetMetricResource' + TrckDeleteMetricsResponse: type: object properties: - resourceGroupId: - description: resource group id - type: string - tenantId: - description: tenant id - type: string - zoneId: - description: zone id + id: + $ref: '#/components/schemas/TrckExecutionId' + message: type: string - BckndResourceGroup: + example: Metric Resource was successfully deleted + TrckExecutionId: + type: string + example: aa97b177-9383-4934-8543-0f91b7a0283a + oneOf: + - $ref: '#/components/schemas/TrckMlapiExecutionId' + description: ID of the deployment/execution + TrckTimestamp: + type: string + description: Time when the metric was created or logged in RFC3339 format + format: date-time + TrckGetMetricList: + description: Array of Metric items + type: array + items: + $ref: '#/components/schemas/TrckGetMetric' + TrckMetricList: + description: Array of Metric items + type: array + items: + $ref: '#/components/schemas/TrckMetric' + TrckGetMetric: + description: + Key-value metrics, where the value is numeric. Metric can also + have optional step and label fields. type: object + required: + - name + - value + - timestamp properties: - resourceGroupId: - description: resource group id - type: string - tenantId: - description: tenant id - type: string - zoneId: - description: zone id - type: string - createdAt: - description: Timestamp of resource group creation - type: string - format: date-time + name: + $ref: '#/components/schemas/TrckMetricName' + value: + $ref: '#/components/schemas/TrckMetricValue' + timestamp: + $ref: '#/components/schemas/TrckTimestamp' + step: + 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 + type: integer + minimum: 0 + example: 2 labels: - $ref: '#/components/schemas/BckndResourceGroupLabels' - status: - description: aggregated status of the onboarding process - type: string - enum: - - PROVISIONED - - ERROR - - PROVISIONING - statusMessage: - description: status message - type: string + $ref: '#/components/schemas/TrckLabelList' + TrckMetric: + description: + Key-value metrics, where the value is numeric. Metric can also + have optional step and label fields. required: - - status - - createdAt - - resourceGroupId - BckndInternalResourceGroup: + - name + - value type: object properties: - resourceGroupId: - description: resource group id - type: string - tenantId: - description: tenant id - type: string - zoneId: - description: zone id - type: string - createdAt: - description: Timestamp of resource group creation - type: string - format: date-time - labels: - $ref: '#/components/schemas/BckndInternalResourceGroupLabels' - status: - description: aggregated status of the onboarding process - type: string - enum: - - PROVISIONED - - ERROR - - PROVISIONING - statusMessage: - description: status message - type: string - annotations: - $ref: '#/components/schemas/BckndInternalResourceGroupAnnotations' - required: - - status - - createdAt - - resourceGroupId - BckndResourceGroupsPostRequest: - type: object - properties: - resourceGroupId: - description: resource group id - type: string - pattern: ^[a-zA-Z0-9][a-zA-Z0-9.-]{1,251}[a-zA-Z0-9]$ - minLength: 3 - maxLength: 253 + name: + $ref: '#/components/schemas/TrckMetricName' + value: + $ref: '#/components/schemas/TrckMetricValue' + timestamp: + $ref: '#/components/schemas/TrckTimestamp' + step: + 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 + type: integer + minimum: 0 + example: 2 labels: - $ref: '#/components/schemas/BckndResourceGroupLabels' - BckndResourceGroupLabels: + $ref: '#/components/schemas/TrckLabelList' + TrckMetricName: + pattern: '[\w-]{1,64}' + type: string + maxLength: 256 + description: Name of the metric + example: Error Rate + TrckMetricValue: + type: number + description: Numeric Value of the metric + example: 0.98 + TrckmetricSelectorPermissibleValues: + description: + Permissible value for $select could be either * or one or many + of the values from metrics, tags, custominfo type: array - description: Arbitrary labels as meta information items: - $ref: '#/components/schemas/BckndResourceGroupLabel' - BckndResourceGroupLabel: - type: object + type: string + enum: + - metrics + - tags + - customInfo + - '*' + TrckLabelList: + description: a list of name-value object pairs associated with some metric. + type: array + items: + $ref: '#/components/schemas/TrckLabel' + example: + - name: group + value: tree-82 + - name: metrics.ai.sap.com/Artifact.name + value: sk_learn_rf_classifier_model + TrckLabel: + description: a classifying phrase/name applied to a metric required: - - key + - name - value + type: object properties: - key: - type: string - pattern: ^ext.ai.sap.com/(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9]){1,48}$ - maxLength: 63 - example: ext.ai.sap.com/my-label + name: + $ref: '#/components/schemas/TrckLabelName' value: + description: Metric Label Value + maxLength: 256 + minLength: 1 type: string - maxLength: 5000 - BckndInternalResourceGroupLabels: + example: sk_learn_random_forest_model + example: + name: group + value: tree-82 + TrckTagList: + description: + a list of name-value object pairs associated with the execution/deployment. + Tags are queryable. type: array - description: Arbitrary labels as meta information items: - $ref: '#/components/schemas/BckndInternalResourceGroupLabel' - BckndInternalResourceGroupLabel: - type: object + $ref: '#/components/schemas/TrckTag' + TrckTag: + description: + A dictionary of name-value pairs to support segregation at execution + level. required: - - key + - name - value + type: object properties: - key: - type: string - pattern: ^internal.ai.sap.com/(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9]){1,43}$ - maxLength: 63 - example: internal.ai.sap.com/my-label + name: + oneOf: + - $ref: '#/components/schemas/TrckGenericName' value: + description: tag value + maxLength: 256 + minLength: 1 type: string - maxLength: 5000 - BckndInternalResourceGroupAnnotations: + example: RFC-1 + example: + name: Artifact Group + value: RFC-1 + TrckCustomInfoObjectList: + description: '' type: array - description: Arbitrary annotations as meta information items: - $ref: '#/components/schemas/BckndInternalResourceGroupAnnotation' - BckndInternalResourceGroupAnnotation: - type: object + $ref: '#/components/schemas/TrckCustomInfoObject' + TrckCustomInfoObject: + description: + large object which provides rendering/semantic information regarding + certain metric for consuming application or can be complex metrics in JSON + format required: - - key + - name - value - properties: - key: - type: string - pattern: ^internal.ai.sap.com/(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9]){1,43}$ - maxLength: 63 - example: internal.ai.sap.com/my-annotation - value: - type: string - maxLength: 5000 - BckndResourceGroupDeletionResponse: type: object properties: - id: - $ref: '#/components/schemas/BckndId' - message: - $ref: '#/components/schemas/BckndResourceGroupDeletionResponseMessage' + name: + oneOf: + - $ref: '#/components/schemas/TrckGenericName' + value: + $ref: '#/components/schemas/TrckCustomInfoObjectData' + 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}]" + TrckCustomInfoObjectData: + description: Message + minLength: 1 + type: string + 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}]" + TrckMlapiExecutionId: + description: Generic ID + pattern: ^[\w.-]{4,64}$ + type: string + example: aa97b177-9383-4934-8543-0f91b7a0283a + TrckGenericName: + description: + Generic name which can belong to a tag,label,metric or customInfo + Object + maxLength: 256 + minLength: 1 + type: string + example: sample name + TrckLabelName: + 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 + maxLength: 256 + minLength: 1 + type: string + example: metrics.ai.sap.com/Artifact.name + TrckApiError: required: - - id + - code - message - BckndResourceGroupDeletionResponseMessage: - type: string - description: Message - example: Resource Group deletion scheduled - BckndResourceGroupPatchRequest: - type: object - properties: - labels: - $ref: '#/components/schemas/BckndResourceGroupLabels' - BckndEvent: type: object properties: - tenantId: - description: tenant id - type: string - action: + code: + description: Descriptive error code (not http status code). type: string - enum: - - PROVISION - - DEPROVISION - state: + message: + description: plaintext error description type: string - enum: - - SUCCESSFUL - - FAILED - - PENDING - description: - description: describes the event state + requestId: + description: id of individual request type: string - createdAt: + target: + description: url that has been called type: string - format: date-time - example: '2017-09-28T08:56:23.275Z' - BckndTenant: + details: + type: array + items: + $ref: '#/components/schemas/TrckDetailsErrorResponse' + TrckDetailsErrorResponse: type: object properties: - tenantId: - description: tenant id + code: + description: Descriptive error code (not http status code) type: string - zoneId: - description: zone id + message: + description: Plaintext error description type: string - realSubaccountId: + TrckStringArray: + type: array + example: + - value1 + - value2 + items: + type: string + BckndId: + type: string + pattern: ^[\w.-]{4,64}$ + example: aa97b177-9383-4934-8543-0f91a7a0283a + description: Generic ID + BckndMessage: + type: string + description: Message + BckndName: + type: string + description: Name + BckndCreationResponseMessage: + type: string + description: Message + example: Created + BckndUrl: + type: string + format: url + BckndResourceGroupList: + type: object + properties: + count: + type: integer + description: Number of the resource instances in the list + resources: + type: array + items: + $ref: '#/components/schemas/BckndResourceGroup' + required: + - count + - resources + BckndResourceGroupBase: + type: object + properties: + resourceGroupId: + description: resource group id + type: string + tenantId: + description: tenant id + type: string + zoneId: + description: zone id + type: string + BckndResourceGroup: + type: object + properties: + resourceGroupId: + description: resource group id + type: string + tenantId: + description: tenant id + type: string + zoneId: + description: zone id + type: string + createdAt: + description: Timestamp of resource group creation + type: string + format: date-time + labels: + $ref: '#/components/schemas/BckndResourceGroupLabels' + status: + description: aggregated status of the onboarding process + type: string + enum: + - PROVISIONED + - ERROR + - PROVISIONING + statusMessage: + description: status message + type: string + required: + - status + - createdAt + - resourceGroupId + BckndInternalResourceGroup: + type: object + properties: + resourceGroupId: + description: resource group id + type: string + tenantId: + description: tenant id + type: string + zoneId: + description: zone id + type: string + createdAt: + description: Timestamp of resource group creation + type: string + format: date-time + labels: + $ref: '#/components/schemas/BckndInternalResourceGroupLabels' + status: + description: aggregated status of the onboarding process + type: string + enum: + - PROVISIONED + - ERROR + - PROVISIONING + statusMessage: + description: status message + type: string + annotations: + $ref: '#/components/schemas/BckndInternalResourceGroupAnnotations' + required: + - status + - createdAt + - resourceGroupId + BckndResourceGroupsPostRequest: + type: object + properties: + resourceGroupId: + description: resource group id + type: string + pattern: ^[a-zA-Z0-9][a-zA-Z0-9.-]{1,251}[a-zA-Z0-9]$ + minLength: 3 + maxLength: 253 + labels: + $ref: '#/components/schemas/BckndResourceGroupLabels' + BckndResourceGroupLabels: + type: array + description: Arbitrary labels as meta information + items: + $ref: '#/components/schemas/BckndResourceGroupLabel' + BckndResourceGroupLabel: + type: object + required: + - key + - value + properties: + key: + type: string + pattern: ^ext.ai.sap.com/(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9]){1,48}$ + maxLength: 63 + example: ext.ai.sap.com/my-label + value: + type: string + maxLength: 5000 + BckndInternalResourceGroupLabels: + type: array + description: Arbitrary labels as meta information + items: + $ref: '#/components/schemas/BckndInternalResourceGroupLabel' + BckndInternalResourceGroupLabel: + type: object + required: + - key + - value + properties: + key: + type: string + pattern: ^internal.ai.sap.com/(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9]){1,43}$ + maxLength: 63 + example: internal.ai.sap.com/my-label + value: + type: string + maxLength: 5000 + BckndInternalResourceGroupAnnotations: + type: array + description: Arbitrary annotations as meta information + items: + $ref: '#/components/schemas/BckndInternalResourceGroupAnnotation' + BckndInternalResourceGroupAnnotation: + type: object + required: + - key + - value + properties: + key: + type: string + pattern: ^internal.ai.sap.com/(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9]){1,43}$ + maxLength: 63 + example: internal.ai.sap.com/my-annotation + value: + type: string + maxLength: 5000 + BckndResourceGroupDeletionResponse: + type: object + properties: + id: + $ref: '#/components/schemas/BckndId' + message: + $ref: '#/components/schemas/BckndResourceGroupDeletionResponseMessage' + required: + - id + - message + BckndResourceGroupDeletionResponseMessage: + type: string + description: Message + example: Resource Group deletion scheduled + BckndResourceGroupPatchRequest: + type: object + properties: + labels: + $ref: '#/components/schemas/BckndResourceGroupLabels' + BckndEvent: + type: object + properties: + tenantId: + description: tenant id + type: string + action: + type: string + enum: + - PROVISION + - DEPROVISION + state: + type: string + enum: + - SUCCESSFUL + - FAILED + - PENDING + description: + description: describes the event state + type: string + createdAt: + type: string + format: date-time + example: '2017-09-28T08:56:23.275Z' + BckndTenant: + type: object + properties: + tenantId: + description: tenant id + type: string + zoneId: + description: zone id + type: string + realSubaccountId: description: real sub account id type: string servicePlan: @@ -5071,6 +5352,8 @@ components: pattern: ^[a-z0-9\-\.]+$ data: $ref: '#/components/schemas/BckndGenericSecretData' + labels: + $ref: '#/components/schemas/BckndGenericSecretLabels' BckndGenericSecretPatchBody: type: object required: @@ -5110,6 +5393,25 @@ components: required: - count - resources + BckndGenericSecretLabels: + type: array + description: Arbitrary labels as meta information + items: + $ref: '#/components/schemas/BckndGenericSecretLabel' + BckndGenericSecretLabel: + type: object + required: + - key + - value + properties: + key: + type: string + pattern: ^ext.ai.sap.com/(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9]){1,48}$ + maxLength: 63 + example: ext.ai.sap.com/my-label + value: + type: string + maxLength: 5000 BckndArgoCDRepositoryData: type: object required: @@ -5786,301 +6088,160 @@ components: details: description: Optional details of the error message type: object - TrckGetMetricResource: - description: - Collection of various metrics/tags/labels associated against some - execution/deployment - type: object - properties: - executionId: - $ref: '#/components/schemas/TrckExecutionId' - metrics: - $ref: '#/components/schemas/TrckGetMetricList' - tags: - $ref: '#/components/schemas/TrckTagList' - customInfo: - $ref: '#/components/schemas/TrckCustomInfoObjectList' - required: - - executionId - TrckMetricResource: - description: - Collection of various metrics/tags/labels associated against some - execution/deployment - required: - - executionId - type: object - properties: - executionId: - $ref: '#/components/schemas/TrckExecutionId' - metrics: - $ref: '#/components/schemas/TrckMetricList' - tags: - $ref: '#/components/schemas/TrckTagList' - customInfo: - $ref: '#/components/schemas/TrckCustomInfoObjectList' - TrckGetMetricResourceList: - type: object - required: - - resources - properties: - count: - type: integer - description: Number of the resource instances in the list - resources: - type: array - items: - $ref: '#/components/schemas/TrckGetMetricResource' - TrckDeleteMetricsResponse: - type: object - properties: - id: - $ref: '#/components/schemas/TrckExecutionId' - message: - type: string - example: Metric Resource was successfully deleted - TrckExecutionId: - type: string - example: aa97b177-9383-4934-8543-0f91b7a0283a - oneOf: - - $ref: '#/components/schemas/TrckMlapiExecutionId' - description: ID of the deployment/execution - TrckTimestamp: + KpiColumnName: + readOnly: true type: string - description: Time when the metric was created or logged in RFC3339 format - format: date-time - TrckGetMetricList: - description: Array of Metric items - type: array - items: - $ref: '#/components/schemas/TrckGetMetric' - TrckMetricList: - description: Array of Metric items + description: Name of the Column + anyOf: + - enum: + - ResourceGroup + - Scenario + - Executable + - Executions + - Artifacts + - Deployments + - {} + KpiArrayOfColumnNames: + uniqueItems: true type: array + readOnly: true items: - $ref: '#/components/schemas/TrckMetric' - TrckGetMetric: - description: - Key-value metrics, where the value is numeric. Metric can also - have optional step and label fields. - type: object - required: - - name - - value - - timestamp - properties: - name: - $ref: '#/components/schemas/TrckMetricName' - value: - $ref: '#/components/schemas/TrckMetricValue' - timestamp: - $ref: '#/components/schemas/TrckTimestamp' - step: - 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 - type: integer - minimum: 0 - example: 2 - labels: - $ref: '#/components/schemas/TrckLabelList' - TrckMetric: - description: - Key-value metrics, where the value is numeric. Metric can also - have optional step and label fields. - required: - - name - - value - type: object - properties: - name: - $ref: '#/components/schemas/TrckMetricName' - value: - $ref: '#/components/schemas/TrckMetricValue' - timestamp: - $ref: '#/components/schemas/TrckTimestamp' - step: - 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 - type: integer - minimum: 0 - example: 2 - labels: - $ref: '#/components/schemas/TrckLabelList' - TrckMetricName: - pattern: '[\w-]{1,64}' + $ref: '#/components/schemas/KpiColumnName' + KpiAggregationAttribute: type: string - maxLength: 256 - description: Name of the metric - example: Error Rate - TrckMetricValue: - type: number - description: Numeric Value of the metric - example: 0.98 - TrckmetricSelectorPermissibleValues: - description: - Permissible value for $select could be either * or one or many - of the values from metrics, tags, custominfo - type: array - items: - type: string - enum: - - metrics - - tags - - customInfo - - '*' - TrckLabelList: - description: a list of name-value object pairs associated with some metric. + title: Aggregation Attribute + readOnly: true + KpiCountAggregate: + type: integer + title: CountAggregate + format: int64 + minimum: 0 + x-examples: {} + readOnly: true + KpiResultRow: type: array + title: ResultRow + uniqueItems: false + x-examples: {} + description: '' items: - $ref: '#/components/schemas/TrckLabel' - example: - - name: group - value: tree-82 - - name: metrics.ai.sap.com/Artifact.name - value: sk_learn_rf_classifier_model - TrckLabel: - description: a classifying phrase/name applied to a metric - required: - - name - - value - type: object - properties: - name: - $ref: '#/components/schemas/TrckLabelName' - value: - description: Metric Label Value - maxLength: 256 - minLength: 1 - type: string - example: sk_learn_random_forest_model - example: - name: group - value: tree-82 - TrckTagList: - description: - a list of name-value object pairs associated with the execution/deployment. - Tags are queryable. + $ref: '#/components/schemas/KpiResultRowItem' + readOnly: true + KpiResultRowItem: + title: ResultRowItem + anyOf: + - $ref: '#/components/schemas/KpiAggregationAttribute' + - $ref: '#/components/schemas/KpiCountAggregate' + x-examples: {} + KpiResultRowList: + title: ResultRowList type: array items: - $ref: '#/components/schemas/TrckTag' - TrckTag: - description: - A dictionary of name-value pairs to support segregation at execution - level. - required: - - name - - value + $ref: '#/components/schemas/KpiResultRow' + KpiResultSet: type: object + title: ResultSet + x-examples: + example-1: + header: + - ResourceGroup + - Executions + - Artifacts + - Deployments + rows: + - - 00112233-4455-6677-8899-aabbccddeeff + - 30 + - 30 + - 3 + additionalProperties: false + minProperties: 2 + maxProperties: 2 properties: - name: - oneOf: - - $ref: '#/components/schemas/TrckGenericName' - value: - description: tag value - maxLength: 256 - minLength: 1 - type: string - example: RFC-1 - example: - name: Artifact Group - value: RFC-1 - TrckCustomInfoObjectList: - description: '' - type: array - items: - $ref: '#/components/schemas/TrckCustomInfoObject' - TrckCustomInfoObject: - description: - large object which provides rendering/semantic information regarding - certain metric for consuming application or can be complex metrics in JSON - format - required: - - name - - value + header: + $ref: '#/components/schemas/KpiArrayOfColumnNames' + rows: + $ref: '#/components/schemas/KpiResultRowList' + readOnly: true + KpiApiError: type: object - properties: - name: - oneOf: - - $ref: '#/components/schemas/TrckGenericName' - value: - $ref: '#/components/schemas/TrckCustomInfoObjectData' - 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}]" - TrckCustomInfoObjectData: - description: Message - minLength: 1 - type: string - 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}]" - TrckMlapiExecutionId: - description: Generic ID - pattern: ^[\w.-]{4,64}$ - type: string - example: aa97b177-9383-4934-8543-0f91b7a0283a - TrckGenericName: - description: - Generic name which can belong to a tag,label,metric or customInfo - Object - maxLength: 256 - minLength: 1 - type: string - example: sample name - TrckLabelName: - 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 - maxLength: 256 - minLength: 1 - type: string - example: metrics.ai.sap.com/Artifact.name - TrckApiError: required: - code - message - type: object properties: code: - description: Descriptive error code (not http status code). type: string + description: Descriptive error code (not http status code) message: - description: plaintext error description type: string + description: Plaintext error description requestId: - description: id of individual request type: string + description: ID of the individual request + target: + type: string + description: Invoked URL + details: + description: Optional details of the error message + type: object + DSetUrl: + type: string + format: url + example: https://download.example.com/test/file.bin + DSetError: + description: Error Response + type: object + properties: + code: + type: string + minLength: 1 + message: + type: string + minLength: 1 target: - description: url that has been called + type: string + minLength: 1 + requestId: type: string details: type: array + uniqueItems: true + minItems: 0 items: - $ref: '#/components/schemas/TrckDetailsErrorResponse' - TrckDetailsErrorResponse: + required: + - code + - message + properties: + code: + type: string + minLength: 1 + message: + type: string + minLength: 1 + required: + - code + - message + 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. + DSetFileCreationResponse: + description: Response for successful file creation type: object + required: + - message + - url properties: - code: - description: Descriptive error code (not http status code) - type: string message: - description: Plaintext error description type: string - TrckStringArray: - type: array - example: - - value1 - - value2 - items: - type: string + description: File creation response message + example: File creation acknowledged + url: + $ref: '#/components/schemas/DSetUrl' MetaCapabilities: type: object required: @@ -6315,101 +6476,6 @@ components: details: description: Optional details of the error message type: object - KpiColumnName: - readOnly: true - type: string - description: Name of the Column - anyOf: - - enum: - - ResourceGroup - - Scenario - - Executable - - Executions - - Artifacts - - Deployments - - {} - KpiArrayOfColumnNames: - uniqueItems: true - type: array - readOnly: true - items: - $ref: '#/components/schemas/KpiColumnName' - KpiAggregationAttribute: - type: string - title: Aggregation Attribute - readOnly: true - KpiCountAggregate: - type: integer - title: CountAggregate - format: int64 - minimum: 0 - x-examples: {} - readOnly: true - KpiResultRow: - type: array - title: ResultRow - uniqueItems: false - x-examples: {} - description: '' - items: - $ref: '#/components/schemas/KpiResultRowItem' - readOnly: true - KpiResultRowItem: - title: ResultRowItem - anyOf: - - $ref: '#/components/schemas/KpiAggregationAttribute' - - $ref: '#/components/schemas/KpiCountAggregate' - x-examples: {} - KpiResultRowList: - title: ResultRowList - type: array - items: - $ref: '#/components/schemas/KpiResultRow' - KpiResultSet: - type: object - title: ResultSet - x-examples: - example-1: - header: - - ResourceGroup - - Executions - - Artifacts - - Deployments - rows: - - - 00112233-4455-6677-8899-aabbccddeeff - - 30 - - 30 - - 3 - additionalProperties: false - minProperties: 2 - maxProperties: 2 - properties: - header: - $ref: '#/components/schemas/KpiArrayOfColumnNames' - rows: - $ref: '#/components/schemas/KpiResultRowList' - readOnly: true - KpiApiError: - type: object - required: - - code - - message - 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: - description: Optional details of the error message - type: object parameters: RTAtokenHeader: name: Authorization @@ -6533,30 +6599,6 @@ components: type: string pattern: ^[\w.-]{4,64}$ example: aa97b177-9383-4934-8543-0f91a7a0283a - DSetresourceGroupHeader: - in: header - name: AI-Resource-Group - description: Specify a resource group id - schema: - type: string - required: false - DSetpath: - name: path - in: path - required: true - schema: - type: string - format: path - pattern: ^(([\w.-]+):([\w.-]+)|([\w.-]+))(/([\w./-]+[\w.-]+)?)?$ - maxLength: 1024 - description: path relative to the object store root URL in the secret - DSetoverwrite: - name: overwrite - in: query - required: false - schema: - type: boolean - description: If true, then file is overwritten. Default is false. AiresourceGroupHeader: in: header name: AI-Resource-Group @@ -6850,6 +6892,60 @@ components: - status example: status x-visible: false + TrckqueryFilter: + example: executionId eq 'aa97b177-9383-4934-8543-0f91b7a0283a' + name: $filter + description: + Filter parameter allows filtering of metric resource using ExecutionId(s). + User can only use in, eq operators in filter expression. + schema: + type: string + in: query + required: false + deprecated: true + TrckexecutionIds: + example: executionIds=aa97b177-9383-4934-8543-0f91b7a0283a,aa97b177-9383-4934-8543-0f91b7a0283b + name: executionIds + description: + executionIds parameter allows filtering of metric resource using + single or multiple ExecutionId(s). + schema: + $ref: '#/components/schemas/TrckStringArray' + in: query + style: form + required: false + explode: false + TrckmetricAttributeSelector: + examples: + selectAll: + value: $select=* + selectSpecific: + value: $select=metrics,customInfo + name: $select + 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. + schema: + $ref: '#/components/schemas/TrckmetricSelectorPermissibleValues' + in: query + style: form + required: false + explode: false + TrckexecutionId: + name: executionId + description: The Id of an execution + schema: + $ref: '#/components/schemas/TrckExecutionId' + in: query + required: true + TrcktrackingResourceGroupHeader: + name: AI-Resource-Group + description: Specify a resource group id + in: header + schema: + type: string + required: true BckndtokenHeader: name: Authorization in: header @@ -6988,67 +7084,13 @@ components: BckndquotaOnly: name: quotaOnly description: - When being set to true, the response contains only the quota of - the resource and not the quota usage. - in: query - required: false - schema: - type: boolean - example: true - TrckqueryFilter: - example: executionId eq 'aa97b177-9383-4934-8543-0f91b7a0283a' - name: $filter - description: - Filter parameter allows filtering of metric resource using ExecutionId(s). - User can only use in, eq operators in filter expression. - schema: - type: string - in: query - required: false - deprecated: true - TrckexecutionIds: - example: executionIds=aa97b177-9383-4934-8543-0f91b7a0283a,aa97b177-9383-4934-8543-0f91b7a0283b - name: executionIds - description: - executionIds parameter allows filtering of metric resource using - single or multiple ExecutionId(s). - schema: - $ref: '#/components/schemas/TrckStringArray' - in: query - style: form - required: false - explode: false - TrckmetricAttributeSelector: - examples: - selectAll: - value: $select=* - selectSpecific: - value: $select=metrics,customInfo - name: $select - 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. - schema: - $ref: '#/components/schemas/TrckmetricSelectorPermissibleValues' - in: query - style: form - required: false - explode: false - TrckexecutionId: - name: executionId - description: The Id of an execution - schema: - $ref: '#/components/schemas/TrckExecutionId' - in: query - required: true - TrcktrackingResourceGroupHeader: - name: AI-Resource-Group - description: Specify a resource group id - in: header + When being set to true, the response contains only the quota of + the resource and not the quota usage. + in: query + required: false schema: - type: string - required: true + type: boolean + example: true KpiquerySelect: name: $select description: Columns to select @@ -7067,6 +7109,30 @@ components: $ref: '#/components/schemas/KpiColumnName' style: form explode: false + DSetresourceGroupHeader: + in: header + name: AI-Resource-Group + description: Specify a resource group id + schema: + type: string + required: false + DSetpath: + name: path + in: path + required: true + schema: + type: string + format: path + pattern: ^(([\w.-]+):([\w.-]+)|([\w.-]+))(/([\w./-]+[\w.-]+)?)?$ + maxLength: 1024 + description: path relative to the object store root URL in the secret + DSetoverwrite: + name: overwrite + in: query + required: false + schema: + type: boolean + description: If true, then file is overwritten. Default is false. responses: RTANotFound: description: The specified resource was not found @@ -7094,6 +7160,118 @@ components: application/json: schema: $ref: '#/components/schemas/RTAErrorResponse' + AiNotFound: + description: The specified resource was not found + content: + application/json: + schema: + type: object + properties: + error: + $ref: '#/components/schemas/AiApiError' + AiPreconditionFailed: + description: + The service didn't meet the precondition needed to execute this + operation + content: + application/json: + schema: + type: object + properties: + error: + $ref: '#/components/schemas/AiApiError' + AiBadRequest: + description: The specification of the resource was incorrect + content: + application/json: + schema: + type: object + properties: + error: + $ref: '#/components/schemas/AiApiError' + TrckBadRequest: + content: + application/json: + schema: + type: object + properties: + error: + $ref: '#/components/schemas/TrckApiError' + description: The specification of the resource was incorrect + TrckNotImplemented: + content: + application/json: + schema: + type: object + properties: + error: + $ref: '#/components/schemas/TrckApiError' + description: Operation is not Supported. + TrckNotFound: + description: The specified resource was not found + content: + application/json: + schema: + type: object + properties: + error: + $ref: '#/components/schemas/TrckApiError' + TrckPayloadTooLarge: + content: + application/json: + schema: + type: object + properties: + error: + $ref: '#/components/schemas/TrckApiError' + description: request entity is larger than limits defined by server. + BckndCommonError: + description: + HTTP status codes 401, 403 or 500. Response body contains further + details. + content: + application/json: + schema: + $ref: '#/components/schemas/BckndErrorResponse' + BckndNotFound: + description: The specified resource was not found + content: + application/json: + schema: + $ref: '#/components/schemas/BckndErrorResponse' + BckndBadRequest: + description: The request was malformed and could thus not be processed. + content: + application/json: + schema: + $ref: '#/components/schemas/BckndErrorResponse' + KpiNotFound: + description: The specified resource was not found + content: + application/json: + schema: + type: object + properties: + error: + $ref: '#/components/schemas/KpiApiError' + KpiTooManyRequests: + description: Too many requests + content: + application/json: + schema: + type: object + properties: + error: + $ref: '#/components/schemas/KpiApiError' + KpiInvalidRequest: + description: Invalid request + content: + application/json: + schema: + type: object + properties: + error: + $ref: '#/components/schemas/KpiApiError' DSetBadRequest: description: The specification of the resource was incorrect content: @@ -7210,91 +7388,6 @@ components: the artifact API to register this file. schema: $ref: '#/components/schemas/DSetUrl' - AiNotFound: - description: The specified resource was not found - content: - application/json: - schema: - type: object - properties: - error: - $ref: '#/components/schemas/AiApiError' - AiPreconditionFailed: - description: - The service didn't meet the precondition needed to execute this - operation - content: - application/json: - schema: - type: object - properties: - error: - $ref: '#/components/schemas/AiApiError' - AiBadRequest: - description: The specification of the resource was incorrect - content: - application/json: - schema: - type: object - properties: - error: - $ref: '#/components/schemas/AiApiError' - BckndCommonError: - description: - HTTP status codes 401, 403 or 500. Response body contains further - details. - content: - application/json: - schema: - $ref: '#/components/schemas/BckndErrorResponse' - BckndNotFound: - description: The specified resource was not found - content: - application/json: - schema: - $ref: '#/components/schemas/BckndErrorResponse' - BckndBadRequest: - description: The request was malformed and could thus not be processed. - content: - application/json: - schema: - $ref: '#/components/schemas/BckndErrorResponse' - TrckBadRequest: - content: - application/json: - schema: - type: object - properties: - error: - $ref: '#/components/schemas/TrckApiError' - description: The specification of the resource was incorrect - TrckNotImplemented: - content: - application/json: - schema: - type: object - properties: - error: - $ref: '#/components/schemas/TrckApiError' - description: Operation is not Supported. - TrckNotFound: - description: The specified resource was not found - content: - application/json: - schema: - type: object - properties: - error: - $ref: '#/components/schemas/TrckApiError' - TrckPayloadTooLarge: - content: - application/json: - schema: - type: object - properties: - error: - $ref: '#/components/schemas/TrckApiError' - description: request entity is larger than limits defined by server. MetaNotFound: description: The specified resource was not found content: @@ -7304,30 +7397,3 @@ components: properties: error: $ref: '#/components/schemas/MetaApiError' - KpiNotFound: - description: The specified resource was not found - content: - application/json: - schema: - type: object - properties: - error: - $ref: '#/components/schemas/KpiApiError' - KpiTooManyRequests: - description: Too many requests - content: - application/json: - schema: - type: object - properties: - error: - $ref: '#/components/schemas/KpiApiError' - KpiInvalidRequest: - description: Invalid request - content: - application/json: - schema: - type: object - properties: - error: - $ref: '#/components/schemas/KpiApiError' From 96ac696d004fb10bb5835032a440d82405661ab4 Mon Sep 17 00:00:00 2001 From: Matthias Kuhr Date: Wed, 22 Jan 2025 16:02:28 +0100 Subject: [PATCH 3/5] Fix sample code and add release note --- .changeset/big-mayflies-begin.md | 1 + sample-code/src/ai-api/scenario-api.ts | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.changeset/big-mayflies-begin.md b/.changeset/big-mayflies-begin.md index fae05a988..560df0ce9 100644 --- a/.changeset/big-mayflies-begin.md +++ b/.changeset/big-mayflies-begin.md @@ -3,3 +3,4 @@ --- Update orchestration to 2501a release. +As part of this change, the `modelsGet` method of `ScenarioAPI` has been renamed to `scenarioQueryModels`. \ No newline at end of file diff --git a/sample-code/src/ai-api/scenario-api.ts b/sample-code/src/ai-api/scenario-api.ts index c460acafc..dfafb960d 100644 --- a/sample-code/src/ai-api/scenario-api.ts +++ b/sample-code/src/ai-api/scenario-api.ts @@ -24,7 +24,7 @@ export async function getModelsInScenario( scenarioId: string, resourceGroup: string ): Promise { - return ScenarioApi.modelsGet(scenarioId, { + return ScenarioApi.scenarioQueryModels(scenarioId, { 'AI-Resource-Group': resourceGroup }).execute(); } From d7723940e83fb1ad59b1c5336ce03ed9fce56a9d Mon Sep 17 00:00:00 2001 From: Matthias Kuhr Date: Wed, 22 Jan 2025 16:03:26 +0100 Subject: [PATCH 4/5] Exclude workflow changes --- .github/workflows/spec-update.yaml | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/.github/workflows/spec-update.yaml b/.github/workflows/spec-update.yaml index 72f6122bd..f17f9b472 100644 --- a/.github/workflows/spec-update.yaml +++ b/.github/workflows/spec-update.yaml @@ -41,9 +41,9 @@ jobs: REF: ${{ github.event.inputs.file-ref }} CREATE_PR: ${{ github.event.inputs.create-pr }} steps: - - uses: sap/ai-sdk-js/.github/actions/setup@main + - name: "Checkout repository" + uses: actions/checkout@v4 with: - node-version: 20 token: ${{ secrets.GITHUB_TOKEN }} - name: "Checkout or Create Branch" @@ -88,10 +88,16 @@ jobs: echo "spec_diff=false" >> "$GITHUB_OUTPUT" fi + - uses: sap/ai-sdk-js/.github/actions/setup@main + if: steps.spec_diff.outputs.spec_diff == 'true' + with: + node-version: 20 + - name: "Generate" id: generate if: steps.spec_diff.outputs.spec_diff == 'true' run: | + pnpm install pnpm generate - name: "Compile and Test" From 8b686ea98712ed140837b8bfb540b2e3cc780ffc Mon Sep 17 00:00:00 2001 From: Zhongpin Wang Date: Thu, 23 Jan 2025 11:11:55 +0100 Subject: [PATCH 5/5] chore: update changeset --- .changeset/big-mayflies-begin.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/big-mayflies-begin.md b/.changeset/big-mayflies-begin.md index 560df0ce9..3183b3677 100644 --- a/.changeset/big-mayflies-begin.md +++ b/.changeset/big-mayflies-begin.md @@ -2,5 +2,5 @@ '@sap-ai-sdk/orchestration': minor --- -Update orchestration to 2501a release. +[Compatibility Note] Update orchestration to 2501a release. As part of this change, the `modelsGet` method of `ScenarioAPI` has been renamed to `scenarioQueryModels`. \ No newline at end of file