Microsoft Azure Visual Studio Resource Provider Client

The Microsoft Azure Visual Studio Resource Provider Client is a tool that allows developers to access and manage resources within Azure using Visual Studio. With this client, developers can easily deploy, monitor, and scale their applications and services in the cloud. Additionally, they can leverage the integrated development environment capabilities of Visual Studio to streamline the development process.

OpenAPI Specification

visual-studio-resource-provider-client-openapi-original.yml Raw ↑
swagger: '2.0'
info:
  title: Microsoft Azure Visual Studio Resource Provider Client
  version: 2014-04-01-preview
  description: >-
    Use these APIs to manage Visual Studio Team Services resources through the
    Azure Resource Manager. All task operations conform to the HTTP/1.1 protocol
    specification and each operation returns an x-ms-request-id header that can
    be used to obtain information about the request. You must make sure that
    requests made to these resources are secure. For more information, see
    https://docs.microsoft.com/en-us/rest/api/index.
host: management.azure.com
schemes:
  - https
consumes:
  - application/json
produces:
  - application/json
securityDefinitions:
  azure_auth:
    type: oauth2
    description: Azure Active Directory OAuth2 Flow
    flow: implicit
    authorizationUrl: https://login.microsoftonline.com/common/oauth2/authorize
    scopes:
      user_impersonation: impersonate your user account
security:
  - azure_auth:
      - user_impersonation
