json_schema: {
      "$schema": "http://json-schema.org/draft-04/schema#",
      "type": "object",
      "properties": {
          "region": {
              "type": "string"
          },
          "onDemandAutoScaleGroup": {
              "type": "string"
          },
          "spotAutoScaleGroup": {
              "type": "string"
          },
          "numberOfDaysBackToConsider": {
              "type": "integer"
          },
          "awsAccessKeyId": {
              "type": "string"
          },
          "awsSecretAccessKey": {
              "type": "string"
          },
          "maxSpotPerHour": {
              "type": "integer"
          },
          "scalesOn": {
              "type": "object",
              "properties": {
                  "requestCount": {
                      "type": "object",
                      "properties": {
                          "perServerThresholdPerMin": {
                              "type": "integer"
                          }
                      },
                      "required": [
                          "perServerThresholdPerMin"
                      ]
                  },
                  "cpu": {
                      "type": "object",
                      "properties": {
                          "upperThresholdPercent": {
                              "type": "integer"
                          },
                          "scalesWhenGreaterThanThresholdForSecs": {
                              "type": "integer"
                          }
                      },
                      "required": [
                          "upperThresholdPercent",
                          "scalesWhenGreaterThanThresholdForSecs"
                      ]
                  }
              }
          }
      },
      "required": [
          "region",
          "onDemandAutoScaleGroup",
          "spotAutoScaleGroup",
          "awsAccessKeyId",
          "awsSecretAccessKey",
          "maxSpotPerHour",
          "scalesOn"
      ]
  }