Azure Monitor Private Link Scopes API

Create and manage Azure Monitor Private Link Scopes to connect Azure Monitor resources to private endpoints, enabling secure network access to monitoring data.

OpenAPI Specification

azure-monitor-private-link-scopes-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Azure Monitor Private Link Scopes API
  description: >-
    Create and manage Azure Monitor Private Link Scopes to connect Azure Monitor
    resources to private endpoints, enabling secure network access to monitoring
    data.
  version: '2021-07-01-preview'
  contact:
    name: Microsoft Azure Support
    url: https://azure.microsoft.com/en-us/support/options/
  license:
    name: Microsoft API License
    url: https://azure.microsoft.com/en-us/support/legal/
servers:
  - url: https://management.azure.com
    description: Azure Resource Manager
security:
  - oauth2:
      - https://management.azure.com/.default
tags:
  - name: Private Link Scopes
    description: Operations for managing Azure Monitor Private Link Scopes
  - name: Scoped Resources
    description: Operations for managing scoped resources within a Private Link Scope
paths:
  /subscriptions/{subscriptionId}/providers/microsoft.insights/privateLinkScopes:
    get:
      operationId: PrivateLinkScopes_List
      summary: Azure Monitor List private link scopes in a subscription
      description: >-
        Gets a list of all Azure Monitor Private Link Scopes within a subscription.
      tags:
        - Private Link Scopes
      parameters:
        - $ref: '#/components/parameters/SubscriptionIdParameter'
        - $ref: '#/components/parameters/ApiVersionParameter'
      responses:
        '200':
          description: Successful request to list private link scopes.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AzureMonitorPrivateLinkScopeListResult'
        default:
          description: Error response describing why the operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/privateLinkScopes:
    get:
      operationId: PrivateLinkScopes_ListByResourceGroup
      summary: Azure Monitor List private link scopes in a resource group
      description: >-
        Gets a list of Azure Monitor Private Link Scopes within a resource group.
      tags:
        - Private Link Scopes
      parameters:
        - $ref: '#/components/parameters/SubscriptionIdParameter'
        - $ref: '#/components/parameters/ResourceGroupNameParameter'
        - $ref: '#/components/parameters/ApiVersionParameter'
      responses:
        '200':
          description: Successful request to list private link scopes.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AzureMonitorPrivateLinkScopeListResult'
        default:
          description: Error response describing why the operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/privateLinkScopes/{scopeName}
  : get:
      operationId: PrivateLinkScopes_Get
      summary: Azure Monitor Get a private link scope
      description: >-
        Returns an Azure Monitor Private Link Scope.
      tags:
        - Private Link Scopes
      parameters:
        - $ref: '#/components/parameters/SubscriptionIdParameter'
        - $ref: '#/components/parameters/ResourceGroupNameParameter'
        - $ref: '#/components/parameters/ScopeNameParameter'
        - $ref: '#/components/parameters/ApiVersionParameter'
      responses:
        '200':
          description: Successful request to get a private link scope.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AzureMonitorPrivateLinkScope'
        default:
          description: Error response describing why the operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
    put:
      operationId: PrivateLinkScopes_CreateOrUpdate
      summary: Azure Monitor Create or update a private link scope
      description: >-
        Creates or updates an Azure Monitor Private Link Scope. A Private Link
        Scope groups Azure Monitor resources together for secure access via
        private endpoints.
      tags:
        - Private Link Scopes
      parameters:
        - $ref: '#/components/parameters/SubscriptionIdParameter'
        - $ref: '#/components/parameters/ResourceGroupNameParameter'
        - $ref: '#/components/parameters/ScopeNameParameter'
        - $ref: '#/components/parameters/ApiVersionParameter'
      requestBody:
        description: The private link scope to create or update.
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AzureMonitorPrivateLinkScope'
      responses:
        '200':
          description: Successfully updated the private link scope.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AzureMonitorPrivateLinkScope'
        '201':
          description: Successfully created the private link scope.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AzureMonitorPrivateLinkScope'
        default:
          description: Error response describing why the operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
    patch:
      operationId: PrivateLinkScopes_UpdateTags
      summary: Azure Monitor Update tags on a private link scope
      description: >-
        Updates an existing Private Link Scope's tags. Use this method to update
        tags only.
      tags:
        - Private Link Scopes
      parameters:
        - $ref: '#/components/parameters/SubscriptionIdParameter'
        - $ref: '#/components/parameters/ResourceGroupNameParameter'
        - $ref: '#/components/parameters/ScopeNameParameter'
        - $ref: '#/components/parameters/ApiVersionParameter'
      requestBody:
        description: Updated tag information.
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TagsResource'
      responses:
        '200':
          description: Successfully updated tags.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AzureMonitorPrivateLinkScope'
        default:
          description: Error response describing why the operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
    delete:
      operationId: PrivateLinkScopes_Delete
      summary: Azure Monitor Delete a private link scope
      description: >-
        Deletes an Azure Monitor Private Link Scope.
      tags:
        - Private Link Scopes
      parameters:
        - $ref: '#/components/parameters/SubscriptionIdParameter'
        - $ref: '#/components/parameters/ResourceGroupNameParameter'
        - $ref: '#/components/parameters/ScopeNameParameter'
        - $ref: '#/components/parameters/ApiVersionParameter'
      responses:
        '200':
          description: Successfully deleted the private link scope.
        '202':
          description: Accepted. The delete operation is in progress.
        '204':
          description: The private link scope did not exist.
        default:
          description: Error response describing why the operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/privateLinkScopes/{scopeName}/scopedResources
  : get:
      operationId: ScopedResources_ListByPrivateLinkScope
      summary: Azure Monitor List scoped resources in a private link scope
      description: >-
        Gets all private endpoint connections on a private link scope.
      tags:
        - Scoped Resources
      parameters:
        - $ref: '#/components/parameters/SubscriptionIdParameter'
        - $ref: '#/components/parameters/ResourceGroupNameParameter'
        - $ref: '#/components/parameters/ScopeNameParameter'
        - $ref: '#/components/parameters/ApiVersionParameter'
      responses:
        '200':
          description: Successful request to list scoped resources.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScopedResourceListResult'
        default:
          description: Error response describing why the operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/privateLinkScopes/{scopeName}/scopedResources/{name}
  : get:
      operationId: ScopedResources_Get
      summary: Azure Monitor Get a scoped resource
      description: >-
        Gets a scoped resource in a private link scope.
      tags:
        - Scoped Resources
      parameters:
        - $ref: '#/components/parameters/SubscriptionIdParameter'
        - $ref: '#/components/parameters/ResourceGroupNameParameter'
        - $ref: '#/components/parameters/ScopeNameParameter'
        - name: name
          in: path
          required: true
          description: The name of the scoped resource.
          schema:
            type: string
        - $ref: '#/components/parameters/ApiVersionParameter'
      responses:
        '200':
          description: Successful request to get a scoped resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScopedResource'
        default:
          description: Error response describing why the operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
    put:
      operationId: ScopedResources_CreateOrUpdate
      summary: Azure Monitor Create or update a scoped resource
      description: >-
        Approve or reject a scoped resource in a private link scope.
      tags:
        - Scoped Resources
      parameters:
        - $ref: '#/components/parameters/SubscriptionIdParameter'
        - $ref: '#/components/parameters/ResourceGroupNameParameter'
        - $ref: '#/components/parameters/ScopeNameParameter'
        - name: name
          in: path
          required: true
          description: The name of the scoped resource.
          schema:
            type: string
        - $ref: '#/components/parameters/ApiVersionParameter'
      requestBody:
        description: The scoped resource to create or update.
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ScopedResource'
      responses:
        '200':
          description: Successfully updated the scoped resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScopedResource'
        '201':
          description: Successfully created the scoped resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScopedResource'
        '202':
          description: Accepted. The operation is in progress.
        default:
          description: Error response describing why the operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
    delete:
      operationId: ScopedResources_Delete
      summary: Azure Monitor Delete a scoped resource
      description: >-
        Deletes a scoped resource from a private link scope.
      tags:
        - Scoped Resources
      parameters:
        - $ref: '#/components/parameters/SubscriptionIdParameter'
        - $ref: '#/components/parameters/ResourceGroupNameParameter'
        - $ref: '#/components/parameters/ScopeNameParameter'
        - name: name
          in: path
          required: true
          description: The name of the scoped resource.
          schema:
            type: string
        - $ref: '#/components/parameters/ApiVersionParameter'
      responses:
        '200':
          description: Successfully deleted the scoped resource.
        '202':
          description: Accepted. The delete operation is in progress.
        '204':
          description: The scoped resource did not exist.
        default:
          description: Error response describing why the operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  securitySchemes:
    oauth2:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://login.microsoftonline.com/{tenantId}/oauth2/v2.0/token
          scopes:
            https://management.azure.com/.default: Access Azure Management API
  parameters:
    SubscriptionIdParameter:
      name: subscriptionId
      in: path
      required: true
      description: The ID of the target subscription.
      schema:
        type: string
    ResourceGroupNameParameter:
      name: resourceGroupName
      in: path
      required: true
      description: The name of the resource group.
      schema:
        type: string
    ScopeNameParameter:
      name: scopeName
      in: path
      required: true
      description: The name of the Azure Monitor Private Link Scope resource.
      schema:
        type: string
    ApiVersionParameter:
      name: api-version
      in: query
      required: true
      description: Client API version.
      schema:
        type: string
        default: '2021-07-01-preview'
  schemas:
    AzureMonitorPrivateLinkScope:
      type: object
      required:
        - location
      properties:
        id:
          type: string
          readOnly: true
          description: Azure resource ID.
        name:
          type: string
          readOnly: true
          description: Azure resource name.
        type:
          type: string
          readOnly: true
          description: Azure resource type.
        location:
          type: string
          description: Resource location.
        tags:
          type: object
          additionalProperties:
            type: string
          description: Resource tags.
        properties:
          $ref: '#/components/schemas/AzureMonitorPrivateLinkScopeProperties'
        systemData:
          $ref: '#/components/schemas/SystemData'
    AzureMonitorPrivateLinkScopeProperties:
      type: object
      required:
        - accessModeSettings
      properties:
        provisioningState:
          type: string
          readOnly: true
          description: Current state of this Private Link Scope.
        privateEndpointConnections:
          type: array
          readOnly: true
          items:
            type: object
            properties:
              id:
                type: string
              name:
                type: string
              type:
                type: string
              properties:
                type: object
                properties:
                  privateEndpoint:
                    type: object
                    properties:
                      id:
                        type: string
                  privateLinkServiceConnectionState:
                    type: object
                    properties:
                      status:
                        type: string
                      description:
                        type: string
                      actionsRequired:
                        type: string
                  provisioningState:
                    type: string
          description: List of private endpoint connections.
        accessModeSettings:
          type: object
          required:
            - queryAccessMode
            - ingestionAccessMode
          properties:
            queryAccessMode:
              type: string
              enum:
                - Open
                - PrivateOnly
              description: >-
                Specifies the default access mode of queries through associated
                private endpoints in scope.
            ingestionAccessMode:
              type: string
              enum:
                - Open
                - PrivateOnly
              description: >-
                Specifies the default access mode of ingestion through associated
                private endpoints in scope.
            exclusions:
              type: array
              items:
                type: object
                properties:
                  ingestionAccessMode:
                    type: string
                    enum:
                      - Open
                      - PrivateOnly
                  queryAccessMode:
                    type: string
                    enum:
                      - Open
                      - PrivateOnly
                  privateEndpointConnectionName:
                    type: string
              description: List of exclusions that override the default access mode.
          description: Access mode settings for the Private Link Scope.
    ScopedResource:
      type: object
      properties:
        id:
          type: string
          readOnly: true
          description: Azure resource ID.
        name:
          type: string
          readOnly: true
          description: Azure resource name.
        type:
          type: string
          readOnly: true
          description: Azure resource type.
        properties:
          type: object
          properties:
            linkedResourceId:
              type: string
              description: The resource ID of the scoped Azure Monitor resource.
            provisioningState:
              type: string
              readOnly: true
              description: State of the private endpoint connection.
        systemData:
          $ref: '#/components/schemas/SystemData'
    TagsResource:
      type: object
      properties:
        tags:
          type: object
          additionalProperties:
            type: string
          description: Resource tags.
    SystemData:
      type: object
      properties:
        createdBy:
          type: string
        createdByType:
          type: string
          enum:
            - User
            - Application
            - ManagedIdentity
            - Key
        createdAt:
          type: string
          format: date-time
        lastModifiedBy:
          type: string
        lastModifiedByType:
          type: string
          enum:
            - User
            - Application
            - ManagedIdentity
            - Key
        lastModifiedAt:
          type: string
          format: date-time
    AzureMonitorPrivateLinkScopeListResult:
      type: object
      required:
        - value
      properties:
        value:
          type: array
          items:
            $ref: '#/components/schemas/AzureMonitorPrivateLinkScope'
          description: List of Azure Monitor Private Link Scope definitions.
        nextLink:
          type: string
          description: The URI to get the next set of results.
    ScopedResourceListResult:
      type: object
      properties:
        value:
          type: array
          items:
            $ref: '#/components/schemas/ScopedResource'
          description: List of scoped resources.
        nextLink:
          type: string
          description: The URI to get the next set of results.
    ErrorResponse:
      type: object
      properties:
        code:
          type: string
          description: Error code.
        message:
          type: string
          description: Error message indicating why the operation failed.