paths:
  /providers/microsoft.visualstudio/operations:
    get:
      tags:
        - Operations
      summary: Microsoft Azure Operations List
      description: >-
        Gets the details of all operations possible on the
        Microsoft.VisualStudio resource provider.
      operationId: microsoftAzureOperationsList
      produces:
        - application/json
      responses:
        '200':
          description: >-
            The operation succeeded. The response contains the possible
            operations on the Microsoft.VisualStudio resource provider.
          schema:
            $ref: '#/definitions/OperationListResult'
      x-ms-examples:
        Get a list of operations for this resource provider:
          $ref: ./examples/GetOperations.json
  /subscriptions/{subscriptionId}/providers/microsoft.visualstudio/checkNameAvailability:
    post:
      tags:
        - Accounts
      summary: Microsoft Azure Accounts Checknameavailability
      description: >-
        Checks if the specified Visual Studio Team Services account name is
        available. Resource name can be either an account name or an account
        name and PUID.
      operationId: microsoftAzureAccountsChecknameavailability
      parameters:
        - $ref: '#/parameters/subscriptionIdParameter'
        - $ref: '#/parameters/apiVersionParameter'
        - in: body
          name: body
          description: Parameters describing the name to check availability for.
          required: true
          schema:
            $ref: '#/definitions/CheckNameAvailabilityParameter'
      responses:
        '200':
          description: >-
            The operation succeeded. The response contains the result of the
            name availability check.
          schema:
            $ref: '#/definitions/CheckNameAvailabilityResult'
      x-ms-examples:
        Check availability of an account name:
          $ref: ./examples/CheckNameAvailability.json
  /subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/microsoft.visualstudio/account:
    get:
      tags:
        - Accounts
      summary: Microsoft Azure Accounts Listbyresourcegroup
      description: >-
        Gets all Visual Studio Team Services account resources under the
        resource group linked to the specified Azure subscription.
      operationId: microsoftAzureAccountsListbyresourcegroup
      produces:
        - application/json
      parameters:
        - $ref: '#/parameters/resourceGroupNameParameter'
        - $ref: '#/parameters/subscriptionIdParameter'
        - $ref: '#/parameters/apiVersionParameter'
      responses:
        '200':
          description: >-
            The operation succeeded. The response contains the details of the
            Visual Studio Team Services account resources linked to the Azure
            subscription.
          schema:
            $ref: '#/definitions/AccountResourceListResult'
      x-ms-examples:
        Get a list of account resources in the resource group:
          $ref: ./examples/GetResources_List.json
  ? /subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/microsoft.visualstudio/account/{accountResourceName}/extension
  : get:
      tags:
        - Extensions
      summary: Microsoft Azure Extensions Listbyaccount
      description: >-
        Gets the details of the extension resources created within the resource
        group.
      operationId: microsoftAzureExtensionsListbyaccount
      produces:
        - application/json
      parameters:
        - $ref: '#/parameters/resourceGroupNameParameter'
        - $ref: '#/parameters/subscriptionIdParameter'
        - $ref: '#/parameters/apiVersionParameter'
        - in: path
          name: accountResourceName
          description: The name of the Visual Studio Team Services account resource.
          required: true
          type: string
      responses:
        '200':
          description: >-
            The operation succeeded. The response contains all extension
            resource details for the specified account.
          schema:
            $ref: '#/definitions/ExtensionResourceListResult'
      x-ms-examples:
        Get a list of extension resources within the resource group:
          $ref: ./examples/GetExtensionResources_List.json
  ? /subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/microsoft.visualstudio/account/{accountResourceName}/extension/{extensionResourceName}
  : put:
      tags:
        - Extensions
      summary: Microsoft Azure Extensions Create
      description: Registers the extension with a Visual Studio Team Services account.
      operationId: microsoftAzureExtensionsCreate
      parameters:
        - $ref: '#/parameters/resourceGroupNameParameter'
        - $ref: '#/parameters/subscriptionIdParameter'
        - $ref: '#/parameters/apiVersionParameter'
        - in: body
          name: body
          description: >-
            An object containing additional information related to the extension
            request.
          required: true
          schema:
            $ref: '#/definitions/ExtensionResourceRequest'
        - in: path
          name: accountResourceName
          description: The name of the Visual Studio Team Services account resource.
          required: true
          type: string
        - in: path
          name: extensionResourceName
          description: The name of the extension.
          required: true
          type: string
      responses:
        '200':
          description: >-
            The operation succeeded. The extension resource was created for the
            specified account.
          schema:
            $ref: '#/definitions/ExtensionResource'
      x-ms-examples:
        Create an extension resource:
          $ref: ./examples/CreateExtensionResource.json
    delete:
      tags:
        - Extensions
      summary: Microsoft Azure Extensions Delete
      description: >-
        Removes an extension resource registration for a Visual Studio Team
        Services account.
      operationId: microsoftAzureExtensionsDelete
      parameters:
        - $ref: '#/parameters/resourceGroupNameParameter'
        - $ref: '#/parameters/subscriptionIdParameter'
        - $ref: '#/parameters/apiVersionParameter'
        - in: path
          name: accountResourceName
          description: The name of the Visual Studio Team Services account resource.
          required: true
          type: string
        - in: path
          name: extensionResourceName
          description: The name of the extension.
          required: true
          type: string
      responses:
        '200':
          description: >-
            The operation succeeded. The extension resource has been deleted for
            the specified account.
      x-ms-examples:
        Delete an extension resource:
          $ref: ./examples/DeleteExtensionResource.json
    get:
      tags:
        - Extensions
      summary: Microsoft Azure Extensions Get
      description: >-
        Gets the details of an extension associated with a Visual Studio Team
        Services account resource.
      operationId: microsoftAzureExtensionsGet
      produces:
        - application/json
      parameters:
        - $ref: '#/parameters/resourceGroupNameParameter'
        - $ref: '#/parameters/subscriptionIdParameter'
        - $ref: '#/parameters/apiVersionParameter'
        - in: path
          name: accountResourceName
          description: The name of the Visual Studio Team Services account resource.
          required: true
          type: string
        - in: path
          name: extensionResourceName
          description: The name of the extension.
          required: true
          type: string
      responses:
        '200':
          description: >-
            The operation succeeded. The response contains the extension
            resource details for the specified account.
          schema:
            $ref: '#/definitions/ExtensionResource'
        '404':
          description: The specified extension has no plans defined.
      x-ms-examples:
        Get an extension resource:
          $ref: ./examples/GetExtensionResource.json
    patch:
      tags:
        - Extensions
      summary: Microsoft Azure Extensions Update
      description: >-
        Updates an existing extension registration for the Visual Studio Team
        Services account.
      operationId: microsoftAzureExtensionsUpdate
      parameters:
        - $ref: '#/parameters/resourceGroupNameParameter'
        - $ref: '#/parameters/subscriptionIdParameter'
        - $ref: '#/parameters/apiVersionParameter'
        - in: body
          name: body
          description: >-
            An object containing additional information related to the extension
            request.
          required: true
          schema:
            $ref: '#/definitions/ExtensionResourceRequest'
        - in: path
          name: accountResourceName
          description: The name of the Visual Studio Team Services account resource.
          required: true
          type: string
        - in: path
          name: extensionResourceName
          description: The name of the extension.
          required: true
          type: string
      responses:
        '200':
          description: >-
            The operation succeeded. The extension resource was updated for the
            specified account.
          schema:
            $ref: '#/definitions/ExtensionResource'
      x-ms-examples:
        Update an extension resource:
          $ref: ./examples/UpdateExtensionResource.json
  /subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/microsoft.visualstudio/account/{resourceName}:
    put:
      tags:
        - Accounts
      summary: Microsoft Azure Accounts Createorupdate
      description: Creates or updates a Visual Studio Team Services account resource.
      operationId: microsoftAzureAccountsCreateorupdate
      parameters:
        - $ref: '#/parameters/resourceGroupNameParameter'
        - $ref: '#/parameters/subscriptionIdParameter'
        - $ref: '#/parameters/apiVersionParameter'
        - in: body
          name: body
          description: The request data.
          required: true
          schema:
            $ref: '#/definitions/AccountResourceRequest'
        - in: path
          name: resourceName
          description: Name of the resource.
          required: true
          type: string
      responses:
        '200':
          description: >-
            The operation succeeded. The Visual Studio Team Services account
            resource was created or updated.
          schema:
            $ref: '#/definitions/AccountResource'
        '404':
          description: The Visual Studio Team Services account does not exist.
      x-ms-examples:
        Create an account resource:
          $ref: ./examples/CreateResource.json
    delete:
      tags:
        - Accounts
      summary: Microsoft Azure Accounts Delete
      description: Deletes a Visual Studio Team Services account resource.
      operationId: microsoftAzureAccountsDelete
      parameters:
        - $ref: '#/parameters/resourceGroupNameParameter'
        - $ref: '#/parameters/subscriptionIdParameter'
        - $ref: '#/parameters/apiVersionParameter'
        - in: path
          name: resourceName
          description: Name of the resource.
          required: true
          type: string
      responses:
        '200':
          description: >-
            The operation succeeded. The Visual Studio Team Services account
            resource was deleted.
      x-ms-examples:
        Delete an account resource:
          $ref: ./examples/DeleteResource.json
    get:
      tags:
        - Accounts
      summary: Microsoft Azure Accounts Get
      description: Gets the Visual Studio Team Services account resource details.
      operationId: microsoftAzureAccountsGet
      parameters:
        - $ref: '#/parameters/resourceGroupNameParameter'
        - $ref: '#/parameters/subscriptionIdParameter'
        - $ref: '#/parameters/apiVersionParameter'
        - in: path
          name: resourceName
          description: Name of the resource.
          required: true
          type: string
      responses:
        '200':
          description: >-
            The operation succeeded. The response contains the details of the
            Visual Studio Team Services account resource.
          schema:
            $ref: '#/definitions/AccountResource'
        '404':
          description: The Visual Studio Team Services account does not exist.
      x-ms-examples:
        Get an account resource:
          $ref: ./examples/GetResource.json
    patch:
      tags:
        - Accounts
      summary: Microsoft Azure Accounts Update
      description: Updates tags for Visual Studio Team Services account resource.
      operationId: microsoftAzureAccountsUpdate
      parameters:
        - $ref: '#/parameters/resourceGroupNameParameter'
        - $ref: '#/parameters/subscriptionIdParameter'
        - $ref: '#/parameters/apiVersionParameter'
        - in: body
          name: body
          description: The request data.
          required: true
          schema:
            $ref: '#/definitions/AccountTagRequest'
        - in: path
          name: resourceName
          description: Name of the resource.
          required: true
          type: string
      responses:
        '200':
          description: >-
            The operation succeeded. The Visual Studio Team Services account
            resource was updated.
          schema:
            $ref: '#/definitions/AccountResource'
        '404':
          description: The Visual Studio Team Services account does not exist.
      x-ms-examples:
        Create an account resource:
          $ref: ./examples/UpdateTags.json
  ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.visualstudio/account/{rootResourceName}/project
  : get:
      deprecated: true
      tags:
        - Projects
      summary: Microsoft Azure Projects Listbyresourcegroup
      description: >-
        Gets all Visual Studio Team Services project resources created in the
        specified Team Services account.
      operationId: microsoftAzureProjectsListbyresourcegroup
      parameters:
        - $ref: '#/parameters/resourceGroupNameParameter'
        - $ref: '#/parameters/subscriptionIdParameter'
        - $ref: '#/parameters/apiVersionParameter'
        - in: path
          name: rootResourceName
          description: Name of the Team Services account.
          required: true
          type: string
      responses:
        '200':
          description: >-
            The operation succeeded. The response contains the details of the
            Visual Studio Team Services project resources created in the
            specified Team Services account.
          schema:
            $ref: '#/definitions/ProjectResourceListResult'
      x-ms-examples:
        Get a list of project resources in the Team Services account:
          $ref: ./examples/GetProjectResources_List.json
  ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.visualstudio/account/{rootResourceName}/project/{resourceName}
  : put:
      deprecated: true
      tags:
        - Projects
      summary: Microsoft Azure Projects Create
      description: >-
        Creates a Team Services project in the collection with the specified
        name. 'VersionControlOption' and 'ProcessTemplateId' must be specified
        in the resource properties. Valid values for VersionControlOption: Git,
        Tfvc. Valid values for ProcessTemplateId:
        6B724908-EF14-45CF-84F8-768B5384DA45,
        ADCC42AB-9882-485E-A3ED-7678F01F66BC,
        27450541-8E31-4150-9947-DC59F998FC01 (these IDs correspond to Scrum,
        Agile, and CMMI process templates).
      operationId: microsoftAzureProjectsCreate
      parameters:
        - in: body
          name: body
          description: The request data.
          required: true
          schema:
            $ref: '#/definitions/ProjectResource'
        - $ref: '#/parameters/resourceGroupNameParameter'
        - $ref: '#/parameters/subscriptionIdParameter'
        - $ref: '#/parameters/apiVersionParameter'
        - in: path
          name: rootResourceName
          description: Name of the Team Services account.
          required: true
          type: string
        - in: path
          name: resourceName
          description: Name of the Team Services project.
          required: true
          type: string
        - in: query
          name: validating
          description: This parameter is ignored and should be set to an empty string.
          required: false
          type: string
      responses:
        '200':
          description: >-
            The operation succeeded. The response contains the details of the
            created or updated team project resource.
          schema:
            $ref: '#/definitions/ProjectResource'
        '202':
          description: >-
            The operation succeeded. A job to create the team project resource
            has been queued. The URI to monitor the status of the job is
            provided in the 'location' header.
      x-ms-long-running-operation: true
      x-ms-examples:
        Create a project resource:
          $ref: ./examples/CreateProjectResource.json
    get:
      deprecated: true
      tags:
        - Projects
      summary: Microsoft Azure Projects Get
      description: Gets the details of a Team Services project resource.
      operationId: microsoftAzureProjectsGet
      parameters:
        - $ref: '#/parameters/resourceGroupNameParameter'
        - $ref: '#/parameters/subscriptionIdParameter'
        - $ref: '#/parameters/apiVersionParameter'
        - in: path
          name: rootResourceName
          description: Name of the Team Services account.
          required: true
          type: string
        - in: path
          name: resourceName
          description: Name of the Team Services project.
          required: true
          type: string
      responses:
        '200':
          description: >-
            The operation succeeded. The response contains the details of the
            updated team project resource.
          schema:
            $ref: '#/definitions/ProjectResource'
        '404':
          description: The project or Azure subscription was not found.
      x-ms-examples:
        Get a project resource:
          $ref: ./examples/GetProjectResource.json
    patch:
      deprecated: true
      tags:
        - Projects
      summary: Microsoft Azure Projects Update
      description: Updates the tags of the specified Team Services project.
      operationId: microsoftAzureProjectsUpdate
      parameters:
        - $ref: '#/parameters/resourceGroupNameParameter'
        - $ref: '#/parameters/subscriptionIdParameter'
        - $ref: '#/parameters/apiVersionParameter'
        - in: body
          name: body
          description: The request data.
          required: true
          schema:
            $ref: '#/definitions/ProjectResource'
        - in: path
          name: rootResourceName
          description: Name of the Team Services account.
          required: true
          type: string
        - in: path
          name: resourceName
          description: Name of the Team Services project.
          required: true
          type: string
      responses:
        '200':
          description: >-
            The operation succeeded. The response contains the details of the
            updated team project resource.
          schema:
            $ref: '#/definitions/ProjectResource'
      x-ms-examples:
        Update a project resource:
          $ref: ./examples/UpdateProjectResource.json
  ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.visualstudio/account/{rootResourceName}/project/{resourceName}/subContainers/{subContainerName}/status
  : get:
      deprecated: true
      tags:
        - Projects
      summary: Microsoft Azure Projects Getjobstatus
      description: Gets the status of the project resource creation job.
      operationId: microsoftAzureProjectsGetjobstatus
      parameters:
        - $ref: '#/parameters/resourceGroupNameParameter'
        - $ref: '#/parameters/subscriptionIdParameter'
        - $ref: '#/parameters/apiVersionParameter'
        - in: path
          name: rootResourceName
          description: Name of the Team Services account.
          required: true
          type: string
        - in: path
          name: resourceName
          description: Name of the Team Services project.
          required: true
          type: string
        - in: path
          name: subContainerName
          description: This parameter should be set to the resourceName.
          required: true
          type: string
        - in: query
          name: operation
          description: The operation type. The only supported value is 'put'.
          required: true
          type: string
        - in: query
          name: jobId
          description: The job identifier.
          required: false
          type: string
          format: uuid
      responses:
        '200':
          description: >-
            The operation succeeded. The response contains the details of the
            newly created team project resource.
          schema:
            $ref: '#/definitions/ProjectResource'
        '202':
          description: The team project creation job is still running.
      x-ms-examples:
        Get the status of the project creation job:
          $ref: ./examples/GetProjectJobStatus.json
