swagger: "2.0"
schemes:
  - https
host: management.azure.com
info:
  description: Provides create, read, update and delete functionality for Azure SQL Database resources including recommendations and operations.
  title: Azure SQL Database
  version: 2014-04-01
  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/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/sql.core.json
      version: "2.0"
  x-providerName: azure.com
  x-serviceName: sql-sql.core
  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
parameters:
  DatabaseExpandParameter:
    description: "A comma separated list of child objects to expand in the response. Possible properties: serviceTierAdvisors, transparentDataEncryption."
    in: query
    name: $expand
    required: false
    type: string
    x-ms-parameter-location: method
  ServerNameParameter:
    description: The name of the server.
    in: path
    name: serverName
    required: true
    type: string
    x-ms-parameter-location: method
  TransparentDataEncryptionNameParameter:
    description: The name of the transparent data encryption configuration.
    enum:
      - current
    in: path
    name: transparentDataEncryptionName
    required: true
    type: string
    x-ms-enum:
      modelAsString: true
      name: TransparentDataEncryptionName
    x-ms-parameter-location: method
paths:
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/serviceTierAdvisors":
    get:
      description: Returns service tier advisors for specified database.
      operationId: ServiceTierAdvisors_ListByDatabase
      parameters:
        - description: The API version to use for the request.
          in: query
          name: api-version
          required: true
          type: string
          x-ms-parameter-location: client
        - description: The subscription ID that identifies an Azure subscription.
          in: path
          name: subscriptionId
          required: true
          type: string
          x-ms-parameter-location: client
        - description: The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
          in: path
          name: resourceGroupName
          required: true
          type: string
          x-ms-parameter-location: method
        - $ref: "#/parameters/ServerNameParameter"
        - description: The name of database.
          in: path
          name: databaseName
          required: true
          type: string
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/ServiceTierAdvisorListResult"
      tags:
        - ServiceTierAdvisors
      x-ms-examples:
        Get a list of a service tier advisors:
          parameters:
            api-version: 2014-04-01
            databaseName: sqlcrudtest-9187
            resourceGroupName: sqlcrudtest-6852
            serverName: sqlcrudtest-2080
            subscriptionId: 00000000-1111-2222-3333-444444444444
          responses:
            "200":
              body:
                value:
                  - id: /subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Sql/servers/sqlcrudtest-2080/databases/sqlcrudtest-9187/serviceTierAdvisors/Current
                    name: Current
                    properties:
                      activeTimeRatio: 0
                      avgDtu: 0
                      confidence: 1
                      currentServiceLevelObjective: S0
                      currentServiceLevelObjectiveId: f1173c43-91bd-4aaa-973c-54e79e15235b
                      databaseSizeBasedRecommendationServiceLevelObjective: null
                      databaseSizeBasedRecommendationServiceLevelObjectiveId: null
                      disasterPlanBasedRecommendationServiceLevelObjective: null
                      disasterPlanBasedRecommendationServiceLevelObjectiveId: null
                      maxDtu: 0
                      maxSizeInGB: 0.0234375
                      minDtu: 0
                      observationPeriodEnd: 2017-07-26T13:00:00Z
                      observationPeriodStart: 2017-07-12T12:00:00Z
                      overallRecommendationServiceLevelObjective: null
                      overallRecommendationServiceLevelObjectiveId: null
                      serviceLevelObjectiveUsageMetrics:
                        - inRangeTimeRatio: 1
                          serviceLevelObjective: Basic
                          serviceLevelObjectiveId: dd6d99bb-f193-4ec1-86f2-43d3bccbc49c
                      usageBasedRecommendationServiceLevelObjective: null
                      usageBasedRecommendationServiceLevelObjectiveId: null
                    type: Microsoft.Sql/servers/databases/serviceTierAdvisors
      x-ms-pageable:
        nextLinkName: null
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/serviceTierAdvisors/{serviceTierAdvisorName}":
    get:
      description: Gets a service tier advisor.
      operationId: ServiceTierAdvisors_Get
      parameters:
        - description: The API version to use for the request.
          in: query
          name: api-version
          required: true
          type: string
          x-ms-parameter-location: client
        - description: The subscription ID that identifies an Azure subscription.
          in: path
          name: subscriptionId
          required: true
          type: string
          x-ms-parameter-location: client
        - description: The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
          in: path
          name: resourceGroupName
          required: true
          type: string
          x-ms-parameter-location: method
        - $ref: "#/parameters/ServerNameParameter"
        - description: The name of database.
          in: path
          name: databaseName
          required: true
          type: string
        - description: The name of service tier advisor.
          in: path
          name: serviceTierAdvisorName
          required: true
          type: string
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/ServiceTierAdvisor"
      tags:
        - ServiceTierAdvisors
      x-ms-examples:
        Get a service tier advisor:
          parameters:
            api-version: 2014-04-01
            databaseName: sqlcrudtest-9187
            resourceGroupName: sqlcrudtest-6852
            serverName: sqlcrudtest-2080
            serviceTierAdvisorName: Current
            subscriptionId: 00000000-1111-2222-3333-444444444444
          responses:
            "200":
              body:
                id: /subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Sql/servers/sqlcrudtest-2080/databases/sqlcrudtest-9187/serviceTierAdvisors/Current
                name: Current
                properties:
                  activeTimeRatio: 0
                  avgDtu: 0
                  confidence: 1
                  currentServiceLevelObjective: S0
                  currentServiceLevelObjectiveId: f1173c43-91bd-4aaa-973c-54e79e15235b
                  databaseSizeBasedRecommendationServiceLevelObjective: null
                  databaseSizeBasedRecommendationServiceLevelObjectiveId: null
                  disasterPlanBasedRecommendationServiceLevelObjective: null
                  disasterPlanBasedRecommendationServiceLevelObjectiveId: null
                  maxDtu: 0
                  maxSizeInGB: 0.0234375
                  minDtu: 0
                  observationPeriodEnd: 2017-07-26T13:00:00Z
                  observationPeriodStart: 2017-07-12T12:00:00Z
                  overallRecommendationServiceLevelObjective: null
                  overallRecommendationServiceLevelObjectiveId: null
                  serviceLevelObjectiveUsageMetrics:
                    - inRangeTimeRatio: 1
                      serviceLevelObjective: Basic
                      serviceLevelObjectiveId: dd6d99bb-f193-4ec1-86f2-43d3bccbc49c
                  usageBasedRecommendationServiceLevelObjective: null
                  usageBasedRecommendationServiceLevelObjectiveId: null
                type: Microsoft.Sql/servers/databases/serviceTierAdvisors
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/transparentDataEncryption/{transparentDataEncryptionName}":
    get:
      description: Gets a database's transparent data encryption configuration.
      operationId: TransparentDataEncryptions_Get
      parameters:
        - description: The API version to use for the request.
          in: query
          name: api-version
          required: true
          type: string
          x-ms-parameter-location: client
        - description: The subscription ID that identifies an Azure subscription.
          in: path
          name: subscriptionId
          required: true
          type: string
          x-ms-parameter-location: client
        - description: The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
          in: path
          name: resourceGroupName
          required: true
          type: string
          x-ms-parameter-location: method
        - $ref: "#/parameters/ServerNameParameter"
        - description: The name of the database for which the transparent data encryption applies.
          in: path
          name: databaseName
          required: true
          type: string
        - $ref: "#/parameters/TransparentDataEncryptionNameParameter"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/TransparentDataEncryption"
      tags:
        - TransparentDataEncryption
      x-ms-examples:
        Get a database's transparent data encryption configuration:
          parameters:
            api-version: 2014-04-01
            databaseName: sqlcrudtest-9187
            resourceGroupName: sqlcrudtest-6852
            serverName: sqlcrudtest-2080
            subscriptionId: 00000000-1111-2222-3333-444444444444
            transparentDataEncryptionName: current
          responses:
            "200":
              body:
                id: /subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Sql/servers/sqlcrudtest-2080/databases/sqlcrudtest-9187/transparentDataEncryption/current
                location: North Europe
                name: current
                properties:
                  status: Enabled
                type: Microsoft.Sql/servers/databases/transparentDataEncryption
    put:
      description: Creates or updates a database's transparent data encryption configuration.
      operationId: TransparentDataEncryptions_CreateOrUpdate
      parameters:
        - description: The API version to use for the request.
          in: query
          name: api-version
          required: true
          type: string
          x-ms-parameter-location: client
        - description: The subscription ID that identifies an Azure subscription.
          in: path
          name: subscriptionId
          required: true
          type: string
          x-ms-parameter-location: client
        - description: The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
          in: path
          name: resourceGroupName
          required: true
          type: string
          x-ms-parameter-location: method
        - $ref: "#/parameters/ServerNameParameter"
        - description: The name of the database for which setting the transparent data encryption applies.
          in: path
          name: databaseName
          required: true
          type: string
        - $ref: "#/parameters/TransparentDataEncryptionNameParameter"
        - description: The required parameters for creating or updating transparent data encryption.
          in: body
          name: parameters
          required: true
          schema:
            $ref: "#/definitions/TransparentDataEncryption"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/TransparentDataEncryption"
        "201":
          description: Created
          schema:
            $ref: "#/definitions/TransparentDataEncryption"
      tags:
        - TransparentDataEncryption
      x-ms-examples:
        Create or update a database's transparent data encryption configuration:
          parameters:
            api-version: 2014-04-01
            databaseName: sqlcrudtest-9187
            parameters:
              properties:
                status: Enabled
            resourceGroupName: sqlcrudtest-6852
            serverName: sqlcrudtest-2080
            subscriptionId: 00000000-1111-2222-3333-444444444444
            transparentDataEncryptionName: current
          responses:
            "200":
              body:
                id: /subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Sql/servers/sqlcrudtest-2080/databases/sqlcrudtest-9187/transparentDataEncryption/current
                location: North Europe
                name: current
                properties:
                  status: Enabled
                type: Microsoft.Sql/servers/databases/transparentDataEncryption
            "201":
              body:
                id: /subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Sql/servers/sqlcrudtest-2080/databases/sqlcrudtest-9187/transparentDataEncryption/current
                location: North Europe
                name: current
                properties:
                  status: Enabled
                type: Microsoft.Sql/servers/databases/transparentDataEncryption
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/transparentDataEncryption/{transparentDataEncryptionName}/operationResults":
    get:
      description: Returns a database's transparent data encryption operation result.
      operationId: TransparentDataEncryptionActivities_ListByConfiguration
      parameters:
        - description: The API version to use for the request.
          in: query
          name: api-version
          required: true
          type: string
          x-ms-parameter-location: client
        - description: The subscription ID that identifies an Azure subscription.
          in: path
          name: subscriptionId
          required: true
          type: string
          x-ms-parameter-location: client
        - description: The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
          in: path
          name: resourceGroupName
          required: true
          type: string
          x-ms-parameter-location: method
        - $ref: "#/parameters/ServerNameParameter"
        - description: The name of the database for which the transparent data encryption applies.
          in: path
          name: databaseName
          required: true
          type: string
        - $ref: "#/parameters/TransparentDataEncryptionNameParameter"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/TransparentDataEncryptionActivityListResult"
      tags:
        - TransparentDataEncryption
      x-ms-examples:
        List a database's transparent data encryption activities:
          parameters:
            api-version: 2014-04-01
            databaseName: sqlcrudtest-9187
            resourceGroupName: sqlcrudtest-6852
            serverName: sqlcrudtest-2080
            subscriptionId: 00000000-1111-2222-3333-444444444444
            transparentDataEncryptionName: current
          responses:
            "200":
              body:
                value:
                  - id: /subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Sql/servers/sqlcrudtest-2080/databases/sqlcrudtest-9187/transparentDataEncryption/current/operationResults/current
                    location: West US
                    name: current
                    properties:
                      percentComplete: 100
                      status: Encrypting
                    type: Microsoft.Sql/servers/databases/transparentDataEncryption/operationResults
      x-ms-pageable:
        nextLinkName: null
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/elasticPools/{elasticPoolName}/elasticPoolActivity":
    get:
      description: Returns elastic pool activities.
      operationId: ElasticPoolActivities_ListByElasticPool
      parameters:
        - description: The API version to use for the request.
          in: query
          name: api-version
          required: true
          type: string
          x-ms-parameter-location: client
        - description: The subscription ID that identifies an Azure subscription.
          in: path
          name: subscriptionId
          required: true
          type: string
          x-ms-parameter-location: client
        - description: The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
          in: path
          name: resourceGroupName
          required: true
          type: string
          x-ms-parameter-location: method
        - $ref: "#/parameters/ServerNameParameter"
        - description: The name of the elastic pool for which to get the current activity.
          in: path
          name: elasticPoolName
          required: true
          type: string
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/ElasticPoolActivityListResult"
      tags:
        - ElasticPools
      x-ms-examples:
        List Elastic pool activity:
          parameters:
            api-version: 2014-04-01
            elasticPoolName: "8749"
            resourceGroupName: sqlcrudtest-4291
            serverName: sqlcrudtest-6574
            subscriptionId: 00000000-1111-2222-3333-444444444444
          responses:
            "200":
              body:
                value:
                  - id: /subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-4291/providers/Microsoft.Sql/servers/sqlcrudtest-6574/elasticPools/8749/elasticPoolActivity/851f1672-f7f0-46f6-a262-ee9b51e18e97
                    location: Japan East
                    name: 851f1672-f7f0-46f6-a262-ee9b51e18e97
                    properties:
                      elasticPoolName: "8749"
                      endTime: 2017-02-10T02:03:23.263Z
                      errorCode: null
                      errorMessage: null
                      errorSeverity: null
                      operation: CREATE
                      operationId: 851f1672-f7f0-46f6-a262-ee9b51e18e97
                      percentComplete: 100
                      requestedDatabaseDtuCap: 5
                      requestedDatabaseDtuGuarantee: 0
                      requestedDtuGuarantee: 100
                      requestedElasticPoolName: null
                      requestedStorageLimitInGB: 9
                      requestedStorageLimitInMB: 10000
                      serverName: sqlcrudtest-6574
                      startTime: 2017-02-10T02:03:06.16Z
                      state: COMPLETED
                    type: Microsoft.Sql/servers/elasticPools/elasticPoolActivity
      x-ms-pageable:
        nextLinkName: null
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/elasticPools/{elasticPoolName}/elasticPoolDatabaseActivity":
    get:
      description: Returns activity on databases inside of an elastic pool.
      operationId: ElasticPoolDatabaseActivities_ListByElasticPool
      parameters:
        - description: The API version to use for the request.
          in: query
          name: api-version
          required: true
          type: string
          x-ms-parameter-location: client
        - description: The subscription ID that identifies an Azure subscription.
          in: path
          name: subscriptionId
          required: true
          type: string
          x-ms-parameter-location: client
        - description: The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
          in: path
          name: resourceGroupName
          required: true
          type: string
          x-ms-parameter-location: method
        - $ref: "#/parameters/ServerNameParameter"
        - description: The name of the elastic pool.
          in: path
          name: elasticPoolName
          required: true
          type: string
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/ElasticPoolDatabaseActivityListResult"
      tags:
        - ElasticPools
      x-ms-examples:
        List elastic pool database activity:
          parameters:
            api-version: 2014-04-01
            elasticPoolName: "7537"
            resourceGroupName: sqlcrudtest-4673
            serverName: sqlcrudtest-603
            subscriptionId: 9d4e2ad0-e20b-4464-9219-353bded52513
          responses:
            "200":
              body:
                value:
                  - id: /subscriptions/9d4e2ad0-e20b-4464-9219-353bded52513/resourceGroups/sqlcrudtest-4673/providers/Microsoft.Sql/servers/sqlcrudtest-603/elasticPools/7537/elasticPoolDatabaseActivity/3a3272b3-f1fe-423c-9feb-7b843157eda5
                    location: Japan East
                    name: 3a3272b3-f1fe-423c-9feb-7b843157eda5
                    properties:
                      currentElasticPoolName: "7537"
                      currentServiceObjective: ElasticPool
                      databaseName: "2396"
                      endTime: 2016-10-23T03:08:02.95
                      errorCode: null
                      errorMessage: null
                      errorSeverity: null
                      operation: UPDATE
                      operationId: 3a3272b3-f1fe-423c-9feb-7b843157eda5
                      percentComplete: 100
                      requestedElasticPoolName: null
                      requestedServiceObjective: null
                      serverName: sqlcrudtest-603
                      startTime: 2016-10-23T03:07:12.577
                      state: COMPLETED
                    type: Microsoft.Sql/servers/elasticPools/elasticPoolDatabaseActivity
                  - id: /subscriptions/9d4e2ad0-e20b-4464-9219-353bded52513/resourceGroups/sqlcrudtest-4673/providers/Microsoft.Sql/servers/sqlcrudtest-603/elasticPools/7537/elasticPoolDatabaseActivity/95108a78-384e-48d3-b4de-7bf23b93a26d
                    location: Japan East
                    name: 95108a78-384e-48d3-b4de-7bf23b93a26d
                    properties:
                      currentElasticPoolName: "7537"
                      currentServiceObjective: ElasticPool
                      databaseName: "2396"
                      endTime: 2016-10-23T03:06:49.197
                      errorCode: null
                      errorMessage: null
                      errorSeverity: null
                      operation: CREATE
                      operationId: 95108a78-384e-48d3-b4de-7bf23b93a26d
                      percentComplete: 100
                      requestedElasticPoolName: null
                      requestedServiceObjective: null
                      serverName: sqlcrudtest-603
                      startTime: 2016-10-23T03:06:11.19
                      state: COMPLETED
                    type: Microsoft.Sql/servers/elasticPools/elasticPoolDatabaseActivity
      x-ms-pageable:
        nextLinkName: null
