CreateAutomationRuleResponse

Amazon Web ServicesCost OptimizationFinOpsMachine LearningResource Recommendations

Properties

Name Type Description
ruleArn string The Amazon Resource Name (ARN) of the created rule.
ruleId string The unique identifier of the created rule.
name string The name of the automation rule. Must be 1-128 characters long and contain only alphanumeric characters, underscores, and hyphens.
description string A description of the automation rule. Can be up to 1024 characters long and contain alphanumeric characters, underscores, hyphens, spaces, and certain special characters.
ruleType string The type of automation rule. Can be either OrganizationRule for organization-wide rules or AccountRule for account-specific rules.
ruleRevision integer The revision number of the automation rule. This is incremented each time the rule is updated.
organizationConfiguration object
priority string The priority level of the automation rule, used to determine execution order when multiple rules apply to the same resource.
recommendedActionTypes array List of recommended action types that this rule can execute, such as SnapshotAndDeleteUnattachedEbsVolume or UpgradeEbsVolumeType.
criteria object
schedule object
status string The current status of the automation rule. Can be Active or Inactive.
tags array A list of key-value pairs used to categorize and organize the automation rule. Maximum of 200 tags allowed.
createdTimestamp string The timestamp when the automation rule was created.
View JSON Schema on GitHub

JSON Schema