definitions:
  AccountResource:
    description: The response to an account resource GET request.
    type: object
    allOf:
      - $ref: '#/definitions/Resource'
    properties:
      properties:
        description: Resource properties.
        type: object
        additionalProperties:
          type: string
        x-ms-client-flatten: true
  AccountResourceListResult:
    description: The response to an account resource list GET request.
    type: object
    properties:
      value:
        description: Array of resource details.
        type: array
        items:
          $ref: '#/definitions/AccountResource'
  AccountTagRequest:
    description: >-
      The body of a Patch request to add tags to a Visual Studio account
      resource.
    type: object
    properties:
      tags:
        description: The custom tags of the resource.
        type: object
        additionalProperties:
          type: string
  AccountResourceRequest:
    description: The body of a PUT request to modify a Visual Studio account resource.
    type: object
    properties:
      accountName:
        description: The account name.
        type: string
      location:
        description: The Azure instance location.
        type: string
      operationType:
        description: The type of the operation.
        enum:
          - unknown
          - create
          - update
          - link
        x-ms-enum:
          name: AccountResourceRequestOperationType
      properties:
        description: The custom properties of the resource.
        type: object
        additionalProperties:
          type: string
        x-ms-client-flatten: true
      tags:
        description: The custom tags of the resource.
        type: object
        additionalProperties:
          type: string
  CheckNameAvailabilityParameter:
    description: The body of a POST request to check name availability.
    type: object
    properties:
      resourceName:
        description: The name of the resource to check availability for.
        type: string
      resourceType:
        description: The type of resource to check availability for.
        type: string
  CheckNameAvailabilityResult:
    description: The response to a name availability request.
    type: object
    properties:
      message:
        description: The message describing the detailed reason.
        type: string
      nameAvailable:
        description: The value which indicates whether the provided name is available.
        type: boolean
  ExtensionResource:
    description: The response to an extension resource GET request.
    type: object
    allOf:
      - $ref: '#/definitions/Resource'
    properties:
      plan:
        description: The extension plan that was purchased.
        $ref: '#/definitions/ExtensionResourcePlan'
      properties:
        description: Resource properties.
        type: object
        additionalProperties:
          type: string
  ExtensionResourceListResult:
    description: The response to an extension resource list GET request.
    type: object
    properties:
      value:
        description: Array of extension resource details.
        type: array
        items:
          $ref: '#/definitions/ExtensionResource'
  ExtensionResourcePlan:
    description: Plan data for an extension resource.
    type: object
    properties:
      name:
        description: Name of the plan.
        type: string
      product:
        description: Product name.
        type: string
      promotionCode:
        description: 'Optional: the promotion code associated with the plan.'
        type: string
      publisher:
        description: Name of the extension publisher.
        type: string
      version:
        description: A string that uniquely identifies the plan version.
        type: string
  ExtensionResourceRequest:
    description: The body of an extension resource PUT request.
    type: object
    properties:
      location:
        description: >-
          The Azure region of the Visual Studio account associated with this
          request (i.e 'southcentralus'.)
        type: string
      plan:
        description: >-
          Extended information about the plan being purchased for this extension
          resource.
        $ref: '#/definitions/ExtensionResourcePlan'
      properties:
        description: >-
          A dictionary of extended properties. This property is currently
          unused.
        type: object
        additionalProperties:
          type: string
        x-ms-client-flatten: true
      tags:
        description: >-
          A dictionary of user-defined tags to be stored with the extension
          resource.
        type: object
        additionalProperties:
          type: string
  Operation:
    description: Properties of an operation supported by the resource provider.
    type: object
    properties:
      display:
        description: The properties of the resource operation.
        $ref: '#/definitions/OperationProperties'
      name:
        description: The name of the resource operation.
        type: string
  OperationListResult:
    description: Container for a list of operations supported by a resource provider.
    type: object
    properties:
      value:
        description: A list of operations supported by a resource provider.
        type: array
        items:
          $ref: '#/definitions/Operation'
  OperationProperties:
    description: Properties of an operation supported by the resource provider.
    type: object
    properties:
      description:
        description: The description of the resource operation.
        type: string
      operation:
        description: The operation name.
        type: string
      provider:
        description: The provider name.
        type: string
      resource:
        description: The resource name.
        type: string
  Resource:
    description: A generic Azure Resource Manager resource.
    x-ms-azure-resource: true
    type: object
    properties:
      id:
        description: Unique identifier of the resource.
        readOnly: true
        type: string
      location:
        description: Resource location.
        type: string
      name:
        description: Resource name.
        readOnly: true
        type: string
      tags:
        description: Resource tags.
        type: object
        additionalProperties:
          type: string
      type:
        description: Resource type.
        readOnly: true
        type: string
  ProjectResource:
    description: A Visual Studio Team Services project resource.
    type: object
    allOf:
      - $ref: '#/definitions/Resource'
    properties:
      properties:
        description: Key/value pair of resource properties.
        type: object
        additionalProperties:
          type: string
        x-ms-client-flatten: true
  ProjectResourceListResult:
    description: >-
      The response to a request to list Team Services project resources in a
      resource group/account.
    type: object
    properties:
      value:
        description: List of project resource details.
        type: array
        items:
          $ref: '#/definitions/ProjectResource'
parameters:
  subscriptionIdParameter:
    name: subscriptionId
    in: path
    description: The Azure subscription identifier.
    required: true
    type: string
  resourceGroupNameParameter:
    name: resourceGroupName
    in: path
    required: true
    type: string
    x-ms-parameter-location: method
    description: Name of the resource group within the Azure subscription.
  apiVersionParameter:
    name: api-version
    in: query
    description: API Version
    required: true
    type: string
tags:
  - name: Accounts
  - name: Extensions
  - name: Operations
  - name: Projects