swagger: "2.0"
schemes:
  - https
host: management.azure.com
info:
  description: The Microsoft Azure management API provides create, read, update, and delete functionality for Azure MySQL resources including servers, databases, firewall rules, log files and configurations.
  title: MySQLManagementClient
  version: 2017-04-30-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/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-04-30-preview/mysql.json
      version: "2.0"
  x-preferred: false
  x-providerName: azure.com
  x-serviceName: mysql
  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:
  ApiVersionParameter:
    description: The API version to use for the request.
    in: query
    name: api-version
    required: true
    type: string
  ConfigurationNameParameter:
    description: The name of the server configuration.
    in: path
    name: configurationName
    required: true
    type: string
    x-ms-parameter-location: method
  DatabaseNameParameter:
    description: The name of the database.
    in: path
    name: databaseName
    required: true
    type: string
    x-ms-parameter-location: method
  FirewallRuleNameParameter:
    description: The name of the server firewall rule.
    in: path
    name: firewallRuleName
    required: true
    type: string
    x-ms-parameter-location: method
  LocationNameParameter:
    description: The name of the location.
    in: path
    name: locationName
    required: true
    type: string
    x-ms-parameter-location: method
  ResourceGroupParameter:
    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
  ServerNameParameter:
    description: The name of the server.
    in: path
    name: serverName
    required: true
    type: string
    x-ms-parameter-location: method
  SubscriptionIdParameter:
    description: The subscription ID that identifies an Azure subscription.
    in: path
    name: subscriptionId
    required: true
    type: string
