github.com/aavshr/aws-sdk-go@v1.41.3/models/apis/route53-recovery-control-config/2020-11-02/api-2.json (about)

     1  {
     2    "metadata": {
     3      "apiVersion": "2020-11-02",
     4      "endpointPrefix": "route53-recovery-control-config",
     5      "signingName": "route53-recovery-control-config",
     6      "serviceFullName": "AWS Route53 Recovery Control Config",
     7      "serviceId": "Route53 Recovery Control Config",
     8      "protocol": "rest-json",
     9      "jsonVersion": "1.1",
    10      "uid": "route53-recovery-control-config-2020-11-02",
    11      "signatureVersion": "v4"
    12    },
    13    "operations": {
    14      "CreateCluster": {
    15        "name": "CreateCluster",
    16        "http": {
    17          "method": "POST",
    18          "requestUri": "/cluster",
    19          "responseCode": 200
    20        },
    21        "input": {
    22          "shape": "CreateClusterRequest"
    23        },
    24        "output": {
    25          "shape": "CreateClusterResponse"
    26        },
    27        "errors": [
    28          {
    29            "shape": "ValidationException"
    30          },
    31          {
    32            "shape": "InternalServerException"
    33          },
    34          {
    35            "shape": "ServiceQuotaExceededException"
    36          },
    37          {
    38            "shape": "AccessDeniedException"
    39          },
    40          {
    41            "shape": "ResourceNotFoundException"
    42          },
    43          {
    44            "shape": "ThrottlingException"
    45          },
    46          {
    47            "shape": "ConflictException"
    48          }
    49        ]
    50      },
    51      "CreateControlPanel": {
    52        "name": "CreateControlPanel",
    53        "http": {
    54          "method": "POST",
    55          "requestUri": "/controlpanel",
    56          "responseCode": 200
    57        },
    58        "input": {
    59          "shape": "CreateControlPanelRequest"
    60        },
    61        "output": {
    62          "shape": "CreateControlPanelResponse"
    63        },
    64        "errors": [
    65          {
    66            "shape": "ValidationException"
    67          },
    68          {
    69            "shape": "InternalServerException"
    70          },
    71          {
    72            "shape": "ServiceQuotaExceededException"
    73          },
    74          {
    75            "shape": "AccessDeniedException"
    76          },
    77          {
    78            "shape": "ResourceNotFoundException"
    79          },
    80          {
    81            "shape": "ThrottlingException"
    82          },
    83          {
    84            "shape": "ConflictException"
    85          }
    86        ]
    87      },
    88      "CreateRoutingControl": {
    89        "name": "CreateRoutingControl",
    90        "http": {
    91          "method": "POST",
    92          "requestUri": "/routingcontrol",
    93          "responseCode": 200
    94        },
    95        "input": {
    96          "shape": "CreateRoutingControlRequest"
    97        },
    98        "output": {
    99          "shape": "CreateRoutingControlResponse"
   100        },
   101        "errors": [
   102          {
   103            "shape": "ValidationException"
   104          },
   105          {
   106            "shape": "InternalServerException"
   107          },
   108          {
   109            "shape": "ServiceQuotaExceededException"
   110          },
   111          {
   112            "shape": "AccessDeniedException"
   113          },
   114          {
   115            "shape": "ResourceNotFoundException"
   116          },
   117          {
   118            "shape": "ThrottlingException"
   119          },
   120          {
   121            "shape": "ConflictException"
   122          }
   123        ]
   124      },
   125      "CreateSafetyRule": {
   126        "name": "CreateSafetyRule",
   127        "http": {
   128          "method": "POST",
   129          "requestUri": "/safetyrule",
   130          "responseCode": 200
   131        },
   132        "input": {
   133          "shape": "CreateSafetyRuleRequest"
   134        },
   135        "output": {
   136          "shape": "CreateSafetyRuleResponse"
   137        },
   138        "errors": [
   139          {
   140            "shape": "ValidationException"
   141          },
   142          {
   143            "shape": "InternalServerException"
   144          }
   145        ]
   146      },
   147      "DeleteCluster": {
   148        "name": "DeleteCluster",
   149        "http": {
   150          "method": "DELETE",
   151          "requestUri": "/cluster/{ClusterArn}",
   152          "responseCode": 200
   153        },
   154        "input": {
   155          "shape": "DeleteClusterRequest"
   156        },
   157        "output": {
   158          "shape": "DeleteClusterResponse"
   159        },
   160        "errors": [
   161          {
   162            "shape": "ValidationException"
   163          },
   164          {
   165            "shape": "InternalServerException"
   166          },
   167          {
   168            "shape": "AccessDeniedException"
   169          },
   170          {
   171            "shape": "ResourceNotFoundException"
   172          },
   173          {
   174            "shape": "ThrottlingException"
   175          },
   176          {
   177            "shape": "ConflictException"
   178          }
   179        ]
   180      },
   181      "DeleteControlPanel": {
   182        "name": "DeleteControlPanel",
   183        "http": {
   184          "method": "DELETE",
   185          "requestUri": "/controlpanel/{ControlPanelArn}",
   186          "responseCode": 200
   187        },
   188        "input": {
   189          "shape": "DeleteControlPanelRequest"
   190        },
   191        "output": {
   192          "shape": "DeleteControlPanelResponse"
   193        },
   194        "errors": [
   195          {
   196            "shape": "ValidationException"
   197          },
   198          {
   199            "shape": "InternalServerException"
   200          },
   201          {
   202            "shape": "AccessDeniedException"
   203          },
   204          {
   205            "shape": "ResourceNotFoundException"
   206          },
   207          {
   208            "shape": "ThrottlingException"
   209          },
   210          {
   211            "shape": "ConflictException"
   212          }
   213        ]
   214      },
   215      "DeleteRoutingControl": {
   216        "name": "DeleteRoutingControl",
   217        "http": {
   218          "method": "DELETE",
   219          "requestUri": "/routingcontrol/{RoutingControlArn}",
   220          "responseCode": 200
   221        },
   222        "input": {
   223          "shape": "DeleteRoutingControlRequest"
   224        },
   225        "output": {
   226          "shape": "DeleteRoutingControlResponse"
   227        },
   228        "errors": [
   229          {
   230            "shape": "ValidationException"
   231          },
   232          {
   233            "shape": "InternalServerException"
   234          },
   235          {
   236            "shape": "AccessDeniedException"
   237          },
   238          {
   239            "shape": "ResourceNotFoundException"
   240          },
   241          {
   242            "shape": "ThrottlingException"
   243          },
   244          {
   245            "shape": "ConflictException"
   246          }
   247        ]
   248      },
   249      "DeleteSafetyRule": {
   250        "name": "DeleteSafetyRule",
   251        "http": {
   252          "method": "DELETE",
   253          "requestUri": "/safetyrule/{SafetyRuleArn}",
   254          "responseCode": 200
   255        },
   256        "input": {
   257          "shape": "DeleteSafetyRuleRequest"
   258        },
   259        "output": {
   260          "shape": "DeleteSafetyRuleResponse"
   261        },
   262        "errors": [
   263          {
   264            "shape": "ResourceNotFoundException"
   265          },
   266          {
   267            "shape": "ValidationException"
   268          },
   269          {
   270            "shape": "InternalServerException"
   271          }
   272        ]
   273      },
   274      "DescribeCluster": {
   275        "name": "DescribeCluster",
   276        "http": {
   277          "method": "GET",
   278          "requestUri": "/cluster/{ClusterArn}",
   279          "responseCode": 200
   280        },
   281        "input": {
   282          "shape": "DescribeClusterRequest"
   283        },
   284        "output": {
   285          "shape": "DescribeClusterResponse"
   286        },
   287        "errors": [
   288          {
   289            "shape": "ValidationException"
   290          },
   291          {
   292            "shape": "InternalServerException"
   293          },
   294          {
   295            "shape": "AccessDeniedException"
   296          },
   297          {
   298            "shape": "ResourceNotFoundException"
   299          },
   300          {
   301            "shape": "ThrottlingException"
   302          },
   303          {
   304            "shape": "ConflictException"
   305          }
   306        ]
   307      },
   308      "DescribeControlPanel": {
   309        "name": "DescribeControlPanel",
   310        "http": {
   311          "method": "GET",
   312          "requestUri": "/controlpanel/{ControlPanelArn}",
   313          "responseCode": 200
   314        },
   315        "input": {
   316          "shape": "DescribeControlPanelRequest"
   317        },
   318        "output": {
   319          "shape": "DescribeControlPanelResponse"
   320        },
   321        "errors": [
   322          {
   323            "shape": "ValidationException"
   324          },
   325          {
   326            "shape": "InternalServerException"
   327          },
   328          {
   329            "shape": "AccessDeniedException"
   330          },
   331          {
   332            "shape": "ResourceNotFoundException"
   333          },
   334          {
   335            "shape": "ThrottlingException"
   336          },
   337          {
   338            "shape": "ConflictException"
   339          }
   340        ]
   341      },
   342      "DescribeRoutingControl": {
   343        "name": "DescribeRoutingControl",
   344        "http": {
   345          "method": "GET",
   346          "requestUri": "/routingcontrol/{RoutingControlArn}",
   347          "responseCode": 200
   348        },
   349        "input": {
   350          "shape": "DescribeRoutingControlRequest"
   351        },
   352        "output": {
   353          "shape": "DescribeRoutingControlResponse"
   354        },
   355        "errors": [
   356          {
   357            "shape": "ValidationException"
   358          },
   359          {
   360            "shape": "InternalServerException"
   361          },
   362          {
   363            "shape": "AccessDeniedException"
   364          },
   365          {
   366            "shape": "ResourceNotFoundException"
   367          },
   368          {
   369            "shape": "ThrottlingException"
   370          },
   371          {
   372            "shape": "ConflictException"
   373          }
   374        ]
   375      },
   376      "DescribeSafetyRule": {
   377        "name": "DescribeSafetyRule",
   378        "http": {
   379          "method": "GET",
   380          "requestUri": "/safetyrule/{SafetyRuleArn}",
   381          "responseCode": 200
   382        },
   383        "input": {
   384          "shape": "DescribeSafetyRuleRequest"
   385        },
   386        "output": {
   387          "shape": "DescribeSafetyRuleResponse"
   388        },
   389        "errors": [
   390          {
   391            "shape": "ValidationException"
   392          },
   393          {
   394            "shape": "ResourceNotFoundException"
   395          }
   396        ]
   397      },
   398      "ListAssociatedRoute53HealthChecks": {
   399        "name": "ListAssociatedRoute53HealthChecks",
   400        "http": {
   401          "method": "GET",
   402          "requestUri": "/routingcontrol/{RoutingControlArn}/associatedRoute53HealthChecks",
   403          "responseCode": 200
   404        },
   405        "input": {
   406          "shape": "ListAssociatedRoute53HealthChecksRequest"
   407        },
   408        "output": {
   409          "shape": "ListAssociatedRoute53HealthChecksResponse"
   410        },
   411        "errors": [
   412          {
   413            "shape": "ResourceNotFoundException"
   414          },
   415          {
   416            "shape": "ValidationException"
   417          },
   418          {
   419            "shape": "InternalServerException"
   420          }
   421        ]
   422      },
   423      "ListClusters": {
   424        "name": "ListClusters",
   425        "http": {
   426          "method": "GET",
   427          "requestUri": "/cluster",
   428          "responseCode": 200
   429        },
   430        "input": {
   431          "shape": "ListClustersRequest"
   432        },
   433        "output": {
   434          "shape": "ListClustersResponse"
   435        },
   436        "errors": [
   437          {
   438            "shape": "ResourceNotFoundException"
   439          },
   440          {
   441            "shape": "ThrottlingException"
   442          },
   443          {
   444            "shape": "ValidationException"
   445          },
   446          {
   447            "shape": "InternalServerException"
   448          },
   449          {
   450            "shape": "AccessDeniedException"
   451          }
   452        ]
   453      },
   454      "ListControlPanels": {
   455        "name": "ListControlPanels",
   456        "http": {
   457          "method": "GET",
   458          "requestUri": "/controlpanels",
   459          "responseCode": 200
   460        },
   461        "input": {
   462          "shape": "ListControlPanelsRequest"
   463        },
   464        "output": {
   465          "shape": "ListControlPanelsResponse"
   466        },
   467        "errors": [
   468          {
   469            "shape": "ResourceNotFoundException"
   470          },
   471          {
   472            "shape": "ThrottlingException"
   473          },
   474          {
   475            "shape": "ValidationException"
   476          },
   477          {
   478            "shape": "InternalServerException"
   479          },
   480          {
   481            "shape": "AccessDeniedException"
   482          }
   483        ]
   484      },
   485      "ListRoutingControls": {
   486        "name": "ListRoutingControls",
   487        "http": {
   488          "method": "GET",
   489          "requestUri": "/controlpanel/{ControlPanelArn}/routingcontrols",
   490          "responseCode": 200
   491        },
   492        "input": {
   493          "shape": "ListRoutingControlsRequest"
   494        },
   495        "output": {
   496          "shape": "ListRoutingControlsResponse"
   497        },
   498        "errors": [
   499          {
   500            "shape": "ResourceNotFoundException"
   501          },
   502          {
   503            "shape": "ThrottlingException"
   504          },
   505          {
   506            "shape": "ValidationException"
   507          },
   508          {
   509            "shape": "InternalServerException"
   510          },
   511          {
   512            "shape": "AccessDeniedException"
   513          }
   514        ]
   515      },
   516      "ListSafetyRules": {
   517        "name": "ListSafetyRules",
   518        "http": {
   519          "method": "GET",
   520          "requestUri": "/controlpanel/{ControlPanelArn}/safetyrules",
   521          "responseCode": 200
   522        },
   523        "input": {
   524          "shape": "ListSafetyRulesRequest"
   525        },
   526        "output": {
   527          "shape": "ListSafetyRulesResponse"
   528        },
   529        "errors": [
   530          {
   531            "shape": "ResourceNotFoundException"
   532          },
   533          {
   534            "shape": "ThrottlingException"
   535          },
   536          {
   537            "shape": "ValidationException"
   538          },
   539          {
   540            "shape": "InternalServerException"
   541          },
   542          {
   543            "shape": "AccessDeniedException"
   544          }
   545        ]
   546      },
   547      "UpdateControlPanel": {
   548        "name": "UpdateControlPanel",
   549        "http": {
   550          "method": "PUT",
   551          "requestUri": "/controlpanel",
   552          "responseCode": 200
   553        },
   554        "input": {
   555          "shape": "UpdateControlPanelRequest"
   556        },
   557        "output": {
   558          "shape": "UpdateControlPanelResponse"
   559        },
   560        "errors": [
   561          {
   562            "shape": "ValidationException"
   563          },
   564          {
   565            "shape": "InternalServerException"
   566          },
   567          {
   568            "shape": "AccessDeniedException"
   569          },
   570          {
   571            "shape": "ResourceNotFoundException"
   572          },
   573          {
   574            "shape": "ThrottlingException"
   575          },
   576          {
   577            "shape": "ConflictException"
   578          }
   579        ]
   580      },
   581      "UpdateRoutingControl": {
   582        "name": "UpdateRoutingControl",
   583        "http": {
   584          "method": "PUT",
   585          "requestUri": "/routingcontrol",
   586          "responseCode": 200
   587        },
   588        "input": {
   589          "shape": "UpdateRoutingControlRequest"
   590        },
   591        "output": {
   592          "shape": "UpdateRoutingControlResponse"
   593        },
   594        "errors": [
   595          {
   596            "shape": "ValidationException"
   597          },
   598          {
   599            "shape": "InternalServerException"
   600          },
   601          {
   602            "shape": "AccessDeniedException"
   603          },
   604          {
   605            "shape": "ResourceNotFoundException"
   606          },
   607          {
   608            "shape": "ThrottlingException"
   609          },
   610          {
   611            "shape": "ConflictException"
   612          }
   613        ]
   614      },
   615      "UpdateSafetyRule": {
   616        "name": "UpdateSafetyRule",
   617        "http": {
   618          "method": "PUT",
   619          "requestUri": "/safetyrule",
   620          "responseCode": 200
   621        },
   622        "input": {
   623          "shape": "UpdateSafetyRuleRequest"
   624        },
   625        "output": {
   626          "shape": "UpdateSafetyRuleResponse"
   627        },
   628        "errors": [
   629          {
   630            "shape": "ResourceNotFoundException"
   631          },
   632          {
   633            "shape": "ValidationException"
   634          },
   635          {
   636            "shape": "InternalServerException"
   637          }
   638        ]
   639      }
   640    },
   641    "shapes": {
   642      "AccessDeniedException": {
   643        "type": "structure",
   644        "members": {
   645          "Message": {
   646            "shape": "__string",
   647            "locationName": "message"
   648          }
   649        },
   650        "required": [
   651          "Message"
   652        ],
   653        "exception": true,
   654        "error": {
   655          "httpStatusCode": 403
   656        }
   657      },
   658      "AssertionRule": {
   659        "type": "structure",
   660        "members": {
   661          "AssertedControls": {
   662            "shape": "__listOf__string"
   663          },
   664          "ControlPanelArn": {
   665            "shape": "__string"
   666          },
   667          "Name": {
   668            "shape": "__stringMin1Max64PatternS"
   669          },
   670          "RuleConfig": {
   671            "shape": "RuleConfig"
   672          },
   673          "SafetyRuleArn": {
   674            "shape": "__string"
   675          },
   676          "Status": {
   677            "shape": "Status"
   678          },
   679          "WaitPeriodMs": {
   680            "shape": "__integer"
   681          }
   682        },
   683        "required": [
   684          "Status",
   685          "ControlPanelArn",
   686          "SafetyRuleArn",
   687          "AssertedControls",
   688          "RuleConfig",
   689          "WaitPeriodMs",
   690          "Name"
   691        ]
   692      },
   693      "AssertionRuleUpdate": {
   694        "type": "structure",
   695        "members": {
   696          "Name": {
   697            "shape": "__stringMin1Max64PatternS"
   698          },
   699          "SafetyRuleArn": {
   700            "shape": "__string"
   701          },
   702          "WaitPeriodMs": {
   703            "shape": "__integer"
   704          }
   705        },
   706        "required": [
   707          "SafetyRuleArn",
   708          "WaitPeriodMs",
   709          "Name"
   710        ]
   711      },
   712      "Cluster": {
   713        "type": "structure",
   714        "members": {
   715          "ClusterArn": {
   716            "shape": "__string"
   717          },
   718          "ClusterEndpoints": {
   719            "shape": "__listOfClusterEndpoint"
   720          },
   721          "Name": {
   722            "shape": "__stringMin1Max64PatternS"
   723          },
   724          "Status": {
   725            "shape": "Status"
   726          }
   727        }
   728      },
   729      "ClusterEndpoint": {
   730        "type": "structure",
   731        "members": {
   732          "Endpoint": {
   733            "shape": "__stringMin1Max128"
   734          },
   735          "Region": {
   736            "shape": "__stringMin1Max32"
   737          }
   738        }
   739      },
   740      "ConflictException": {
   741        "type": "structure",
   742        "members": {
   743          "Message": {
   744            "shape": "__string",
   745            "locationName": "message"
   746          }
   747        },
   748        "required": [
   749          "Message"
   750        ],
   751        "exception": true,
   752        "error": {
   753          "httpStatusCode": 409
   754        }
   755      },
   756      "ControlPanel": {
   757        "type": "structure",
   758        "members": {
   759          "ClusterArn": {
   760            "shape": "__string"
   761          },
   762          "ControlPanelArn": {
   763            "shape": "__string"
   764          },
   765          "DefaultControlPanel": {
   766            "shape": "__boolean"
   767          },
   768          "Name": {
   769            "shape": "__stringMin1Max64PatternS"
   770          },
   771          "RoutingControlCount": {
   772            "shape": "__integer"
   773          },
   774          "Status": {
   775            "shape": "Status"
   776          }
   777        }
   778      },
   779      "CreateClusterRequest": {
   780        "type": "structure",
   781        "members": {
   782          "ClientToken": {
   783            "shape": "__stringMax64",
   784            "idempotencyToken": true
   785          },
   786          "ClusterName": {
   787            "shape": "__stringMin1Max64PatternS"
   788          }
   789        },
   790        "required": [
   791          "ClusterName"
   792        ]
   793      },
   794      "CreateClusterResponse": {
   795        "type": "structure",
   796        "members": {
   797          "Cluster": {
   798            "shape": "Cluster"
   799          }
   800        }
   801      },
   802      "CreateControlPanelRequest": {
   803        "type": "structure",
   804        "members": {
   805          "ClientToken": {
   806            "shape": "__stringMax64",
   807            "idempotencyToken": true
   808          },
   809          "ClusterArn": {
   810            "shape": "__string"
   811          },
   812          "ControlPanelName": {
   813            "shape": "__stringMin1Max64PatternS"
   814          }
   815        },
   816        "required": [
   817          "ClusterArn",
   818          "ControlPanelName"
   819        ]
   820      },
   821      "CreateControlPanelResponse": {
   822        "type": "structure",
   823        "members": {
   824          "ControlPanel": {
   825            "shape": "ControlPanel"
   826          }
   827        }
   828      },
   829      "CreateRoutingControlRequest": {
   830        "type": "structure",
   831        "members": {
   832          "ClientToken": {
   833            "shape": "__stringMax64",
   834            "idempotencyToken": true
   835          },
   836          "ClusterArn": {
   837            "shape": "__string"
   838          },
   839          "ControlPanelArn": {
   840            "shape": "__string"
   841          },
   842          "RoutingControlName": {
   843            "shape": "__stringMin1Max64PatternS"
   844          }
   845        },
   846        "required": [
   847          "ClusterArn",
   848          "RoutingControlName"
   849        ]
   850      },
   851      "CreateRoutingControlResponse": {
   852        "type": "structure",
   853        "members": {
   854          "RoutingControl": {
   855            "shape": "RoutingControl"
   856          }
   857        }
   858      },
   859      "CreateSafetyRuleRequest": {
   860        "type": "structure",
   861        "members": {
   862          "AssertionRule": {
   863            "shape": "NewAssertionRule"
   864          },
   865          "ClientToken": {
   866            "shape": "__stringMax64",
   867            "idempotencyToken": true
   868          },
   869          "GatingRule": {
   870            "shape": "NewGatingRule"
   871          }
   872        }
   873      },
   874      "CreateSafetyRuleResponse": {
   875        "type": "structure",
   876        "members": {
   877          "AssertionRule": {
   878            "shape": "AssertionRule"
   879          },
   880          "GatingRule": {
   881            "shape": "GatingRule"
   882          }
   883        }
   884      },
   885      "DeleteClusterRequest": {
   886        "type": "structure",
   887        "members": {
   888          "ClusterArn": {
   889            "shape": "__string",
   890            "location": "uri",
   891            "locationName": "ClusterArn"
   892          }
   893        },
   894        "required": [
   895          "ClusterArn"
   896        ]
   897      },
   898      "DeleteClusterResponse": {
   899        "type": "structure",
   900        "members": {}
   901      },
   902      "DeleteControlPanelRequest": {
   903        "type": "structure",
   904        "members": {
   905          "ControlPanelArn": {
   906            "shape": "__string",
   907            "location": "uri",
   908            "locationName": "ControlPanelArn"
   909          }
   910        },
   911        "required": [
   912          "ControlPanelArn"
   913        ]
   914      },
   915      "DeleteControlPanelResponse": {
   916        "type": "structure",
   917        "members": {}
   918      },
   919      "DeleteRoutingControlRequest": {
   920        "type": "structure",
   921        "members": {
   922          "RoutingControlArn": {
   923            "shape": "__string",
   924            "location": "uri",
   925            "locationName": "RoutingControlArn"
   926          }
   927        },
   928        "required": [
   929          "RoutingControlArn"
   930        ]
   931      },
   932      "DeleteRoutingControlResponse": {
   933        "type": "structure",
   934        "members": {}
   935      },
   936      "DeleteSafetyRuleRequest": {
   937        "type": "structure",
   938        "members": {
   939          "SafetyRuleArn": {
   940            "shape": "__string",
   941            "location": "uri",
   942            "locationName": "SafetyRuleArn"
   943          }
   944        },
   945        "required": [
   946          "SafetyRuleArn"
   947        ]
   948      },
   949      "DeleteSafetyRuleResponse": {
   950        "type": "structure",
   951        "members": {}
   952      },
   953      "DescribeClusterRequest": {
   954        "type": "structure",
   955        "members": {
   956          "ClusterArn": {
   957            "shape": "__string",
   958            "location": "uri",
   959            "locationName": "ClusterArn"
   960          }
   961        },
   962        "required": [
   963          "ClusterArn"
   964        ]
   965      },
   966      "DescribeClusterResponse": {
   967        "type": "structure",
   968        "members": {
   969          "Cluster": {
   970            "shape": "Cluster"
   971          }
   972        }
   973      },
   974      "DescribeControlPanelRequest": {
   975        "type": "structure",
   976        "members": {
   977          "ControlPanelArn": {
   978            "shape": "__string",
   979            "location": "uri",
   980            "locationName": "ControlPanelArn"
   981          }
   982        },
   983        "required": [
   984          "ControlPanelArn"
   985        ]
   986      },
   987      "DescribeControlPanelResponse": {
   988        "type": "structure",
   989        "members": {
   990          "ControlPanel": {
   991            "shape": "ControlPanel"
   992          }
   993        }
   994      },
   995      "DescribeRoutingControlRequest": {
   996        "type": "structure",
   997        "members": {
   998          "RoutingControlArn": {
   999            "shape": "__string",
  1000            "location": "uri",
  1001            "locationName": "RoutingControlArn"
  1002          }
  1003        },
  1004        "required": [
  1005          "RoutingControlArn"
  1006        ]
  1007      },
  1008      "DescribeRoutingControlResponse": {
  1009        "type": "structure",
  1010        "members": {
  1011          "RoutingControl": {
  1012            "shape": "RoutingControl"
  1013          }
  1014        }
  1015      },
  1016      "DescribeSafetyRuleRequest": {
  1017        "type": "structure",
  1018        "members": {
  1019          "SafetyRuleArn": {
  1020            "shape": "__string",
  1021            "location": "uri",
  1022            "locationName": "SafetyRuleArn"
  1023          }
  1024        },
  1025        "required": [
  1026          "SafetyRuleArn"
  1027        ]
  1028      },
  1029      "DescribeSafetyRuleResponse": {
  1030        "type": "structure",
  1031        "members": {
  1032          "AssertionRule": {
  1033            "shape": "AssertionRule"
  1034          },
  1035          "GatingRule": {
  1036            "shape": "GatingRule"
  1037          }
  1038        }
  1039      },
  1040      "GatingRule": {
  1041        "type": "structure",
  1042        "members": {
  1043          "ControlPanelArn": {
  1044            "shape": "__string"
  1045          },
  1046          "GatingControls": {
  1047            "shape": "__listOf__string"
  1048          },
  1049          "Name": {
  1050            "shape": "__stringMin1Max64PatternS"
  1051          },
  1052          "RuleConfig": {
  1053            "shape": "RuleConfig"
  1054          },
  1055          "SafetyRuleArn": {
  1056            "shape": "__string"
  1057          },
  1058          "Status": {
  1059            "shape": "Status"
  1060          },
  1061          "TargetControls": {
  1062            "shape": "__listOf__string"
  1063          },
  1064          "WaitPeriodMs": {
  1065            "shape": "__integer"
  1066          }
  1067        },
  1068        "required": [
  1069          "Status",
  1070          "TargetControls",
  1071          "ControlPanelArn",
  1072          "SafetyRuleArn",
  1073          "GatingControls",
  1074          "RuleConfig",
  1075          "WaitPeriodMs",
  1076          "Name"
  1077        ]
  1078      },
  1079      "GatingRuleUpdate": {
  1080        "type": "structure",
  1081        "members": {
  1082          "Name": {
  1083            "shape": "__stringMin1Max64PatternS"
  1084          },
  1085          "SafetyRuleArn": {
  1086            "shape": "__string"
  1087          },
  1088          "WaitPeriodMs": {
  1089            "shape": "__integer"
  1090          }
  1091        },
  1092        "required": [
  1093          "SafetyRuleArn",
  1094          "WaitPeriodMs",
  1095          "Name"
  1096        ]
  1097      },
  1098      "InternalServerException": {
  1099        "type": "structure",
  1100        "members": {
  1101          "Message": {
  1102            "shape": "__string",
  1103            "locationName": "message"
  1104          }
  1105        },
  1106        "required": [
  1107          "Message"
  1108        ],
  1109        "exception": true,
  1110        "error": {
  1111          "httpStatusCode": 500
  1112        }
  1113      },
  1114      "ListAssociatedRoute53HealthChecksRequest": {
  1115        "type": "structure",
  1116        "members": {
  1117          "MaxResults": {
  1118            "shape": "MaxResults",
  1119            "location": "querystring",
  1120            "locationName": "MaxResults"
  1121          },
  1122          "NextToken": {
  1123            "shape": "__string",
  1124            "location": "querystring",
  1125            "locationName": "NextToken"
  1126          },
  1127          "RoutingControlArn": {
  1128            "shape": "__string",
  1129            "location": "uri",
  1130            "locationName": "RoutingControlArn"
  1131          }
  1132        },
  1133        "required": [
  1134          "RoutingControlArn"
  1135        ]
  1136      },
  1137      "ListAssociatedRoute53HealthChecksResponse": {
  1138        "type": "structure",
  1139        "members": {
  1140          "HealthCheckIds": {
  1141            "shape": "__listOf__string"
  1142          },
  1143          "NextToken": {
  1144            "shape": "__stringMax8096"
  1145          }
  1146        }
  1147      },
  1148      "ListClustersRequest": {
  1149        "type": "structure",
  1150        "members": {
  1151          "MaxResults": {
  1152            "shape": "MaxResults",
  1153            "location": "querystring",
  1154            "locationName": "MaxResults"
  1155          },
  1156          "NextToken": {
  1157            "shape": "__string",
  1158            "location": "querystring",
  1159            "locationName": "NextToken"
  1160          }
  1161        }
  1162      },
  1163      "ListClustersResponse": {
  1164        "type": "structure",
  1165        "members": {
  1166          "Clusters": {
  1167            "shape": "__listOfCluster"
  1168          },
  1169          "NextToken": {
  1170            "shape": "__stringMax8096"
  1171          }
  1172        }
  1173      },
  1174      "ListControlPanelsRequest": {
  1175        "type": "structure",
  1176        "members": {
  1177          "ClusterArn": {
  1178            "shape": "__string",
  1179            "location": "querystring",
  1180            "locationName": "ClusterArn"
  1181          },
  1182          "MaxResults": {
  1183            "shape": "MaxResults",
  1184            "location": "querystring",
  1185            "locationName": "MaxResults"
  1186          },
  1187          "NextToken": {
  1188            "shape": "__string",
  1189            "location": "querystring",
  1190            "locationName": "NextToken"
  1191          }
  1192        }
  1193      },
  1194      "ListControlPanelsResponse": {
  1195        "type": "structure",
  1196        "members": {
  1197          "ControlPanels": {
  1198            "shape": "__listOfControlPanel"
  1199          },
  1200          "NextToken": {
  1201            "shape": "__stringMax8096"
  1202          }
  1203        }
  1204      },
  1205      "ListRoutingControlsRequest": {
  1206        "type": "structure",
  1207        "members": {
  1208          "ControlPanelArn": {
  1209            "shape": "__string",
  1210            "location": "uri",
  1211            "locationName": "ControlPanelArn"
  1212          },
  1213          "MaxResults": {
  1214            "shape": "MaxResults",
  1215            "location": "querystring",
  1216            "locationName": "MaxResults"
  1217          },
  1218          "NextToken": {
  1219            "shape": "__string",
  1220            "location": "querystring",
  1221            "locationName": "NextToken"
  1222          }
  1223        },
  1224        "required": [
  1225          "ControlPanelArn"
  1226        ]
  1227      },
  1228      "ListRoutingControlsResponse": {
  1229        "type": "structure",
  1230        "members": {
  1231          "NextToken": {
  1232            "shape": "__stringMax8096"
  1233          },
  1234          "RoutingControls": {
  1235            "shape": "__listOfRoutingControl"
  1236          }
  1237        }
  1238      },
  1239      "ListSafetyRulesRequest": {
  1240        "type": "structure",
  1241        "members": {
  1242          "ControlPanelArn": {
  1243            "shape": "__string",
  1244            "location": "uri",
  1245            "locationName": "ControlPanelArn"
  1246          },
  1247          "MaxResults": {
  1248            "shape": "MaxResults",
  1249            "location": "querystring",
  1250            "locationName": "MaxResults"
  1251          },
  1252          "NextToken": {
  1253            "shape": "__string",
  1254            "location": "querystring",
  1255            "locationName": "NextToken"
  1256          }
  1257        },
  1258        "required": [
  1259          "ControlPanelArn"
  1260        ]
  1261      },
  1262      "ListSafetyRulesResponse": {
  1263        "type": "structure",
  1264        "members": {
  1265          "NextToken": {
  1266            "shape": "__stringMax8096"
  1267          },
  1268          "SafetyRules": {
  1269            "shape": "__listOfRule"
  1270          }
  1271        }
  1272      },
  1273      "MaxResults": {
  1274        "type": "integer",
  1275        "min": 1,
  1276        "max": 1000
  1277      },
  1278      "NewAssertionRule": {
  1279        "type": "structure",
  1280        "members": {
  1281          "AssertedControls": {
  1282            "shape": "__listOf__string"
  1283          },
  1284          "ControlPanelArn": {
  1285            "shape": "__string"
  1286          },
  1287          "Name": {
  1288            "shape": "__stringMin1Max64PatternS"
  1289          },
  1290          "RuleConfig": {
  1291            "shape": "RuleConfig"
  1292          },
  1293          "WaitPeriodMs": {
  1294            "shape": "__integer"
  1295          }
  1296        },
  1297        "required": [
  1298          "ControlPanelArn",
  1299          "AssertedControls",
  1300          "RuleConfig",
  1301          "WaitPeriodMs",
  1302          "Name"
  1303        ]
  1304      },
  1305      "NewGatingRule": {
  1306        "type": "structure",
  1307        "members": {
  1308          "ControlPanelArn": {
  1309            "shape": "__string"
  1310          },
  1311          "GatingControls": {
  1312            "shape": "__listOf__string"
  1313          },
  1314          "Name": {
  1315            "shape": "__stringMin1Max64PatternS"
  1316          },
  1317          "RuleConfig": {
  1318            "shape": "RuleConfig"
  1319          },
  1320          "TargetControls": {
  1321            "shape": "__listOf__string"
  1322          },
  1323          "WaitPeriodMs": {
  1324            "shape": "__integer"
  1325          }
  1326        },
  1327        "required": [
  1328          "TargetControls",
  1329          "ControlPanelArn",
  1330          "GatingControls",
  1331          "RuleConfig",
  1332          "WaitPeriodMs",
  1333          "Name"
  1334        ]
  1335      },
  1336      "ResourceNotFoundException": {
  1337        "type": "structure",
  1338        "members": {
  1339          "Message": {
  1340            "shape": "__string",
  1341            "locationName": "message"
  1342          }
  1343        },
  1344        "required": [
  1345          "Message"
  1346        ],
  1347        "exception": true,
  1348        "error": {
  1349          "httpStatusCode": 404
  1350        }
  1351      },
  1352      "RoutingControl": {
  1353        "type": "structure",
  1354        "members": {
  1355          "ControlPanelArn": {
  1356            "shape": "__string"
  1357          },
  1358          "Name": {
  1359            "shape": "__stringMin1Max64PatternS"
  1360          },
  1361          "RoutingControlArn": {
  1362            "shape": "__string"
  1363          },
  1364          "Status": {
  1365            "shape": "Status"
  1366          }
  1367        }
  1368      },
  1369      "Rule": {
  1370        "type": "structure",
  1371        "members": {
  1372          "ASSERTION": {
  1373            "shape": "AssertionRule"
  1374          },
  1375          "GATING": {
  1376            "shape": "GatingRule"
  1377          }
  1378        }
  1379      },
  1380      "RuleConfig": {
  1381        "type": "structure",
  1382        "members": {
  1383          "Inverted": {
  1384            "shape": "__boolean"
  1385          },
  1386          "Threshold": {
  1387            "shape": "__integer"
  1388          },
  1389          "Type": {
  1390            "shape": "RuleType"
  1391          }
  1392        },
  1393        "required": [
  1394          "Type",
  1395          "Inverted",
  1396          "Threshold"
  1397        ]
  1398      },
  1399      "RuleType": {
  1400        "type": "string",
  1401        "enum": [
  1402          "ATLEAST",
  1403          "AND",
  1404          "OR"
  1405        ]
  1406      },
  1407      "ServiceQuotaExceededException": {
  1408        "type": "structure",
  1409        "members": {
  1410          "Message": {
  1411            "shape": "__string",
  1412            "locationName": "message"
  1413          }
  1414        },
  1415        "required": [
  1416          "Message"
  1417        ],
  1418        "exception": true,
  1419        "error": {
  1420          "httpStatusCode": 402
  1421        }
  1422      },
  1423      "Status": {
  1424        "type": "string",
  1425        "enum": [
  1426          "PENDING",
  1427          "DEPLOYED",
  1428          "PENDING_DELETION"
  1429        ]
  1430      },
  1431      "ThrottlingException": {
  1432        "type": "structure",
  1433        "members": {
  1434          "Message": {
  1435            "shape": "__string",
  1436            "locationName": "message"
  1437          }
  1438        },
  1439        "required": [
  1440          "Message"
  1441        ],
  1442        "exception": true,
  1443        "error": {
  1444          "httpStatusCode": 429
  1445        }
  1446      },
  1447      "UpdateControlPanelRequest": {
  1448        "type": "structure",
  1449        "members": {
  1450          "ControlPanelArn": {
  1451            "shape": "__string"
  1452          },
  1453          "ControlPanelName": {
  1454            "shape": "__stringMin1Max64PatternS"
  1455          }
  1456        },
  1457        "required": [
  1458          "ControlPanelArn",
  1459          "ControlPanelName"
  1460        ]
  1461      },
  1462      "UpdateControlPanelResponse": {
  1463        "type": "structure",
  1464        "members": {
  1465          "ControlPanel": {
  1466            "shape": "ControlPanel"
  1467          }
  1468        }
  1469      },
  1470      "UpdateRoutingControlRequest": {
  1471        "type": "structure",
  1472        "members": {
  1473          "RoutingControlArn": {
  1474            "shape": "__string"
  1475          },
  1476          "RoutingControlName": {
  1477            "shape": "__stringMin1Max64PatternS"
  1478          }
  1479        },
  1480        "required": [
  1481          "RoutingControlName",
  1482          "RoutingControlArn"
  1483        ]
  1484      },
  1485      "UpdateRoutingControlResponse": {
  1486        "type": "structure",
  1487        "members": {
  1488          "RoutingControl": {
  1489            "shape": "RoutingControl"
  1490          }
  1491        }
  1492      },
  1493      "UpdateSafetyRuleRequest": {
  1494        "type": "structure",
  1495        "members": {
  1496          "AssertionRuleUpdate": {
  1497            "shape": "AssertionRuleUpdate"
  1498          },
  1499          "GatingRuleUpdate": {
  1500            "shape": "GatingRuleUpdate"
  1501          }
  1502        }
  1503      },
  1504      "UpdateSafetyRuleResponse": {
  1505        "type": "structure",
  1506        "members": {
  1507          "AssertionRule": {
  1508            "shape": "AssertionRule"
  1509          },
  1510          "GatingRule": {
  1511            "shape": "GatingRule"
  1512          }
  1513        }
  1514      },
  1515      "ValidationException": {
  1516        "type": "structure",
  1517        "members": {
  1518          "Message": {
  1519            "shape": "__string",
  1520            "locationName": "message"
  1521          }
  1522        },
  1523        "required": [
  1524          "Message"
  1525        ],
  1526        "exception": true,
  1527        "error": {
  1528          "httpStatusCode": 400
  1529        }
  1530      },
  1531      "__boolean": {
  1532        "type": "boolean"
  1533      },
  1534      "__double": {
  1535        "type": "double"
  1536      },
  1537      "__integer": {
  1538        "type": "integer"
  1539      },
  1540      "__listOfCluster": {
  1541        "type": "list",
  1542        "member": {
  1543          "shape": "Cluster"
  1544        }
  1545      },
  1546      "__listOfClusterEndpoint": {
  1547        "type": "list",
  1548        "member": {
  1549          "shape": "ClusterEndpoint"
  1550        }
  1551      },
  1552      "__listOfControlPanel": {
  1553        "type": "list",
  1554        "member": {
  1555          "shape": "ControlPanel"
  1556        }
  1557      },
  1558      "__listOfRoutingControl": {
  1559        "type": "list",
  1560        "member": {
  1561          "shape": "RoutingControl"
  1562        }
  1563      },
  1564      "__listOfRule": {
  1565        "type": "list",
  1566        "member": {
  1567          "shape": "Rule"
  1568        }
  1569      },
  1570      "__listOf__string": {
  1571        "type": "list",
  1572        "member": {
  1573          "shape": "__string"
  1574        }
  1575      },
  1576      "__long": {
  1577        "type": "long"
  1578      },
  1579      "__string": {
  1580        "type": "string"
  1581      },
  1582      "__stringMax64": {
  1583        "type": "string",
  1584        "max": 64
  1585      },
  1586      "__stringMax8096": {
  1587        "type": "string",
  1588        "max": 8096
  1589      },
  1590      "__stringMin1Max128": {
  1591        "type": "string",
  1592        "min": 1,
  1593        "max": 128
  1594      },
  1595      "__stringMin1Max32": {
  1596        "type": "string",
  1597        "min": 1,
  1598        "max": 32
  1599      },
  1600      "__stringMin1Max64PatternS": {
  1601        "type": "string",
  1602        "min": 1,
  1603        "max": 64,
  1604        "pattern": "^\\S+$"
  1605      },
  1606      "__timestampIso8601": {
  1607        "type": "timestamp",
  1608        "timestampFormat": "iso8601"
  1609      },
  1610      "__timestampUnix": {
  1611        "type": "timestamp",
  1612        "timestampFormat": "unixTimestamp"
  1613      }
  1614    }
  1615  }