diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/examples/PTUQuota/getAvailable.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/examples/PTUQuota/getAvailable.json new file mode 100644 index 000000000000..9c783cd76ec6 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/examples/PTUQuota/getAvailable.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "location": "location", + "api-version": "2024-10-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "total": 1 + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/examples/PTUQuota/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/examples/PTUQuota/list.json new file mode 100644 index 000000000000..a579ddc67189 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/examples/PTUQuota/list.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "location": "location", + "api-version": "2024-10-01-preview", + "$skipToken": "string" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "modelCollection": "string", + "quota": 1, + "usageDetails": [ + { + "resourceGroup": "string", + "workspaceName": "string", + "deploymentName": "string", + "usage": 1, + "collectionQuotaUsage": 1 + } + ] + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/examples/PTUQuota/listAvailable.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/examples/PTUQuota/listAvailable.json new file mode 100644 index 000000000000..004b0e2b77a0 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/examples/PTUQuota/listAvailable.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "location": "location", + "api-version": "2024-10-01-preview", + "$skipToken": "string" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "total": 1 + } + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/mfe.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/mfe.json index 288ea0f9b800..81552c4e230a 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/mfe.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/mfe.json @@ -9,6 +9,153 @@ "https" ], "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/availableQuota": { + "get": { + "tags": [ + "Quota" + ], + "summary": "List available MaaS PTU quota.", + "operationId": "PTUQuota_ListAvailable", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "in": "path", + "name": "location", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/PaginationParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AvailableQuotaArmPaginatedResult" + } + } + }, + "x-ms-examples": { + "List available MaaS PTU quota.": { + "$ref": "./examples/PTUQuota/listAvailable.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/availableQuota/default": { + "get": { + "tags": [ + "Quota" + ], + "summary": "Get available MaaS PTU quota.", + "operationId": "PTUQuota_GetAvailable", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "in": "path", + "name": "location", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AvailableQuota" + } + } + }, + "x-ms-examples": { + "Get available MaaS PTU quota.": { + "$ref": "./examples/PTUQuota/getAvailable.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/quotaAndUsage": { + "get": { + "tags": [ + "Quota" + ], + "summary": "List MaaS PTU usage and quota.", + "operationId": "PTUQuota_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "in": "path", + "name": "location", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "machineLearningServices.json#/parameters/PaginationParameter" + } + ], + "responses": { + "default": { + "description": "Error", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/UsageAndQuotaDetailsArmPaginatedResult" + } + } + }, + "x-ms-examples": { + "List MaaS PTU usage and quota.": { + "$ref": "./examples/PTUQuota/list.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/registries/{registryName}/codes": { "get": { "tags": [ @@ -14220,6 +14367,46 @@ "x-ms-discriminator-value": "Auto", "additionalProperties": false }, + "AvailableQuota": { + "type": "object", + "properties": { + "properties": { + "description": "Available quota properties", + "$ref": "#/definitions/AvailableQuotaProperties", + "x-nullable": true + } + }, + "additionalProperties": false + }, + "AvailableQuotaArmPaginatedResult": { + "description": "A paginated list of AvailableQuota entities.", + "type": "object", + "properties": { + "nextLink": { + "description": "The link to the next page of AvailableQuota objects. If null, there are no additional pages.", + "type": "string" + }, + "value": { + "description": "An array of objects of type AvailableQuota.", + "type": "array", + "items": { + "$ref": "#/definitions/AvailableQuota" + } + } + }, + "additionalProperties": false + }, + "AvailableQuotaProperties": { + "type": "object", + "properties": { + "total": { + "format": "int64", + "description": "The number of available quota", + "type": "integer" + } + }, + "additionalProperties": false + }, "AzureBlobDatastore": { "description": "Azure Blob datastore configuration.", "type": "object", @@ -23486,6 +23673,37 @@ "x-ms-discriminator-value": "OutputPath", "additionalProperties": false }, + "PTUDeploymentUsage": { + "type": "object", + "properties": { + "collectionQuotaUsage": { + "format": "int64", + "description": "Usage number from the collection level quota", + "type": "integer" + }, + "deploymentName": { + "description": "Deployment name", + "type": "string", + "x-nullable": true + }, + "resourceGroup": { + "description": "Resource group name", + "type": "string", + "x-nullable": true + }, + "usage": { + "format": "int64", + "description": "Usage number from subscription level quota", + "type": "integer" + }, + "workspaceName": { + "description": "Workspace name", + "type": "string", + "x-nullable": true + } + }, + "additionalProperties": false + }, "PartialBatchDeployment": { "description": "Mutable batch inference settings per deployment.", "type": "object", @@ -26841,6 +27059,48 @@ "x-ms-discriminator-value": "uri_folder", "additionalProperties": false }, + "UsageAndQuotaDetails": { + "type": "object", + "properties": { + "modelCollection": { + "description": "Model collection name", + "type": "string", + "x-nullable": true + }, + "quota": { + "format": "int64", + "description": "The total number of quota", + "type": "integer" + }, + "usageDetails": { + "description": "Usage details for each deployment", + "type": "array", + "items": { + "$ref": "#/definitions/PTUDeploymentUsage" + }, + "x-nullable": true + } + }, + "additionalProperties": false + }, + "UsageAndQuotaDetailsArmPaginatedResult": { + "description": "A paginated list of UsageAndQuotaDetails entities.", + "type": "object", + "properties": { + "nextLink": { + "description": "The link to the next page of UsageAndQuotaDetails objects. If null, there are no additional pages.", + "type": "string" + }, + "value": { + "description": "An array of objects of type UsageAndQuotaDetails.", + "type": "array", + "items": { + "$ref": "#/definitions/UsageAndQuotaDetails" + } + } + }, + "additionalProperties": false + }, "UseStl": { "description": "Configure STL Decomposition of the time-series target column.", "enum": [