swagger: "2.0"
schemes:
  - https
host: management.azure.com
info:
  description: API spec for Microsoft.Security (Azure Security Center) resource provider
  title: Security Center
  version: 2017-08-01-preview
  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/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/informationProtectionPolicies.json
      version: "2.0"
  x-providerName: azure.com
  x-serviceName: security-informationProtectionPolicies
  x-tags:
    - Azure
    - Microsoft
consumes:
  - application/json
produces:
  - application/json
securityDefinitions:
  azure_auth:
    authorizationUrl: https://login.microsoftonline.com/common/oauth2/authorize
    description: Azure Active Directory OAuth2 Flow
    flow: implicit
    scopes:
      user_impersonation: impersonate your user account
    type: oauth2
security:
  - azure_auth:
      - user_impersonation
parameters:
  InformationProtectionPolicyName:
    description: Name of the information protection policy.
    enum:
      - effective
      - custom
    in: path
    name: informationProtectionPolicyName
    required: true
    type: string
    x-ms-parameter-location: method
paths:
  "/{scope}/providers/Microsoft.Security/informationProtectionPolicies":
    get:
      description: Information protection policies of a specific management group.
      operationId: InformationProtectionPolicies_List
      parameters:
        - description: API version for the operation
          in: query
          name: api-version
          required: true
          type: string
        - description: Scope of the query, can be subscription (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group (/providers/Microsoft.Management/managementGroups/mgName).
          in: path
          name: scope
          required: true
          type: string
          x-ms-parameter-location: method
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/InformationProtectionPolicyList"
        default:
          description: Error response describing why the operation failed.
          schema:
            description: Error response structure.
            properties:
              error:
                description: Error details.
                properties:
                  code:
                    description: An identifier for the error. Codes are invariant and are intended to be consumed programmatically.
                    readOnly: true
                    type: string
                  message:
                    description: A message describing the error, intended to be suitable for display in a user interface.
                    readOnly: true
                    type: string
                type: object
                x-ms-external: true
            type: object
            x-ms-external: true
      tags:
        - InformationProtectionPolicies
      x-ms-examples:
        Get information protection policies:
          parameters:
            api-version: 2017-08-01-preview
            scope: providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e
          responses:
            "200":
              body:
                value:
                  - id: /providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e/providers/Microsoft.Security/informationProtectionPolicies/effective
                    name: effective
                    properties:
                      informationTypes:
                        3bf35491-99b8-41f2-86d5-c1200a7df658:
                          custom: true
                          displayName: Custom
                          enabled: true
                          keywords:
                            - canBeNumeric: false
                              custom: true
                              pattern: "%networking%"
                          order: 1400
                          recommendedLabelId: 7aa516c7-5a53-4857-bc6e-6808c6acd542
                        5856f35c-8e08-4d08-9bf7-87a146150569:
                          custom: false
                          displayName: Contact Info
                          enabled: true
                          keywords:
                            - canBeNumeric: false
                              custom: false
                              pattern: "%email%"
                            - canBeNumeric: false
                              custom: false
                              pattern: "%e-mail%"
                            - canBeNumeric: false
                              custom: false
                              pattern: "%addr%"
                            - canBeNumeric: true
                              custom: false
                              pattern: "%street%"
                            - canBeNumeric: false
                              custom: false
                              pattern: "%city%"
                          order: 200
                          recommendedLabelId: 575739d2-3d53-4df0-9042-4c7772d5c7b1
                        7fb9419d-2473-4ad8-8e11-b25cc8cf6a07:
                          custom: false
                          displayName: Networking
                          enabled: true
                          keywords:
                            - canBeNumeric: false
                              custom: false
                              pattern: "%ip%"
                            - canBeNumeric: false
                              custom: false
                              pattern: ip%address%
                            - canBeNumeric: false
                              custom: false
                              pattern: "%mac%address%"
                            - canBeNumeric: true
                              custom: true
                              pattern: "%networking%"
                          order: 100
                          recommendedLabelId: 575739d2-3d53-4df0-9042-4c7772d5c7b1
                      labels:
                        1345da73-bc5a-4a8f-b7dd-3820eb713da8:
                          displayName: Public
                          enabled: true
                          order: 100
                        575739d2-3d53-4df0-9042-4c7772d5c7b1:
                          displayName: Confidential
                          enabled: true
                          order: 300
                        7aa516c7-5a53-4857-bc6e-6808c6acd542:
                          displayName: General
                          enabled: true
                          order: 200
                    type: Microsoft.Security/informationProtectionPolicies
                  - id: /providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e/providers/Microsoft.Security/informationProtectionPolicies/custom
                    name: custom
                    properties:
                      informationTypes:
                        3bf35491-99b8-41f2-86d5-c1200a7df658:
                          custom: true
                          displayName: Custom
                          enabled: true
                          keywords:
                            - canBeNumeric: true
                              custom: true
                              pattern: "%custom%"
                          order: 1400
                          recommendedLabelId: 7aa516c7-5a53-4857-bc6e-6808c6acd542
                        7fb9419d-2473-4ad8-8e11-b25cc8cf6a07:
                          custom: false
                          displayName: Networking
                          enabled: true
                          keywords:
                            - canBeNumeric: false
                              custom: true
                              pattern: "%networking%"
                          order: 100
                          recommendedLabelId: 575739d2-3d53-4df0-9042-4c7772d5c7b1
                      labels:
                        1345da73-bc5a-4a8f-b7dd-3820eb713da8:
                          displayName: Public
                          enabled: true
                          order: 100
                        575739d2-3d53-4df0-9042-4c7772d5c7b1:
                          displayName: Confidential
                          enabled: true
                          order: 300
                        7aa516c7-5a53-4857-bc6e-6808c6acd542:
                          displayName: General
                          enabled: true
                          order: 200
                    type: Microsoft.Security/informationProtectionPolicies
      x-ms-pageable:
        nextLinkName: nextLink
  "/{scope}/providers/Microsoft.Security/informationProtectionPolicies/{informationProtectionPolicyName}":
    get:
      description: Details of the information protection policy.
      operationId: InformationProtectionPolicies_Get
      parameters:
        - description: API version for the operation
          in: query
          name: api-version
          required: true
          type: string
        - description: Scope of the query, can be subscription (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group (/providers/Microsoft.Management/managementGroups/mgName).
          in: path
          name: scope
          required: true
          type: string
          x-ms-parameter-location: method
        - $ref: "#/parameters/InformationProtectionPolicyName"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/InformationProtectionPolicy"
        default:
          description: Error response describing why the operation failed.
          schema:
            description: Error response structure.
            properties:
              error:
                description: Error details.
                properties:
                  code:
                    description: An identifier for the error. Codes are invariant and are intended to be consumed programmatically.
                    readOnly: true
                    type: string
                  message:
                    description: A message describing the error, intended to be suitable for display in a user interface.
                    readOnly: true
                    type: string
                type: object
                x-ms-external: true
            type: object
            x-ms-external: true
      tags:
        - InformationProtectionPolicies
      x-ms-examples:
        Get the customized information protection policy for a management group:
          parameters:
            api-version: 2017-08-01-preview
            informationProtectionPolicyName: custom
            scope: providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e
          responses:
            "200":
              body:
                id: /providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e/providers/Microsoft.Security/informationProtectionPolicies/custom
                name: custom
                properties:
                  informationTypes:
                    3bf35491-99b8-41f2-86d5-c1200a7df658:
                      custom: true
                      displayName: Custom
                      enabled: true
                      keywords:
                        - canBeNumeric: true
                          custom: true
                          pattern: "%custom%"
                      order: 1400
                      recommendedLabelId: 7aa516c7-5a53-4857-bc6e-6808c6acd542
                    7fb9419d-2473-4ad8-8e11-b25cc8cf6a07:
                      custom: false
                      displayName: Networking
                      enabled: true
                      keywords:
                        - canBeNumeric: false
                          custom: true
                          pattern: "%networking%"
                      order: 100
                      recommendedLabelId: 575739d2-3d53-4df0-9042-4c7772d5c7b1
                  labels:
                    1345da73-bc5a-4a8f-b7dd-3820eb713da8:
                      displayName: Public
                      enabled: true
                      order: 100
                    575739d2-3d53-4df0-9042-4c7772d5c7b1:
                      displayName: Confidential
                      enabled: true
                      order: 300
                    7aa516c7-5a53-4857-bc6e-6808c6acd542:
                      displayName: General
                      enabled: true
                      order: 200
                type: Microsoft.Security/informationProtectionPolicies
        Get the effective information protection policy for a management group:
          parameters:
            api-version: 2017-08-01-preview
            informationProtectionPolicyName: effective
            scope: providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e
          responses:
            "200":
              body:
                id: /providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e/providers/Microsoft.Security/informationProtectionPolicies/effective
                name: effective
                properties:
                  informationTypes:
                    3bf35491-99b8-41f2-86d5-c1200a7df658:
                      custom: true
                      displayName: Custom
                      enabled: true
                      keywords:
                        - canBeNumeric: false
                          custom: true
                          pattern: "%networking%"
                      order: 1400
                      recommendedLabelId: 7aa516c7-5a53-4857-bc6e-6808c6acd542
                    5856f35c-8e08-4d08-9bf7-87a146150569:
                      custom: false
                      displayName: Contact Info
                      enabled: true
                      keywords:
                        - canBeNumeric: false
                          custom: false
                          pattern: "%email%"
                        - canBeNumeric: false
                          custom: false
                          pattern: "%e-mail%"
                        - canBeNumeric: false
                          custom: false
                          pattern: "%addr%"
                        - canBeNumeric: true
                          custom: false
                          pattern: "%street%"
                        - canBeNumeric: false
                          custom: false
                          pattern: "%city%"
                      order: 200
                      recommendedLabelId: 575739d2-3d53-4df0-9042-4c7772d5c7b1
                    7fb9419d-2473-4ad8-8e11-b25cc8cf6a07:
                      custom: false
                      displayName: Networking
                      enabled: true
                      keywords:
                        - canBeNumeric: false
                          custom: false
                          pattern: "%ip%"
                        - canBeNumeric: false
                          custom: false
                          pattern: ip%address%
                        - canBeNumeric: false
                          custom: false
                          pattern: "%mac%address%"
                        - canBeNumeric: true
                          custom: true
                          excluded: true
                          pattern: "%networking%"
                      order: 100
                      recommendedLabelId: 575739d2-3d53-4df0-9042-4c7772d5c7b1
                  labels:
                    1345da73-bc5a-4a8f-b7dd-3820eb713da8:
                      displayName: Public
                      enabled: true
                      order: 100
                    575739d2-3d53-4df0-9042-4c7772d5c7b1:
                      displayName: Confidential
                      enabled: true
                      order: 300
                    7aa516c7-5a53-4857-bc6e-6808c6acd542:
                      displayName: General
                      enabled: true
                      order: 200
                type: Microsoft.Security/informationProtectionPolicies
    put:
      description: Details of the information protection policy.
      operationId: InformationProtectionPolicies_CreateOrUpdate
      parameters:
        - description: API version for the operation
          in: query
          name: api-version
          required: true
          type: string
        - description: Scope of the query, can be subscription (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group (/providers/Microsoft.Management/managementGroups/mgName).
          in: path
          name: scope
          required: true
          type: string
          x-ms-parameter-location: method
        - $ref: "#/parameters/InformationProtectionPolicyName"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/InformationProtectionPolicy"
        "201":
          description: Created
          schema:
            $ref: "#/definitions/InformationProtectionPolicy"
        default:
          description: Error response describing why the operation failed.
          schema:
            description: Error response structure.
            properties:
              error:
                description: Error details.
                properties:
                  code:
                    description: An identifier for the error. Codes are invariant and are intended to be consumed programmatically.
                    readOnly: true
                    type: string
                  message:
                    description: A message describing the error, intended to be suitable for display in a user interface.
                    readOnly: true
                    type: string
                type: object
                x-ms-external: true
            type: object
            x-ms-external: true
      tags:
        - InformationProtectionPolicies
      x-ms-examples:
        Create or update an information protection policy for a management group:
          parameters:
            InformationProtectionPolicy:
              id: /providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e/providers/Microsoft.Security/informationProtectionPolicies/custom
              name: custom
              properties:
                informationTypes:
                  3bf35491-99b8-41f2-86d5-c1200a7df658:
                    custom: true
                    displayName: Custom
                    enabled: true
                    keywords:
                      - canBeNumeric: true
                        custom: true
                        pattern: "%custom%"
                    order: 1400
                    recommendedLabelId: 7aa516c7-5a53-4857-bc6e-6808c6acd542
                  7fb9419d-2473-4ad8-8e11-b25cc8cf6a07:
                    custom: false
                    displayName: Networking
                    enabled: true
                    keywords:
                      - canBeNumeric: false
                        custom: true
                        pattern: "%networking%"
                    order: 100
                    recommendedLabelId: 575739d2-3d53-4df0-9042-4c7772d5c7b1
                labels:
                  1345da73-bc5a-4a8f-b7dd-3820eb713da8:
                    displayName: Public
                    enabled: true
                    order: 100
                  575739d2-3d53-4df0-9042-4c7772d5c7b1:
                    displayName: Confidential
                    enabled: true
                    order: 300
                  7aa516c7-5a53-4857-bc6e-6808c6acd542:
                    displayName: General
                    enabled: true
                    order: 200
              type: Microsoft.Security/informationProtectionPolicies
            api-version: 2017-08-01-preview
            informationProtectionPolicyName: custom
            scope: providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e
          responses:
            "200":
              body:
                id: /providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e/providers/Microsoft.Security/informationProtectionPolicies/custom
                name: custom
                properties:
                  informationTypes:
                    3bf35491-99b8-41f2-86d5-c1200a7df658:
                      custom: true
                      displayName: Custom
                      enabled: true
                      keywords:
                        - canBeNumeric: true
                          custom: true
                          pattern: "%custom%"
                      order: 1400
                      recommendedLabelId: 7aa516c7-5a53-4857-bc6e-6808c6acd542
                    7fb9419d-2473-4ad8-8e11-b25cc8cf6a07:
                      custom: false
                      displayName: Networking
                      enabled: true
                      keywords:
                        - canBeNumeric: false
                          custom: true
                          pattern: "%networking%"
                      order: 100
                      recommendedLabelId: 575739d2-3d53-4df0-9042-4c7772d5c7b1
                  labels:
                    1345da73-bc5a-4a8f-b7dd-3820eb713da8:
                      displayName: Public
                      enabled: true
                      order: 100
                    575739d2-3d53-4df0-9042-4c7772d5c7b1:
                      displayName: Confidential
                      enabled: true
                      order: 300
                    7aa516c7-5a53-4857-bc6e-6808c6acd542:
                      displayName: General
                      enabled: true
                      order: 200
                type: Microsoft.Security/informationProtectionPolicies
            "201":
              body:
                id: /providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e/providers/Microsoft.Security/informationProtectionPolicies/custom
                name: custom
                properties:
                  informationTypes:
                    3bf35491-99b8-41f2-86d5-c1200a7df658:
                      custom: true
                      displayName: Custom
                      enabled: true
                      keywords:
                        - canBeNumeric: true
                          custom: true
                          pattern: "%custom%"
                      order: 1400
                      recommendedLabelId: 7aa516c7-5a53-4857-bc6e-6808c6acd542
                    7fb9419d-2473-4ad8-8e11-b25cc8cf6a07:
                      custom: false
                      displayName: Networking
                      enabled: true
                      keywords:
                        - canBeNumeric: false
                          custom: true
                          pattern: "%networking%"
                      order: 100
                      recommendedLabelId: 575739d2-3d53-4df0-9042-4c7772d5c7b1
                  labels:
                    1345da73-bc5a-4a8f-b7dd-3820eb713da8:
                      displayName: Public
                      enabled: true
                      order: 100
                    575739d2-3d53-4df0-9042-4c7772d5c7b1:
                      displayName: Confidential
                      enabled: true
                      order: 300
                    7aa516c7-5a53-4857-bc6e-6808c6acd542:
                      displayName: General
                      enabled: true
                      order: 200
                type: Microsoft.Security/informationProtectionPolicies
definitions:
  InformationProtectionKeyword:
    description: The information type keyword.
    properties:
      canBeNumeric:
        description: Indicates whether the keyword can be applied on numeric types or not.
        type: boolean
      custom:
        description: Indicates whether the keyword is custom or not.
        type: boolean
      excluded:
        description: Indicates whether the keyword is excluded or not.
        type: boolean
      pattern:
        description: The keyword pattern.
        type: string
    type: object
  InformationProtectionPolicy:
    allOf:
      - description: Describes an Azure resource.
        properties:
          id:
            description: Resource Id
            readOnly: true
            type: string
          name:
            description: Resource name
            readOnly: true
            type: string
          type:
            description: Resource type
            readOnly: true
            type: string
        type: object
        x-ms-azure-resource: true
    description: Information protection policy.
    properties:
      properties:
        $ref: "#/definitions/InformationProtectionPolicyProperties"
        description: Information protection policy data
        x-ms-client-flatten: true
    type: object
  InformationProtectionPolicyList:
    description: Information protection policies response.
    properties:
      nextLink:
        description: The URI to fetch the next page.
        readOnly: true
        type: string
      value:
        description: List of information protection policies.
        items:
          $ref: "#/definitions/InformationProtectionPolicy"
        type: array
    readOnly: true
    type: object
  InformationProtectionPolicyProperties:
    description: describes properties of an information protection policy.
    properties:
      informationTypes:
        additionalProperties:
          $ref: "#/definitions/InformationType"
          type: object
        description: The sensitivity information types.
        type: object
      labels:
        additionalProperties:
          $ref: "#/definitions/SensitivityLabel"
          type: object
        description: Dictionary of sensitivity labels.
        type: object
      lastModifiedUtc:
        description: Describes the last UTC time the policy was modified.
        format: date-time
        readOnly: true
        type: string
    type: object
  InformationType:
    description: The information type.
    properties:
      custom:
        description: Indicates whether the information type is custom or not.
        type: boolean
      displayName:
        description: The name of the information type.
        type: string
      enabled:
        description: Indicates whether the information type is enabled or not.
        type: boolean
      keywords:
        description: The information type keywords.
        items:
          $ref: "#/definitions/InformationProtectionKeyword"
        type: array
      order:
        description: The order of the information type.
        type: number
      recommendedLabelId:
        description: The recommended label id to be associated with this information type.
        format: uuid
        type: string
    type: object
  SensitivityLabel:
    description: The sensitivity label.
    properties:
      displayName:
        description: The name of the sensitivity label.
        type: string
      enabled:
        description: Indicates whether the label is enabled or not.
        type: boolean
      order:
        description: The order of the sensitivity label.
        type: number
    type: object