paths:
  /providers/Microsoft.DBforMySQL/operations:
    get:
      description: Lists all of the available REST API operations.
      operationId: Operations_List
      parameters:
        - $ref: "#/parameters/ApiVersionParameter"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/OperationListResult"
      tags:
        - Operations
      x-ms-examples:
        OperationList:
          parameters:
            api-version: 2017-04-30-preview
          responses:
            "200":
              body:
                value:
                  - display:
                      description: Return the list of firewall rules for a server or gets the properties for the specified firewall rule.
                      operation: List/Get Firewall Rules
                      provider: Microsoft DB for MySQL
                      resource: Firewall Rules
                    name: Microsoft.DBforMySQL/servers/firewallRules/read
                  - display:
                      description: Creates a firewall rule with the specified parameters or update an existing rule.
                      operation: Create/Update Firewall Rule
                      provider: Microsoft DB for MySQL
                      resource: Firewall Rules
                    name: Microsoft.DBforMySQL/servers/firewallRules/write
                  - display:
                      description: Deletes an existing firewall rule.
                      operation: Delete Firewall Rule
                      provider: Microsoft DB for MySQL
                      resource: Firewall Rules
                    name: Microsoft.DBforMySQL/servers/firewallRules/delete
                  - display:
                      description: Return the list of servers or gets the properties for the specified server.
                      operation: List/Get MySQL Servers
                      provider: Microsoft DB for MySQL
                      resource: MySQL Server
                    name: Microsoft.DBforMySQL/servers/read
                  - display:
                      description: Creates a server with the specified parameters or update the properties or tags for the specified server.
                      operation: Create/Update MySQL Server
                      provider: Microsoft DB for MySQL
                      resource: MySQL Server
                    name: Microsoft.DBforMySQL/servers/write
                  - display:
                      description: Deletes an existing server.
                      operation: Delete MySQL Server
                      provider: Microsoft DB for MySQL
                      resource: MySQL Server
                    name: Microsoft.DBforMySQL/servers/delete
                  - display:
                      description: Returns the list of Performance Tiers available.
                      operation: List Performance Tiers
                      provider: Microsoft DB for MySQL
                      resource: Performance Tiers
                    name: Microsoft.DBforMySQL/performanceTiers/read
                  - display:
                      description: Return types of metrics that are available for databases
                      operation: Get database metric definitions
                      provider: Microsoft DB for MySQL
                      resource: Database Metric Definition
                    name: Microsoft.DBforMySQL/servers/providers/Microsoft.Insights/metricDefinitions/read
                    properties:
                      serviceSpecification:
                        metricSpecifications:
                          - aggregationType: Average
                            displayDescription: CPU percent
                            displayName: CPU percent
                            fillGapWithZero: true
                            name: cpu_percent
                            unit: Percent
                          - aggregationType: Average
                            displayDescription: Compute limit
                            displayName: Compute limit
                            name: compute_limit
                            unit: Count
                          - aggregationType: Average
                            displayDescription: Compute percentage
                            displayName: Compute percentage
                            fillGapWithZero: true
                            name: compute_consumption_percent
                            unit: Percent
                          - aggregationType: Average
                            displayDescription: Memory percent
                            displayName: Memory percent
                            fillGapWithZero: true
                            name: memory_percent
                            unit: Percent
                          - aggregationType: Average
                            displayDescription: IO percent
                            displayName: IO percent
                            fillGapWithZero: true
                            name: io_consumption_percent
                            unit: Percent
                          - aggregationType: Average
                            displayDescription: Storage percentage
                            displayName: Storage percentage
                            name: storage_percent
                            unit: Percent
                          - aggregationType: Average
                            displayDescription: Storage used
                            displayName: Storage used
                            name: storage_used
                            unit: Bytes
                          - aggregationType: Average
                            displayDescription: Storage limit
                            displayName: Storage limit
                            name: storage_limit
                            unit: Bytes
                          - aggregationType: Average
                            displayDescription: Total active connections
                            displayName: Total active connections
                            fillGapWithZero: true
                            name: active_connections
                            unit: Count
                          - aggregationType: Average
                            displayDescription: Total failed connections
                            displayName: Total failed connections
                            fillGapWithZero: true
                            name: connections_failed
                            unit: Count
                  - display:
                      description: Gets the disagnostic setting for the resource
                      operation: Read diagnostic setting
                      provider: Microsoft DB for MySQL
                      resource: Database Metric Definition
                    name: Microsoft.DBforMySQL/servers/providers/Microsoft.Insights/diagnosticSettings/read
                  - display:
                      description: Creates or updates the diagnostic setting for the resource
                      operation: Write diagnostic setting
                      provider: Microsoft DB for MySQL
                      resource: Database Metric Definition
                    name: Microsoft.DBforMySQL/servers/providers/Microsoft.Insights/diagnosticSettings/write
  "/subscriptions/{subscriptionId}/providers/Microsoft.DBforMySQL/checkNameAvailability":
    post:
      description: Check the availability of name for resource
      operationId: CheckNameAvailability_Execute
      parameters:
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
        - description: The required parameters for checking if resource name is available.
          in: body
          name: nameAvailabilityRequest
          required: true
          schema:
            $ref: "#/definitions/NameAvailabilityRequest"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/NameAvailability"
      tags:
        - CheckNameAvailability
      x-ms-examples:
        NameAvailability:
          parameters:
            api-version: 2017-04-30-preview
            nameAvailabilityRequest:
              name: name1
              type: Microsoft.DBforMySQL
            subscriptionId: ffffffff-ffff-ffff-ffff-ffffffffffff
          responses:
            "200":
              body:
                message: ""
                nameAvailable: true
                reason: ""
  "/subscriptions/{subscriptionId}/providers/Microsoft.DBforMySQL/locations/{locationName}/performanceTiers":
    get:
      description: List all the performance tiers at specified location in a given subscription.
      operationId: LocationBasedPerformanceTier_List
      parameters:
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
        - $ref: "#/parameters/LocationNameParameter"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/PerformanceTierListResult"
      tags:
        - LocationBasedPerformanceTier
      x-ms-examples:
        PerformanceTiersList:
          parameters:
            api-version: 2017-04-30-preview
            locationName: WestUS
            subscriptionId: ffffffff-ffff-ffff-ffff-ffffffffffff
          responses:
            "200":
              body:
                value:
                  - backupRetentionDays: 7
                    id: Basic
                    serviceLevelObjectives:
                      - dtu: 50
                        edition: Basic
                        id: MYSQLB50
                        storageMB: 51200
                      - dtu: 100
                        edition: Basic
                        id: MYSQLB100
                        storageMB: 51200
                  - backupRetentionDays: 35
                    id: Standard
                    serviceLevelObjectives:
                      - dtu: 100
                        edition: Standard
                        id: MYSQLS100
                        storageMB: 128000
                      - dtu: 200
                        edition: Standard
                        id: MYSQLS200
                        storageMB: 128000
                      - dtu: 400
                        edition: Standard
                        id: MYSQLS400
                        storageMB: 128000
                      - dtu: 800
                        edition: Standard
                        id: MYSQLS800
                        storageMB: 128000
      x-ms-pageable: {}
  "/subscriptions/{subscriptionId}/providers/Microsoft.DBforMySQL/performanceTiers":
    get:
      description: List all the performance tiers in a given subscription.
      operationId: PerformanceTiers_List
      parameters:
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/PerformanceTierListResult"
      tags:
        - PerformanceTiers
      x-ms-examples:
        PerformanceTiersList:
          parameters:
            api-version: 2017-04-30-preview
            subscriptionId: ffffffff-ffff-ffff-ffff-ffffffffffff
          responses:
            "200":
              body:
                value:
                  - backupRetentionDays: 7
                    id: Basic
                    serviceLevelObjectives:
                      - dtu: 50
                        edition: Basic
                        id: MYSQLB50
                        storageMB: 51200
                      - dtu: 100
                        edition: Basic
                        id: MYSQLB100
                        storageMB: 51200
                  - backupRetentionDays: 35
                    id: Standard
                    serviceLevelObjectives:
                      - dtu: 100
                        edition: Standard
                        id: MYSQLS100
                        storageMB: 128000
                      - dtu: 200
                        edition: Standard
                        id: MYSQLS200
                        storageMB: 128000
                      - dtu: 400
                        edition: Standard
                        id: MYSQLS400
                        storageMB: 128000
                      - dtu: 800
                        edition: Standard
                        id: MYSQLS800
                        storageMB: 128000
      x-ms-pageable: {}
  "/subscriptions/{subscriptionId}/providers/Microsoft.DBforMySQL/servers":
    get:
      description: List all the servers in a given subscription.
      operationId: Servers_List
      parameters:
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/ServerListResult"
      tags:
        - Servers
      x-ms-examples:
        ServerList:
          parameters:
            api-version: 2017-04-30-preview
            subscriptionId: ffffffff-ffff-ffff-ffff-ffffffffffff
          responses:
            "200":
              body:
                value:
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver
                    location: onebox
                    name: testserver
                    properties:
                      administratorLogin: cloudsa
                      fullyQualifiedDomainName: testserver.test-vm1.onebox.xdb.mscds.com
                      sslEnforcement: Enabled
                      storageMB: 1024
                      userVisibleState: Ready
                    sku:
                      capacity: 100
                      name: MYSQLS3M100
                      tier: Basic
                    tags:
                      elasticServer: "1"
                    type: Microsoft.DBforMySQL/servers
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/serv1
                    location: onebox
                    name: serv1
                    properties:
                      administratorLogin: cloudsa
                      fullyQualifiedDomainName: serv1.test-vm1.onebox.xdb.mscds.com
                      sslEnforcement: Enabled
                      storageMB: 1024
                      userVisibleState: Ready
                    sku:
                      capacity: 100
                      name: MYSQLS3M100
                      tier: Basic
                    tags:
                      elasticServer: "1"
                    type: Microsoft.DBforMySQL/servers
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup2/providers/Microsoft.DBforMySQL/servers/serv2
                    location: onebox
                    name: serv2
                    properties:
                      administratorLogin: cloudsa
                      fullyQualifiedDomainName: serv2.test-vm1.onebox.xdb.mscds.com
                      sslEnforcement: Enabled
                      storageMB: 1024
                      userVisibleState: Ready
                    sku:
                      capacity: 100
                      name: MYSQLS3M100
                      tier: Basic
                    tags:
                      elasticServer: "1"
                    type: Microsoft.DBforMySQL/servers
      x-ms-pageable: {}
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers":
    get:
      description: List all the servers in a given resource group.
      operationId: Servers_ListByResourceGroup
      parameters:
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
        - $ref: "#/parameters/ResourceGroupParameter"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/ServerListResult"
      tags:
        - Servers
      x-ms-examples:
        ServerListByResourceGroup:
          parameters:
            api-version: 2017-04-30-preview
            resourceGroupName: TestGroup
            subscriptionId: ffffffff-ffff-ffff-ffff-ffffffffffff
          responses:
            "200":
              body:
                value:
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/serv1
                    location: onebox
                    name: serv1
                    properties:
                      administratorLogin: cloudsa
                      fullyQualifiedDomainName: serv1.test-vm1.onebox.xdb.mscds.com
                      sslEnforcement: Enabled
                      storageMB: 1024
                      userVisibleState: Ready
                    sku:
                      capacity: 100
                      name: MYSQLS3M100
                      tier: Basic
                    tags:
                      elasticServer: "1"
                    type: Microsoft.DBforMySQL/servers
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver
                    location: onebox
                    name: testserver
                    properties:
                      administratorLogin: cloudsa
                      fullyQualifiedDomainName: testserver.test-vm1.onebox.xdb.mscds.com
                      sslEnforcement: Enabled
                      storageMB: 1024
                      userVisibleState: Ready
                    sku:
                      capacity: 100
                      name: MYSQLS3M100
                      tier: Basic
                    tags:
                      elasticServer: "1"
                    type: Microsoft.DBforMySQL/servers
      x-ms-pageable: {}
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}":
    delete:
      description: Deletes a server.
      operationId: Servers_Delete
      parameters:
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
        - $ref: "#/parameters/ResourceGroupParameter"
        - $ref: "#/parameters/ServerNameParameter"
      responses:
        "200":
          description: OK
        "202":
          description: Accepted
        "204":
          description: NoContent
      tags:
        - Servers
      x-ms-examples:
        ServerDelete:
          parameters:
            api-version: 2017-04-30-preview
            resourceGroupName: TestGroup
            serverName: testserver
            subscriptionId: ffffffff-ffff-ffff-ffff-ffffffffffff
          responses:
            "200": {}
            "202": {}
            "204": {}
      x-ms-long-running-operation: true
    get:
      description: Gets information about a server.
      operationId: Servers_Get
      parameters:
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
        - $ref: "#/parameters/ResourceGroupParameter"
        - $ref: "#/parameters/ServerNameParameter"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/Server"
      tags:
        - Servers
      x-ms-examples:
        ServerGet:
          parameters:
            api-version: 2017-04-30-preview
            resourceGroupName: TestGroup
            serverName: testserver
            subscriptionId: ffffffff-ffff-ffff-ffff-ffffffffffff
          responses:
            "200":
              body:
                id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver
                location: onebox
                name: testserver
                properties:
                  administratorLogin: cloudsa
                  fullyQualifiedDomainName: testserver.test-vm1.onebox.xdb.mscds.com
                  sslEnforcement: Enabled
                  storageMB: 1024
                  userVisibleState: Ready
                sku:
                  capacity: 100
                  name: MYSQLS3M100
                  tier: Basic
                tags:
                  elasticServer: "1"
                type: Microsoft.DBforMySQL/servers
    patch:
      description: Updates an existing server. The request body can contain one to many of the properties present in the normal server definition.
      operationId: Servers_Update
      parameters:
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
        - $ref: "#/parameters/ResourceGroupParameter"
        - $ref: "#/parameters/ServerNameParameter"
        - description: The required parameters for updating a server.
          in: body
          name: parameters
          required: true
          schema:
            $ref: "#/definitions/ServerUpdateParameters"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/Server"
        "202":
          description: Accepted
      tags:
        - Servers
      x-ms-examples:
        ServerUpdate:
          parameters:
            api-version: 2017-04-30-preview
            parameters:
              properties:
                administratorLoginPassword: newpassword
                sslEnforcement: Disabled
            resourceGroupName: TestGroup
            serverName: testserver
            subscriptionId: ffffffff-ffff-ffff-ffff-ffffffffffff
          responses:
            "200":
              body:
                id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver
                location: onebox
                name: testserver
                properties:
                  administratorLogin: cloudsa
                  fullyQualifiedDomainName: testserver.test-vm1.onebox.xdb.mscds.com
                  sslEnforcement: Disabled
                  storageMB: 1024
                  userVisibleState: Ready
                sku:
                  capacity: 100
                  name: MYSQLS3M100
                  tier: Basic
                tags:
                  elasticServer: "1"
                type: Microsoft.DBforMySQL/servers
            "202": {}
      x-ms-long-running-operation: true
    put:
      description: Creates a new server or updates an existing server. The update action will overwrite the existing server.
      operationId: Servers_CreateOrUpdate
      parameters:
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
        - $ref: "#/parameters/ResourceGroupParameter"
        - $ref: "#/parameters/ServerNameParameter"
        - description: The required parameters for creating or updating a server.
          in: body
          name: parameters
          required: true
          schema:
            $ref: "#/definitions/ServerForCreate"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/Server"
        "201":
          description: Created
          schema:
            $ref: "#/definitions/Server"
        "202":
          description: Accepted
      tags:
        - Servers
      x-ms-examples:
        ServerCreate:
          parameters:
            api-version: 2017-04-30-preview
            parameters:
              location: OneBox
              properties:
                administratorLogin: cloudsa
                administratorLoginPassword: password
                createMode: Default
                sslEnforcement: Enabled
                storageMB: 1024
              sku:
                capacity: 100
                name: SkuName
                tier: Basic
              tags:
                ElasticServer: "1"
            resourceGroupName: TestGroup
            serverName: testserver
            subscriptionId: ffffffff-ffff-ffff-ffff-ffffffffffff
          responses:
            "200":
              body:
                id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver
                location: onebox
                name: testserver
                properties:
                  administratorLogin: cloudsa
                  fullyQualifiedDomainName: testserver.test-vm1.onebox.xdb.mscds.com
                  sslEnforcement: Enabled
                  storageMB: 1024
                  userVisibleState: Ready
                sku:
                  capacity: 100
                  name: MYSQLS3M100
                  tier: Basic
                tags:
                  elasticServer: "1"
                type: Microsoft.DBforMySQL/servers
            "201":
              body:
                id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver
                location: onebox
                name: testserver
                properties:
                  administratorLogin: cloudsa
                  fullyQualifiedDomainName: testserver.test-vm1.onebox.xdb.mscds.com
                  sslEnforcement: Enabled
                  storageMB: 1024
                  userVisibleState: Ready
                sku:
                  capacity: 100
                  name: MYSQLS3M100
                  tier: Basic
                tags:
                  elasticServer: "1"
                type: Microsoft.DBforMySQL/servers
            "202": {}
      x-ms-long-running-operation: true
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/configurations":
    get:
      description: List all the configurations in a given server.
      operationId: Configurations_ListByServer
      parameters:
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
        - $ref: "#/parameters/ResourceGroupParameter"
        - $ref: "#/parameters/ServerNameParameter"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/ConfigurationListResult"
      tags:
        - Configurations
      x-ms-examples:
        ConfigurationList:
          parameters:
            api-version: 2017-04-30-preview
            resourceGroupName: TestGroup
            serverName: testserver
            subscriptionId: ffffffff-ffff-ffff-ffff-ffffffffffff
          responses:
            "200":
              body:
                value:
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/event_scheduler
                    name: event_scheduler
                    properties:
                      allowedValues: ON,OFF,DISABLED
                      dataType: Enumeration
                      defaultValue: OFF
                      description: Indicates the status of the Event Scheduler.
                      source: system-default
                      value: OFF
                    type: Microsoft.DBforMySQL/servers/configurations
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/div_precision_increment
                    name: div_precision_increment
                    properties:
                      allowedValues: 0-30
                      dataType: Integer
                      defaultValue: "4"
                      description: Number of digits by which to increase the scale of the result of division operations.
                      source: system-default
                      value: "4"
                    type: Microsoft.DBforMySQL/servers/configurations
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/group_concat_max_len
                    name: group_concat_max_len
                    properties:
                      allowedValues: 4-16777216
                      dataType: Integer
                      defaultValue: "1024"
                      description: Maximum allowed result length in bytes for the GROUP_CONCAT().
                      source: system-default
                      value: "1024"
                    type: Microsoft.DBforMySQL/servers/configurations
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/innodb_adaptive_hash_index
                    name: innodb_adaptive_hash_index
                    properties:
                      allowedValues: ON,OFF
                      dataType: Enumeration
                      defaultValue: ON
                      description: Whether innodb adaptive hash indexes are enabled or disabled.
                      source: system-default
                      value: ON
                    type: Microsoft.DBforMySQL/servers/configurations
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/innodb_lock_wait_timeout
                    name: innodb_lock_wait_timeout
                    properties:
                      allowedValues: 1-3600
                      dataType: Integer
                      defaultValue: "50"
                      description: The length of time in seconds an InnoDB transaction waits for a row lock before giving up.
                      source: system-default
                      value: "50"
                    type: Microsoft.DBforMySQL/servers/configurations
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/interactive_timeout
                    name: interactive_timeout
                    properties:
                      allowedValues: 10-1800
                      dataType: Integer
                      defaultValue: "1800"
                      description: Number of seconds the server waits for activity on an interactive connection before closing it.
                      source: system-default
                      value: "1800"
                    type: Microsoft.DBforMySQL/servers/configurations
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/log_queries_not_using_indexes
                    name: log_queries_not_using_indexes
                    properties:
                      allowedValues: ON,OFF
                      dataType: Enumeration
                      defaultValue: OFF
                      description: Logs queries that are expected to retrieve all rows to slow query log.
                      source: system-default
                      value: OFF
                    type: Microsoft.DBforMySQL/servers/configurations
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/log_throttle_queries_not_using_indexes
                    name: log_throttle_queries_not_using_indexes
                    properties:
                      allowedValues: 0-4294967295
                      dataType: Integer
                      defaultValue: "0"
                      description: Limits the number of such queries per minute that can be written to the slow query log.
                      source: system-default
                      value: "0"
                    type: Microsoft.DBforMySQL/servers/configurations
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/log_slow_admin_statements
                    name: log_slow_admin_statements
                    properties:
                      allowedValues: ON,OFF
                      dataType: Enumeration
                      defaultValue: OFF
                      description: Include slow administrative statements in the statements written to the slow query log.
                      source: system-default
                      value: OFF
                    type: Microsoft.DBforMySQL/servers/configurations
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/log_bin_trust_function_creators
                    name: log_bin_trust_function_creators
                    properties:
                      allowedValues: ON,OFF,FALSE
                      dataType: Enumeration
                      defaultValue: OFF
                      description: This variable applies when binary logging is enabled. It controls whether stored function creators can be trusted not to create stored functions that will cause unsafe events to be written to the binary log.
                      source: system-default
                      value: OFF
                    type: Microsoft.DBforMySQL/servers/configurations
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/long_query_time
                    name: long_query_time
                    properties:
                      allowedValues: 1-1E+100
                      dataType: Numeric
                      defaultValue: "10"
                      description: If a query takes longer than this many seconds, the server increments the Slow_queries status variable.
                      source: system-default
                      value: "10"
                    type: Microsoft.DBforMySQL/servers/configurations
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/min_examined_row_limit
                    name: min_examined_row_limit
                    properties:
                      allowedValues: 0-18446744073709551615
                      dataType: Integer
                      defaultValue: "0"
                      description: Can be used to cause queries which examine fewer than the stated number of rows not to be logged.
                      source: system-default
                      value: "0"
                    type: Microsoft.DBforMySQL/servers/configurations
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/slow_query_log
                    name: slow_query_log
                    properties:
                      allowedValues: ON,OFF
                      dataType: Enumeration
                      defaultValue: OFF
                      description: Enable or disable the slow query log
                      source: system-default
                      value: OFF
                    type: Microsoft.DBforMySQL/servers/configurations
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/sql_mode
                    name: sql_mode
                    properties:
                      allowedValues: ",ALLOW_INVALID_DATES,ANSI_QUOTES,ERROR_FOR_DIVISION_BY_ZERO,HIGH_NOT_PRECEDENCE,IGNORE_SPACE,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_BACKSLASH_ESCAPES,NO_DIR_IN_CREATE,NO_ENGINE_SUBSTITUTION,NO_FIELD_OPTIONS,NO_KEY_OPTIONS,NO_TABLE_OPTIONS,NO_UNSIGNED_SUBTRACTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ONLY_FULL_GROUP_BY,PAD_CHAR_TO_FULL_LENGTH,PIPES_AS_CONCAT,REAL_AS_FLOAT,STRICT_ALL_TABLES,STRICT_TRANS_TABLES"
                      dataType: Set
                      defaultValue: ""
                      description: The current server SQL mode.
                      source: system-default
                      value: ""
                    type: Microsoft.DBforMySQL/servers/configurations
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/wait_timeout
                    name: wait_timeout
                    properties:
                      allowedValues: 60-240
                      dataType: Integer
                      defaultValue: "120"
                      description: The number of seconds the server waits for activity on a noninteractive connection before closing it.
                      source: system-default
                      value: "120"
                    type: Microsoft.DBforMySQL/servers/configurations
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/server_id
                    name: server_id
                    properties:
                      allowedValues: 1000-4294967295
                      dataType: Integer
                      defaultValue: "1000"
                      description: The server ID, used in replication to give each master and slave a unique identity.
                      source: user-override
                      value: "1129667931"
                    type: Microsoft.DBforMySQL/servers/configurations
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/max_allowed_packet
                    name: max_allowed_packet
                    properties:
                      allowedValues: 1024-1073741824
                      dataType: Integer
                      defaultValue: "536870912"
                      description: The maximum size of one packet or any generated/intermediate string, or any parameter sent by the mysql_stmt_send_long_data() C API function.
                      source: system-default
                      value: "536870912"
                    type: Microsoft.DBforMySQL/servers/configurations
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/slave_net_timeout
                    name: slave_net_timeout
                    properties:
                      allowedValues: 30-3600
                      dataType: Integer
                      defaultValue: "60"
                      description: The number of seconds to wait for more data from the master before the slave considers the connection broken, aborts the read, and tries to reconnect.
                      source: system-default
                      value: "60"
                    type: Microsoft.DBforMySQL/servers/configurations
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/time_zone
                    name: time_zone
                    properties:
                      allowedValues: "[+|-][0]{0,1}[0-9]:[0-5][0-9]|[+|-][1][0-2]:[0-5][0-9]|SYSTEM"
                      dataType: String
                      defaultValue: SYSTEM
                      description: The server time zone
                      source: system-default
                      value: SYSTEM
                    type: Microsoft.DBforMySQL/servers/configurations
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/character_set_server
                    name: character_set_server
                    properties:
                      allowedValues: BIG5,DEC8,CP850,HP8,KOI8R,LATIN1,LATIN2,SWE7,ASCII,UJIS,SJIS,HEBREW,TIS620,EUCKR,KOI8U,GB2312,GREEK,CP1250,GBK,LATIN5,ARMSCII8,UTF8,UCS2,CP866,KEYBCS2,MACCE,MACROMAN,CP852,LATIN7,UTF8MB4,CP1251,UTF16,CP1256,CP1257,UTF32,BINARY,GEOSTD8,CP932,EUCJPMS
                      dataType: Enumeration
                      defaultValue: latin1
                      description: Use charset_name as the default server character set.
                      source: system-default
                      value: latin1
                    type: Microsoft.DBforMySQL/servers/configurations
      x-ms-pageable: {}
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/configurations/{configurationName}":
    get:
      description: Gets information about a configuration of server.
      operationId: Configurations_Get
      parameters:
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
        - $ref: "#/parameters/ResourceGroupParameter"
        - $ref: "#/parameters/ServerNameParameter"
        - $ref: "#/parameters/ConfigurationNameParameter"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/Configuration"
      tags:
        - Configurations
      x-ms-examples:
        ConfigurationGet:
          parameters:
            api-version: 2017-04-30-preview
            configurationName: event_scheduler
            resourceGroupName: TestGroup
            serverName: testserver
            subscriptionId: ffffffff-ffff-ffff-ffff-ffffffffffff
          responses:
            "200":
              body:
                id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/event_scheduler
                name: event_scheduler
                properties:
                  allowedValues: ON,OFF,DISABLED
                  dataType: Enumeration
                  defaultValue: OFF
                  description: Indicates the status of the Event Scheduler.
                  source: system-default
                  value: OFF
                type: Microsoft.DBforMySQL/servers/configurations
    put:
      description: Updates a configuration of a server.
      operationId: Configurations_CreateOrUpdate
      parameters:
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
        - $ref: "#/parameters/ResourceGroupParameter"
        - $ref: "#/parameters/ServerNameParameter"
        - $ref: "#/parameters/ConfigurationNameParameter"
        - description: The required parameters for updating a server configuration.
          in: body
          name: parameters
          required: true
          schema:
            $ref: "#/definitions/Configuration"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/Configuration"
        "202":
          description: Accepted
      tags:
        - Configurations
      x-ms-examples:
        ConfigurationCreateOrUpdate:
          parameters:
            api-version: 2017-04-30-preview
            configurationName: event_scheduler
            parameters:
              properties:
                source: user-override
                value: ON
            resourceGroupName: TestGroup
            serverName: testserver
            subscriptionId: ffffffff-ffff-ffff-ffff-ffffffffffff
          responses:
            "200":
              body:
                id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/configurations/event_scheduler
                name: event_scheduler
                properties:
                  allowedValues: ON,OFF,DISABLED
                  dataType: Enumeration
                  defaultValue: OFF
                  description: Indicates the status of the Event Scheduler.
                  source: user-override
                  value: ON
                type: Microsoft.DBforMySQL/servers/configurations
            "202": {}
      x-ms-long-running-operation: true
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/databases":
    get:
      description: List all the databases in a given server.
      operationId: Databases_ListByServer
      parameters:
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
        - $ref: "#/parameters/ResourceGroupParameter"
        - $ref: "#/parameters/ServerNameParameter"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/DatabaseListResult"
      tags:
        - Databases
      x-ms-examples:
        DatabaseList:
          parameters:
            api-version: 2017-04-30-preview
            resourceGroupName: TestGroup
            serverName: testserver
            subscriptionId: ffffffff-ffff-ffff-ffff-ffffffffffff
          responses:
            "200":
              body:
                value:
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/databases/db1
                    name: db1
                    properties:
                      charset: utf8
                      collation: utf8_general_ci
                    type: Microsoft.DBforMySQL/servers/databases
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/databases/db2
                    name: db2
                    properties:
                      charset: utf8
                      collation: utf8_general_ci
                    type: Microsoft.DBforMySQL/servers/databases
      x-ms-pageable: {}
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/databases/{databaseName}":
    delete:
      description: Deletes a database.
      operationId: Databases_Delete
      parameters:
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
        - $ref: "#/parameters/ResourceGroupParameter"
        - $ref: "#/parameters/ServerNameParameter"
        - $ref: "#/parameters/DatabaseNameParameter"
      responses:
        "200":
          description: OK
        "202":
          description: Accepted
        "204":
          description: NoContent
      tags:
        - Databases
      x-ms-examples:
        DatabaseDelete:
          parameters:
            api-version: 2017-04-30-preview
            databaseName: db1
            resourceGroupName: TestGroup
            serverName: testserver
            subscriptionId: ffffffff-ffff-ffff-ffff-ffffffffffff
          responses:
            "200": {}
            "202": {}
            "204": {}
      x-ms-long-running-operation: true
    get:
      description: Gets information about a database.
      operationId: Databases_Get
      parameters:
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
        - $ref: "#/parameters/ResourceGroupParameter"
        - $ref: "#/parameters/ServerNameParameter"
        - $ref: "#/parameters/DatabaseNameParameter"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/Database"
      tags:
        - Databases
      x-ms-examples:
        DatabaseGet:
          parameters:
            api-version: 2017-04-30-preview
            databaseName: db1
            resourceGroupName: TestGroup
            serverName: testserver
            subscriptionId: ffffffff-ffff-ffff-ffff-ffffffffffff
          responses:
            "200":
              body:
                id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/databases/db1
                name: db1
                properties:
                  charset: utf8
                  collation: utf8_general_ci
                type: Microsoft.DBforMySQL/servers/databases
    put:
      description: Creates a new database or updates an existing database.
      operationId: Databases_CreateOrUpdate
      parameters:
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
        - $ref: "#/parameters/ResourceGroupParameter"
        - $ref: "#/parameters/ServerNameParameter"
        - $ref: "#/parameters/DatabaseNameParameter"
        - description: The required parameters for creating or updating a database.
          in: body
          name: parameters
          required: true
          schema:
            $ref: "#/definitions/Database"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/Database"
        "201":
          description: Created
          schema:
            $ref: "#/definitions/Database"
        "202":
          description: Accepted
      tags:
        - Databases
      x-ms-examples:
        DatabaseCreate:
          parameters:
            api-version: 2017-04-30-preview
            databaseName: db1
            parameters:
              properties:
                charset: utf8
                collation: utf8_general_ci
            resourceGroupName: TestGroup
            serverName: testserver
            subscriptionId: ffffffff-ffff-ffff-ffff-ffffffffffff
          responses:
            "200":
              body:
                id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/databases/db1
                name: db1
                properties:
                  charset: utf8
                  collation: utf8_general_ci
                type: Microsoft.DBforMySQL/servers/databases
            "201":
              body:
                id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/databases/db1
                name: db1
                properties:
                  charset: utf8
                  collation: utf8_general_ci
                type: Microsoft.DBforMySQL/servers/databases
            "202": {}
      x-ms-long-running-operation: true
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/firewallRules":
    get:
      description: List all the firewall rules in a given server.
      operationId: FirewallRules_ListByServer
      parameters:
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
        - $ref: "#/parameters/ResourceGroupParameter"
        - $ref: "#/parameters/ServerNameParameter"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/FirewallRuleListResult"
      tags:
        - FirewallRules
      x-ms-examples:
        FirewallRuleList:
          parameters:
            api-version: 2017-04-30-preview
            resourceGroupName: TestGroup
            serverName: testserver
            subscriptionId: ffffffff-ffff-ffff-ffff-ffffffffffff
          responses:
            "200":
              body:
                value:
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/firewallRules/rule1
                    name: rule1
                    properties:
                      endIpAddress: 255.255.255.255
                      startIpAddress: 0.0.0.0
                    type: Microsoft.DBforMySQL/servers/firewallRules
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/firewallRules/rule2
                    name: rule2
                    properties:
                      endIpAddress: 255.0.0.0
                      startIpAddress: 1.0.0.0
                    type: Microsoft.DBforMySQL/servers/firewallRules
      x-ms-pageable: {}
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/firewallRules/{firewallRuleName}":
    delete:
      description: Deletes a server firewall rule.
      operationId: FirewallRules_Delete
      parameters:
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
        - $ref: "#/parameters/ResourceGroupParameter"
        - $ref: "#/parameters/ServerNameParameter"
        - $ref: "#/parameters/FirewallRuleNameParameter"
      responses:
        "200":
          description: OK
        "202":
          description: Accepted
        "204":
          description: NoContent
      tags:
        - FirewallRules
      x-ms-examples:
        FirewallRuleDelete:
          parameters:
            api-version: 2017-04-30-preview
            firewallRuleName: rule1
            resourceGroupName: TestGroup
            serverName: testserver
            subscriptionId: ffffffff-ffff-ffff-ffff-ffffffffffff
          responses:
            "200": {}
            "202": {}
            "204": {}
      x-ms-long-running-operation: true
    get:
      description: Gets information about a server firewall rule.
      operationId: FirewallRules_Get
      parameters:
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
        - $ref: "#/parameters/ResourceGroupParameter"
        - $ref: "#/parameters/ServerNameParameter"
        - $ref: "#/parameters/FirewallRuleNameParameter"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/FirewallRule"
      tags:
        - FirewallRules
      x-ms-examples:
        FirewallRuleGet:
          parameters:
            api-version: 2017-04-30-preview
            firewallRuleName: rule1
            resourceGroupName: TestGroup
            serverName: testserver
            subscriptionId: ffffffff-ffff-ffff-ffff-ffffffffffff
          responses:
            "200":
              body:
                id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/firewallRules/rule1
                name: rule1
                properties:
                  endIpAddress: 255.255.255.255
                  startIpAddress: 0.0.0.0
                type: Microsoft.DBforMySQL/servers/firewallRules
    put:
      description: Creates a new firewall rule or updates an existing firewall rule.
      operationId: FirewallRules_CreateOrUpdate
      parameters:
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
        - $ref: "#/parameters/ResourceGroupParameter"
        - $ref: "#/parameters/ServerNameParameter"
        - $ref: "#/parameters/FirewallRuleNameParameter"
        - description: The required parameters for creating or updating a firewall rule.
          in: body
          name: parameters
          required: true
          schema:
            $ref: "#/definitions/FirewallRule"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/FirewallRule"
        "201":
          description: Created
          schema:
            $ref: "#/definitions/FirewallRule"
        "202":
          description: Accepted
      tags:
        - FirewallRules
      x-ms-examples:
        FirewallRuleCreate:
          parameters:
            api-version: 2017-04-30-preview
            firewallRuleName: rule1
            parameters:
              properties:
                endIpAddress: 255.255.255.255
                startIpAddress: 0.0.0.0
            resourceGroupName: TestGroup
            serverName: testserver
            subscriptionId: ffffffff-ffff-ffff-ffff-ffffffffffff
          responses:
            "200":
              body:
                id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/firewallRules/rule1
                name: rule1
                properties:
                  endIpAddress: 255.255.255.255
                  startIpAddress: 0.0.0.0
                type: Microsoft.DBforMySQL/servers/firewallRules
            "201":
              body:
                id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/firewallRules/rule1
                name: rule1
                properties:
                  endIpAddress: 255.255.255.255
                  startIpAddress: 0.0.0.0
                type: Microsoft.DBforMySQL/servers/firewallRules
            "202": {}
      x-ms-long-running-operation: true
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/logFiles":
    get:
      description: List all the log files in a given server.
      operationId: LogFiles_ListByServer
      parameters:
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
        - $ref: "#/parameters/ResourceGroupParameter"
        - $ref: "#/parameters/ServerNameParameter"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/LogFileListResult"
      tags:
        - LogFiles
      x-ms-examples:
        LogFileList:
          parameters:
            api-version: 2017-04-30-preview
            resourceGroupName: TestGroup
            serverName: testserver
            subscriptionId: ffffffff-ffff-ffff-ffff-ffffffffffff
          responses:
            "200":
              body:
                value:
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/logFiles/mysql-slow-testserver-2017042102.log
                    name: mysql-slow-testserver-2017042102.log
                    properties:
                      createdTime: 0001-01-01T00:00:00+00:00
                      lastModifiedTime: 2017-04-21T03:02:23+00:00
                      name: mysql-slow-testserver-2017042102.log
                      sizeInKB: 1
                      type: slowlog
                      url: https://wasd2orcasseas1aelsfse0.file.core.windows.net/52bd047495b3459b95185a1738cbaeac/serverlogs/mysql-slow-testserver-2017042102.log?sv=2015-04-05&sr=f&sig=zt6C6CBMygNbwzbDw5qcU%2F3duOgP9ZERQ8aWJr7fnuM%3D&se=2017-04-21T04%3A02%3A33Z&sp=r
                    type: Microsoft.DBforMySQL/servers/logFiles
                  - id: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DBforMySQL/servers/testserver/logFiles/mysql-slow-testserver-2017042202.log
                    name: mysql-slow-testserver-2017042202.log
                    properties:
                      createdTime: 0001-01-01T00:00:00+00:00
                      lastModifiedTime: 2017-04-22T03:02:23+00:00
                      name: mysql-slow-testserver-2017042202.log
                      sizeInKB: 1
                      type: slowlog
                      url: https://wasd2orcasseas1aelsfse0.file.core.windows.net/52bd047495b3459b95185a1738cbaeac/serverlogs/mysql-slow-testserver-2017042202.log?sv=2015-04-05&sr=f&sig=zt6C6CBMygNbwzbDw5qcU%2F3duOgP9ZERQ8aWJr7fnuM%3D&se=2017-04-22T04%3A02%3A33Z&sp=r
                    type: Microsoft.DBforMySQL/servers/logFiles
      x-ms-pageable: {}