definitions:
  ElasticPoolActivity:
    allOf:
      - allOf:
          - description: ARM 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: ARM proxy resource.
        properties: {}
        type: object
    description: Represents the activity on an elastic pool.
    properties:
      location:
        description: The geo-location where the resource lives
        type: string
        x-ms-mutability:
          - read
          - create
      properties:
        $ref: "#/definitions/ElasticPoolActivityProperties"
        description: The properties representing the resource.
        x-ms-client-flatten: true
  ElasticPoolActivityListResult:
    description: Represents the response to a list elastic pool activity request.
    properties:
      value:
        description: The list of elastic pool activities.
        items:
          $ref: "#/definitions/ElasticPoolActivity"
        type: array
    required:
      - value
  ElasticPoolActivityProperties:
    description: Represents the properties of an elastic pool.
    properties:
      elasticPoolName:
        description: The name of the elastic pool.
        readOnly: true
        type: string
      endTime:
        description: The time the operation finished (ISO8601 format).
        format: date-time
        readOnly: true
        type: string
      errorCode:
        description: The error code if available.
        format: int32
        readOnly: true
        type: integer
      errorMessage:
        description: The error message if available.
        readOnly: true
        type: string
      errorSeverity:
        description: The error severity if available.
        format: int32
        readOnly: true
        type: integer
      operation:
        description: The operation name.
        readOnly: true
        type: string
      operationId:
        description: The unique operation ID.
        format: uuid
        readOnly: true
        type: string
        x-nullable: false
      percentComplete:
        description: The percentage complete if available.
        format: int32
        readOnly: true
        type: integer
      requestedDatabaseDtuCap:
        description: The requested per database DTU cap.
        format: int32
        readOnly: true
        type: integer
      requestedDatabaseDtuGuarantee:
        description: The requested per database DTU guarantee.
        format: int32
        readOnly: true
        type: integer
      requestedDatabaseDtuMax:
        description: The requested max DTU per database if available.
        format: int32
        readOnly: true
        type: integer
      requestedDatabaseDtuMin:
        description: The requested min DTU per database if available.
        format: int32
        readOnly: true
        type: integer
      requestedDtu:
        description: The requested DTU for the pool if available.
        format: int32
        readOnly: true
        type: integer
      requestedDtuGuarantee:
        description: The requested DTU guarantee.
        format: int32
        readOnly: true
        type: integer
      requestedElasticPoolName:
        description: The requested name for the elastic pool if available.
        readOnly: true
        type: string
      requestedStorageLimitInGB:
        description: The requested storage limit for the pool in GB if available.
        format: int64
        readOnly: true
        type: integer
      requestedStorageLimitInMB:
        description: The requested storage limit in MB.
        format: int32
        readOnly: true
        type: integer
      serverName:
        description: The name of the server the elastic pool is in.
        readOnly: true
        type: string
      startTime:
        description: The time the operation started (ISO8601 format).
        format: date-time
        readOnly: true
        type: string
      state:
        description: The current state of the operation.
        readOnly: true
        type: string
  ElasticPoolDatabaseActivity:
    allOf:
      - allOf:
          - description: ARM 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: ARM proxy resource.
        properties: {}
        type: object
    description: Represents the activity on an elastic pool.
    properties:
      location:
        description: The geo-location where the resource lives
        type: string
        x-ms-mutability:
          - read
          - create
      properties:
        $ref: "#/definitions/ElasticPoolDatabaseActivityProperties"
        description: The properties representing the resource.
        x-ms-client-flatten: true
  ElasticPoolDatabaseActivityListResult:
    description: Represents the response to a list elastic pool database activity request.
    properties:
      value:
        description: The list of elastic pool database activities.
        items:
          $ref: "#/definitions/ElasticPoolDatabaseActivity"
        type: array
    required:
      - value
  ElasticPoolDatabaseActivityProperties:
    description: Represents the properties of an elastic pool database activity.
    properties:
      currentElasticPoolName:
        description: The name of the current elastic pool the database is in if available.
        readOnly: true
        type: string
      currentServiceObjective:
        description: The name of the current service objective if available.
        readOnly: true
        type: string
      databaseName:
        description: The database name.
        readOnly: true
        type: string
      endTime:
        description: The time the operation finished (ISO8601 format).
        format: date-time
        readOnly: true
        type: string
      errorCode:
        description: The error code if available.
        format: int32
        readOnly: true
        type: integer
      errorMessage:
        description: The error message if available.
        readOnly: true
        type: string
      errorSeverity:
        description: The error severity if available.
        format: int32
        readOnly: true
        type: integer
      operation:
        description: The operation name.
        readOnly: true
        type: string
      operationId:
        description: The unique operation ID.
        format: uuid
        readOnly: true
        type: string
        x-nullable: false
      percentComplete:
        description: The percentage complete if available.
        format: int32
        readOnly: true
        type: integer
      requestedElasticPoolName:
        description: The name for the elastic pool the database is moving into if available.
        readOnly: true
        type: string
      requestedServiceObjective:
        description: The name of the requested service objective if available.
        readOnly: true
        type: string
      serverName:
        description: The name of the server the elastic pool is in.
        readOnly: true
        type: string
      startTime:
        description: The time the operation started (ISO8601 format).
        format: date-time
        readOnly: true
        type: string
      state:
        description: The current state of the operation.
        readOnly: true
        type: string
  OperationImpact:
    description: The impact of an operation, both in absolute and relative terms.
    properties:
      changeValueAbsolute:
        description: The absolute impact to dimension.
        format: double
        readOnly: true
        type: number
      changeValueRelative:
        description: The relative impact to dimension (null if not applicable)
        format: double
        readOnly: true
        type: number
      name:
        description: The name of the impact dimension.
        readOnly: true
        type: string
      unit:
        description: The unit in which estimated impact to dimension is measured.
        readOnly: true
        type: string
  RecommendedIndex:
    allOf:
      - allOf:
          - description: ARM 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: ARM proxy resource.
        properties: {}
        type: object
    description: Represents a database recommended index.
    properties:
      properties:
        $ref: "#/definitions/RecommendedIndexProperties"
        description: The properties representing the resource.
        readOnly: true
        x-ms-client-flatten: true
  RecommendedIndexProperties:
    description: Represents the properties of a database recommended index.
    properties:
      action:
        description: The proposed index action. You can create a missing index, drop an unused index, or rebuild an existing index to improve its performance.
        enum:
          - Create
          - Drop
          - Rebuild
        readOnly: true
        type: string
        x-ms-enum:
          name: RecommendedIndexAction
      columns:
        description: Columns over which to build index
        items:
          type: string
        readOnly: true
        type: array
      created:
        description: The UTC datetime showing when this resource was created (ISO8601 format).
        format: date-time
        readOnly: true
        type: string
      estimatedImpact:
        description: The estimated impact of doing recommended index action.
        items:
          $ref: "#/definitions/OperationImpact"
        readOnly: true
        type: array
      includedColumns:
        description: The list of column names to be included in the index
        items:
          type: string
        readOnly: true
        type: array
      indexScript:
        description: The full build index script
        readOnly: true
        type: string
      indexType:
        description: The type of index (CLUSTERED, NONCLUSTERED, COLUMNSTORE, CLUSTERED COLUMNSTORE)
        enum:
          - CLUSTERED
          - NONCLUSTERED
          - COLUMNSTORE
          - CLUSTERED COLUMNSTORE
        readOnly: true
        type: string
        x-ms-enum:
          name: RecommendedIndexType
      lastModified:
        description: The UTC datetime of when was this resource last changed (ISO8601 format).
        format: date-time
        readOnly: true
        type: string
      reportedImpact:
        description: The values reported after index action is complete.
        items:
          $ref: "#/definitions/OperationImpact"
        readOnly: true
        type: array
      schema:
        description: The schema where table to build index over resides
        readOnly: true
        type: string
      state:
        description: The current recommendation state.
        enum:
          - Active
          - Pending
          - Executing
          - Verifying
          - Pending Revert
          - Reverting
          - Reverted
          - Ignored
          - Expired
          - Blocked
          - Success
        readOnly: true
        type: string
        x-ms-enum:
          name: RecommendedIndexState
      table:
        description: The table on which to build index.
        readOnly: true
        type: string
  ServiceTierAdvisor:
    allOf:
      - allOf:
          - description: ARM 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: ARM proxy resource.
        properties: {}
        type: object
    description: Represents a Service Tier Advisor.
    properties:
      properties:
        $ref: "#/definitions/ServiceTierAdvisorProperties"
        description: The properties representing the resource.
        readOnly: true
        x-ms-client-flatten: true
  ServiceTierAdvisorListResult:
    description: Represents the response to a list service tier advisor request.
    properties:
      value:
        description: The list of service tier advisors for specified database.
        items:
          $ref: "#/definitions/ServiceTierAdvisor"
        type: array
    required:
      - value
  ServiceTierAdvisorProperties:
    description: Represents the properties of a Service Tier Advisor.
    properties:
      activeTimeRatio:
        description: The activeTimeRatio for service tier advisor.
        format: double
        readOnly: true
        type: number
      avgDtu:
        description: Gets or sets avgDtu for service tier advisor.
        format: double
        readOnly: true
        type: number
      confidence:
        description: Gets or sets confidence for service tier advisor.
        format: double
        readOnly: true
        type: number
        x-nullable: false
      currentServiceLevelObjective:
        description: Gets or sets currentServiceLevelObjective for service tier advisor.
        readOnly: true
        type: string
      currentServiceLevelObjectiveId:
        description: Gets or sets currentServiceLevelObjectiveId for service tier advisor.
        format: uuid
        readOnly: true
        type: string
      databaseSizeBasedRecommendationServiceLevelObjective:
        description: Gets or sets databaseSizeBasedRecommendationServiceLevelObjective for service tier advisor.
        readOnly: true
        type: string
      databaseSizeBasedRecommendationServiceLevelObjectiveId:
        description: Gets or sets databaseSizeBasedRecommendationServiceLevelObjectiveId for service tier advisor.
        format: uuid
        readOnly: true
        type: string
      disasterPlanBasedRecommendationServiceLevelObjective:
        description: Gets or sets disasterPlanBasedRecommendationServiceLevelObjective for service tier advisor.
        readOnly: true
        type: string
      disasterPlanBasedRecommendationServiceLevelObjectiveId:
        description: Gets or sets disasterPlanBasedRecommendationServiceLevelObjectiveId for service tier advisor.
        format: uuid
        readOnly: true
        type: string
      maxDtu:
        description: Gets or sets maxDtu for service tier advisor.
        format: double
        readOnly: true
        type: number
      maxSizeInGB:
        description: Gets or sets maxSizeInGB for service tier advisor.
        format: double
        readOnly: true
        type: number
      minDtu:
        description: Gets or sets minDtu for service tier advisor.
        format: double
        readOnly: true
        type: number
      observationPeriodEnd:
        description: The observation period start (ISO8601 format).
        format: date-time
        readOnly: true
        type: string
      observationPeriodStart:
        description: The observation period start (ISO8601 format).
        format: date-time
        readOnly: true
        type: string
      overallRecommendationServiceLevelObjective:
        description: Gets or sets overallRecommendationServiceLevelObjective for service tier advisor.
        readOnly: true
        type: string
      overallRecommendationServiceLevelObjectiveId:
        description: Gets or sets overallRecommendationServiceLevelObjectiveId for service tier advisor.
        format: uuid
        readOnly: true
        type: string
      serviceLevelObjectiveUsageMetrics:
        description: Gets or sets serviceLevelObjectiveUsageMetrics for the service tier advisor.
        items:
          $ref: "#/definitions/SloUsageMetric"
        readOnly: true
        type: array
      usageBasedRecommendationServiceLevelObjective:
        description: Gets or sets usageBasedRecommendationServiceLevelObjective for service tier advisor.
        readOnly: true
        type: string
      usageBasedRecommendationServiceLevelObjectiveId:
        description: Gets or sets usageBasedRecommendationServiceLevelObjectiveId for service tier advisor.
        format: uuid
        readOnly: true
        type: string
  SloUsageMetric:
    description: A Slo Usage Metric.
    properties:
      inRangeTimeRatio:
        description: Gets or sets inRangeTimeRatio for SLO usage metric.
        format: double
        readOnly: true
        type: number
        x-nullable: false
      serviceLevelObjective:
        description: The serviceLevelObjective for SLO usage metric.
        enum:
          - System
          - System0
          - System1
          - System2
          - System3
          - System4
          - System2L
          - System3L
          - System4L
          - Free
          - Basic
          - S0
          - S1
          - S2
          - S3
          - S4
          - S6
          - S7
          - S9
          - S12
          - P1
          - P2
          - P3
          - P4
          - P6
          - P11
          - P15
          - PRS1
          - PRS2
          - PRS4
          - PRS6
          - DW100
          - DW200
          - DW300
          - DW400
          - DW500
          - DW600
          - DW1000
          - DW1200
          - DW1000c
          - DW1500
          - DW1500c
          - DW2000
          - DW2000c
          - DW3000
          - DW2500c
          - DW3000c
          - DW6000
          - DW5000c
          - DW6000c
          - DW7500c
          - DW10000c
          - DW15000c
          - DW30000c
          - DS100
          - DS200
          - DS300
          - DS400
          - DS500
          - DS600
          - DS1000
          - DS1200
          - DS1500
          - DS2000
          - ElasticPool
        readOnly: true
        type: string
        x-ms-enum:
          modelAsString: true
          name: ServiceObjectiveName
      serviceLevelObjectiveId:
        description: The serviceLevelObjectiveId for SLO usage metric.
        format: uuid
        readOnly: true
        type: string
        x-nullable: false
  TransparentDataEncryption:
    allOf:
      - allOf:
          - description: ARM 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: ARM proxy resource.
        properties: {}
        type: object
    description: Represents a database transparent data encryption configuration.
    properties:
      location:
        description: Resource location.
        readOnly: true
        type: string
      properties:
        $ref: "#/definitions/TransparentDataEncryptionProperties"
        description: Represents the properties of the resource.
        x-ms-client-flatten: true
  TransparentDataEncryptionActivity:
    allOf:
      - allOf:
          - description: ARM 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: ARM proxy resource.
        properties: {}
        type: object
    description: Represents a database transparent data encryption Scan.
    properties:
      location:
        description: Resource location.
        readOnly: true
        type: string
      properties:
        $ref: "#/definitions/TransparentDataEncryptionActivityProperties"
        description: Represents the properties of the resource.
        x-ms-client-flatten: true
  TransparentDataEncryptionActivityListResult:
    description: Represents the response to a list database transparent data encryption activity request.
    properties:
      value:
        description: The list of database transparent data encryption activities.
        items:
          $ref: "#/definitions/TransparentDataEncryptionActivity"
        type: array
    required:
      - value
  TransparentDataEncryptionActivityProperties:
    description: Represents the properties of a database transparent data encryption Scan.
    properties:
      percentComplete:
        description: The percent complete of the transparent data encryption scan for a database.
        format: float
        readOnly: true
        type: number
      status:
        description: The status of the database.
        enum:
          - Encrypting
          - Decrypting
        readOnly: true
        type: string
        x-ms-enum:
          modelAsString: true
          name: TransparentDataEncryptionActivityStatus
  TransparentDataEncryptionProperties:
    description: Represents the properties of a database transparent data encryption.
    properties:
      status:
        description: The status of the database transparent data encryption.
        enum:
          - Enabled
          - Disabled
        type: string
        x-ms-enum:
          name: TransparentDataEncryptionStatus
