diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/devbox.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/devbox.json new file mode 100644 index 000000000000..5834591c4e1d --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/devbox.json @@ -0,0 +1,2370 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-02-01", + "title": "DevCenter", + "description": "DevBox API." + }, + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "devcenter.json#/parameters/EndpointParameter" + } + ] + }, + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "AADToken": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "AADToken": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/projects/{projectName}/pools": { + "get": { + "tags": [ + "Pools" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/TopParameter" + }, + { + "$ref": "devcenter.json#/parameters/FilterParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + } + ], + "description": "Lists available pools", + "operationId": "DevBoxes_ListPools", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PoolListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "DevBoxes_ListPools": { + "$ref": "./examples/Pools_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/Pool" + } + }, + "/projects/{projectName}/pools/{poolName}": { + "get": { + "tags": [ + "Pools" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/PoolNameParameter" + } + ], + "description": "Gets a pool", + "operationId": "DevBoxes_GetPool", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Pool" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "DevBoxes_GetPool": { + "$ref": "./examples/Pools_Get.json" + } + } + } + }, + "/projects/{projectName}/schedules": { + "get": { + "tags": [ + "Schedules" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/TopParameter" + }, + { + "$ref": "devcenter.json#/parameters/FilterParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + } + ], + "description": "Lists all schedules within a project that are configured by your project administrator.", + "operationId": "DevBoxes_ListSchedulesByProject", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ScheduleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "DevBoxes_ListSchedulesByProject": { + "$ref": "./examples/Schedules_ListByProject.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/Schedule" + } + }, + "/projects/{projectName}/pools/{poolName}/schedules": { + "get": { + "tags": [ + "Schedules" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/TopParameter" + }, + { + "$ref": "devcenter.json#/parameters/FilterParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/PoolNameParameter" + } + ], + "description": "Lists all schedules within a pool that are configured by your project administrator.", + "operationId": "DevBoxes_ListSchedulesByPool", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ScheduleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "DevBoxes_ListSchedulesByPool": { + "$ref": "./examples/Schedules_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/Schedule" + } + }, + "/projects/{projectName}/pools/{poolName}/schedules/{scheduleName}": { + "get": { + "tags": [ + "Schedules" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "#/parameters/PoolNameParameter" + }, + { + "$ref": "#/parameters/ScheduleNameParameter" + } + ], + "description": "Gets a schedule.", + "operationId": "DevBoxes_GetScheduleByPool", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Schedule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "DevBoxes_GetScheduleByPool": { + "$ref": "./examples/Schedules_Get.json" + } + } + } + }, + "/devboxes": { + "get": { + "tags": [ + "Dev Boxes" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/FilterParameter" + }, + { + "$ref": "devcenter.json#/parameters/TopParameter" + } + ], + "description": "Lists Dev Boxes that the caller has access to in the DevCenter.", + "operationId": "DevCenter_ListAllDevBoxes", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DevBoxListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "DevCenter_ListAllDevBoxes": { + "$ref": "./examples/DevBoxes_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DevBox" + } + }, + "/users/{userId}/devboxes": { + "get": { + "tags": [ + "Dev Boxes" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/FilterParameter" + }, + { + "$ref": "devcenter.json#/parameters/TopParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + } + ], + "description": "Lists Dev Boxes in the Dev Center for a particular user.", + "operationId": "DevCenter_ListAllDevBoxesByUser", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DevBoxListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "DevCenter_ListAllDevBoxesByUser": { + "$ref": "./examples/DevBoxes_ListByUserByProject.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DevBox" + } + }, + "/projects/{projectName}/users/{userId}/devboxes": { + "get": { + "tags": [ + "Dev Boxes" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/FilterParameter" + }, + { + "$ref": "devcenter.json#/parameters/TopParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + } + ], + "description": "Lists Dev Boxes in the project for a particular user.", + "operationId": "DevBoxes_ListDevBoxesByUser", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DevBoxListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "DevBoxes_ListDevBoxesByUser": { + "$ref": "./examples/DevBoxes_ListByUserByProject.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DevBox" + } + }, + "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}": { + "get": { + "tags": [ + "Dev Boxes" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/DevBoxNameParameter" + } + ], + "description": "Gets a Dev Box", + "operationId": "DevBoxes_GetDevBoxByUser", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DevBox" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "DevBoxes_GetDevBoxByUser": { + "$ref": "./examples/DevBoxes_Get.json" + } + } + }, + "put": { + "tags": [ + "Dev Boxes" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/DevBoxNameParameter" + }, + { + "name": "body", + "in": "body", + "description": "Represents a environment.", + "required": true, + "schema": { + "$ref": "#/definitions/DevBox" + } + } + ], + "description": "Creates or replaces a Dev Box.", + "operationId": "DevBoxes_CreateDevBox", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "original-uri" + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DevBox" + } + }, + "201": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DevBox" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "DevBoxes_CreateDevBox": { + "$ref": "./examples/DevBoxes_Create.json" + } + } + }, + "delete": { + "tags": [ + "Dev Boxes" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/DevBoxNameParameter" + } + ], + "description": "Deletes a Dev Box.", + "operationId": "DevBoxes_DeleteDevBox", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "operation-location" + }, + "responses": { + "202": { + "description": "The request was accepted.", + "schema": { + "$ref": "devcenter.json#/definitions/OperationStatus" + }, + "headers": { + "Operation-Location": { + "description": "URL to query for status of the operation.", + "type": "string" + } + } + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "DevBoxes_DeleteDevBox": { + "$ref": "./examples/DevBoxes_Delete.json" + } + } + } + }, + "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}:start": { + "post": { + "tags": [ + "Dev Boxes" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/DevBoxNameParameter" + } + ], + "description": "Starts a Dev Box", + "operationId": "DevBoxes_StartDevBox", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "operation-location" + }, + "responses": { + "202": { + "description": "The request was accepted.", + "schema": { + "$ref": "devcenter.json#/definitions/OperationStatus" + }, + "headers": { + "Operation-Location": { + "description": "URL to query for status of the operation.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "DevBoxes_StartDevBox": { + "$ref": "./examples/DevBoxes_Start.json" + } + } + } + }, + "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}:stop": { + "post": { + "tags": [ + "Dev Boxes" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/DevBoxNameParameter" + }, + { + "$ref": "#/parameters/HibernateParameter" + } + ], + "description": "Stops a Dev Box", + "operationId": "DevBoxes_StopDevBox", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "operation-location" + }, + "responses": { + "202": { + "description": "The request was accepted.", + "schema": { + "$ref": "devcenter.json#/definitions/OperationStatus" + }, + "headers": { + "Operation-Location": { + "description": "URL to query for status of the operation.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "DevBoxes_StopDevBox": { + "$ref": "./examples/DevBoxes_Stop.json" + } + } + } + }, + "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}:restart": { + "post": { + "tags": [ + "Dev Boxes" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/DevBoxNameParameter" + } + ], + "description": "Restarts a Dev Box", + "operationId": "DevBoxes_RestartDevBox", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "operation-location" + }, + "responses": { + "202": { + "description": "The request was accepted.", + "schema": { + "$ref": "devcenter.json#/definitions/OperationStatus" + }, + "headers": { + "Operation-Location": { + "description": "URL to query for status of the operation.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "DevBoxes_StartDevBox": { + "$ref": "./examples/DevBoxes_Restart.json" + } + } + } + }, + "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}:repair": { + "post": { + "tags": [ + "Dev Boxes" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/DevBoxNameParameter" + } + ], + "description": "Attempts automated repair steps to resolve common problems on a Dev Box. The Dev Box may restart during this operation.", + "operationId": "DevBoxes_RepairDevBox", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "operation-location" + }, + "responses": { + "202": { + "description": "The request was accepted.", + "schema": { + "$ref": "devcenter.json#/definitions/OperationStatus" + }, + "headers": { + "Operation-Location": { + "description": "URL to query for status of the operation.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "DevBoxes_RepairDevBox": { + "$ref": "./examples/DevBoxes_Repair.json" + } + } + } + }, + "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}/remoteConnection": { + "get": { + "tags": [ + "Dev Boxes" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/DevBoxNameParameter" + } + ], + "description": "Gets RDP Connection info", + "operationId": "DevBoxes_GetRemoteConnection", + "responses": { + "200": { + "description": "The request completed successfully.", + "schema": { + "$ref": "#/definitions/RemoteConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "DevBoxes_GetRemoteConnection": { + "$ref": "./examples/DevBoxes_GetRemoteConnection.json" + } + } + } + }, + "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}/actions": { + "get": { + "tags": [ + "DevBoxActions" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/DevBoxNameParameter" + } + ], + "description": "Lists actions on a Dev Box.", + "operationId": "DevBoxes_ListActions", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DevBoxActionsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "DevBoxes_ListActions": { + "$ref": "./examples/DevBoxActions_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DevBoxAction" + } + }, + "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}/actions/{actionName}": { + "get": { + "tags": [ + "DevBoxActions" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/DevBoxNameParameter" + }, + { + "$ref": "#/parameters/DevBoxActionNameParameter" + } + ], + "description": "Gets an action.", + "operationId": "DevBoxes_GetAction", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DevBoxAction" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "DevBoxes_GetAction": { + "$ref": "./examples/DevBoxActions_Get.json" + } + } + } + }, + "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}/actions/{actionName}:skip": { + "post": { + "tags": [ + "DevBoxActions" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/DevBoxNameParameter" + }, + { + "$ref": "#/parameters/DevBoxActionNameParameter" + } + ], + "description": "Skips an occurrence of an action.", + "operationId": "DevBoxes_SkipAction", + "responses": { + "204": { + "description": "No content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "DevBoxes_SkipAction": { + "$ref": "./examples/DevBoxActions_Skip.json" + } + } + } + }, + "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}/actions/{actionName}:delay": { + "post": { + "tags": [ + "DevBoxActions" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/DevBoxNameParameter" + }, + { + "$ref": "#/parameters/DevBoxActionNameParameter" + }, + { + "$ref": "#/parameters/DevBoxActionDelayUntilParameter" + } + ], + "description": "Delays the occurrence of an action.", + "operationId": "DevBoxes_DelayAction", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DevBoxAction" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "DevBoxes_DelayAction": { + "$ref": "./examples/DevBoxActions_Delay.json" + } + } + } + }, + "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}/actions:delay": { + "post": { + "tags": [ + "DevBoxActions" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/DevBoxNameParameter" + }, + { + "$ref": "#/parameters/DevBoxActionDelayUntilParameter" + } + ], + "description": "Delays all actions.", + "operationId": "DevBoxes_DelayActions", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DevBoxActionsDelayMultipleResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "DevBoxes_DelayActions": { + "$ref": "./examples/DevBoxActions_DelayMultiple.json" + }, + "DevBoxes_DelayActionsWithError": { + "$ref": "./examples/DevBoxActions_DelayMultipleWithError.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DevBoxActionDelayResult" + } + }, + "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}/operations": { + "get": { + "tags": [ + "DevBoxOperations" + ], + "description": "Lists operations on the Dev Box which have occurred within the past 90 days.", + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/TopParameter" + }, + { + "$ref": "devcenter.json#/parameters/FilterParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/DevBoxNameParameter" + } + ], + "operationId": "DevBoxes_ListOperations", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DevBoxOperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "DevBoxOperations_List": { + "$ref": "./examples/DevBoxOperations_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DevBoxOperation" + } + }, + "/projects/{projectName}/users/{userId}/devboxes/{devBoxName}/operations/{operationId}": { + "get": { + "tags": [ + "DevBoxOperations" + ], + "description": "Gets an operation on a Dev Box.", + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/DevBoxNameParameter" + }, + { + "$ref": "#/parameters/DevBoxOperationIdParameter" + } + ], + "operationId": "DevBoxes_GetOperation", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/DevBoxOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "DevBoxOperations_Get": { + "$ref": "./examples/DevBoxOperations_Get.json" + } + } + } + } + }, + "definitions": { + "PoolListResult": { + "type": "object", + "description": "The Pool list result", + "properties": { + "value": { + "description": "Current page of results", + "type": "array", + "items": { + "$ref": "#/definitions/Pool" + } + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "required": [ + "value" + ] + }, + "Pool": { + "type": "object", + "description": "A pool of Dev Boxes.", + "properties": { + "uri": { + "description": "The unique URI of the pool", + "type": "string" + }, + "name": { + "type": "string", + "description": "Pool name" + }, + "location": { + "description": "Azure region where Dev Boxes in the pool are located", + "type": "string" + }, + "osType": { + "description": "The operating system type of Dev Boxes in this pool", + "$ref": "#/definitions/OsType" + }, + "hardwareProfile": { + "description": "Hardware settings for the Dev Boxes created in this pool", + "$ref": "#/definitions/HardwareProfile" + }, + "hibernateSupport": { + "description": "Indicates whether hibernate is enabled/disabled or unknown.", + "$ref": "#/definitions/HibernateSupport" + }, + "storageProfile": { + "description": "Storage settings for Dev Box created in this pool", + "$ref": "#/definitions/StorageProfile" + }, + "imageReference": { + "description": "Image settings for Dev Boxes create in this pool", + "$ref": "#/definitions/ImageReference" + }, + "localAdministrator": { + "description": "Indicates whether owners of Dev Boxes in this pool are local administrators on the Dev Boxes.", + "$ref": "#/definitions/LocalAdminStatus" + }, + "stopOnDisconnect": { + "description": "Stop on disconnect configuration settings for Dev Boxes created in this pool.", + "$ref": "#/definitions/StopOnDisconnectConfiguration" + }, + "healthStatus": { + "description": "Overall health status of the Pool. Indicates whether or not the Pool is available to create Dev Boxes.", + "$ref": "#/definitions/PoolHealthStatus" + }, + "displayName": { + "type": "string", + "description": "Display name of the pool." + } + }, + "required": [ + "uri", + "name", + "location", + "healthStatus" + ] + }, + "PoolHealthStatus": { + "description": "Pool status indicating whether a pool is available to create Dev Boxes.", + "enum": [ + "Unknown", + "Pending", + "Healthy", + "Warning", + "Unhealthy" + ], + "type": "string", + "x-ms-enum": { + "name": "PoolHealthStatus", + "modelAsString": true, + "values": [ + { + "value": "Unknown", + "description": "The pool health status is not known." + }, + { + "value": "Pending", + "description": "The pool health status waiting for health checks to run." + }, + { + "value": "Healthy", + "description": "The pool health status is healthy." + }, + { + "value": "Warning", + "description": "The pool health status has one or more warnings." + }, + { + "value": "Unhealthy", + "description": "The pool health status is not healthy." + } + ] + } + }, + "HibernateSupport": { + "description": "Indicates whether hibernate is supported and enabled, disabled, or unsupported by the operating system. Unknown hibernate support is represented as null.", + "enum": [ + "Enabled", + "Disabled", + "OsUnsupported" + ], + "type": "string", + "x-ms-enum": { + "name": "HibernateSupport", + "modelAsString": true, + "values": [ + { + "value": "Enabled", + "description": "Hibernate is enabled." + }, + { + "value": "Disabled", + "description": "Hibernate is not enabled." + }, + { + "value": "OsUnsupported", + "description": "Hibernate is not supported by the operating system." + } + ] + } + }, + "LocalAdminStatus": { + "description": "Indicates whether owners of Dev Boxes in a pool are local administrators on the Dev Boxes.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "LocalAdminStatus", + "modelAsString": true, + "values": [ + { + "value": "Enabled", + "description": "Owners of Dev Boxes in the pool are local administrators on the Dev Boxes." + }, + { + "value": "Disabled", + "description": "Owners of Dev Boxes in the pool are not local administrators on the Dev Boxes." + } + ] + } + }, + "StopOnDisconnectEnableStatus": { + "description": "Indicates whether the feature to stop the devbox on disconnect once the grace period has lapsed is enabled.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "StopOnDisconnectEnableStatus", + "modelAsString": true, + "values": [ + { + "value": "Enabled", + "description": "Stop on disconnect is enabled on the Dev Box." + }, + { + "value": "Disabled", + "description": "Stop on disconnect is not enabled on the Dev Box." + } + ] + } + }, + "ScheduleListResult": { + "type": "object", + "description": "The Schedule list result", + "properties": { + "value": { + "description": "Current page of results", + "type": "array", + "items": { + "$ref": "#/definitions/Schedule" + } + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "required": [ + "value" + ] + }, + "Schedule": { + "type": "object", + "description": "A Schedule to execute action.", + "properties": { + "uri": { + "description": "The unique URI of the schedule", + "type": "string" + }, + "name": { + "description": "Display name for the Schedule", + "type": "string" + }, + "sourceUri": { + "description": "The URI of the resource that this schedule belongs to", + "type": "string" + }, + "sourceType": { + "description": "The type of the resource that this schedule belongs to", + "$ref": "#/definitions/ScheduleSourceType" + }, + "type": { + "description": "Supported type this scheduled task represents.", + "$ref": "#/definitions/ScheduledType" + }, + "frequency": { + "description": "The frequency of this scheduled task.", + "$ref": "#/definitions/ScheduledFrequency" + }, + "time": { + "description": "The target time to trigger the action. The format is HH:MM.", + "type": "string" + }, + "timeZone": { + "description": "The IANA timezone id at which the schedule should execute.", + "type": "string" + } + }, + "required": [ + "uri", + "name", + "sourceUri", + "sourceType", + "type", + "frequency", + "time", + "timeZone" + ] + }, + "ScheduledType": { + "description": "The supported types for a scheduled task.", + "enum": [ + "StopDevBox" + ], + "type": "string", + "x-ms-enum": { + "name": "ScheduledType", + "modelAsString": true, + "values": [ + { + "value": "StopDevBox", + "description": "The scheduled task will stop impacted Dev Boxes." + } + ] + } + }, + "ScheduledFrequency": { + "description": "The frequency of task execution.", + "enum": [ + "Daily" + ], + "type": "string", + "x-ms-enum": { + "name": "ScheduledFrequency", + "modelAsString": true, + "values": [ + { + "value": "Daily", + "description": "The scheduled task will run every day." + } + ] + } + }, + "DevBoxListResult": { + "type": "object", + "description": "The Dev Box list result", + "properties": { + "value": { + "description": "The list of DevBox Dev Boxes", + "type": "array", + "items": { + "$ref": "#/definitions/DevBox" + } + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "required": [ + "value" + ] + }, + "DevBox": { + "type": "object", + "description": "A Dev Box", + "properties": { + "uri": { + "description": "The unique URI of the dev box", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Display name for the Dev Box", + "type": "string", + "readOnly": true + }, + "projectName": { + "description": "Name of the project this Dev Box belongs to", + "type": "string", + "readOnly": true + }, + "poolName": { + "description": "The name of the Dev Box pool this machine belongs to.", + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63, + "x-ms-mutability": [ + "read", + "create" + ] + }, + "hibernateSupport": { + "description": "Indicates whether hibernate is enabled/disabled or unknown.", + "$ref": "#/definitions/HibernateSupport", + "readOnly": true + }, + "provisioningState": { + "description": "The current provisioning state of the Dev Box.", + "type": "string", + "readOnly": true + }, + "actionState": { + "description": "The current action state of the Dev Box. This is state is based on previous action performed by user.", + "type": "string", + "readOnly": true + }, + "powerState": { + "description": "The current power state of the Dev Box.", + "$ref": "#/definitions/PowerState", + "readOnly": true + }, + "uniqueId": { + "description": "A unique identifier for the Dev Box. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "type": "string", + "readOnly": true + }, + "error": { + "description": "Provisioning or action error details. Populated only for error states.", + "readOnly": true, + "$ref": "devcenter.json#/definitions/CloudErrorBody" + }, + "location": { + "description": "Azure region where this Dev Box is located. This will be the same region as the Virtual Network it is attached to.", + "type": "string", + "readOnly": true + }, + "osType": { + "description": "The operating system type of this Dev Box.", + "$ref": "#/definitions/OsType", + "readOnly": true + }, + "user": { + "type": "string", + "description": "The AAD object id of the user this Dev Box is assigned to.", + "readOnly": true + }, + "hardwareProfile": { + "description": "Information about the Dev Box's hardware resources", + "$ref": "#/definitions/HardwareProfile", + "readOnly": true + }, + "storageProfile": { + "description": "Storage settings for this Dev Box", + "$ref": "#/definitions/StorageProfile", + "readOnly": true + }, + "imageReference": { + "description": "Information about the image used for this Dev Box", + "$ref": "#/definitions/ImageReference", + "readOnly": true + }, + "createdTime": { + "description": "Creation time of this Dev Box", + "type": "string", + "readOnly": true, + "format": "date-time" + }, + "localAdministrator": { + "description": "Indicates whether the owner of the Dev Box is a local administrator.", + "$ref": "#/definitions/LocalAdminStatus" + } + }, + "required": [ + "poolName" + ] + }, + "OsType": { + "type": "string", + "enum": [ + "Windows" + ], + "description": "The operating system type.", + "x-ms-enum": { + "name": "OsType", + "modelAsString": true, + "values": [ + { + "value": "Windows", + "description": "The Windows operating system." + } + ] + } + }, + "HardwareProfile": { + "description": "Hardware specifications for the Dev Box.", + "type": "object", + "properties": { + "skuName": { + "description": "The name of the SKU", + "type": "string", + "readOnly": true + }, + "vCPUs": { + "description": "The number of vCPUs available for the Dev Box.", + "type": "integer", + "format": "int32", + "readOnly": true + }, + "memoryGB": { + "description": "The amount of memory available for the Dev Box.", + "type": "integer", + "format": "int32", + "readOnly": true + } + } + }, + "StorageProfile": { + "type": "object", + "description": "Storage settings for the Dev Box's disks", + "properties": { + "osDisk": { + "$ref": "#/definitions/OSDisk" + } + } + }, + "OSDisk": { + "type": "object", + "description": "Settings for the operating system disk.", + "properties": { + "diskSizeGB": { + "description": "The size of the OS Disk in gigabytes.", + "type": "integer", + "format": "int32", + "readOnly": true + } + } + }, + "ImageReference": { + "description": "Specifies information about the image used", + "type": "object", + "properties": { + "name": { + "description": "The name of the image used.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "The version of the image.", + "type": "string", + "readOnly": true + }, + "operatingSystem": { + "description": "The operating system of the image.", + "type": "string", + "readOnly": true + }, + "osBuildNumber": { + "description": "The operating system build number of the image.", + "type": "string", + "readOnly": true + }, + "publishedDate": { + "description": "The datetime that the backing image version was published.", + "type": "string", + "readOnly": true, + "format": "date-time" + } + } + }, + "RemoteConnection": { + "description": "Provides remote connection information for a Dev Box.", + "type": "object", + "properties": { + "webUrl": { + "description": "URL to open a browser based RDP session.", + "type": "string" + }, + "rdpConnectionUrl": { + "description": "Link to open a Remote Desktop session.", + "type": "string" + } + } + }, + "PowerState": { + "type": "string", + "enum": [ + "Unknown", + "Running", + "Deallocated", + "PoweredOff", + "Hibernated" + ], + "description": "The power states of a Dev Box.", + "x-ms-enum": { + "name": "PowerState", + "modelAsString": true, + "values": [ + { + "value": "Unknown", + "description": "The Dev Box power state is not known." + }, + { + "value": "Running", + "description": "The Dev Box is running." + }, + { + "value": "Deallocated", + "description": "The Dev Box is deallocated." + }, + { + "value": "PoweredOff", + "description": "The Dev Box is powered off." + }, + { + "value": "Hibernated", + "description": "The Dev Box is hibernated." + } + ] + } + }, + "StopOnDisconnectConfiguration": { + "type": "object", + "description": "Stop on disconnect configuration settings for Dev Boxes created in this pool.", + "properties": { + "status": { + "description": "Indicates whether the feature to stop the devbox on disconnect once the grace period has lapsed is enabled.", + "$ref": "#/definitions/StopOnDisconnectEnableStatus" + }, + "gracePeriodMinutes": { + "description": "The specified time in minutes to wait before stopping a Dev Box once disconnect is detected.", + "type": "integer", + "format": "int32" + } + }, + "required": [ + "status" + ] + }, + "DevBoxActionsDelayMultipleResult": { + "type": "object", + "description": "The actions list result", + "properties": { + "value": { + "description": "Current page of results", + "type": "array", + "items": { + "$ref": "#/definitions/DevBoxActionDelayResult" + } + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "required": [ + "value" + ] + }, + "DevBoxActionDelayResult": { + "type": "object", + "description": "The action delay result", + "properties": { + "uri": { + "type": "string", + "description": "The unique URI of the action." + }, + "name": { + "type": "string", + "description": "The name of the action." + }, + "result": { + "$ref": "#/definitions/DevBoxActionDelayResultStatus", + "description": "The result of the delay operation on this action." + }, + "action": { + "description": "The delayed action", + "type": "object", + "$ref": "#/definitions/DevBoxAction" + }, + "error": { + "description": "Information about the error that occurred. Only populated on error.", + "type": "object", + "$ref": "devcenter.json#/definitions/CloudErrorBody" + } + }, + "required": [ + "name", + "uri", + "result" + ] + }, + "DevBoxActionDelayResultStatus": { + "type": "string", + "enum": [ + "Succeeded", + "Failed" + ], + "description": "The result of the delay operation on this action.", + "x-ms-enum": { + "name": "DevBoxActionDelayResultStatus", + "modelAsString": true, + "values": [ + { + "value": "Succeeded", + "description": "The delay operation succeeded." + }, + { + "value": "Failed", + "description": "The delay operation failed." + } + ] + } + }, + "DevBoxActionsListResult": { + "type": "object", + "description": "The actions list result", + "properties": { + "value": { + "description": "Current page of results", + "type": "array", + "items": { + "$ref": "#/definitions/DevBoxAction" + } + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "required": [ + "value" + ] + }, + "DevBoxAction": { + "type": "object", + "description": "An action which will take place on a Dev Box.", + "properties": { + "uri": { + "description": "The unique URI for the Dev Box action.", + "type": "string" + }, + "name": { + "description": "The name of the action.", + "type": "string" + }, + "actionType": { + "description": "The action that will be taken.", + "$ref": "#/definitions/DevBoxActionType" + }, + "sourceId": { + "description": "The id of the resource which triggered this action", + "type": "string" + }, + "sourceUri": { + "description": "The URI of the resource which triggered this action", + "type": "string" + }, + "sourceType": { + "description": "The type of the resource which triggered this action", + "$ref": "#/definitions/DevBoxActionSourceType" + }, + "suspendedUntil": { + "description": "The earliest time that the action could occur (UTC).", + "type": "string", + "format": "date-time" + }, + "next": { + "description": "Details about the next run of this action.", + "$ref": "#/definitions/DevBoxNextAction" + } + }, + "required": [ + "name", + "uri", + "actionType", + "sourceId", + "sourceUri", + "sourceType" + ] + }, + "DevBoxActionType": { + "description": "The type of action which will take place on a Dev Box.", + "type": "string", + "enum": [ + "Stop" + ], + "x-ms-enum": { + "name": "DevBoxActionType", + "modelAsString": true, + "values": [ + { + "value": "Stop", + "description": "The action will stop the Dev Box." + } + ] + } + }, + "DevBoxNextAction": { + "description": "Details about the next run of an action.", + "type": "object", + "properties": { + "scheduledTime": { + "description": "The time the action will be triggered (UTC).", + "type": "string", + "format": "date-time" + } + }, + "required": [ + "scheduledTime" + ] + }, + "DevBoxOperationListResult": { + "type": "object", + "description": "The result of listing operations on a Dev Box.", + "properties": { + "value": { + "description": "The current page of results.", + "type": "array", + "items": { + "$ref": "#/definitions/DevBoxOperation" + } + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "required": [ + "value" + ] + }, + "DevBoxOperation": { + "type": "object", + "description": "Information about an operation on a Dev Box.", + "discriminator": "kind", + "properties": { + "uri": { + "description": "The unique URI for the Dev Box operation.", + "type": "string" + }, + "operationId": { + "description": "Unique identifier for the Dev Box operation.", + "type": "string" + }, + "kind": { + "description": "The kind of operation that occurred.", + "$ref": "#/definitions/DevBoxOperationKind" + }, + "status": { + "description": "The operation status.", + "$ref": "#/definitions/DevBoxOperationStatus" + }, + "createdByObjectId": { + "description": "The object ID of the actor which initiated the operation.", + "type": "string" + }, + "startTime": { + "description": "The time the operation started.", + "type": "string", + "format": "date-time" + }, + "endTime": { + "description": "The time the operation finished.", + "type": "string", + "format": "date-time" + }, + "error": { + "description": "Provisioning or operation error details. Populated only for error states.", + "$ref": "devcenter.json#/definitions/CloudErrorBody" + } + }, + "required": [ + "uri", + "operationId", + "kind", + "status" + ] + }, + "DevBoxStartOperation": { + "type": "object", + "description": "Information about a start operation on a Dev Box.", + "x-ms-discriminator-value": "Start", + "allOf": [ + { + "$ref": "#/definitions/DevBoxOperation" + } + ] + }, + "DevBoxStopOperation": { + "type": "object", + "description": "Information about a stop operation on a Dev Box.", + "x-ms-discriminator-value": "Stop", + "allOf": [ + { + "$ref": "#/definitions/DevBoxOperation" + } + ] + }, + "DevBoxRestartOperation": { + "type": "object", + "description": "Information about a restart operation on a Dev Box.", + "x-ms-discriminator-value": "Restart", + "allOf": [ + { + "$ref": "#/definitions/DevBoxOperation" + } + ] + }, + "DevBoxRepairOperation": { + "type": "object", + "description": "Information about a repair operation on a Dev Box.", + "x-ms-discriminator-value": "Repair", + "allOf": [ + { + "$ref": "#/definitions/DevBoxOperation" + } + ], + "properties": { + "result": { + "description": "The result of the repair operation.", + "$ref": "#/definitions/DevBoxRepairOperationResult" + } + } + }, + "DevBoxRepairOperationResult": { + "description": "Information about the result of a repair operation on a Dev Box.", + "type": "object", + "properties": { + "repairOutcome": { + "description": "The outcome of the repair operation.", + "$ref": "#/definitions/DevBoxRepairOutcome" + }, + "code": { + "description": "The result code associated with the repair operation.", + "type": "string" + }, + "message": { + "description": "The result message associated with the repair operation.", + "type": "string" + } + } + }, + "DevBoxRepairOutcome": { + "type": "string", + "enum": [ + "FixApplied", + "IssuesDetected", + "NoIssuesDetected" + ], + "description": "The action taken during a repair operation.", + "x-ms-enum": { + "name": "DevBoxRepairOutcome", + "modelAsString": true, + "values": [ + { + "value": "FixApplied", + "description": "A fix for an issue was automatically applied to the Dev Box." + }, + { + "value": "IssuesDetected", + "description": "One or more issues was detected on the Dev Box, but they could not be fixed automatically." + }, + { + "value": "NoIssuesDetected", + "description": "The service did not identify any issues on the Dev Box." + } + ] + } + }, + "DevBoxOperationKind": { + "type": "string", + "enum": [ + "Start", + "Stop", + "Restart", + "Repair" + ], + "description": "The type of Dev Box operation.", + "x-ms-enum": { + "name": "DevBoxOperationKind", + "modelAsString": true, + "values": [ + { + "value": "Start", + "description": "The operation represents a Dev Box start." + }, + { + "value": "Stop", + "description": "The operation represents a Dev Box stop." + }, + { + "value": "Restart", + "description": "The operation represents a Dev Box restart." + }, + { + "value": "Repair", + "description": "The operation represents a Dev Box repair." + } + ] + } + }, + "DevBoxOperationStatus": { + "type": "string", + "enum": [ + "NotStarted", + "Running", + "Succeeded", + "Canceled", + "Failed" + ], + "description": "The status of a Dev Box operation.", + "x-ms-enum": { + "name": "DevBoxOperationStatus", + "modelAsString": true, + "values": [ + { + "value": "NotStarted", + "description": "The operation has not started." + }, + { + "value": "Running", + "description": "The operation is running." + }, + { + "value": "Succeeded", + "description": "The operation succeeded." + }, + { + "value": "Canceled", + "description": "The operation was canceled." + }, + { + "value": "Failed", + "description": "The operation failed." + } + ] + } + }, + "ScheduleSourceType": { + "type": "string", + "enum": [ + "Pool" + ], + "description": "The type of the resource that this schedule belongs to.", + "x-ms-enum": { + "name": "ScheduleSourceType", + "modelAsString": true, + "values": [ + { + "value": "Pool", + "description": "The schedule source is a Dev Box pool." + } + ] + } + }, + "DevBoxActionSourceType": { + "type": "string", + "enum": [ + "Pool", + "Schedule" + ], + "description": "The type of the resource which triggered the action.", + "x-ms-enum": { + "name": "DevBoxActionSourceType", + "modelAsString": true, + "values": [ + { + "value": "Pool", + "description": "The action was triggered by a Dev Box pool." + }, + { + "value": "Schedule", + "description": "The action was triggered by a Dev Box schedule." + } + ] + } + } + }, + "parameters": { + "PoolNameParameter": { + "name": "poolName", + "description": "The name of a pool of Dev Boxes.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63, + "in": "path", + "x-ms-parameter-location": "method" + }, + "ScheduleNameParameter": { + "name": "scheduleName", + "description": "The name of a schedule.", + "required": true, + "type": "string", + "in": "path", + "x-ms-parameter-location": "method" + }, + "DevBoxNameParameter": { + "name": "devBoxName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63, + "description": "The name of a Dev Box.", + "x-ms-parameter-location": "method" + }, + "HibernateParameter": { + "name": "hibernate", + "in": "query", + "required": false, + "type": "boolean", + "description": "Optional parameter to hibernate the dev box.", + "x-ms-parameter-location": "method" + }, + "DevBoxActionNameParameter": { + "name": "actionName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63, + "description": "The name of an action that will take place on a Dev Box.", + "x-ms-parameter-location": "method" + }, + "DevBoxActionDelayUntilParameter": { + "name": "until", + "description": "The time to delay the Dev Box action or actions until.", + "required": true, + "type": "string", + "format": "date-time", + "in": "query", + "x-ms-parameter-location": "method" + }, + "DevBoxOperationIdParameter": { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63, + "description": "The id of the operation on a Dev Box.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/devcenter.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/devcenter.json new file mode 100644 index 000000000000..f240a194fb66 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/devcenter.json @@ -0,0 +1,361 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-02-01", + "title": "DevCenter" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "devcenter.json#/parameters/EndpointParameter" + } + ] + }, + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "AADToken": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "AADToken": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/projects": { + "get": { + "tags": [ + "Projects" + ], + "description": "Lists all projects.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/TopParameter" + } + ], + "operationId": "DevCenter_ListProjects", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ProjectListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DevCenter_ListProjects": { + "$ref": "./examples/Projects_ListByDevCenter.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/projects/{projectName}": { + "get": { + "tags": [ + "Projects" + ], + "description": "Gets a project.", + "parameters": [ + { + "$ref": "#/parameters/ProjectNameMethodParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "operationId": "DevCenter_GetProject", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Project" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DevCenter_GetProject": { + "$ref": "./examples/Projects_Get.json" + } + } + } + } + }, + "definitions": { + "ProjectListResult": { + "description": "Results of the project list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "type": "array", + "items": { + "$ref": "#/definitions/Project" + } + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "Project": { + "description": "Project details.", + "type": "object", + "properties": { + "uri": { + "description": "The unique URI of the project", + "type": "string" + }, + "name": { + "type": "string", + "description": "Name of the project" + }, + "description": { + "type": "string", + "description": "Description of the project." + }, + "maxDevBoxesPerUser": { + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "When specified, indicates the maximum number of Dev Boxes a single user can create across all pools in the project." + }, + "displayName": { + "type": "string", + "description": "Display name of the project." + } + }, + "required": [ + "uri", + "name" + ] + }, + "CloudError": { + "x-ms-external": true, + "type": "object", + "required": [ + "error" + ], + "properties": { + "error": { + "description": "Error body", + "$ref": "#/definitions/CloudErrorBody" + } + }, + "description": "An error response from the service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "description": "An error response from the service.", + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + } + }, + "OperationStatus": { + "description": "The current status of an async operation", + "type": "object", + "properties": { + "id": { + "description": "Fully qualified ID for the operation status.", + "type": "string" + }, + "name": { + "description": "The operation id name", + "type": "string" + }, + "status": { + "description": "Provisioning state of the resource.", + "type": "string" + }, + "resourceId": { + "description": "The id of the resource.", + "type": "string" + }, + "startTime": { + "description": "The start time of the operation", + "type": "string", + "format": "date-time" + }, + "endTime": { + "description": "The end time of the operation", + "type": "string", + "format": "date-time" + }, + "percentComplete": { + "description": "Percent of the operation that is complete", + "type": "number", + "minimum": 0, + "maximum": 100 + }, + "properties": { + "description": "Custom operation properties, populated only for a successful operation.", + "type": "object" + }, + "error": { + "description": "Operation Error message", + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "message": { + "type": "string", + "description": "The error message." + } + } + } + }, + "required": [ + "status" + ] + } + }, + "parameters": { + "ProjectNameParameter": { + "name": "projectName", + "description": "The DevCenter Project upon which to execute operations.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63, + "in": "path", + "x-ms-parameter-location": "client" + }, + "ProjectNameMethodParameter": { + "name": "projectName", + "description": "The DevCenter Project upon which to execute operations.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{2,62}$", + "minLength": 3, + "maxLength": 63, + "in": "path", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to be used with the HTTP request.", + "x-ms-parameter-location": "client" + }, + "FilterParameter": { + "name": "filter", + "in": "query", + "description": "An OData filter clause to apply to the operation.", + "type": "string", + "required": false, + "x-ms-parameter-location": "method" + }, + "TopParameter": { + "name": "top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: 'top=10'.", + "type": "integer", + "format": "int32", + "required": false, + "x-ms-parameter-location": "method" + }, + "UserIdParameter": { + "name": "userId", + "in": "path", + "required": true, + "x-ms-client-default": "me", + "type": "string", + "pattern": "^[a-zA-Z0-9]{8}-([a-zA-Z0-9]{4}-){3}[a-zA-Z0-9]{12}$|^me$", + "minLength": 2, + "maxLength": 36, + "description": "The AAD object id of the user. If value is 'me', the identity is taken from the authentication context.", + "x-ms-parameter-location": "method" + }, + "EndpointParameter": { + "name": "endpoint", + "description": "The DevCenter-specific URI to operate on.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "client" + }, + "CatalogNameParameter": { + "name": "catalogName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63, + "description": "The name of the catalog", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/environments.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/environments.json new file mode 100644 index 000000000000..e888402051d8 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/environments.json @@ -0,0 +1,1828 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-02-01", + "title": "DevCenter", + "description": "Deployment Environments API." + }, + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "devcenter.json#/parameters/EndpointParameter" + } + ] + }, + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "AADToken": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "AADToken": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/projects/{projectName}/environments": { + "get": { + "tags": [ + "Environments" + ], + "description": "Lists the environments for a project.", + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/TopParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + } + ], + "operationId": "Environments_ListEnvironments", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EnvironmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "Environments_ListEnvironments": { + "$ref": "./examples/Environments_ListByProject.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/projects/{projectName}/users/{userId}/environments": { + "get": { + "tags": [ + "Environments" + ], + "description": "Lists the environments for a project and user.", + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/TopParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + } + ], + "operationId": "Environments_ListEnvironmentsByUser", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EnvironmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "Environments_ListEnvironmentsByUser": { + "$ref": "./examples/Environments_ListByProjectByUser.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/projects/{projectName}/users/{userId}/environments/{environmentName}": { + "get": { + "tags": [ + "Environments" + ], + "description": "Gets an environment", + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/EnvironmentNameParameter" + } + ], + "operationId": "Environments_GetEnvironmentByUser", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Environment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "Environments_GetEnvironmentByUser": { + "$ref": "./examples/Environments_Get.json" + } + } + }, + "put": { + "tags": [ + "Environments" + ], + "description": "Creates or updates an environment.", + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/EnvironmentNameParameter" + }, + { + "name": "body", + "in": "body", + "description": "Represents an environment.", + "required": true, + "schema": { + "$ref": "#/definitions/Environment" + } + } + ], + "operationId": "Environments_CreateOrReplaceEnvironment", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "original-uri" + }, + "responses": { + "201": { + "description": "Created. Operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Environment" + }, + "headers": { + "Operation-Location": { + "description": "URL to query for status of the operation.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "Environments_CreateByEnvironmentDefinition": { + "$ref": "./examples/Environments_CreateByEnvironmentDefinition.json" + } + } + }, + "patch": { + "tags": [ + "Environments" + ], + "description": "Partially updates an environment", + "consumes": [ + "application/merge-patch+json" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/EnvironmentNameParameter" + }, + { + "name": "body", + "in": "body", + "description": "Updatable environment properties.", + "required": true, + "schema": { + "$ref": "#/definitions/Environment" + } + } + ], + "operationId": "Environments_PatchEnvironment", + "responses": { + "200": { + "description": "Succeeded", + "schema": { + "$ref": "#/definitions/Environment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "Environments_PatchEnvironment": { + "$ref": "./examples/Environments_Patch.json" + } + } + }, + "delete": { + "tags": [ + "Environments" + ], + "description": "Deletes an environment and all its associated resources", + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/EnvironmentNameParameter" + } + ], + "operationId": "Environments_DeleteEnvironment", + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "Accepted. Operation will complete asynchronously.", + "schema": { + "$ref": "devcenter.json#/definitions/OperationStatus" + }, + "headers": { + "Operation-Location": { + "description": "URL to query for status of the operation.", + "type": "string" + } + } + }, + "204": { + "description": "Deletion was successful or resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "Environments_DeleteEnvironment": { + "$ref": "./examples/Environments_Delete.json" + } + } + } + }, + "/projects/{projectName}/users/{userId}/environments/{environmentName}/outputs": { + "get": { + "tags": [ + "Environments" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/EnvironmentNameParameter" + } + ], + "description": "Gets Outputs from the environment", + "operationId": "Environments_GetOutputs", + "responses": { + "200": { + "description": "The request completed successfully.", + "schema": { + "$ref": "#/definitions/EnvironmentOutputs" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "Environments_GetOutputs": { + "$ref": "./examples/Environments_GetOutputs.json" + } + } + } + }, + "/projects/{projectName}/users/{userId}/environments/{environmentName}/operations": { + "get": { + "tags": [ + "EnvironmentOperations", + "Environments" + ], + "description": "Lists operations on the environment which have occurred within the past 90 days", + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/TopParameter" + }, + { + "$ref": "devcenter.json#/parameters/FilterParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/EnvironmentNameParameter" + } + ], + "operationId": "Environments_ListOperations", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EnvironmentOperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "EnvironmentOperations_ListByEnvironment": { + "$ref": "./examples/EnvironmentOperations_ListByEnvironment.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/projects/{projectName}/users/{userId}/environments/{environmentName}/operations/{operationId}": { + "get": { + "tags": [ + "EnvironmentOperations", + "Environments" + ], + "description": "Gets an environment action result.", + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/EnvironmentNameParameter" + }, + { + "$ref": "#/parameters/EnvironmentOperationIdParameter" + } + ], + "operationId": "Environments_GetOperation", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EnvironmentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "EnvironmentOperations_GetByEnvironment": { + "$ref": "./examples/EnvironmentOperations_GetByEnvironment.json" + } + } + } + }, + "/projects/{projectName}/users/{userId}/environments/{environmentName}/operations/{operationId}/logs": { + "get": { + "tags": [ + "EnvironmentOperations", + "Environments" + ], + "description": "Gets the logs for an operation on an environment.", + "produces": [ + "text/plain" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/EnvironmentNameParameter" + }, + { + "$ref": "#/parameters/EnvironmentOperationIdParameter" + } + ], + "operationId": "Environments_GetLogsByOperation", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "type": "file" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "EnvironmentOperations_GetLogs": { + "$ref": "./examples/EnvironmentOperations_GetLogs.json" + } + } + } + }, + "/projects/{projectName}/users/{userId}/environments/{environmentName}/actions": { + "get": { + "tags": [ + "Environment Actions" + ], + "description": "Get all scheduled actions for a user within an environment.", + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/EnvironmentNameParameter" + } + ], + "operationId": "Environments_ListActions", + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/EnvironmentActionsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "Environments_ListActions": { + "$ref": "./examples/EnvironmentActions_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/EnvironmentAction" + } + }, + "/projects/{projectName}/users/{userId}/environments/{environmentName}/actions/{actionName}": { + "get": { + "tags": [ + "Environment Actions" + ], + "description": "Retrieve a specific environment action.", + "operationId": "Environments_GetAction", + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/EnvironmentNameParameter" + }, + { + "$ref": "#/parameters/EnvironmentActionNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/EnvironmentAction" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "Environments_GetAction": { + "$ref": "./examples/EnvironmentActions_Get.json" + } + } + } + }, + "/projects/{projectName}/users/{userId}/environments/{environmentName}/actions/{actionName}:skip": { + "post": { + "tags": [ + "Environment Actions" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/EnvironmentNameParameter" + }, + { + "$ref": "#/parameters/EnvironmentActionNameParameter" + } + ], + "description": "Skips an occurrence of an action.", + "operationId": "Environments_SkipAction", + "responses": { + "204": { + "description": "No content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "Environments_SkipAction": { + "$ref": "./examples/EnvironmentActions_Skip.json" + } + } + } + }, + "/projects/{projectName}/users/{userId}/environments/{environmentName}/actions/{actionName}:delay": { + "post": { + "tags": [ + "Environment Actions" + ], + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/UserIdParameter" + }, + { + "$ref": "#/parameters/EnvironmentNameParameter" + }, + { + "$ref": "#/parameters/EnvironmentActionNameParameter" + }, + { + "$ref": "#/parameters/EnvironmentActionDelayUntilParameter" + } + ], + "description": "Delays the occurrence of an action.", + "operationId": "Environments_DelayAction", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EnvironmentAction" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "Environments_DelayAction": { + "$ref": "./examples/EnvironmentActions_Delay.json" + } + } + } + }, + "/projects/{projectName}/catalogs": { + "get": { + "tags": [ + "Catalogs" + ], + "description": "Lists all of the catalogs available for a project.", + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/TopParameter" + } + ], + "operationId": "Environments_ListCatalogsByProject", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CatalogListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "Environments_ListCatalogsByProject": { + "$ref": "./examples/Catalogs_ListByProject.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/projects/{projectName}/catalogs/{catalogName}": { + "get": { + "tags": [ + "Catalogs" + ], + "description": "Gets the specified catalog within the project", + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/CatalogNameParameter" + } + ], + "operationId": "Environments_GetCatalog", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Catalog" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "Environments_GetCatalog": { + "$ref": "./examples/Catalogs_Get.json" + } + } + } + }, + "/projects/{projectName}/environmentDefinitions": { + "get": { + "tags": [ + "Environment Definitions" + ], + "description": "Lists all environment definitions available for a project.", + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/TopParameter" + } + ], + "operationId": "Environments_ListEnvironmentDefinitionsByProject", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EnvironmentDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "Environments_ListEnvironmentDefinitions": { + "$ref": "./examples/EnvironmentDefinitions_ListByProject.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/projects/{projectName}/catalogs/{catalogName}/environmentDefinitions": { + "get": { + "tags": [ + "Environment Definitions" + ], + "description": "Lists all environment definitions available within a catalog.", + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/TopParameter" + }, + { + "$ref": "devcenter.json#/parameters/CatalogNameParameter" + } + ], + "operationId": "Environments_ListEnvironmentDefinitionsByCatalog", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EnvironmentDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "Environments_ListEnvironmentDefinitionsByCatalog": { + "$ref": "./examples/EnvironmentDefinitions_ListByCatalog.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/projects/{projectName}/catalogs/{catalogName}/environmentDefinitions/{definitionName}": { + "get": { + "tags": [ + "Environment Definitions" + ], + "description": "Get an environment definition from a catalog.", + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/CatalogNameParameter" + }, + { + "$ref": "#/parameters/EnvironmentDefinitionNameParameter" + } + ], + "operationId": "Environments_GetEnvironmentDefinition", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EnvironmentDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "Environments_GetEnvironmentDefinition": { + "$ref": "./examples/EnvironmentDefinitions_Get.json" + } + } + } + }, + "/projects/{projectName}/environmentTypes": { + "get": { + "tags": [ + "Environment Types" + ], + "description": "Lists all environment types configured for a project.", + "parameters": [ + { + "$ref": "devcenter.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "devcenter.json#/parameters/ProjectNameParameter" + }, + { + "$ref": "devcenter.json#/parameters/TopParameter" + } + ], + "operationId": "Environments_ListEnvironmentTypes", + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EnvironmentTypeListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "devcenter.json#/definitions/CloudError" + }, + "headers": { + "x-ms-error-code": { + "description": "The error code for specific error that occurred.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "Environments_ListEnvironmentTypes": { + "$ref": "./examples/EnvironmentTypes_ListByProject.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "EnvironmentUpdateProperties": { + "description": "Properties of an environment. These properties can be updated after the resource has been created.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EnvironmentPatchProperties" + } + ], + "properties": { + "parameters": { + "type": "object", + "description": "Parameters object for the environment. Can only be updated via create or replace." + } + } + }, + "EnvironmentPatchProperties": { + "description": "Properties of an environment. These properties can be updated via PATCH after the resource has been created.", + "type": "object", + "properties": { + "expirationDate": { + "description": "The time the expiration date will be triggered (UTC), after which the environment and associated resources will be deleted.", + "type": "string", + "format": "date-time" + } + } + }, + "Environment": { + "description": "Properties of an environment.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EnvironmentUpdateProperties" + } + ], + "properties": { + "uri": { + "description": "The unique URI of the environment", + "type": "string", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Environment name.", + "readOnly": true + }, + "environmentType": { + "type": "string", + "description": "The name of the environment type. Cannot be updated after creation.", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "user": { + "type": "string", + "description": "The AAD object id of the owner of this Environment.", + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning state of the environment.", + "type": "string", + "readOnly": true + }, + "resourceGroupId": { + "description": "The identifier of the resource group containing the environment's resources.", + "type": "string", + "readOnly": true + }, + "catalogName": { + "type": "string", + "description": "The name of the catalog. Cannot be updated after creation.", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "environmentDefinitionName": { + "type": "string", + "description": "The name of the environment definition. Cannot be updated after creation.", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "error": { + "description": "Provisioning error details. Populated only for error states.", + "readOnly": true, + "$ref": "devcenter.json#/definitions/CloudErrorBody" + } + }, + "required": [ + "environmentType", + "catalogName", + "environmentDefinitionName" + ] + }, + "EnvironmentOutputs": { + "description": "Outputs from environment deployment.", + "type": "object", + "properties": { + "outputs": { + "type": "object", + "description": "The outputs Names and Values", + "additionalProperties": { + "$ref": "#/definitions/EnvironmentOutput" + } + } + } + }, + "EnvironmentOutput": { + "description": "Output from environment deployment.", + "type": "object", + "properties": { + "type": { + "description": "Type of the output value", + "type": "string", + "enum": [ + "string", + "array", + "boolean", + "number", + "object" + ], + "x-ms-enum": { + "name": "EnvironmentOutputType", + "modelAsString": true, + "values": [ + { + "value": "array", + "description": "The output is an array of values." + }, + { + "value": "boolean", + "description": "The output is a boolean value." + }, + { + "value": "number", + "description": "The output is a number value." + }, + { + "value": "object", + "description": "The output is an object value." + }, + { + "value": "string", + "description": "The output is a string value." + } + ] + } + }, + "value": { + "description": "The output value", + "type": "object" + }, + "sensitive": { + "description": "Indicates if the value is sensitive.", + "type": "boolean" + } + } + }, + "EnvironmentActionType": { + "description": "The scheduled action types.", + "type": "string", + "enum": [ + "Delete" + ], + "x-ms-enum": { + "name": "EnvironmentActionType", + "modelAsString": true, + "values": [ + { + "value": "Delete", + "description": "The action will delete the environment and associated resources." + } + ] + } + }, + "EnvironmentNextAction": { + "description": "Details about the next run of an action.", + "type": "object", + "properties": { + "scheduledTime": { + "description": "The time the action will be triggered (UTC).", + "type": "string", + "format": "date-time" + } + }, + "required": [ + "scheduledTime" + ] + }, + "EnvironmentActionsListResult": { + "type": "object", + "description": "The actions list result", + "properties": { + "value": { + "description": "Current page of results", + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentAction" + } + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "required": [ + "value" + ] + }, + "EnvironmentAction": { + "type": "object", + "description": "An upcoming Environment Action.", + "properties": { + "name": { + "description": "Uniquely identifies the action.", + "type": "string", + "readOnly": true + }, + "uri": { + "description": "Uri of the action resource.", + "type": "string", + "readOnly": true + }, + "actionType": { + "description": "The action that will be taken.", + "$ref": "#/definitions/EnvironmentActionType", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "next": { + "description": "Details about the next run of this action.", + "$ref": "#/definitions/EnvironmentNextAction" + }, + "lastModifiedBy": { + "description": "Object Id of the user who last modified the action.", + "type": "string", + "readOnly": true + }, + "lastModifiedAt": { + "description": "time the object was last modified.", + "type": "string", + "format": "date-time", + "readOnly": true + } + }, + "required": [ + "actionType", + "next" + ] + }, + "EnvironmentListResult": { + "description": "Results of the environment list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "type": "array", + "items": { + "$ref": "#/definitions/Environment" + } + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "CatalogListResult": { + "description": "Results of the catalog list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "type": "array", + "items": { + "$ref": "#/definitions/Catalog" + } + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "Catalog": { + "description": "A catalog.", + "type": "object", + "properties": { + "uri": { + "description": "The unique URI of the catalog", + "type": "string" + }, + "name": { + "description": "Name of the catalog.", + "type": "string" + } + }, + "required": [ + "uri", + "name" + ] + }, + "EnvironmentDefinitionListResult": { + "description": "Results of the environment definition list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentDefinition" + } + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "EnvironmentDefinition": { + "description": "An environment definition.", + "type": "object", + "properties": { + "uri": { + "description": "The unique URI of the environment definition", + "type": "string" + }, + "id": { + "description": "The ID of the environment definition.", + "type": "string" + }, + "name": { + "description": "Name of the environment definition.", + "type": "string" + }, + "catalogName": { + "description": "Name of the catalog.", + "type": "string" + }, + "description": { + "description": "A short description of the environment definition.", + "type": "string" + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentDefinitionParameter" + }, + "description": "Input parameters passed to an environment." + }, + "parametersSchema": { + "type": "string", + "description": "JSON schema defining the parameters object passed to an environment." + }, + "templatePath": { + "description": "Path to the Environment Definition entrypoint file.", + "type": "string" + } + }, + "required": [ + "name", + "uri", + "catalogName", + "id" + ] + }, + "EnvironmentDefinitionParameter": { + "type": "object", + "description": "Properties of an Environment Definition parameter", + "properties": { + "id": { + "type": "string", + "description": "Unique ID of the parameter" + }, + "name": { + "type": "string", + "description": "Display name of the parameter" + }, + "description": { + "type": "string", + "description": "Description of the parameter" + }, + "default": { + "type": "string", + "description": "Default value of the parameter" + }, + "type": { + "description": "A string of one of the basic JSON types (number, integer, array, object, boolean, string)", + "$ref": "#/definitions/ParameterType" + }, + "readOnly": { + "type": "boolean", + "description": "Whether or not this parameter is read-only. If true, default should have a value." + }, + "required": { + "type": "boolean", + "description": "Whether or not this parameter is required" + }, + "allowed": { + "type": "array", + "items": { + "type": "string" + }, + "minItems": 1, + "uniqueItems": true, + "description": "An array of allowed values" + } + }, + "required": [ + "id", + "type", + "required" + ] + }, + "EnvironmentTypeListResult": { + "description": "Result of the environment type list operation.", + "type": "object", + "properties": { + "value": { + "description": "Current page of results.", + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentType" + } + }, + "nextLink": { + "description": "URL to get the next set of results if there are any.", + "type": "string" + } + }, + "required": [ + "value" + ] + }, + "EnvironmentType": { + "description": "Properties of an environment type.", + "type": "object", + "properties": { + "uri": { + "description": "The unique URI of the environment type", + "type": "string" + }, + "name": { + "description": "Name of the environment type", + "type": "string" + }, + "deploymentTargetId": { + "description": "The ID of a subscription or management group that the environment type will be mapped to. The environment's resources will be deployed into this subscription or management group.", + "type": "string" + }, + "status": { + "description": "Indicates whether this environment type is enabled for use in this project.", + "$ref": "#/definitions/EnvironmentTypeEnableStatus" + }, + "displayName": { + "type": "string", + "description": "Display name of the environment type." + } + }, + "required": [ + "uri", + "name", + "deploymentTargetId", + "status" + ] + }, + "EnvironmentTypeEnableStatus": { + "description": "Indicates whether an environment type is enabled for use in a project.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "EnvironmentTypeEnableStatus", + "modelAsString": true, + "values": [ + { + "value": "Enabled", + "description": "The environment type is enabled for use in the project." + }, + { + "value": "Disabled", + "description": "The environment type is not enabled for use in the project." + } + ] + } + }, + "ParameterType": { + "type": "string", + "enum": [ + "array", + "boolean", + "integer", + "number", + "object", + "string" + ], + "description": "The type of data a parameter accepts.", + "x-ms-enum": { + "name": "ParameterType", + "modelAsString": true, + "values": [ + { + "value": "array", + "description": "The parameter accepts an array of values." + }, + { + "value": "boolean", + "description": "The parameter accepts a boolean value." + }, + { + "value": "integer", + "description": "The parameter accepts an integer value." + }, + { + "value": "number", + "description": "The parameter accepts a number value." + }, + { + "value": "object", + "description": "The parameter accepts an object value." + }, + { + "value": "string", + "description": "The parameter accepts a string value." + } + ] + } + }, + "EnvironmentOperationListResult": { + "type": "object", + "description": "The action results list result.", + "properties": { + "value": { + "description": "The current page of results.", + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentOperation" + } + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "required": [ + "value" + ] + }, + "EnvironmentOperation": { + "type": "object", + "description": "Information about an operation on an environment.", + "discriminator": "kind", + "properties": { + "uri": { + "description": "The unique URI for the environment operation.", + "type": "string" + }, + "operationId": { + "description": "Unique identifier for the environment operation.", + "type": "string" + }, + "kind": { + "description": "The kind of operation that occurred.", + "$ref": "#/definitions/EnvironmentOperationKind" + }, + "status": { + "description": "The operation status.", + "$ref": "#/definitions/EnvironmentOperationStatus" + }, + "createdByObjectId": { + "description": "The object ID of the actor which initiated the operation.", + "type": "string" + }, + "startTime": { + "description": "The time the operation started.", + "type": "string", + "format": "date-time" + }, + "endTime": { + "description": "The time the operation finished.", + "type": "string", + "format": "date-time" + }, + "environmentParameters": { + "type": "object", + "description": "Parameters object for the environment at the time of the operation." + }, + "error": { + "description": "Provisioning or operation error details. Populated only for error states.", + "$ref": "devcenter.json#/definitions/CloudErrorBody" + } + }, + "required": [ + "uri", + "operationId", + "kind", + "status" + ] + }, + "EnvironmentOperationKind": { + "type": "string", + "enum": [ + "Deploy", + "Delete" + ], + "description": "The type of environment operation.", + "x-ms-enum": { + "name": "EnvironmentOperationKind", + "modelAsString": true, + "values": [ + { + "value": "Deploy", + "description": "The operation represents a deployment." + }, + { + "value": "Delete", + "description": "The operation represents a delete." + } + ] + } + }, + "EnvironmentOperationStatus": { + "type": "string", + "enum": [ + "NotStarted", + "Running", + "Succeeded", + "Canceled", + "Failed" + ], + "description": "The status of an environment operation.", + "x-ms-enum": { + "name": "EnvironmentOperationStatus", + "modelAsString": true, + "values": [ + { + "value": "NotStarted", + "description": "The operation has not started." + }, + { + "value": "Running", + "description": "The operation is running." + }, + { + "value": "Succeeded", + "description": "The operation succeeded." + }, + { + "value": "Canceled", + "description": "The operation was canceled." + }, + { + "value": "Failed", + "description": "The operation failed." + } + ] + } + }, + "EnvironmentDeployOperation": { + "type": "object", + "description": "Information about a deploy operation on an environment.", + "x-ms-discriminator-value": "Deploy", + "allOf": [ + { + "$ref": "#/definitions/EnvironmentOperation" + } + ] + }, + "EnvironmentDeleteOperation": { + "type": "object", + "description": "Information about a delete operation on an environment.", + "x-ms-discriminator-value": "Delete", + "allOf": [ + { + "$ref": "#/definitions/EnvironmentOperation" + } + ] + } + }, + "parameters": { + "EnvironmentNameParameter": { + "name": "environmentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63, + "description": "The name of the environment.", + "x-ms-parameter-location": "method" + }, + "EnvironmentDefinitionNameParameter": { + "name": "definitionName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63, + "description": "The name of the environment definition", + "x-ms-parameter-location": "method" + }, + "EnvironmentOperationIdParameter": { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63, + "description": "The id of the operation on an environment.", + "x-ms-parameter-location": "method" + }, + "EnvironmentActionNameParameter": { + "name": "actionName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$", + "minLength": 3, + "maxLength": 63, + "description": "The name of an action that will take place on an Environment.", + "x-ms-parameter-location": "method" + }, + "EnvironmentActionDelayUntilParameter": { + "name": "until", + "description": "The time to delay the Environment action until.", + "required": true, + "type": "string", + "format": "date-time", + "in": "query", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Catalogs_Get.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Catalogs_Get.json new file mode 100644 index 000000000000..7f91dec79ef1 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Catalogs_Get.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "catalogName": "foo" + }, + "responses": { + "200": { + "body": { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/catalogs/foo", + "name": "foo" + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Catalogs_ListByProject.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Catalogs_ListByProject.json new file mode 100644 index 000000000000..bc6309474401 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Catalogs_ListByProject.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/catalogs/foo", + "name": "foo" + } + ] + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxActions_Delay.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxActions_Delay.json new file mode 100644 index 000000000000..27665e2b769e --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxActions_Delay.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "devBoxName": "myDevBox", + "actionName": "schedule-default", + "until": "2022-09-30T17:00:00Z" + }, + "responses": { + "200": { + "body": { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/b08e39b4-2ac6-4465-a35e-48322efb0f98/devboxes/MyDevBox/actions/schedule-default", + "name": "schedule-default", + "actionType": "Stop", + "sourceUri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/pools/myPool/schedules/default", + "sourceId": "/projects/myProject/pools/myPool/schedules/default", + "sourceType": "Schedule", + "suspendedUntil": "2022-09-30T17:00:00Z", + "next": { + "scheduledTime": "2022-09-30T17:00:00Z" + } + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxActions_DelayMultiple.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxActions_DelayMultiple.json new file mode 100644 index 000000000000..f690fcb6d23a --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxActions_DelayMultiple.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "devBoxName": "myDevBox", + "until": "2022-09-30T17:00:00Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/b08e39b4-2ac6-4465-a35e-48322efb0f98/devboxes/MyDevBox/actions/schedule-default", + "name": "schedule-default", + "result": "Succeeded", + "action": { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/b08e39b4-2ac6-4465-a35e-48322efb0f98/devboxes/MyDevBox/actions/schedule-default", + "name": "schedule-default", + "actionType": "Stop", + "sourceId": "/projects/myProject/pools/myPool/schedules/default", + "sourceUri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/pools/myPool/schedules/default", + "sourceType": "Schedule", + "suspendedUntil": "2022-09-30T17:00:00Z", + "next": { + "scheduledTime": "2022-09-30T17:00:00Z" + } + } + }, + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/b08e39b4-2ac6-4465-a35e-48322efb0f98/devboxes/MyDevBox/actions/idle-hibernateondisconnect", + "name": "idle-hibernateondisconnect", + "result": "Succeeded", + "action": { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/b08e39b4-2ac6-4465-a35e-48322efb0f98/devboxes/MyDevBox/actions/idle-hibernateondisconnect", + "name": "idle-hibernateondisconnect", + "actionType": "Stop", + "sourceId": "/projects/myProject/pools/myPool", + "sourceUri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/pools/myPool", + "sourceType": "Pool", + "suspendedUntil": "2022-09-30T17:00:00Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxActions_DelayMultipleWithError.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxActions_DelayMultipleWithError.json new file mode 100644 index 000000000000..e1114e6d379f --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxActions_DelayMultipleWithError.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "devBoxName": "myDevBox", + "until": "2022-09-30T17:00:00Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/b08e39b4-2ac6-4465-a35e-48322efb0f98/devboxes/MyDevBox/actions/schedule-default", + "name": "schedule-default", + "result": "Failed", + "error": { + "code": "DelayOverMaxTime", + "message": "The schedule cannot be delayed more than 8 hours from the original invocation time." + } + }, + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/b08e39b4-2ac6-4465-a35e-48322efb0f98/devboxes/MyDevBox/actions/idle-hibernateondisconnect", + "name": "idle-hibernateondisconnect", + "result": "Succeeded", + "action": { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/b08e39b4-2ac6-4465-a35e-48322efb0f98/devboxes/MyDevBox/actions/idle-hibernateondisconnect", + "name": "idle-hibernateondisconnect", + "actionType": "Stop", + "sourceId": "/projects/myProject/pools/myPool", + "sourceUri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/pools/myPool", + "sourceType": "Pool", + "suspendedUntil": "2022-09-30T17:00:00Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxActions_Get.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxActions_Get.json new file mode 100644 index 000000000000..c1babb03feef --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxActions_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "devBoxName": "myDevBox", + "actionName": "schedule-default" + }, + "responses": { + "200": { + "body": { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/b08e39b4-2ac6-4465-a35e-48322efb0f98/devboxes/MyDevBox/actions/schedule-default", + "name": "schedule-default", + "actionType": "Stop", + "sourceId": "/projects/myProject/pools/myPool/schedules/default", + "sourceUri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/pools/myPool/schedules/default", + "sourceType": "Schedule", + "next": { + "scheduledTime": "2022-09-30T17:00:00Z" + } + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxActions_List.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxActions_List.json new file mode 100644 index 000000000000..b513c7e29d6b --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxActions_List.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "devBoxName": "myDevBox" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/b08e39b4-2ac6-4465-a35e-48322efb0f98/devboxes/MyDevBox/actions/idle-hibernateondisconnect", + "name": "idle-hibernateondisconnect", + "actionType": "Stop", + "sourceId": "/projects/myProject/pools/myPool", + "sourceUri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/pools/myPool", + "sourceType": "Pool", + "next": { + "scheduledTime": "2022-09-30T15:23:00Z" + } + }, + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/b08e39b4-2ac6-4465-a35e-48322efb0f98/devboxes/MyDevBox/actions/schedule-default", + "name": "schedule-default", + "actionType": "Stop", + "sourceId": "/projects/myProject/pools/myPool/schedules/default", + "sourceUri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/pools/myPool/schedules/default", + "sourceType": "Schedule", + "suspendedUntil": "2022-09-30T17:00:00Z", + "next": { + "scheduledTime": "2022-09-30T17:00:00Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxActions_Skip.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxActions_Skip.json new file mode 100644 index 000000000000..e6b9b046a6c8 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxActions_Skip.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "devBoxName": "myDevBox", + "actionName": "schedule-default" + }, + "responses": { + "204": {} + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxOperations_Get.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxOperations_Get.json new file mode 100644 index 000000000000..f0c3a25c3554 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxOperations_Get.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "devBoxName": "myDevBox", + "operationId": "f5dbdfab-fa0e-4831-8d13-25359aa5e680" + }, + "responses": { + "200": { + "body": { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/cf849cb0-3a05-4059-84b4-40c16abb1e93/devBoxes/myDevBox/operations/f5dbdfab-fa0e-4831-8d13-25359aa5e680", + "operationId": "f5dbdfab-fa0e-4831-8d13-25359aa5e680", + "status": "Succeeded", + "kind": "Start", + "createdByObjectId": "cf849cb0-3a05-4059-84b4-40c16abb1e93", + "startTime": "2022-09-06T16:58:51.7229492+00:00", + "endTime": "2022-09-06T16:59:51.7229492+00:00" + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxOperations_List.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxOperations_List.json new file mode 100644 index 000000000000..c075dcc3bba8 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxOperations_List.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "devBoxName": "myDevBox" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/cf849cb0-3a05-4059-84b4-40c16abb1e93/devBoxes/myDevBox/operations/f5dbdfab-fa0e-4831-8d13-25359aa5e680", + "operationId": "f5dbdfab-fa0e-4831-8d13-25359aa5e680", + "status": "Succeeded", + "kind": "Start", + "createdByObjectId": "cf849cb0-3a05-4059-84b4-40c16abb1e93", + "startTime": "2022-09-06T16:58:51.7229492+00:00", + "endTime": "2022-09-06T16:59:51.7229492+00:00" + }, + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/cf849cb0-3a05-4059-84b4-40c16abb1e93/devBoxes/myDevBox/operations/a6eb12ee-daa1-2215-9c44-63618dc2a781", + "operationId": "a6eb12ee-daa1-2215-9c44-63618dc2a781", + "status": "Succeeded", + "kind": "Repair", + "createdByObjectId": "cf849cb0-3a05-4059-84b4-40c16abb1e93", + "startTime": "2022-09-10T19:31:20.7229492+00:00", + "endTime": "2022-09-10T19:57:41.7229492+00:00", + "result": { + "code": "ConnectivityFixApplied", + "message": "We resolved some connectivity issues with your Dev Box.", + "repairOutcome": "FixApplied" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_Create.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_Create.json new file mode 100644 index 000000000000..8329c5c20ef8 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_Create.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "devBoxName": "MyDevBox", + "body": { + "poolName": "LargeDevWorkStationPool" + } + }, + "responses": { + "200": { + "body": { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/b08e39b4-2ac6-4465-a35e-48322efb0f98/devboxes/MyDevBox", + "name": "MyDevBox", + "provisioningState": "Succeeded", + "projectName": "ContosoProject", + "poolName": "LargeDevWorkStationPool", + "location": "centralus", + "osType": "Windows", + "user": "b08e39b4-2ac6-4465-a35e-48322efb0f98", + "hardwareProfile": { + "vCPUs": 8, + "memoryGB": 32 + }, + "storageProfile": { + "osDisk": { + "diskSizeGB": 1024 + } + }, + "hibernateSupport": "Enabled", + "imageReference": { + "name": "DevImage", + "version": "1.0.0", + "publishedDate": "2022-03-01T00:13:23.323Z" + } + } + }, + "201": { + "headers": { + "Location": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/operationstatuses/786a823c-8037-48ab-89b8-8599901e67d0", + "Operation-Location": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/operationstatuses/786a823c-8037-48ab-89b8-8599901e67d0" + }, + "body": { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/b08e39b4-2ac6-4465-a35e-48322efb0f98/devboxes/MyDevBox", + "name": "MyDevBox", + "provisioningState": "Creating", + "projectName": "ContosoProject", + "poolName": "LargeDevWorkStationPool", + "location": "centralus", + "osType": "Windows", + "user": "b08e39b4-2ac6-4465-a35e-48322efb0f98", + "hardwareProfile": { + "vCPUs": 8, + "memoryGB": 32 + }, + "storageProfile": { + "osDisk": { + "diskSizeGB": 1024 + } + }, + "hibernateSupport": "Enabled", + "imageReference": { + "name": "DevImage", + "version": "1.0.0", + "publishedDate": "2022-03-01T00:13:23.323Z" + } + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_Delete.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_Delete.json new file mode 100644 index 000000000000..b957d3b2f4a6 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_Delete.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "devBoxName": "MyDevBox" + }, + "responses": { + "202": { + "headers": { + "Location": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/operationstatuses/786a823c-8037-48ab-89b8-8599901e67d0", + "Operation-Location": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/operationstatuses/786a823c-8037-48ab-89b8-8599901e67d0" + }, + "body": { + "id": "/projects/myProject/operationstatuses/786a823c-8037-48ab-89b8-8599901e67d0", + "name": "786a823c-8037-48ab-89b8-8599901e67d0", + "status": "Running", + "startTime": "2023-02-01T12:43:54.122Z" + } + }, + "204": {} + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_Get.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_Get.json new file mode 100644 index 000000000000..112b53a275b8 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_Get.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "devBoxName": "MyDevBox" + }, + "responses": { + "200": { + "body": { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/b08e39b4-2ac6-4465-a35e-48322efb0f98/devboxes/MyDevBox", + "name": "MyDevBox", + "provisioningState": "Succeeded", + "projectName": "ContosoProject", + "poolName": "LargeDevWorkStationPool", + "location": "centralus", + "osType": "Windows", + "user": "b08e39b4-2ac6-4465-a35e-48322efb0f98", + "hardwareProfile": { + "vCPUs": 8, + "memoryGB": 32 + }, + "storageProfile": { + "osDisk": { + "diskSizeGB": 1024 + } + }, + "hibernateSupport": "Enabled", + "imageReference": { + "name": "DevImage", + "version": "1.0.0", + "publishedDate": "2022-03-01T00:13:23.323Z" + } + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_GetRemoteConnection.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_GetRemoteConnection.json new file mode 100644 index 000000000000..0be242281c8d --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_GetRemoteConnection.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "devBoxName": "MyDevBox" + }, + "responses": { + "200": { + "body": { + "webUrl": "https://connectionUrl" + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_List.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_List.json new file mode 100644 index 000000000000..b4c578255bb8 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_List.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "api-version": "2024-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/b08e39b4-2ac6-4465-a35e-48322efb0f98/devboxes/MyDevBox", + "name": "MyDevBox", + "provisioningState": "Succeeded", + "projectName": "ContosoProject", + "poolName": "LargeDevWorkStationPool", + "location": "centralus", + "osType": "Windows", + "user": "b08e39b4-2ac6-4465-a35e-48322efb0f98", + "hardwareProfile": { + "vCPUs": 8, + "memoryGB": 32 + }, + "storageProfile": { + "osDisk": { + "diskSizeGB": 1024 + } + }, + "hibernateSupport": "Enabled", + "imageReference": { + "name": "DevImage", + "version": "1.0.0", + "publishedDate": "2022-03-01T00:13:23.323Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_ListByUserByProject.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_ListByUserByProject.json new file mode 100644 index 000000000000..0e1201c583b9 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_ListByUserByProject.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/b08e39b4-2ac6-4465-a35e-48322efb0f98/devboxes/MyDevBox", + "name": "MyDevBox", + "provisioningState": "Succeeded", + "projectName": "ContosoProject", + "poolName": "LargeDevWorkStationPool", + "location": "centralus", + "osType": "Windows", + "user": "b08e39b4-2ac6-4465-a35e-48322efb0f98", + "hardwareProfile": { + "vCPUs": 8, + "memoryGB": 32 + }, + "storageProfile": { + "osDisk": { + "diskSizeGB": 1024 + } + }, + "hibernateSupport": "Enabled", + "imageReference": { + "name": "DevImage", + "version": "1.0.0", + "publishedDate": "2022-03-01T00:13:23.323Z" + } + } + ] + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_Repair.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_Repair.json new file mode 100644 index 000000000000..5a061b9e3db5 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_Repair.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "devBoxName": "MyDevBox" + }, + "responses": { + "202": { + "headers": { + "Location": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/operationstatuses/786a823c-8037-48ab-89b8-8599901e67d0", + "Operation-Location": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/operationstatuses/786a823c-8037-48ab-89b8-8599901e67d0" + }, + "body": { + "id": "/projects/myProject/operationstatuses/786a823c-8037-48ab-89b8-8599901e67d0", + "name": "786a823c-8037-48ab-89b8-8599901e67d0", + "status": "Running", + "startTime": "2023-02-01T12:43:54.122Z" + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_Restart.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_Restart.json new file mode 100644 index 000000000000..5a061b9e3db5 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_Restart.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "devBoxName": "MyDevBox" + }, + "responses": { + "202": { + "headers": { + "Location": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/operationstatuses/786a823c-8037-48ab-89b8-8599901e67d0", + "Operation-Location": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/operationstatuses/786a823c-8037-48ab-89b8-8599901e67d0" + }, + "body": { + "id": "/projects/myProject/operationstatuses/786a823c-8037-48ab-89b8-8599901e67d0", + "name": "786a823c-8037-48ab-89b8-8599901e67d0", + "status": "Running", + "startTime": "2023-02-01T12:43:54.122Z" + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_Start.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_Start.json new file mode 100644 index 000000000000..5a061b9e3db5 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_Start.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "devBoxName": "MyDevBox" + }, + "responses": { + "202": { + "headers": { + "Location": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/operationstatuses/786a823c-8037-48ab-89b8-8599901e67d0", + "Operation-Location": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/operationstatuses/786a823c-8037-48ab-89b8-8599901e67d0" + }, + "body": { + "id": "/projects/myProject/operationstatuses/786a823c-8037-48ab-89b8-8599901e67d0", + "name": "786a823c-8037-48ab-89b8-8599901e67d0", + "status": "Running", + "startTime": "2023-02-01T12:43:54.122Z" + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_Stop.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_Stop.json new file mode 100644 index 000000000000..1eff046d0827 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/DevBoxes_Stop.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "devBoxName": "MyDevBox", + "hibernate": "true" + }, + "responses": { + "202": { + "headers": { + "Location": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/operationstatuses/786a823c-8037-48ab-89b8-8599901e67d0", + "Operation-Location": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/operationstatuses/786a823c-8037-48ab-89b8-8599901e67d0" + }, + "body": { + "id": "/projects/myProject/operationstatuses/786a823c-8037-48ab-89b8-8599901e67d0", + "name": "786a823c-8037-48ab-89b8-8599901e67d0", + "status": "Running", + "startTime": "2023-02-01T12:43:54.122Z" + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentActions_Delay.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentActions_Delay.json new file mode 100644 index 000000000000..fbc08d677c42 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentActions_Delay.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "environmentName": "myEnv", + "actionName": "default", + "until": "2022-09-30T17:00:00Z" + }, + "responses": { + "200": { + "body": { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/b08e39b4-2ac6-4465-a35e-48322efb0f98/environments/MyEnv/actions/default", + "name": "default", + "actionType": "Delete", + "next": { + "scheduledTime": "2023-09-30T17:00:00Z" + }, + "lastModifiedBy": "b08e39b4-2ac6-4465-a35e-48322efb0f98", + "lastModifiedAt": "2023-09-10T17:00:00Z" + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentActions_Get.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentActions_Get.json new file mode 100644 index 000000000000..c1990e648722 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentActions_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "environmentName": "myEnvironment", + "actionName": "default" + }, + "responses": { + "200": { + "body": { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/b08e39b4-2ac6-4465-a35e-48322efb0f98/environments/MyEnv/actions/default", + "name": "default", + "actionType": "Delete", + "next": { + "scheduledTime": "2023-09-30T17:00:00Z" + }, + "lastModifiedBy": "b08e39b4-2ac6-4465-a35e-48322efb0f98", + "lastModifiedAt": "2023-09-10T17:00:00Z" + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentActions_List.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentActions_List.json new file mode 100644 index 000000000000..d97cb066fa41 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentActions_List.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "environmentName": "myEnvironment" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/b08e39b4-2ac6-4465-a35e-48322efb0f98/environments/MyEnv/actions/default", + "name": "default", + "actionType": "Delete", + "next": { + "scheduledTime": "2023-09-30T17:00:00Z" + }, + "lastModifiedBy": "b08e39b4-2ac6-4465-a35e-48322efb0f98", + "lastModifiedAt": "2023-09-10T17:00:00Z" + }, + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/b08e39b4-2ac6-4465-a35e-48322efb0f98/environments/MyEnv/actions/expire", + "name": "expire", + "actionType": "Delete", + "next": { + "scheduledTime": "2023-10-30T17:00:00Z" + }, + "lastModifiedBy": "b08e39b4-2ac6-4465-a35e-48322efb0f98", + "lastModifiedAt": "2023-09-20T17:00:00Z" + } + ] + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentActions_Skip.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentActions_Skip.json new file mode 100644 index 000000000000..a61f86394afd --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentActions_Skip.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "environmentName": "myEnv", + "userId": "me", + "actionName": "default", + "body": { + "actionType": "Delete", + "next": { + "scheduledTime": "2023-09-30T17:00:00Z" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentDefinitions_Get.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentDefinitions_Get.json new file mode 100644 index 000000000000..5a57202f6d71 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentDefinitions_Get.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "catalogName": "myCatalog", + "definitionName": "foo" + }, + "responses": { + "200": { + "body": { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/catalogs/myCatalog/environmentDefinitions/foo", + "id": "/projects/myProject/catalogs/myCatalog/environmentDefinitions/foo", + "name": "foo", + "catalogName": "myCatalog", + "description": "This environment definition is just for example purposes.", + "parameters": [ + { + "id": "functionAppRuntime", + "name": "Function App Runtime", + "type": "string", + "required": true, + "default": "dotnet", + "allowed": [ + "node", + "dotnet", + "java" + ] + }, + { + "id": "storageAccountType", + "name": "Storage Account Type", + "type": "string", + "required": true, + "default": "Standard_LRS", + "allowed": [ + "Standard_LRS", + "Standard_GRS", + "Standard_RAGRS" + ] + }, + { + "id": "httpsOnly", + "name": "HTTPS only", + "type": "boolean", + "default": "true", + "readOnly": true, + "required": true + } + ], + "parametersSchema": "{\"type\":\"object\",\"properties\":{\"functionAppRuntime\":{\"$id\":\"functionAppRuntime\",\"value\":\"dotnet\",\"displayName\":\"Function App Runtime\",\"type\":\"string\",\"enum\":[\"node\",\"dotnet\",\"java\"]},\"storageAccountType\":{\"$id\":\"storageAccountType\",\"value\":\"Standard_LRS\",\"displayName\":\"Storage Account Type\",\"type\":\"string\",\"enum\":[\"Standard_LRS\",\"Standard_GRS\",\"Standard_RAGRS\"]},\"httpsOnly\":{\"$id\":\"httpsOnly\",\"value\":true,\"displayName\":\"HTTPS only\",\"type\":\"boolean\"}},\"required\":[\"functionAppRuntime\",\"storageAccountType\"]}", + "templatePath": "azuredeploy.json" + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentDefinitions_ListByCatalog.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentDefinitions_ListByCatalog.json new file mode 100644 index 000000000000..64e24ce5b947 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentDefinitions_ListByCatalog.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "catalogName": "myCatalog" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/catalogs/myCatalog/environmentDefinitions/foo", + "id": "/projects/myProject/catalogs/myCatalog/environmentDefinitions/foo", + "name": "foo", + "catalogName": "myCatalog", + "description": "This environment definition is just for example purposes.", + "parameters": [ + { + "id": "functionAppRuntime", + "name": "Function App Runtime", + "type": "string", + "required": true, + "default": "dotnet", + "allowed": [ + "node", + "dotnet", + "java" + ] + }, + { + "id": "storageAccountType", + "name": "Storage Account Type", + "type": "string", + "required": true, + "default": "Standard_LRS", + "allowed": [ + "Standard_LRS", + "Standard_GRS", + "Standard_RAGRS" + ] + }, + { + "id": "httpsOnly", + "name": "HTTPS only", + "type": "boolean", + "default": "true", + "readOnly": true, + "required": true + } + ], + "parametersSchema": "{\"type\":\"object\",\"properties\":{\"functionAppRuntime\":{\"$id\":\"functionAppRuntime\",\"value\":\"dotnet\",\"displayName\":\"Function App Runtime\",\"type\":\"string\",\"enum\":[\"node\",\"dotnet\",\"java\"]},\"storageAccountType\":{\"$id\":\"storageAccountType\",\"value\":\"Standard_LRS\",\"displayName\":\"Storage Account Type\",\"type\":\"string\",\"enum\":[\"Standard_LRS\",\"Standard_GRS\",\"Standard_RAGRS\"]},\"httpsOnly\":{\"$id\":\"httpsOnly\",\"value\":true,\"displayName\":\"HTTPS only\",\"type\":\"boolean\"}},\"required\":[\"functionAppRuntime\",\"storageAccountType\"]}", + "templatePath": "azuredeploy.json" + }, + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/catalogs/myCatalog/environmentDefinitions/bar", + "id": "/projects/myProject/catalogs/myCatalog/environmentDefinitions/bar", + "name": "bar", + "catalogName": "myCatalog", + "description": "This environment definition is just for example purposes.", + "templatePath": "azuredeploy.json" + } + ] + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentDefinitions_ListByProject.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentDefinitions_ListByProject.json new file mode 100644 index 000000000000..06d11d265583 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentDefinitions_ListByProject.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/catalogs/myCatalog/environmentDefinitions/foo", + "id": "/projects/myProject/catalogs/myCatalog/environmentDefinitions/foo", + "name": "foo", + "catalogName": "myCatalog", + "description": "This environment definition is just for example purposes.", + "parameters": [ + { + "id": "functionAppRuntime", + "name": "Function App Runtime", + "type": "string", + "required": true, + "default": "dotnet", + "allowed": [ + "node", + "dotnet", + "java" + ] + }, + { + "id": "storageAccountType", + "name": "Storage Account Type", + "type": "string", + "required": true, + "default": "Standard_LRS", + "allowed": [ + "Standard_LRS", + "Standard_GRS", + "Standard_RAGRS" + ] + }, + { + "id": "httpsOnly", + "name": "HTTPS only", + "type": "boolean", + "default": "true", + "readOnly": true, + "required": true + } + ], + "parametersSchema": "{\"type\":\"object\",\"properties\":{\"functionAppRuntime\":{\"$id\":\"functionAppRuntime\",\"value\":\"dotnet\",\"displayName\":\"Function App Runtime\",\"type\":\"string\",\"enum\":[\"node\",\"dotnet\",\"java\"]},\"storageAccountType\":{\"$id\":\"storageAccountType\",\"value\":\"Standard_LRS\",\"displayName\":\"Storage Account Type\",\"type\":\"string\",\"enum\":[\"Standard_LRS\",\"Standard_GRS\",\"Standard_RAGRS\"]},\"httpsOnly\":{\"$id\":\"httpsOnly\",\"value\":true,\"displayName\":\"HTTPS only\",\"type\":\"boolean\"}},\"required\":[\"functionAppRuntime\",\"storageAccountType\"]}", + "templatePath": "azuredeploy.json" + }, + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/catalogs/myCatalog/environmentDefinitions/bar", + "id": "/projects/myProject/catalogs/myOtherCatalog/environmentDefinitions/bar", + "name": "bar", + "catalogName": "myOtherCatalog", + "description": "This environment definition is just for example purposes.", + "templatePath": "azuredeploy.json" + } + ] + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentOperations_GetByEnvironment.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentOperations_GetByEnvironment.json new file mode 100644 index 000000000000..f0c849dde9d6 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentOperations_GetByEnvironment.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "environmentName": "myEnvironment", + "operationId": "f5dbdfab-fa0e-4831-8d13-25359aa5e680" + }, + "responses": { + "200": { + "body": { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/cf849cb0-3a05-4059-84b4-40c16abb1e93/environments/myEnvironment/operations/f5dbdfab-fa0e-4831-8d13-25359aa5e680", + "operationId": "f5dbdfab-fa0e-4831-8d13-25359aa5e680", + "status": "Succeeded", + "kind": "Deploy", + "environmentParameters": { + "paramA": "valueA", + "paramB": "valueB" + }, + "createdByObjectId": "cf849cb0-3a05-4059-84b4-40c16abb1e93", + "startTime": "2022-09-06T16:58:51.7229492+00:00", + "endTime": "2022-09-06T16:59:51.7229492+00:00" + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentOperations_GetLogs.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentOperations_GetLogs.json new file mode 100644 index 000000000000..0d5e6ad7b0d6 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentOperations_GetLogs.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "environmentName": "myEnvironment", + "operationId": "f5dbdfab-fa0e-4831-8d13-25359aa5e680" + }, + "responses": { + "200": { + "body": "{file}" + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentOperations_ListByEnvironment.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentOperations_ListByEnvironment.json new file mode 100644 index 000000000000..4653fc40a9a1 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentOperations_ListByEnvironment.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "environmentName": "myEnvironment" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/cf849cb0-3a05-4059-84b4-40c16abb1e93/environments/myEnvironment/operations/f5dbdfab-fa0e-4831-8d13-25359aa5e680", + "operationId": "f5dbdfab-fa0e-4831-8d13-25359aa5e680", + "status": "Succeeded", + "kind": "Deploy", + "environmentParameters": { + "paramA": "valueA", + "paramB": "valueB" + }, + "createdByObjectId": "cf849cb0-3a05-4059-84b4-40c16abb1e93", + "startTime": "2022-09-06T16:58:51.7229492+00:00", + "endTime": "2022-09-06T16:59:51.7229492+00:00" + } + ] + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentTypes_ListByProject.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentTypes_ListByProject.json new file mode 100644 index 000000000000..a764fd7761dc --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/EnvironmentTypes_ListByProject.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/environmentTypes/devtestenv", + "name": "devtestenv", + "status": "Enabled", + "deploymentTargetId": "/subscriptions/00000000-0000-0000-0000-000000000000", + "displayName": "DevTestEnvironment" + } + ] + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Environments_CreateByEnvironmentDefinition.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Environments_CreateByEnvironmentDefinition.json new file mode 100644 index 000000000000..1354649c3adb --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Environments_CreateByEnvironmentDefinition.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "environmentName": "mydevenv", + "userId": "me", + "body": { + "environmentType": "DevTest", + "catalogName": "main", + "environmentDefinitionName": "helloworld", + "parameters": { + "functionAppRuntime": "node", + "storageAccountType": "Standard_LRS" + }, + "expirationDate": "2023-09-10T17:00:00Z" + } + }, + "responses": { + "201": { + "headers": { + "Location": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/operationstatuses/786a823c-8037-48ab-89b8-8599901e67d0", + "Operation-Location": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/operationstatuses/786a823c-8037-48ab-89b8-8599901e67d0" + }, + "body": { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/cf849cb0-3a05-4059-84b4-40c16abb1e93/environments/mydevenv", + "name": "mydevenv", + "environmentType": "DevTest", + "catalogName": "main", + "environmentDefinitionName": "helloworld", + "parameters": { + "functionAppRuntime": "node", + "storageAccountType": "Standard_LRS" + }, + "user": "b08e39b4-2ac6-4465-a35e-48322efb0f98", + "provisioningState": "Creating", + "expirationDate": "2023-09-10T17:00:00Z" + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Environments_Delete.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Environments_Delete.json new file mode 100644 index 000000000000..46495850ff55 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Environments_Delete.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "environmentName": "mydevenv" + }, + "responses": { + "202": { + "headers": { + "Location": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/operationstatuses/786a823c-8037-48ab-89b8-8599901e67d0", + "Operation-Location": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/operationstatuses/786a823c-8037-48ab-89b8-8599901e67d0" + }, + "body": { + "id": "/projects/myProject/operationstatuses/786a823c-8037-48ab-89b8-8599901e67d0", + "name": "786a823c-8037-48ab-89b8-8599901e67d0", + "status": "Running", + "startTime": "2023-02-01T12:43:54.122Z" + } + }, + "204": {} + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Environments_Get.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Environments_Get.json new file mode 100644 index 000000000000..d9e50a5311b1 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Environments_Get.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "environmentName": "mydevenv" + }, + "responses": { + "200": { + "body": { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/cf849cb0-3a05-4059-84b4-40c16abb1e93/environments/mydevenv", + "name": "mydevenv", + "environmentType": "DevTest", + "catalogName": "main", + "environmentDefinitionName": "helloworld", + "parameters": { + "functionAppRuntime": "node", + "storageAccountType": "Standard_LRS" + }, + "user": "b08e39b4-2ac6-4465-a35e-48322efb0f98", + "provisioningState": "Succeeded", + "resourceGroupId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg028321", + "expirationDate": "2023-09-10T17:00:00Z" + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Environments_GetOutputs.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Environments_GetOutputs.json new file mode 100644 index 000000000000..30f132695df8 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Environments_GetOutputs.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me", + "environmentName": "mydevenv" + }, + "responses": { + "200": { + "body": { + "outputs": { + "stringOutput": { + "type": "string", + "value": "Output1 value", + "sensitive": false + }, + "arrayOutput": { + "type": "array", + "value": [ + 1, + 2, + 3 + ], + "sensitive": false + }, + "boolOutput": { + "type": "bool", + "value": true, + "sensitive": false + }, + "intOutput": { + "type": "int", + "value": 1, + "sensitive": false + }, + "objectOutput": { + "type": "object", + "value": { + "name": "name", + "id": "id" + }, + "sensitive": false + } + } + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Environments_ListByProject.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Environments_ListByProject.json new file mode 100644 index 000000000000..49625071f33d --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Environments_ListByProject.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/cf849cb0-3a05-4059-84b4-40c16abb1e93/environments/mydevenv", + "name": "mydevenv", + "environmentType": "DevTest", + "catalogName": "main", + "environmentDefinitionName": "helloworld", + "parameters": { + "functionAppRuntime": "node", + "storageAccountType": "Standard_LRS" + }, + "user": "b08e39b4-2ac6-4465-a35e-48322efb0f98", + "provisioningState": "Succeeded", + "resourceGroupId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg028321", + "expirationDate": "2023-09-10T17:00:00Z" + } + ] + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Environments_ListByProjectByUser.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Environments_ListByProjectByUser.json new file mode 100644 index 000000000000..d6c2235df765 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Environments_ListByProjectByUser.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "userId": "me" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/cf849cb0-3a05-4059-84b4-40c16abb1e93/environments/mydevenv", + "name": "mydevenv", + "environmentType": "DevTest", + "catalogName": "main", + "environmentDefinitionName": "helloworld", + "parameters": { + "functionAppRuntime": "node", + "storageAccountType": "Standard_LRS" + }, + "user": "b08e39b4-2ac6-4465-a35e-48322efb0f98", + "provisioningState": "Succeeded", + "resourceGroupId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg028321", + "expirationDate": "2023-09-10T17:00:00Z" + } + ] + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Environments_Patch.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Environments_Patch.json new file mode 100644 index 000000000000..1e2076be4ec5 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Environments_Patch.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "environmentName": "mydevenv", + "userId": "me", + "body": { + "environmentType": "DevTest", + "catalogName": "main", + "environmentDefinitionName": "helloworld", + "expirationDate": "2023-09-10T17:00:00Z" + } + }, + "responses": { + "200": { + "body": { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/users/cf849cb0-3a05-4059-84b4-40c16abb1e93/environments/mydevenv", + "name": "mydevenv", + "environmentType": "DevTest", + "catalogName": "main", + "environmentDefinitionName": "helloworld", + "parameters": { + "functionAppRuntime": "node", + "storageAccountType": "Standard_LRS" + }, + "user": "b08e39b4-2ac6-4465-a35e-48322efb0f98", + "provisioningState": "Succeeded", + "expirationDate": "2023-09-10T17:00:00Z" + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Pools_Get.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Pools_Get.json new file mode 100644 index 000000000000..a71ac7a5ee59 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Pools_Get.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "api-version": "2024-02-01", + "poolName": "DevPool" + }, + "responses": { + "200": { + "body": { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/pools/LargeDevWorkStationPool", + "name": "LargeDevWorkStationPool", + "location": "centralus", + "osType": "Windows", + "hardwareProfile": { + "vCPUs": 8, + "memoryGB": 32 + }, + "storageProfile": { + "osDisk": { + "diskSizeGB": 1024 + } + }, + "hibernateSupport": "Enabled", + "imageReference": { + "name": "DevImage", + "version": "1.0.0", + "publishedDate": "2022-03-01T00:13:23.323Z" + }, + "stopOnDisconnect": { + "status": "Enabled", + "gracePeriodMinutes": 60 + }, + "healthStatus": "Healthy", + "displayName": "LargePool" + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Pools_List.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Pools_List.json new file mode 100644 index 000000000000..eecc02fdd3df --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Pools_List.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "api-version": "2024-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/pools/LargeDevWorkStationPool", + "name": "LargeDevWorkStationPool", + "location": "centralus", + "osType": "Windows", + "hardwareProfile": { + "vCPUs": 8, + "memoryGB": 32 + }, + "storageProfile": { + "osDisk": { + "diskSizeGB": 1024 + } + }, + "hibernateSupport": "Enabled", + "imageReference": { + "name": "DevImage", + "version": "1.0.0", + "publishedDate": "2022-03-01T00:13:23.323Z" + }, + "stopOnDisconnect": { + "status": "Enabled", + "gracePeriodMinutes": 60 + }, + "healthStatus": "Healthy", + "displayName": "LargePool" + }, + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/pools/SQLDevelopmentMachinePool", + "name": "SQLDevelopmentMachinePool", + "location": "southcentralus", + "osType": "Windows", + "hardwareProfile": { + "vCPUs": 16, + "memoryGB": 128 + }, + "storageProfile": { + "osDisk": { + "diskSizeGB": 1024 + } + }, + "hibernateSupport": "Enabled", + "imageReference": { + "name": "SqlDevImage", + "version": "1.0.0", + "publishedDate": "2022-03-01T00:13:23.323Z" + }, + "stopOnDisconnect": { + "status": "Enabled", + "gracePeriodMinutes": 60 + }, + "healthStatus": "Healthy", + "displayName": "SQLPool" + } + ] + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Projects_Get.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Projects_Get.json new file mode 100644 index 000000000000..8ebea78c0b3f --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Projects_Get.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject" + }, + "responses": { + "200": { + "body": { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/DevDiv", + "name": "DevDiv", + "description": "The developer division", + "displayName": "DeveloperDivision" + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Projects_ListByDevCenter.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Projects_ListByDevCenter.json new file mode 100644 index 000000000000..0f2e50e69cb0 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Projects_ListByDevCenter.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2024-02-01", + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject", + "name": "DevDiv", + "description": "The developer division", + "displayName": "DeveloperDivision" + } + ] + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Schedules_Get.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Schedules_Get.json new file mode 100644 index 000000000000..3a779d0a7025 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Schedules_Get.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "api-version": "2024-02-01", + "poolName": "DevPool", + "scheduleName": "default" + }, + "responses": { + "200": { + "body": { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/pools/DevPool/schedules/default", + "name": "default", + "sourceUri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/pools/DevPool", + "sourceType": "Pool", + "type": "StopDevBox", + "timeZone": "America/Los_Angeles", + "frequency": "Daily", + "time": "17:30" + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Schedules_List.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Schedules_List.json new file mode 100644 index 000000000000..6fab1ae11be0 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Schedules_List.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "poolName": "DevPool", + "api-version": "2024-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/pools/DevPool/schedules/default", + "name": "default", + "sourceUri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/pools/DevPool", + "sourceType": "Pool", + "type": "StopDevBox", + "timeZone": "America/Los_Angeles", + "frequency": "Daily", + "time": "17:30" + } + ] + } + } + } +} diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Schedules_ListByProject.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Schedules_ListByProject.json new file mode 100644 index 000000000000..e06d2e0c2247 --- /dev/null +++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/examples/Schedules_ListByProject.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "endpoint": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/", + "projectName": "myProject", + "api-version": "2024-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "uri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/pools/DevPool/schedules/default", + "name": "default", + "sourceUri": "https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/myProject/pools/DevPool", + "sourceType": "Pool", + "type": "StopDevBox", + "timeZone": "America/Los_Angeles", + "frequency": "Daily", + "time": "17:30" + } + ] + } + } + } +} diff --git a/specification/devcenter/data-plane/readme.md b/specification/devcenter/data-plane/readme.md index 22adcddd87c2..7464490abe4c 100644 --- a/specification/devcenter/data-plane/readme.md +++ b/specification/devcenter/data-plane/readme.md @@ -27,9 +27,23 @@ These are the global settings for the devcenter. ``` yaml openapi-type: data-plane azure-arm: false -tag: package-2023-10-01-preview +tag: package-2024-02-01 ``` +### Tag: 2024-02-01 + +These settings apply only when `--tag=package-2024-02-01` is specified on the command line. + +``` yaml $(tag) == 'package-2024-02-01' +input-file: + - Microsoft.DevCenter/stable/2024-02-01/devbox.json + - Microsoft.DevCenter/stable/2024-02-01/devcenter.json + - Microsoft.DevCenter/stable/2024-02-01/environments.json + +directive: + - suppress: HostParametersValidation + reason: Requires URL format for endpoint params, which violates R2003 and causes problems with codegen +``` ### Tag: package-2023-10-01-preview