amazon-compute-optimizer-create-automation-rule-response-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/amazon-compute-optimizer/json-schema/amazon-compute-optimizer-create-automation-rule-response-schema.json",
  "title": "CreateAutomationRuleResponse",
  "x-generated": "2026-11-11",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/amazon-compute-optimizer-automation-rule-api-openapi.yml#/components/schemas/CreateAutomationRuleResponse",
  "type": "object",
  "properties": {
    "ruleArn": {
      "type": "string",
      "description": "The Amazon Resource Name (ARN) of the created rule."
    },
    "ruleId": {
      "type": "string",
      "description": "The unique identifier of the created rule."
    },
    "name": {
      "type": "string",
      "description": "The name of the automation rule. Must be 1-128 characters long and contain only alphanumeric characters, underscores, and hyphens."
    },
    "description": {
      "type": "string",
      "description": "A description of the automation rule. Can be up to 1024 characters long and contain alphanumeric characters, underscores, hyphens, spaces, and certain special characters."
    },
    "ruleType": {
      "type": "string",
      "enum": [
        "OrganizationRule",
        "AccountRule"
      ],
      "description": "The type of automation rule. Can be either OrganizationRule for organization-wide rules or AccountRule for account-specific rules."
    },
    "ruleRevision": {
      "type": "integer",
      "description": "The revision number of the automation rule. This is incremented each time the rule is updated."
    },
    "organizationConfiguration": {
      "$ref": "#/$defs/OrganizationConfiguration"
    },
    "priority": {
      "type": "string",
      "description": "The priority level of the automation rule, used to determine execution order when multiple rules apply to the same resource."
    },
    "recommendedActionTypes": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "SnapshotAndDeleteUnattachedEbsVolume",
          "UpgradeEbsVolumeType"
        ]
      },
      "description": "List of recommended action types that this rule can execute, such as SnapshotAndDeleteUnattachedEbsVolume or UpgradeEbsVolumeType."
    },
    "criteria": {
      "$ref": "#/$defs/Criteria"
    },
    "schedule": {
      "$ref": "#/$defs/Schedule"
    },
    "status": {
      "type": "string",
      "enum": [
        "Active",
        "Inactive"
      ],
      "description": "The current status of the automation rule. Can be Active or Inactive."
    },
    "tags": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/AcoAutomationTag"
      },
      "description": "A list of key-value pairs used to categorize and organize the automation rule. Maximum of 200 tags allowed."
    },
    "createdTimestamp": {
      "type": "string",
      "description": "The timestamp when the automation rule was created."
    }
  },
  "$defs": {
    "AcoAutomationTag": {
      "type": "object",
      "properties": {
        "key": {
          "type": "string",
          "description": "The tag key, which can be up to 128 characters long."
        },
        "value": {
          "type": "string",
          "description": "The tag value, which can be up to 256 characters long."
        }
      },
      "required": [
        "key",
        "value"
      ]
    },
    "Criteria": {
      "type": "object",
      "properties": {
        "region": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/StringCriteriaCondition"
          },
          "description": "Filter criteria for Amazon Web Services regions where resources must be located."
        },
        "resourceArn": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/StringCriteriaCondition"
          },
          "description": "Filter criteria for specific resource ARNs to include or exclude."
        },
        "ebsVolumeType": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/StringCriteriaCondition"
          },
          "description": "Filter criteria for EBS volume types, such as gp2, gp3, io1, io2, st1, or sc1."
        },
        "ebsVolumeSizeInGib": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/IntegerCriteriaCondition"
          },
          "description": "Filter criteria for EBS volume sizes in gibibytes (GiB)."
        },
        "estimatedMonthlySavings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/DoubleCriteriaCondition"
          },
          "description": "Filter criteria for estimated monthly cost savings from the recommended action."
        },
        "resourceTag": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ResourceTagsCriteriaCondition"
          },
          "description": "Filter criteria for resource tags, allowing filtering by tag key and value combinations."
        },
        "lookBackPeriodInDays": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/IntegerCriteriaCondition"
          },
          "description": "Filter criteria for the lookback period in days used to analyze resource utilization."
        },
        "restartNeeded": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/StringCriteriaCondition"
          },
          "description": "Filter criteria indicating whether the recommended action requires a resource restart."
        }
      }
    },
    "DoubleCriteriaCondition": {
      "type": "object",
      "properties": {
        "comparison": {
          "type": "string",
          "enum": [
            "StringEquals",
            "StringNotEquals",
            "StringEqualsIgnoreCase",
            "StringNotEqualsIgnoreCase",
            "StringLike",
            "StringNotLike",
            "NumericEquals",
            "NumericNotEquals",
            "NumericLessThan",
            "NumericLessThanEquals",
            "NumericGreaterThan",
            "NumericGreaterThanEquals",
            "StringEqualsIfExists",
            "StringNotEqualsIfExists",
            "StringEqualsIgnoreCaseIfExists",
            "StringNotEqualsIgnoreCaseIfExists",
            "StringLikeIfExists",
            "StringNotLikeIfExists",
            "NumericEqualsIfExists",
            "NumericNotEqualsIfExists",
            "NumericLessThanIfExists",
            "NumericLessThanEqualsIfExists",
            "NumericGreaterThanIfExists",
            "NumericGreaterThanEqualsIfExists"
          ],
          "description": "The comparison operator used to evaluate the attribute against the specified values."
        },
        "values": {
          "type": "array",
          "items": {
            "type": "number"
          },
          "description": "The list of double values to compare against using the specified comparison operator."
        }
      }
    },
    "IntegerCriteriaCondition": {
      "type": "object",
      "properties": {
        "comparison": {
          "type": "string",
          "enum": [
            "StringEquals",
            "StringNotEquals",
            "StringEqualsIgnoreCase",
            "StringNotEqualsIgnoreCase",
            "StringLike",
            "StringNotLike",
            "NumericEquals",
            "NumericNotEquals",
            "NumericLessThan",
            "NumericLessThanEquals",
            "NumericGreaterThan",
            "NumericGreaterThanEquals",
            "StringEqualsIfExists",
            "StringNotEqualsIfExists",
            "StringEqualsIgnoreCaseIfExists",
            "StringNotEqualsIgnoreCaseIfExists",
            "StringLikeIfExists",
            "StringNotLikeIfExists",
            "NumericEqualsIfExists",
            "NumericNotEqualsIfExists",
            "NumericLessThanIfExists",
            "NumericLessThanEqualsIfExists",
            "NumericGreaterThanIfExists",
            "NumericGreaterThanEqualsIfExists"
          ],
          "description": "The comparison operator used to evaluate the attribute against the specified values."
        },
        "values": {
          "type": "array",
          "items": {
            "type": "integer"
          },
          "description": "The list of integer values to compare against using the specified comparison operator."
        }
      }
    },
    "OrganizationConfiguration": {
      "type": "object",
      "properties": {
        "ruleApplyOrder": {
          "type": "string",
          "enum": [
            "BeforeAccountRules",
            "AfterAccountRules"
          ],
          "description": "Specifies when organization rules should be applied relative to account rules."
        },
        "accountIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of specific Amazon Web Services account IDs where the organization rule should be applied."
        }
      }
    },
    "ResourceTagsCriteriaCondition": {
      "type": "object",
      "properties": {
        "comparison": {
          "type": "string",
          "enum": [
            "StringEquals",
            "StringNotEquals",
            "StringEqualsIgnoreCase",
            "StringNotEqualsIgnoreCase",
            "StringLike",
            "StringNotLike",
            "NumericEquals",
            "NumericNotEquals",
            "NumericLessThan",
            "NumericLessThanEquals",
            "NumericGreaterThan",
            "NumericGreaterThanEquals",
            "StringEqualsIfExists",
            "StringNotEqualsIfExists",
            "StringEqualsIgnoreCaseIfExists",
            "StringNotEqualsIgnoreCaseIfExists",
            "StringLikeIfExists",
            "StringNotLikeIfExists",
            "NumericEqualsIfExists",
            "NumericNotEqualsIfExists",
            "NumericLessThanIfExists",
            "NumericLessThanEqualsIfExists",
            "NumericGreaterThanIfExists",
            "NumericGreaterThanEqualsIfExists"
          ],
          "description": "The comparison operator used to evaluate the attribute against the specified values."
        },
        "key": {
          "type": "string",
          "description": "The tag key to use for comparison when filtering resources."
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of tag values to compare against when filtering resources."
        }
      }
    },
    "Schedule": {
      "type": "object",
      "properties": {
        "scheduleExpression": {
          "type": "string",
          "description": "The expression that defines when the schedule runs. cron expression is supported. A cron expression consists of six fields separated by white spaces: (minutes hours day_of_month month day_of_week year) You can schedule rules to run at most once per day. Your cron expression must use specific values (not wildcards) for the minutes and hours fields. For example: (30 12 * * *) runs daily at 12:30 PM UTC."
        },
        "scheduleExpressionTimezone": {
          "type": "string",
          "description": "The timezone to use when interpreting the schedule expression."
        },
        "executionWindowInMinutes": {
          "type": "integer",
          "description": "The time window in minutes during which the automation rule can start implementing recommended actions."
        }
      }
    },
    "StringCriteriaCondition": {
      "type": "object",
      "properties": {
        "comparison": {
          "type": "string",
          "enum": [
            "StringEquals",
            "StringNotEquals",
            "StringEqualsIgnoreCase",
            "StringNotEqualsIgnoreCase",
            "StringLike",
            "StringNotLike",
            "NumericEquals",
            "NumericNotEquals",
            "NumericLessThan",
            "NumericLessThanEquals",
            "NumericGreaterThan",
            "NumericGreaterThanEquals",
            "StringEqualsIfExists",
            "StringNotEqualsIfExists",
            "StringEqualsIgnoreCaseIfExists",
            "StringNotEqualsIgnoreCaseIfExists",
            "StringLikeIfExists",
            "StringNotLikeIfExists",
            "NumericEqualsIfExists",
            "NumericNotEqualsIfExists",
            "NumericLessThanIfExists",
            "NumericLessThanEqualsIfExists",
            "NumericGreaterThanIfExists",
            "NumericGreaterThanEqualsIfExists"
          ],
          "description": "The comparison operator used to evaluate the attribute against the specified values."
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of string values to compare against when applying the criteria condition."
        }
      }
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/amazon-compute-optimizer-create-automation-rule-response"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.