Azure DevTest Labs Policies API

The Policies API from Azure DevTest Labs — 2 operation(s) for policies.

OpenAPI Specification

azure-test-labs-policies-api-openapi.yml Raw ↑
swagger: '2.0'
info:
  description: The DevTest Labs Client.
  title: DevTestLabsClient ArmTemplates Policies API
  version: '2018-09-15'
  x-apisguru-categories:
  - cloud
  x-logo:
    url: https://api.apis.guru/v2/cache/logo/https_assets.onestore.ms_cdnfiles_onestorerolling-1606-01000_shell_v3_images_logo_microsoft.png
  x-origin:
  - format: swagger
    url: https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/DTL.json
    version: '2.0'
  x-preferred: true
  x-providerName: azure.com
  x-serviceName: devtestlabs-DTL
  x-tags:
  - Azure
  - Microsoft
host: management.azure.com
schemes:
- https
consumes:
- application/json
produces:
- application/json
security:
- azure_auth:
  - user_impersonation
tags:
- name: Policies
paths:
  ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/policysets/{policySetName}/policies
  : get:
      description: List policies in a given policy set.
      operationId: Policies_List
      parameters:
      - $ref: '#/parameters/subscriptionId'
      - $ref: '#/parameters/resourceGroupName'
      - description: The name of the lab.
        in: path
        name: labName
        required: true
        type: string
        example: example-value
      - description: The name of the policy set.
        in: path
        name: policySetName
        required: true
        type: string
        example: example-value
      - description: 'Specify the $expand query. Example: ''properties($select=description)'''
        in: query
        name: $expand
        type: string
        example: example-value
      - description: 'The filter to apply to the operation. Example: ''$filter=contains(name,''myName'')'
        in: query
        name: $filter
        type: string
        example: example-value
      - description: 'The maximum number of resources to return from the operation. Example: ''$top=10'''
        format: int32
        in: query
        name: $top
        type: integer
        example: example-value
      - description: 'The ordering expression for the results, using OData notation. Example: ''$orderby=name desc'''
        in: query
        name: $orderby
        type: string
        example: example-value
      - $ref: '#/parameters/api-version'
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/PolicyList'
        default:
          description: BadRequest
          schema:
            $ref: '#/definitions/CloudError'
      tags:
      - Policies
      x-ms-odata: '#/definitions/Policy'
      x-ms-pageable:
        nextLinkName: nextLink
      summary: Azure DevTest Labs Policies_ List
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/policysets/{policySetName}/policies/{name}
  : delete:
      description: Delete policy.
      operationId: Policies_Delete
      parameters:
      - $ref: '#/parameters/subscriptionId'
      - $ref: '#/parameters/resourceGroupName'
      - description: The name of the lab.
        in: path
        name: labName
        required: true
        type: string
        example: example-value
      - description: The name of the policy set.
        in: path
        name: policySetName
        required: true
        type: string
        example: example-value
      - description: The name of the policy.
        in: path
        name: name
        required: true
        type: string
        example: example-value
      - $ref: '#/parameters/api-version'
      responses:
        '200':
          description: OK
        '204':
          description: No Content
        default:
          description: BadRequest
          schema:
            $ref: '#/definitions/CloudError'
      tags:
      - Policies
      summary: Azure DevTest Labs Policies_ Delete
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    get:
      description: Get policy.
      operationId: Policies_Get
      parameters:
      - $ref: '#/parameters/subscriptionId'
      - $ref: '#/parameters/resourceGroupName'
      - description: The name of the lab.
        in: path
        name: labName
        required: true
        type: string
        example: example-value
      - description: The name of the policy set.
        in: path
        name: policySetName
        required: true
        type: string
        example: example-value
      - description: The name of the policy.
        in: path
        name: name
        required: true
        type: string
        example: example-value
      - description: 'Specify the $expand query. Example: ''properties($select=description)'''
        in: query
        name: $expand
        type: string
        example: example-value
      - $ref: '#/parameters/api-version'
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/Policy'
        default:
          description: BadRequest
          schema:
            $ref: '#/definitions/CloudError'
      tags:
      - Policies
      summary: Azure DevTest Labs Policies_ Get
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    patch:
      description: Allows modifying tags of policies. All other properties will be ignored.
      operationId: Policies_Update
      parameters:
      - $ref: '#/parameters/subscriptionId'
      - $ref: '#/parameters/resourceGroupName'
      - description: The name of the lab.
        in: path
        name: labName
        required: true
        type: string
        example: example-value
      - description: The name of the policy set.
        in: path
        name: policySetName
        required: true
        type: string
        example: example-value
      - description: The name of the policy.
        in: path
        name: name
        required: true
        type: string
        example: example-value
      - description: A Policy.
        in: body
        name: policy
        required: true
        schema:
          $ref: '#/definitions/PolicyFragment'
        example: example-value
      - $ref: '#/parameters/api-version'
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/Policy'
        default:
          description: BadRequest
          schema:
            $ref: '#/definitions/CloudError'
      tags:
      - Policies
      summary: Azure DevTest Labs Policies_ Update
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    put:
      description: Create or replace an existing policy.
      operationId: Policies_CreateOrUpdate
      parameters:
      - $ref: '#/parameters/subscriptionId'
      - $ref: '#/parameters/resourceGroupName'
      - description: The name of the lab.
        in: path
        name: labName
        required: true
        type: string
        example: example-value
      - description: The name of the policy set.
        in: path
        name: policySetName
        required: true
        type: string
        example: example-value
      - description: The name of the policy.
        in: path
        name: name
        required: true
        type: string
        example: example-value
      - description: A Policy.
        in: body
        name: policy
        required: true
        schema:
          $ref: '#/definitions/Policy'
        example: example-value
      - $ref: '#/parameters/api-version'
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/Policy'
        '201':
          description: Created
          schema:
            $ref: '#/definitions/Policy'
        default:
          description: BadRequest
          schema:
            $ref: '#/definitions/CloudError'
      tags:
      - Policies
      summary: Azure DevTest Labs Policies_ Create or Update
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
definitions:
  Resource:
    description: An Azure resource.
    properties:
      id:
        description: The identifier of the resource.
        readOnly: true
        type: string
      location:
        description: The location of the resource.
        type: string
      name:
        description: The name of the resource.
        readOnly: true
        type: string
      tags:
        additionalProperties:
          type: string
        description: The tags of the resource.
        type: object
      type:
        description: The type of the resource.
        readOnly: true
        type: string
    type: object
    x-ms-azure-resource: true
  PolicyFragment:
    allOf:
    - $ref: '#/definitions/UpdateResource'
    description: A Policy.
    properties:
      properties:
        $ref: '#/definitions/PolicyPropertiesFragment'
        description: The properties of the resource.
        x-ms-client-flatten: true
    type: object
  PolicyList:
    description: The response of a list operation.
    properties:
      nextLink:
        description: Link for next set of results.
        type: string
      value:
        description: Results of the list operation.
        items:
          $ref: '#/definitions/Policy'
        type: array
    type: object
  CloudError:
    description: Error from a REST request.
    properties:
      error:
        $ref: '#/definitions/CloudErrorBody'
        description: The cloud error that occurred
    type: object
    x-ms-external: true
  PolicyPropertiesFragment:
    description: Properties of a Policy.
    properties:
      description:
        description: The description of the policy.
        type: string
      evaluatorType:
        description: The evaluator type of the policy (i.e. AllowedValuesPolicy, MaxValuePolicy).
        enum:
        - AllowedValuesPolicy
        - MaxValuePolicy
        type: string
        x-ms-enum:
          modelAsString: true
          name: PolicyEvaluatorType
      factData:
        description: The fact data of the policy.
        type: string
      factName:
        description: The fact name of the policy (e.g. LabVmCount, LabVmSize, MaxVmsAllowedPerLab, etc.
        enum:
        - UserOwnedLabVmCount
        - UserOwnedLabPremiumVmCount
        - LabVmCount
        - LabPremiumVmCount
        - LabVmSize
        - GalleryImage
        - UserOwnedLabVmCountInSubnet
        - LabTargetCost
        - EnvironmentTemplate
        - ScheduleEditPermission
        type: string
        x-ms-enum:
          modelAsString: true
          name: PolicyFactName
      status:
        description: The status of the policy.
        enum:
        - Enabled
        - Disabled
        type: string
        x-ms-enum:
          modelAsString: true
          name: PolicyStatus
      threshold:
        description: The threshold of the policy (i.e. a number for MaxValuePolicy, and a JSON array of values for AllowedValuesPolicy).
        type: string
    type: object
  CloudErrorBody:
    description: Body of an error from a REST request.
    properties:
      code:
        description: The error code.
        type: string
      details:
        description: Inner errors.
        items:
          $ref: '#/definitions/CloudErrorBody'
        type: array
      message:
        description: The error message.
        type: string
      target:
        description: The error target.
        type: string
    type: object
    x-ms-external: true
  UpdateResource:
    description: Represents an update resource
    properties:
      tags:
        additionalProperties:
          type: string
        description: The tags of the resource.
        type: object
    type: object
  PolicyProperties:
    description: Properties of a Policy.
    properties:
      createdDate:
        description: The creation date of the policy.
        format: date-time
        readOnly: true
        type: string
      description:
        description: The description of the policy.
        type: string
      evaluatorType:
        description: The evaluator type of the policy (i.e. AllowedValuesPolicy, MaxValuePolicy).
        enum:
        - AllowedValuesPolicy
        - MaxValuePolicy
        type: string
        x-ms-enum:
          modelAsString: true
          name: PolicyEvaluatorType
      factData:
        description: The fact data of the policy.
        type: string
      factName:
        description: The fact name of the policy (e.g. LabVmCount, LabVmSize, MaxVmsAllowedPerLab, etc.
        enum:
        - UserOwnedLabVmCount
        - UserOwnedLabPremiumVmCount
        - LabVmCount
        - LabPremiumVmCount
        - LabVmSize
        - GalleryImage
        - UserOwnedLabVmCountInSubnet
        - LabTargetCost
        - EnvironmentTemplate
        - ScheduleEditPermission
        type: string
        x-ms-enum:
          modelAsString: true
          name: PolicyFactName
      provisioningState:
        description: The provisioning status of the resource.
        readOnly: true
        type: string
      status:
        description: The status of the policy.
        enum:
        - Enabled
        - Disabled
        type: string
        x-ms-enum:
          modelAsString: true
          name: PolicyStatus
      threshold:
        description: The threshold of the policy (i.e. a number for MaxValuePolicy, and a JSON array of values for AllowedValuesPolicy).
        type: string
      uniqueIdentifier:
        description: The unique immutable identifier of a resource (Guid).
        readOnly: true
        type: string
    type: object
  Policy:
    allOf:
    - $ref: '#/definitions/Resource'
    description: A Policy.
    properties:
      properties:
        $ref: '#/definitions/PolicyProperties'
        description: The properties of the resource.
        x-ms-client-flatten: true
    required:
    - properties
    type: object
parameters:
  resourceGroupName:
    description: The name of the resource group.
    in: path
    name: resourceGroupName
    required: true
    type: string
    x-ms-parameter-location: method
  subscriptionId:
    description: The subscription ID.
    in: path
    name: subscriptionId
    required: true
    type: string
  api-version:
    default: '2018-09-15'
    description: Client API version.
    in: query
    name: api-version
    required: true
    type: string
securityDefinitions:
  azure_auth:
    authorizationUrl: https://login.microsoftonline.com/common/oauth2/authorize
    description: OAuth2 Implicit Grant
    flow: implicit
    scopes:
      user_impersonation: Access Microsoft Azure
    type: oauth2