{
  "version":"2.0",
  "metadata":{
    "apiVersion":"2018-05-10",
    "auth":["aws.auth#sigv4"],
    "endpointPrefix":"controlcatalog",
    "protocol":"rest-json",
    "protocols":["rest-json"],
    "serviceFullName":"AWS Control Catalog",
    "serviceId":"ControlCatalog",
    "signatureVersion":"v4",
    "signingName":"controlcatalog",
    "uid":"controlcatalog-2018-05-10"
  },
  "operations":{
    "GetControl":{
      "name":"GetControl",
      "http":{
        "method":"POST",
        "requestUri":"/get-control",
        "responseCode":200
      },
      "input":{"shape":"GetControlRequest"},
      "output":{"shape":"GetControlResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ValidationException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Returns details about a specific control, most notably a list of Amazon Web Services Regions where this control is supported. Input a value for the <i>ControlArn</i> parameter, in ARN form. <code>GetControl</code> accepts <i>controltower</i> or <i>controlcatalog</i> control ARNs as input. Returns a <i>controlcatalog</i> ARN format.</p> <p>In the API response, controls that have the value <code>GLOBAL</code> in the <code>Scope</code> field do not show the <code>DeployableRegions</code> field, because it does not apply. Controls that have the value <code>REGIONAL</code> in the <code>Scope</code> field return a value for the <code>DeployableRegions</code> field, as shown in the example.</p>"
    },
    "ListCommonControls":{
      "name":"ListCommonControls",
      "http":{
        "method":"POST",
        "requestUri":"/common-controls",
        "responseCode":200
      },
      "input":{"shape":"ListCommonControlsRequest"},
      "output":{"shape":"ListCommonControlsResponse"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ValidationException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Returns a paginated list of common controls from the Amazon Web Services Control Catalog.</p> <p>You can apply an optional filter to see common controls that have a specific objective. If you don’t provide a filter, the operation returns all common controls. </p>"
    },
    "ListControls":{
      "name":"ListControls",
      "http":{
        "method":"POST",
        "requestUri":"/list-controls",
        "responseCode":200
      },
      "input":{"shape":"ListControlsRequest"},
      "output":{"shape":"ListControlsResponse"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ValidationException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Returns a paginated list of all available controls in the Amazon Web Services Control Catalog library. Allows you to discover available controls. The list of controls is given as structures of type <i>controlSummary</i>. The ARN is returned in the global <i>controlcatalog</i> format, as shown in the examples.</p>"
    },
    "ListDomains":{
      "name":"ListDomains",
      "http":{
        "method":"POST",
        "requestUri":"/domains",
        "responseCode":200
      },
      "input":{"shape":"ListDomainsRequest"},
      "output":{"shape":"ListDomainsResponse"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ValidationException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Returns a paginated list of domains from the Amazon Web Services Control Catalog.</p>"
    },
    "ListObjectives":{
      "name":"ListObjectives",
      "http":{
        "method":"POST",
        "requestUri":"/objectives",
        "responseCode":200
      },
      "input":{"shape":"ListObjectivesRequest"},
      "output":{"shape":"ListObjectivesResponse"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"InternalServerException"},
        {"shape":"ValidationException"},
        {"shape":"ThrottlingException"}
      ],
      "documentation":"<p>Returns a paginated list of objectives from the Amazon Web Services Control Catalog.</p> <p>You can apply an optional filter to see the objectives that belong to a specific domain. If you don’t provide a filter, the operation returns all objectives. </p>"
    }
  },
  "shapes":{
    "AccessDeniedException":{
      "type":"structure",
      "members":{
        "Message":{"shape":"String"}
      },
      "documentation":"<p>You do not have sufficient access to perform this action.</p>",
      "error":{
        "httpStatusCode":403,
        "senderFault":true
      },
      "exception":true
    },
    "AssociatedDomainSummary":{
      "type":"structure",
      "members":{
        "Arn":{
          "shape":"DomainArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the related domain.</p>"
        },
        "Name":{
          "shape":"String",
          "documentation":"<p>The name of the related domain.</p>"
        }
      },
      "documentation":"<p>A summary of the domain that a common control or an objective belongs to.</p>"
    },
    "AssociatedObjectiveSummary":{
      "type":"structure",
      "members":{
        "Arn":{
          "shape":"ObjectiveArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the related objective.</p>"
        },
        "Name":{
          "shape":"String",
          "documentation":"<p>The name of the related objective.</p>"
        }
      },
      "documentation":"<p>A summary of the objective that a common control supports.</p>"
    },
    "CommonControlArn":{
      "type":"string",
      "max":2048,
      "min":41,
      "pattern":"arn:(aws(?:[-a-z]*)?):controlcatalog:::common-control/[0-9a-z]+"
    },
    "CommonControlFilter":{
      "type":"structure",
      "members":{
        "Objectives":{
          "shape":"ObjectiveResourceFilterList",
          "documentation":"<p>The objective that's used as filter criteria.</p> <p>You can use this parameter to specify one objective ARN at a time. Passing multiple ARNs in the <code>CommonControlFilter</code> isn’t currently supported.</p>"
        }
      },
      "documentation":"<p>An optional filter that narrows the results to a specific objective.</p>"
    },
    "CommonControlSummary":{
      "type":"structure",
      "required":[
        "Arn",
        "Name",
        "Description",
        "Domain",
        "Objective",
        "CreateTime",
        "LastUpdateTime"
      ],
      "members":{
        "Arn":{
          "shape":"CommonControlArn",
          "documentation":"<p>The Amazon Resource Name (ARN) that identifies the common control.</p>"
        },
        "Name":{
          "shape":"String",
          "documentation":"<p>The name of the common control.</p>"
        },
        "Description":{
          "shape":"String",
          "documentation":"<p>The description of the common control.</p>"
        },
        "Domain":{
          "shape":"AssociatedDomainSummary",
          "documentation":"<p>The domain that the common control belongs to.</p>"
        },
        "Objective":{
          "shape":"AssociatedObjectiveSummary",
          "documentation":"<p>The objective that the common control belongs to.</p>"
        },
        "CreateTime":{
          "shape":"Timestamp",
          "documentation":"<p>The time when the common control was created.</p>"
        },
        "LastUpdateTime":{
          "shape":"Timestamp",
          "documentation":"<p>The time when the common control was most recently updated.</p>"
        }
      },
      "documentation":"<p>A summary of metadata for a common control.</p>"
    },
    "CommonControlSummaryList":{
      "type":"list",
      "member":{"shape":"CommonControlSummary"}
    },
    "ControlArn":{
      "type":"string",
      "max":2048,
      "min":34,
      "pattern":"arn:(aws(?:[-a-z]*)?):(controlcatalog|controltower):[a-zA-Z0-9-]*::control/[0-9a-zA-Z_\\-]+"
    },
    "ControlBehavior":{
      "type":"string",
      "enum":[
        "PREVENTIVE",
        "PROACTIVE",
        "DETECTIVE"
      ]
    },
    "ControlParameter":{
      "type":"structure",
      "required":["Name"],
      "members":{
        "Name":{
          "shape":"String",
          "documentation":"<p>The parameter name. This name is the parameter <code>key</code> when you call <a href=\"https://docs.aws.amazon.com/controltower/latest/APIReference/API_EnableControl.html\"> <code>EnableControl</code> </a> or <a href=\"https://docs.aws.amazon.com/controltower/latest/APIReference/API_UpdateEnabledControl.html\"> <code>UpdateEnabledControl</code> </a>.</p>"
        }
      },
      "documentation":"<p>Four types of control parameters are supported.</p> <ul> <li> <p> <b>AllowedRegions</b>: List of Amazon Web Services Regions exempted from the control. Each string is expected to be an Amazon Web Services Region code. This parameter is mandatory for the <b>OU Region deny</b> control, <b>CT.MULTISERVICE.PV.1</b>.</p> <p>Example: <code>[\"us-east-1\",\"us-west-2\"]</code> </p> </li> <li> <p> <b>ExemptedActions</b>: List of Amazon Web Services IAM actions exempted from the control. Each string is expected to be an IAM action.</p> <p>Example: <code>[\"logs:DescribeLogGroups\",\"logs:StartQuery\",\"logs:GetQueryResults\"]</code> </p> </li> <li> <p> <b>ExemptedPrincipalArns</b>: List of Amazon Web Services IAM principal ARNs exempted from the control. Each string is expected to be an IAM principal that follows the pattern <code>^arn:(aws|aws-us-gov):(iam|sts)::.+:.+$</code> </p> <p>Example: <code>[\"arn:aws:iam::*:role/ReadOnly\",\"arn:aws:sts::*:assumed-role/ReadOnly/*\"]</code> </p> </li> <li> <p> <b>ExemptedResourceArns</b>: List of resource ARNs exempted from the control. Each string is expected to be a resource ARN.</p> <p>Example: <code>[\"arn:aws:s3:::my-bucket-name\"]</code> </p> </li> </ul>"
    },
    "ControlParameters":{
      "type":"list",
      "member":{"shape":"ControlParameter"}
    },
    "ControlScope":{
      "type":"string",
      "enum":[
        "GLOBAL",
        "REGIONAL"
      ]
    },
    "ControlSummary":{
      "type":"structure",
      "required":[
        "Arn",
        "Name",
        "Description"
      ],
      "members":{
        "Arn":{
          "shape":"ControlArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the control.</p>"
        },
        "Name":{
          "shape":"String",
          "documentation":"<p>The display name of the control.</p>"
        },
        "Description":{
          "shape":"String",
          "documentation":"<p>A description of the control, as it may appear in the console. Describes the functionality of the control.</p>"
        }
      },
      "documentation":"<p>Overview of information about a control.</p>"
    },
    "Controls":{
      "type":"list",
      "member":{"shape":"ControlSummary"}
    },
    "DeployableRegions":{
      "type":"list",
      "member":{"shape":"RegionCode"}
    },
    "DomainArn":{
      "type":"string",
      "max":2048,
      "min":33,
      "pattern":"arn:(aws(?:[-a-z]*)?):controlcatalog:::domain/[0-9a-z]+"
    },
    "DomainResourceFilter":{
      "type":"structure",
      "members":{
        "Arn":{
          "shape":"DomainArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the domain.</p>"
        }
      },
      "documentation":"<p>The domain resource that's being used as a filter.</p>"
    },
    "DomainResourceFilterList":{
      "type":"list",
      "member":{"shape":"DomainResourceFilter"}
    },
    "DomainSummary":{
      "type":"structure",
      "required":[
        "Arn",
        "Name",
        "Description",
        "CreateTime",
        "LastUpdateTime"
      ],
      "members":{
        "Arn":{
          "shape":"DomainArn",
          "documentation":"<p>The Amazon Resource Name (ARN) that identifies the domain.</p>"
        },
        "Name":{
          "shape":"String",
          "documentation":"<p>The name of the domain.</p>"
        },
        "Description":{
          "shape":"String",
          "documentation":"<p>The description of the domain.</p>"
        },
        "CreateTime":{
          "shape":"Timestamp",
          "documentation":"<p>The time when the domain was created.</p>"
        },
        "LastUpdateTime":{
          "shape":"Timestamp",
          "documentation":"<p>The time when the domain was most recently updated.</p>"
        }
      },
      "documentation":"<p>A summary of metadata for a domain.</p>"
    },
    "DomainSummaryList":{
      "type":"list",
      "member":{"shape":"DomainSummary"}
    },
    "GetControlRequest":{
      "type":"structure",
      "required":["ControlArn"],
      "members":{
        "ControlArn":{
          "shape":"ControlArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the control. It has one of the following formats:</p> <p> <i>Global format</i> </p> <p> <code>arn:{PARTITION}:controlcatalog:::control/{CONTROL_CATALOG_OPAQUE_ID}</code> </p> <p> <i>Or Regional format</i> </p> <p> <code>arn:{PARTITION}:controltower:{REGION}::control/{CONTROL_TOWER_OPAQUE_ID}</code> </p> <p>Here is a more general pattern that covers Amazon Web Services Control Tower and Control Catalog ARNs:</p> <p> <code>^arn:(aws(?:[-a-z]*)?):(controlcatalog|controltower):[a-zA-Z0-9-]*::control/[0-9a-zA-Z_\\\\-]+$</code> </p>"
        }
      }
    },
    "GetControlResponse":{
      "type":"structure",
      "required":[
        "Arn",
        "Name",
        "Description",
        "Behavior",
        "RegionConfiguration"
      ],
      "members":{
        "Arn":{
          "shape":"ControlArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the control.</p>"
        },
        "Name":{
          "shape":"String",
          "documentation":"<p>The display name of the control.</p>"
        },
        "Description":{
          "shape":"String",
          "documentation":"<p>A description of what the control does.</p>"
        },
        "Behavior":{
          "shape":"ControlBehavior",
          "documentation":"<p>A term that identifies the control's functional behavior. One of <code>Preventive</code>, <code>Detective</code>, <code>Proactive</code> </p>"
        },
        "RegionConfiguration":{"shape":"RegionConfiguration"},
        "Implementation":{
          "shape":"ImplementationDetails",
          "documentation":"<p>Returns information about the control, as an <code>ImplementationDetails</code> object that shows the underlying implementation type for a control.</p>"
        },
        "Parameters":{
          "shape":"ControlParameters",
          "documentation":"<p>Returns an array of <code>ControlParameter</code> objects that specify the parameters a control supports. An empty list is returned for controls that don’t support parameters. </p>"
        }
      }
    },
    "ImplementationDetails":{
      "type":"structure",
      "required":["Type"],
      "members":{
        "Type":{
          "shape":"ImplementationType",
          "documentation":"<p>A string that describes a control's implementation type.</p>"
        }
      },
      "documentation":"<p>An object that describes the implementation type for a control.</p> <p>Our <code>ImplementationDetails</code> <code>Type</code> format has three required segments:</p> <ul> <li> <p> <code>SERVICE-PROVIDER::SERVICE-NAME::RESOURCE-NAME</code> </p> </li> </ul> <p>For example, <code>AWS::Config::ConfigRule</code> <b>or</b> <code>AWS::SecurityHub::SecurityControl</code> resources have the format with three required segments.</p> <p>Our <code>ImplementationDetails</code> <code>Type</code> format has an optional fourth segment, which is present for applicable implementation types. The format is as follows: </p> <ul> <li> <p> <code>SERVICE-PROVIDER::SERVICE-NAME::RESOURCE-NAME::RESOURCE-TYPE-DESCRIPTION</code> </p> </li> </ul> <p>For example, <code>AWS::Organizations::Policy::SERVICE_CONTROL_POLICY</code> <b>or</b> <code>AWS::CloudFormation::Type::HOOK</code> have the format with four segments.</p> <p>Although the format is similar, the values for the <code>Type</code> field do not match any Amazon Web Services CloudFormation values.</p>"
    },
    "ImplementationType":{
      "type":"string",
      "max":2048,
      "min":7,
      "pattern":"[A-Za-z0-9]+(::[A-Za-z0-9_]+){2,3}"
    },
    "InternalServerException":{
      "type":"structure",
      "members":{
        "Message":{"shape":"String"}
      },
      "documentation":"<p>An internal service error occurred during the processing of your request. Try again later.</p>",
      "error":{"httpStatusCode":500},
      "exception":true,
      "fault":true,
      "retryable":{"throttling":false}
    },
    "ListCommonControlsRequest":{
      "type":"structure",
      "members":{
        "MaxResults":{
          "shape":"MaxListCommonControlsResults",
          "documentation":"<p>The maximum number of results on a page or for an API request call.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "NextToken":{
          "shape":"PaginationToken",
          "documentation":"<p>The pagination token that's used to fetch the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "CommonControlFilter":{
          "shape":"CommonControlFilter",
          "documentation":"<p>An optional filter that narrows the results to a specific objective.</p> <p>This filter allows you to specify one objective ARN at a time. Passing multiple ARNs in the <code>CommonControlFilter</code> isn’t currently supported.</p>"
        }
      }
    },
    "ListCommonControlsResponse":{
      "type":"structure",
      "required":["CommonControls"],
      "members":{
        "CommonControls":{
          "shape":"CommonControlSummaryList",
          "documentation":"<p>The list of common controls that the <code>ListCommonControls</code> API returns.</p>"
        },
        "NextToken":{
          "shape":"PaginationToken",
          "documentation":"<p>The pagination token that's used to fetch the next set of results.</p>"
        }
      }
    },
    "ListControlsRequest":{
      "type":"structure",
      "members":{
        "NextToken":{
          "shape":"PaginationToken",
          "documentation":"<p>The pagination token that's used to fetch the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "MaxResults":{
          "shape":"MaxListControlsResults",
          "documentation":"<p>The maximum number of results on a page or for an API request call.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        }
      }
    },
    "ListControlsResponse":{
      "type":"structure",
      "required":["Controls"],
      "members":{
        "Controls":{
          "shape":"Controls",
          "documentation":"<p>Returns a list of controls, given as structures of type <i>controlSummary</i>.</p>"
        },
        "NextToken":{
          "shape":"PaginationToken",
          "documentation":"<p>The pagination token that's used to fetch the next set of results.</p>"
        }
      }
    },
    "ListDomainsRequest":{
      "type":"structure",
      "members":{
        "MaxResults":{
          "shape":"MaxListDomainsResults",
          "documentation":"<p>The maximum number of results on a page or for an API request call.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "NextToken":{
          "shape":"PaginationToken",
          "documentation":"<p>The pagination token that's used to fetch the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        }
      }
    },
    "ListDomainsResponse":{
      "type":"structure",
      "required":["Domains"],
      "members":{
        "Domains":{
          "shape":"DomainSummaryList",
          "documentation":"<p>The list of domains that the <code>ListDomains</code> API returns.</p>"
        },
        "NextToken":{
          "shape":"PaginationToken",
          "documentation":"<p>The pagination token that's used to fetch the next set of results.</p>"
        }
      }
    },
    "ListObjectivesRequest":{
      "type":"structure",
      "members":{
        "MaxResults":{
          "shape":"MaxListObjectivesResults",
          "documentation":"<p>The maximum number of results on a page or for an API request call.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "NextToken":{
          "shape":"PaginationToken",
          "documentation":"<p>The pagination token that's used to fetch the next set of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "ObjectiveFilter":{
          "shape":"ObjectiveFilter",
          "documentation":"<p>An optional filter that narrows the results to a specific domain.</p> <p>This filter allows you to specify one domain ARN at a time. Passing multiple ARNs in the <code>ObjectiveFilter</code> isn’t currently supported.</p>"
        }
      }
    },
    "ListObjectivesResponse":{
      "type":"structure",
      "required":["Objectives"],
      "members":{
        "Objectives":{
          "shape":"ObjectiveSummaryList",
          "documentation":"<p>The list of objectives that the <code>ListObjectives</code> API returns.</p>"
        },
        "NextToken":{
          "shape":"PaginationToken",
          "documentation":"<p>The pagination token that's used to fetch the next set of results.</p>"
        }
      }
    },
    "MaxListCommonControlsResults":{
      "type":"integer",
      "box":true,
      "max":100,
      "min":1
    },
    "MaxListControlsResults":{
      "type":"integer",
      "box":true,
      "max":100,
      "min":1
    },
    "MaxListDomainsResults":{
      "type":"integer",
      "box":true,
      "max":100,
      "min":1
    },
    "MaxListObjectivesResults":{
      "type":"integer",
      "box":true,
      "max":100,
      "min":1
    },
    "ObjectiveArn":{
      "type":"string",
      "max":2048,
      "min":36,
      "pattern":"arn:(aws(?:[-a-z]*)?):controlcatalog:::objective/[0-9a-z]+"
    },
    "ObjectiveFilter":{
      "type":"structure",
      "members":{
        "Domains":{
          "shape":"DomainResourceFilterList",
          "documentation":"<p>The domain that's used as filter criteria.</p> <p>You can use this parameter to specify one domain ARN at a time. Passing multiple ARNs in the <code>ObjectiveFilter</code> isn’t currently supported.</p>"
        }
      },
      "documentation":"<p>An optional filter that narrows the list of objectives to a specific domain.</p>"
    },
    "ObjectiveResourceFilter":{
      "type":"structure",
      "members":{
        "Arn":{
          "shape":"ObjectiveArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the objective.</p>"
        }
      },
      "documentation":"<p>The objective resource that's being used as a filter.</p>"
    },
    "ObjectiveResourceFilterList":{
      "type":"list",
      "member":{"shape":"ObjectiveResourceFilter"}
    },
    "ObjectiveSummary":{
      "type":"structure",
      "required":[
        "Arn",
        "Name",
        "Description",
        "Domain",
        "CreateTime",
        "LastUpdateTime"
      ],
      "members":{
        "Arn":{
          "shape":"ObjectiveArn",
          "documentation":"<p>The Amazon Resource Name (ARN) that identifies the objective.</p>"
        },
        "Name":{
          "shape":"String",
          "documentation":"<p>The name of the objective.</p>"
        },
        "Description":{
          "shape":"String",
          "documentation":"<p>The description of the objective.</p>"
        },
        "Domain":{
          "shape":"AssociatedDomainSummary",
          "documentation":"<p>The domain that the objective belongs to.</p>"
        },
        "CreateTime":{
          "shape":"Timestamp",
          "documentation":"<p>The time when the objective was created.</p>"
        },
        "LastUpdateTime":{
          "shape":"Timestamp",
          "documentation":"<p>The time when the objective was most recently updated.</p>"
        }
      },
      "documentation":"<p>A summary of metadata for an objective.</p>"
    },
    "ObjectiveSummaryList":{
      "type":"list",
      "member":{"shape":"ObjectiveSummary"}
    },
    "PaginationToken":{
      "type":"string",
      "max":1024,
      "min":0
    },
    "RegionCode":{
      "type":"string",
      "pattern":"[a-zA-Z0-9-]{1,128}"
    },
    "RegionConfiguration":{
      "type":"structure",
      "required":["Scope"],
      "members":{
        "Scope":{
          "shape":"ControlScope",
          "documentation":"<p>The coverage of the control, if deployed. Scope is an enumerated type, with value <code>Regional</code>, or <code>Global</code>. A control with Global scope is effective in all Amazon Web Services Regions, regardless of the Region from which it is enabled, or to which it is deployed. A control implemented by an SCP is usually Global in scope. A control with Regional scope has operations that are restricted specifically to the Region from which it is enabled and to which it is deployed. Controls implemented by Config rules and CloudFormation hooks usually are Regional in scope. Security Hub controls usually are Regional in scope.</p>"
        },
        "DeployableRegions":{
          "shape":"DeployableRegions",
          "documentation":"<p>Regions in which the control is available to be deployed.</p>"
        }
      },
      "documentation":"<p>Returns information about the control, including the scope of the control, if enabled, and the Regions in which the control currently is available for deployment. For more information about scope, see <a href=\"https://docs.aws.amazon.com/whitepapers/latest/aws-fault-isolation-boundaries/global-services.html\">Global services</a>.</p> <p>If you are applying controls through an Amazon Web Services Control Tower landing zone environment, remember that the values returned in the <code>RegionConfiguration</code> API operation are not related to the governed Regions in your landing zone. For example, if you are governing Regions <code>A</code>,<code>B</code>,and <code>C</code> while the control is available in Regions <code>A</code>, <code>B</code>, C<code>,</code> and <code>D</code>, you'd see a response with <code>DeployableRegions</code> of <code>A</code>, <code>B</code>, <code>C</code>, and <code>D</code> for a control with <code>REGIONAL</code> scope, even though you may not intend to deploy the control in Region <code>D</code>, because you do not govern it through your landing zone.</p>"
    },
    "ResourceNotFoundException":{
      "type":"structure",
      "members":{
        "Message":{"shape":"String"}
      },
      "documentation":"<p>The requested resource does not exist.</p>",
      "error":{
        "httpStatusCode":404,
        "senderFault":true
      },
      "exception":true
    },
    "String":{"type":"string"},
    "ThrottlingException":{
      "type":"structure",
      "members":{
        "Message":{"shape":"String"}
      },
      "documentation":"<p>The request was denied due to request throttling.</p>",
      "error":{
        "httpStatusCode":429,
        "senderFault":true
      },
      "exception":true,
      "retryable":{"throttling":true}
    },
    "Timestamp":{"type":"timestamp"},
    "ValidationException":{
      "type":"structure",
      "members":{
        "Message":{"shape":"String"}
      },
      "documentation":"<p>The request has invalid or missing parameters.</p>",
      "error":{
        "httpStatusCode":400,
        "senderFault":true
      },
      "exception":true
    }
  },
  "documentation":"<p>Welcome to the Amazon Web Services Control Catalog API reference. This guide is for developers who need detailed information about how to programmatically identify and filter the common controls and related metadata that are available to Amazon Web Services customers. This API reference provides descriptions, syntax, and usage examples for each of the actions and data types that are supported by Amazon Web Services Control Catalog. </p> <p>Use the following links to get started with the Amazon Web Services Control Catalog API:</p> <ul> <li> <p> <a href=\"https://docs.aws.amazon.com/controlcatalog/latest/APIReference/API_Operations.html\">Actions</a>: An alphabetical list of all Control Catalog API operations.</p> </li> <li> <p> <a href=\"https://docs.aws.amazon.com/controlcatalog/latest/APIReference/API_Types.html\">Data types</a>: An alphabetical list of all Control Catalog data types.</p> </li> <li> <p> <a href=\"https://docs.aws.amazon.com/controlcatalog/latest/APIReference/CommonParameters.html\">Common parameters</a>: Parameters that all operations can use.</p> </li> <li> <p> <a href=\"https://docs.aws.amazon.com/controlcatalog/latest/APIReference/CommonErrors.html\">Common errors</a>: Client and server errors that all operations can return.</p> </li> </ul>"
}