definitions:
  Configuration:
    allOf:
      - $ref: "#/definitions/ProxyResource"
    description: Represents a Configuration.
    properties:
      properties:
        $ref: "#/definitions/ConfigurationProperties"
        description: The properties of a configuration.
        x-ms-client-flatten: true
  ConfigurationListResult:
    description: A list of server configurations.
    properties:
      value:
        description: The list of server configurations.
        items:
          $ref: "#/definitions/Configuration"
        type: array
  ConfigurationProperties:
    description: The properties of a configuration.
    properties:
      allowedValues:
        description: Allowed values of the configuration.
        readOnly: true
        type: string
      dataType:
        description: Data type of the configuration.
        readOnly: true
        type: string
      defaultValue:
        description: Default value of the configuration.
        readOnly: true
        type: string
      description:
        description: Description of the configuration.
        readOnly: true
        type: string
      source:
        description: Source of the configuration.
        type: string
      value:
        description: Value of the configuration.
        type: string
  Database:
    allOf:
      - $ref: "#/definitions/ProxyResource"
    description: Represents a Database.
    properties:
      properties:
        $ref: "#/definitions/DatabaseProperties"
        description: The properties of a database.
        x-ms-client-flatten: true
  DatabaseListResult:
    description: A List of databases.
    properties:
      value:
        description: The list of databases housed in a server
        items:
          $ref: "#/definitions/Database"
        type: array
  DatabaseProperties:
    description: The properties of a database.
    properties:
      charset:
        description: The charset of the database.
        type: string
      collation:
        description: The collation of the database.
        type: string
  FirewallRule:
    allOf:
      - $ref: "#/definitions/ProxyResource"
    description: Represents a server firewall rule.
    properties:
      properties:
        $ref: "#/definitions/FirewallRuleProperties"
        description: The properties of a firewall rule.
        x-ms-client-flatten: true
    required:
      - properties
  FirewallRuleListResult:
    description: A list of firewall rules.
    properties:
      value:
        description: The list of firewall rules in a server.
        items:
          $ref: "#/definitions/FirewallRule"
        type: array
  FirewallRuleProperties:
    description: The properties of a server firewall rule.
    properties:
      endIpAddress:
        description: The end IP address of the server firewall rule. Must be IPv4 format.
        pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$
        type: string
      startIpAddress:
        description: The start IP address of the server firewall rule. Must be IPv4 format.
        pattern: ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$
        type: string
    required:
      - startIpAddress
      - endIpAddress
  LogFile:
    allOf:
      - $ref: "#/definitions/ProxyResource"
    description: Represents a log file.
    properties:
      name:
        description: The name of the log file.
        type: string
      properties:
        $ref: "#/definitions/LogFileProperties"
        description: The properties of the log file.
        x-ms-client-flatten: true
  LogFileListResult:
    description: A list of log files.
    properties:
      value:
        description: The list of log files.
        items:
          $ref: "#/definitions/LogFile"
        type: array
  LogFileProperties:
    description: The properties of a log file.
    properties:
      createdTime:
        description: Creation timestamp of the log file.
        format: date-time
        type: string
      lastModifiedTime:
        description: Last modified timestamp of the log file.
        format: date-time
        type: string
      name:
        description: Log file name.
        type: string
      sizeInKB:
        description: Size of the log file.
        format: int64
        type: integer
      type:
        description: Type of the log file.
        type: string
      url:
        description: The url to download the log file from.
        type: string
  NameAvailability:
    description: Represents a resource name availability.
    properties:
      message:
        description: Error Message.
        type: string
      nameAvailable:
        description: Indicates whether the resource name is available.
        type: boolean
      reason:
        description: Reason for name being unavailable.
        type: string
  NameAvailabilityRequest:
    description: Request from client to check resource name availability.
    properties:
      name:
        description: Resource name to verify.
        type: string
      type:
        description: Resource type used for verification.
        type: string
    required:
      - name
  Operation:
    description: REST API operation definition.
    properties:
      display:
        $ref: "#/definitions/OperationDisplay"
        description: The localized display information for this particular operation or action.
        readOnly: true
      name:
        description: The name of the operation being performed on this particular object.
        readOnly: true
        type: string
      origin:
        description: The intended executor of the operation.
        enum:
          - NotSpecified
          - user
          - system
        readOnly: true
        type: string
        x-ms-enum:
          modelAsString: true
          name: OperationOrigin
      properties:
        additionalProperties:
          type: object
        description: Additional descriptions for the operation.
        readOnly: true
        type: object
        x-ms-client-flatten: false
  OperationDisplay:
    description: Display metadata associated with the operation.
    properties:
      description:
        description: Operation description.
        readOnly: true
        type: string
      operation:
        description: Localized friendly name for the operation.
        readOnly: true
        type: string
      provider:
        description: Operation resource provider name.
        readOnly: true
        type: string
      resource:
        description: Resource on which the operation is performed.
        readOnly: true
        type: string
  OperationListResult:
    description: A list of resource provider operations.
    properties:
      value:
        description: The list of resource provider operations.
        items:
          $ref: "#/definitions/Operation"
        type: array
  PerformanceTierListResult:
    description: A list of performance tiers.
    properties:
      value:
        description: The list of performance tiers
        items:
          $ref: "#/definitions/PerformanceTierProperties"
        type: array
  PerformanceTierProperties:
    description: Performance tier properties
    properties:
      backupRetentionDays:
        description: Backup retention in days for the performance tier edition
        type: integer
      id:
        description: ID of the performance tier.
        type: string
      serviceLevelObjectives:
        description: Service level objectives associated with the performance tier
        items:
          $ref: "#/definitions/PerformanceTierServiceLevelObjectives"
        type: array
  PerformanceTierServiceLevelObjectives:
    description: Service level objectives for performance tier.
    properties:
      dtu:
        description: Database throughput unit associated with the service level objective
        type: integer
      edition:
        description: Edition of the performance tier.
        type: string
      id:
        description: ID for the service level objective.
        type: string
      storageMB:
        description: Maximum storage in MB associated with the service level objective
        type: integer
  ProxyResource:
    description: Resource properties.
    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
    x-ms-azure-resource: true
  Server:
    allOf:
      - $ref: "#/definitions/TrackedResource"
    description: Represents a server.
    properties:
      properties:
        $ref: "#/definitions/ServerProperties"
        description: Properties of the server.
        x-ms-client-flatten: true
      sku:
        $ref: "#/definitions/Sku"
        description: The SKU (pricing tier) of the server.
  ServerForCreate:
    description: Represents a server to be created.
    properties:
      location:
        description: The location the resource resides in.
        type: string
      properties:
        $ref: "#/definitions/ServerPropertiesForCreate"
        description: Properties of the server.
        x-ms-client-flatten: false
      sku:
        $ref: "#/definitions/Sku"
        description: The SKU (pricing tier) of the server.
      tags:
        additionalProperties:
          type: string
        description: Application-specific metadata in the form of key-value pairs.
        type: object
    required:
      - properties
      - location
  ServerListResult:
    description: A list of servers.
    properties:
      value:
        description: The list of servers
        items:
          $ref: "#/definitions/Server"
        type: array
  ServerProperties:
    description: The properties of a server.
    properties:
      administratorLogin:
        description: The administrator's login name of a server. Can only be specified when the server is being created (and is required for creation).
        type: string
      fullyQualifiedDomainName:
        description: The fully qualified domain name of a server.
        type: string
      sslEnforcement:
        $ref: "#/definitions/SslEnforcement"
        description: Enable ssl enforcement or not when connect to server.
      storageMB:
        description: The maximum storage allowed for a server.
        format: int64
        minimum: 1024
        type: integer
      userVisibleState:
        description: A state of a server that is visible to user.
        enum:
          - Ready
          - Dropping
          - Disabled
        type: string
        x-ms-enum:
          modelAsString: true
          name: ServerState
      version:
        $ref: "#/definitions/ServerVersion"
        description: Server version.
  ServerPropertiesForCreate:
    description: The properties used to create a new server.
    discriminator: createMode
    properties:
      createMode:
        description: The mode to create a new server.
        enum:
          - Default
          - PointInTimeRestore
        type: string
        x-ms-enum:
          modelAsString: true
          name: CreateMode
      sslEnforcement:
        $ref: "#/definitions/SslEnforcement"
        description: Enable ssl enforcement or not when connect to server.
      storageMB:
        description: The maximum storage allowed for a server.
        format: int64
        minimum: 1024
        type: integer
      version:
        $ref: "#/definitions/ServerVersion"
        description: Server version.
    required:
      - createMode
  ServerPropertiesForDefaultCreate:
    allOf:
      - $ref: "#/definitions/ServerPropertiesForCreate"
    description: The properties used to create a new server.
    properties:
      administratorLogin:
        description: The administrator's login name of a server. Can only be specified when the server is being created (and is required for creation).
        type: string
      administratorLoginPassword:
        description: The password of the administrator login.
        format: password
        type: string
    required:
      - administratorLogin
      - administratorLoginPassword
    x-ms-discriminator-value: Default
  ServerPropertiesForRestore:
    allOf:
      - $ref: "#/definitions/ServerPropertiesForCreate"
    description: The properties to a new server by restoring from a backup.
    properties:
      restorePointInTime:
        description: Restore point creation time (ISO8601 format), specifying the time to restore from.
        format: date-time
        type: string
      sourceServerId:
        description: The source server id to restore from.
        type: string
    required:
      - sourceServerId
      - restorePointInTime
    x-ms-discriminator-value: PointInTimeRestore
  ServerUpdateParameters:
    description: Parameters allowd to update for a server.
    properties:
      properties:
        description: The properties that can be updated for a server.
        properties:
          administratorLoginPassword:
            description: The password of the administrator login.
            format: password
            type: string
          sslEnforcement:
            $ref: "#/definitions/SslEnforcement"
            description: Enable ssl enforcement or not when connect to server.
          storageMB:
            description: The max storage allowed for a server.
            format: int64
            minimum: 1024
            type: integer
          version:
            $ref: "#/definitions/ServerVersion"
            description: The version of a server.
        x-ms-client-flatten: true
      sku:
        $ref: "#/definitions/Sku"
        description: The SKU (pricing tier) of the server.
      tags:
        additionalProperties:
          type: string
        description: Application-specific metadata in the form of key-value pairs.
        type: object
  ServerVersion:
    description: The version of a server.
    enum:
      - "5.6"
      - "5.7"
    type: string
    x-ms-enum:
      modelAsString: true
      name: ServerVersion
  Sku:
    description: Billing information related properties of a server.
    properties:
      capacity:
        description: The scale up/out capacity, representing server's compute units.
        format: int32
        minimum: 0
        type: integer
      family:
        description: The family of hardware.
        type: string
      name:
        description: The name of the sku, typically, a letter + Number code, e.g. P3.
        type: string
      size:
        description: The size code, to be interpreted by resource as appropriate.
        type: string
      tier:
        description: The tier of the particular SKU, e.g. Basic.
        enum:
          - Basic
          - Standard
        type: string
        x-ms-enum:
          modelAsString: true
          name: SkuTier
  SslEnforcement:
    description: Enable ssl enforcement or not when connect to server.
    enum:
      - Enabled
      - Disabled
    type: string
    x-ms-enum:
      modelAsString: false
      name: SslEnforcementEnum
  TrackedResource:
    allOf:
      - $ref: "#/definitions/ProxyResource"
    description: Resource properties including location and tags for track resources.
    properties:
      location:
        description: The location the resource resides in.
        type: string
      tags:
        additionalProperties:
          type: string
        description: Application-specific metadata in the form of key-value pairs.
        type: object
    required:
      - location
