github.com/aavshr/aws-sdk-go@v1.41.3/models/apis/network-firewall/2020-11-12/api-2.json (about)

     1  {
     2    "version":"2.0",
     3    "metadata":{
     4      "apiVersion":"2020-11-12",
     5      "endpointPrefix":"network-firewall",
     6      "jsonVersion":"1.0",
     7      "protocol":"json",
     8      "serviceAbbreviation":"Network Firewall",
     9      "serviceFullName":"AWS Network Firewall",
    10      "serviceId":"Network Firewall",
    11      "signatureVersion":"v4",
    12      "signingName":"network-firewall",
    13      "targetPrefix":"NetworkFirewall_20201112",
    14      "uid":"network-firewall-2020-11-12"
    15    },
    16    "operations":{
    17      "AssociateFirewallPolicy":{
    18        "name":"AssociateFirewallPolicy",
    19        "http":{
    20          "method":"POST",
    21          "requestUri":"/"
    22        },
    23        "input":{"shape":"AssociateFirewallPolicyRequest"},
    24        "output":{"shape":"AssociateFirewallPolicyResponse"},
    25        "errors":[
    26          {"shape":"InvalidRequestException"},
    27          {"shape":"InternalServerError"},
    28          {"shape":"ResourceNotFoundException"},
    29          {"shape":"ThrottlingException"},
    30          {"shape":"InvalidTokenException"},
    31          {"shape":"InvalidOperationException"}
    32        ]
    33      },
    34      "AssociateSubnets":{
    35        "name":"AssociateSubnets",
    36        "http":{
    37          "method":"POST",
    38          "requestUri":"/"
    39        },
    40        "input":{"shape":"AssociateSubnetsRequest"},
    41        "output":{"shape":"AssociateSubnetsResponse"},
    42        "errors":[
    43          {"shape":"InvalidRequestException"},
    44          {"shape":"InternalServerError"},
    45          {"shape":"ResourceNotFoundException"},
    46          {"shape":"ThrottlingException"},
    47          {"shape":"InvalidTokenException"},
    48          {"shape":"InvalidOperationException"},
    49          {"shape":"InsufficientCapacityException"}
    50        ]
    51      },
    52      "CreateFirewall":{
    53        "name":"CreateFirewall",
    54        "http":{
    55          "method":"POST",
    56          "requestUri":"/"
    57        },
    58        "input":{"shape":"CreateFirewallRequest"},
    59        "output":{"shape":"CreateFirewallResponse"},
    60        "errors":[
    61          {"shape":"InvalidRequestException"},
    62          {"shape":"LimitExceededException"},
    63          {"shape":"InternalServerError"},
    64          {"shape":"ThrottlingException"},
    65          {"shape":"InsufficientCapacityException"},
    66          {"shape":"InvalidOperationException"}
    67        ]
    68      },
    69      "CreateFirewallPolicy":{
    70        "name":"CreateFirewallPolicy",
    71        "http":{
    72          "method":"POST",
    73          "requestUri":"/"
    74        },
    75        "input":{"shape":"CreateFirewallPolicyRequest"},
    76        "output":{"shape":"CreateFirewallPolicyResponse"},
    77        "errors":[
    78          {"shape":"LimitExceededException"},
    79          {"shape":"InvalidRequestException"},
    80          {"shape":"ThrottlingException"},
    81          {"shape":"InternalServerError"},
    82          {"shape":"InsufficientCapacityException"}
    83        ]
    84      },
    85      "CreateRuleGroup":{
    86        "name":"CreateRuleGroup",
    87        "http":{
    88          "method":"POST",
    89          "requestUri":"/"
    90        },
    91        "input":{"shape":"CreateRuleGroupRequest"},
    92        "output":{"shape":"CreateRuleGroupResponse"},
    93        "errors":[
    94          {"shape":"LimitExceededException"},
    95          {"shape":"InvalidRequestException"},
    96          {"shape":"ThrottlingException"},
    97          {"shape":"InternalServerError"},
    98          {"shape":"InsufficientCapacityException"}
    99        ]
   100      },
   101      "DeleteFirewall":{
   102        "name":"DeleteFirewall",
   103        "http":{
   104          "method":"POST",
   105          "requestUri":"/"
   106        },
   107        "input":{"shape":"DeleteFirewallRequest"},
   108        "output":{"shape":"DeleteFirewallResponse"},
   109        "errors":[
   110          {"shape":"InvalidRequestException"},
   111          {"shape":"InternalServerError"},
   112          {"shape":"ResourceNotFoundException"},
   113          {"shape":"ThrottlingException"},
   114          {"shape":"UnsupportedOperationException"},
   115          {"shape":"InvalidOperationException"}
   116        ]
   117      },
   118      "DeleteFirewallPolicy":{
   119        "name":"DeleteFirewallPolicy",
   120        "http":{
   121          "method":"POST",
   122          "requestUri":"/"
   123        },
   124        "input":{"shape":"DeleteFirewallPolicyRequest"},
   125        "output":{"shape":"DeleteFirewallPolicyResponse"},
   126        "errors":[
   127          {"shape":"InvalidRequestException"},
   128          {"shape":"ResourceNotFoundException"},
   129          {"shape":"ThrottlingException"},
   130          {"shape":"InternalServerError"},
   131          {"shape":"UnsupportedOperationException"},
   132          {"shape":"InvalidOperationException"}
   133        ]
   134      },
   135      "DeleteResourcePolicy":{
   136        "name":"DeleteResourcePolicy",
   137        "http":{
   138          "method":"POST",
   139          "requestUri":"/"
   140        },
   141        "input":{"shape":"DeleteResourcePolicyRequest"},
   142        "output":{"shape":"DeleteResourcePolicyResponse"},
   143        "errors":[
   144          {"shape":"InvalidRequestException"},
   145          {"shape":"InternalServerError"},
   146          {"shape":"ResourceNotFoundException"},
   147          {"shape":"ThrottlingException"},
   148          {"shape":"InvalidResourcePolicyException"}
   149        ]
   150      },
   151      "DeleteRuleGroup":{
   152        "name":"DeleteRuleGroup",
   153        "http":{
   154          "method":"POST",
   155          "requestUri":"/"
   156        },
   157        "input":{"shape":"DeleteRuleGroupRequest"},
   158        "output":{"shape":"DeleteRuleGroupResponse"},
   159        "errors":[
   160          {"shape":"InvalidRequestException"},
   161          {"shape":"ResourceNotFoundException"},
   162          {"shape":"ThrottlingException"},
   163          {"shape":"InternalServerError"},
   164          {"shape":"UnsupportedOperationException"},
   165          {"shape":"InvalidOperationException"}
   166        ]
   167      },
   168      "DescribeFirewall":{
   169        "name":"DescribeFirewall",
   170        "http":{
   171          "method":"POST",
   172          "requestUri":"/"
   173        },
   174        "input":{"shape":"DescribeFirewallRequest"},
   175        "output":{"shape":"DescribeFirewallResponse"},
   176        "errors":[
   177          {"shape":"InvalidRequestException"},
   178          {"shape":"InternalServerError"},
   179          {"shape":"ResourceNotFoundException"},
   180          {"shape":"ThrottlingException"}
   181        ]
   182      },
   183      "DescribeFirewallPolicy":{
   184        "name":"DescribeFirewallPolicy",
   185        "http":{
   186          "method":"POST",
   187          "requestUri":"/"
   188        },
   189        "input":{"shape":"DescribeFirewallPolicyRequest"},
   190        "output":{"shape":"DescribeFirewallPolicyResponse"},
   191        "errors":[
   192          {"shape":"InvalidRequestException"},
   193          {"shape":"ResourceNotFoundException"},
   194          {"shape":"ThrottlingException"},
   195          {"shape":"InternalServerError"}
   196        ]
   197      },
   198      "DescribeLoggingConfiguration":{
   199        "name":"DescribeLoggingConfiguration",
   200        "http":{
   201          "method":"POST",
   202          "requestUri":"/"
   203        },
   204        "input":{"shape":"DescribeLoggingConfigurationRequest"},
   205        "output":{"shape":"DescribeLoggingConfigurationResponse"},
   206        "errors":[
   207          {"shape":"InvalidRequestException"},
   208          {"shape":"InternalServerError"},
   209          {"shape":"ResourceNotFoundException"},
   210          {"shape":"ThrottlingException"}
   211        ]
   212      },
   213      "DescribeResourcePolicy":{
   214        "name":"DescribeResourcePolicy",
   215        "http":{
   216          "method":"POST",
   217          "requestUri":"/"
   218        },
   219        "input":{"shape":"DescribeResourcePolicyRequest"},
   220        "output":{"shape":"DescribeResourcePolicyResponse"},
   221        "errors":[
   222          {"shape":"InvalidRequestException"},
   223          {"shape":"InternalServerError"},
   224          {"shape":"ResourceNotFoundException"},
   225          {"shape":"ThrottlingException"}
   226        ]
   227      },
   228      "DescribeRuleGroup":{
   229        "name":"DescribeRuleGroup",
   230        "http":{
   231          "method":"POST",
   232          "requestUri":"/"
   233        },
   234        "input":{"shape":"DescribeRuleGroupRequest"},
   235        "output":{"shape":"DescribeRuleGroupResponse"},
   236        "errors":[
   237          {"shape":"InvalidRequestException"},
   238          {"shape":"ResourceNotFoundException"},
   239          {"shape":"ThrottlingException"},
   240          {"shape":"InternalServerError"}
   241        ]
   242      },
   243      "DisassociateSubnets":{
   244        "name":"DisassociateSubnets",
   245        "http":{
   246          "method":"POST",
   247          "requestUri":"/"
   248        },
   249        "input":{"shape":"DisassociateSubnetsRequest"},
   250        "output":{"shape":"DisassociateSubnetsResponse"},
   251        "errors":[
   252          {"shape":"InvalidRequestException"},
   253          {"shape":"InternalServerError"},
   254          {"shape":"ResourceNotFoundException"},
   255          {"shape":"ThrottlingException"},
   256          {"shape":"InvalidTokenException"},
   257          {"shape":"InvalidOperationException"}
   258        ]
   259      },
   260      "ListFirewallPolicies":{
   261        "name":"ListFirewallPolicies",
   262        "http":{
   263          "method":"POST",
   264          "requestUri":"/"
   265        },
   266        "input":{"shape":"ListFirewallPoliciesRequest"},
   267        "output":{"shape":"ListFirewallPoliciesResponse"},
   268        "errors":[
   269          {"shape":"InvalidRequestException"},
   270          {"shape":"ThrottlingException"},
   271          {"shape":"InternalServerError"}
   272        ]
   273      },
   274      "ListFirewalls":{
   275        "name":"ListFirewalls",
   276        "http":{
   277          "method":"POST",
   278          "requestUri":"/"
   279        },
   280        "input":{"shape":"ListFirewallsRequest"},
   281        "output":{"shape":"ListFirewallsResponse"},
   282        "errors":[
   283          {"shape":"InvalidRequestException"},
   284          {"shape":"InternalServerError"},
   285          {"shape":"ThrottlingException"}
   286        ]
   287      },
   288      "ListRuleGroups":{
   289        "name":"ListRuleGroups",
   290        "http":{
   291          "method":"POST",
   292          "requestUri":"/"
   293        },
   294        "input":{"shape":"ListRuleGroupsRequest"},
   295        "output":{"shape":"ListRuleGroupsResponse"},
   296        "errors":[
   297          {"shape":"InvalidRequestException"},
   298          {"shape":"ThrottlingException"},
   299          {"shape":"InternalServerError"}
   300        ]
   301      },
   302      "ListTagsForResource":{
   303        "name":"ListTagsForResource",
   304        "http":{
   305          "method":"POST",
   306          "requestUri":"/"
   307        },
   308        "input":{"shape":"ListTagsForResourceRequest"},
   309        "output":{"shape":"ListTagsForResourceResponse"},
   310        "errors":[
   311          {"shape":"ResourceNotFoundException"},
   312          {"shape":"InvalidRequestException"}
   313        ]
   314      },
   315      "PutResourcePolicy":{
   316        "name":"PutResourcePolicy",
   317        "http":{
   318          "method":"POST",
   319          "requestUri":"/"
   320        },
   321        "input":{"shape":"PutResourcePolicyRequest"},
   322        "output":{"shape":"PutResourcePolicyResponse"},
   323        "errors":[
   324          {"shape":"InvalidRequestException"},
   325          {"shape":"InternalServerError"},
   326          {"shape":"ResourceNotFoundException"},
   327          {"shape":"ThrottlingException"},
   328          {"shape":"InvalidResourcePolicyException"}
   329        ]
   330      },
   331      "TagResource":{
   332        "name":"TagResource",
   333        "http":{
   334          "method":"POST",
   335          "requestUri":"/"
   336        },
   337        "input":{"shape":"TagResourceRequest"},
   338        "output":{"shape":"TagResourceResponse"},
   339        "errors":[
   340          {"shape":"ResourceNotFoundException"},
   341          {"shape":"InvalidRequestException"}
   342        ]
   343      },
   344      "UntagResource":{
   345        "name":"UntagResource",
   346        "http":{
   347          "method":"POST",
   348          "requestUri":"/"
   349        },
   350        "input":{"shape":"UntagResourceRequest"},
   351        "output":{"shape":"UntagResourceResponse"},
   352        "errors":[
   353          {"shape":"ResourceNotFoundException"},
   354          {"shape":"InvalidRequestException"}
   355        ]
   356      },
   357      "UpdateFirewallDeleteProtection":{
   358        "name":"UpdateFirewallDeleteProtection",
   359        "http":{
   360          "method":"POST",
   361          "requestUri":"/"
   362        },
   363        "input":{"shape":"UpdateFirewallDeleteProtectionRequest"},
   364        "output":{"shape":"UpdateFirewallDeleteProtectionResponse"},
   365        "errors":[
   366          {"shape":"InvalidRequestException"},
   367          {"shape":"InternalServerError"},
   368          {"shape":"ResourceNotFoundException"},
   369          {"shape":"ThrottlingException"},
   370          {"shape":"InvalidTokenException"},
   371          {"shape":"ResourceOwnerCheckException"}
   372        ]
   373      },
   374      "UpdateFirewallDescription":{
   375        "name":"UpdateFirewallDescription",
   376        "http":{
   377          "method":"POST",
   378          "requestUri":"/"
   379        },
   380        "input":{"shape":"UpdateFirewallDescriptionRequest"},
   381        "output":{"shape":"UpdateFirewallDescriptionResponse"},
   382        "errors":[
   383          {"shape":"InvalidRequestException"},
   384          {"shape":"InternalServerError"},
   385          {"shape":"ResourceNotFoundException"},
   386          {"shape":"ThrottlingException"},
   387          {"shape":"InvalidTokenException"}
   388        ]
   389      },
   390      "UpdateFirewallPolicy":{
   391        "name":"UpdateFirewallPolicy",
   392        "http":{
   393          "method":"POST",
   394          "requestUri":"/"
   395        },
   396        "input":{"shape":"UpdateFirewallPolicyRequest"},
   397        "output":{"shape":"UpdateFirewallPolicyResponse"},
   398        "errors":[
   399          {"shape":"InvalidRequestException"},
   400          {"shape":"ResourceNotFoundException"},
   401          {"shape":"ThrottlingException"},
   402          {"shape":"InternalServerError"},
   403          {"shape":"InvalidTokenException"}
   404        ]
   405      },
   406      "UpdateFirewallPolicyChangeProtection":{
   407        "name":"UpdateFirewallPolicyChangeProtection",
   408        "http":{
   409          "method":"POST",
   410          "requestUri":"/"
   411        },
   412        "input":{"shape":"UpdateFirewallPolicyChangeProtectionRequest"},
   413        "output":{"shape":"UpdateFirewallPolicyChangeProtectionResponse"},
   414        "errors":[
   415          {"shape":"InvalidRequestException"},
   416          {"shape":"InternalServerError"},
   417          {"shape":"ResourceNotFoundException"},
   418          {"shape":"ThrottlingException"},
   419          {"shape":"InvalidTokenException"},
   420          {"shape":"ResourceOwnerCheckException"}
   421        ]
   422      },
   423      "UpdateLoggingConfiguration":{
   424        "name":"UpdateLoggingConfiguration",
   425        "http":{
   426          "method":"POST",
   427          "requestUri":"/"
   428        },
   429        "input":{"shape":"UpdateLoggingConfigurationRequest"},
   430        "output":{"shape":"UpdateLoggingConfigurationResponse"},
   431        "errors":[
   432          {"shape":"InvalidRequestException"},
   433          {"shape":"InternalServerError"},
   434          {"shape":"ResourceNotFoundException"},
   435          {"shape":"ThrottlingException"},
   436          {"shape":"InvalidTokenException"},
   437          {"shape":"LogDestinationPermissionException"}
   438        ]
   439      },
   440      "UpdateRuleGroup":{
   441        "name":"UpdateRuleGroup",
   442        "http":{
   443          "method":"POST",
   444          "requestUri":"/"
   445        },
   446        "input":{"shape":"UpdateRuleGroupRequest"},
   447        "output":{"shape":"UpdateRuleGroupResponse"},
   448        "errors":[
   449          {"shape":"ResourceNotFoundException"},
   450          {"shape":"InvalidRequestException"},
   451          {"shape":"ThrottlingException"},
   452          {"shape":"InternalServerError"},
   453          {"shape":"InvalidTokenException"}
   454        ]
   455      },
   456      "UpdateSubnetChangeProtection":{
   457        "name":"UpdateSubnetChangeProtection",
   458        "http":{
   459          "method":"POST",
   460          "requestUri":"/"
   461        },
   462        "input":{"shape":"UpdateSubnetChangeProtectionRequest"},
   463        "output":{"shape":"UpdateSubnetChangeProtectionResponse"},
   464        "errors":[
   465          {"shape":"InvalidRequestException"},
   466          {"shape":"InternalServerError"},
   467          {"shape":"ResourceNotFoundException"},
   468          {"shape":"ThrottlingException"},
   469          {"shape":"InvalidTokenException"},
   470          {"shape":"ResourceOwnerCheckException"}
   471        ]
   472      }
   473    },
   474    "shapes":{
   475      "ActionDefinition":{
   476        "type":"structure",
   477        "members":{
   478          "PublishMetricAction":{"shape":"PublishMetricAction"}
   479        }
   480      },
   481      "ActionName":{
   482        "type":"string",
   483        "max":128,
   484        "min":1,
   485        "pattern":"^[a-zA-Z0-9]+$"
   486      },
   487      "Address":{
   488        "type":"structure",
   489        "required":["AddressDefinition"],
   490        "members":{
   491          "AddressDefinition":{"shape":"AddressDefinition"}
   492        }
   493      },
   494      "AddressDefinition":{
   495        "type":"string",
   496        "max":255,
   497        "min":1,
   498        "pattern":"^([a-fA-F\\d:\\.]+($|/\\d{1,3}))$"
   499      },
   500      "Addresses":{
   501        "type":"list",
   502        "member":{"shape":"Address"}
   503      },
   504      "AssociateFirewallPolicyRequest":{
   505        "type":"structure",
   506        "required":["FirewallPolicyArn"],
   507        "members":{
   508          "UpdateToken":{"shape":"UpdateToken"},
   509          "FirewallArn":{"shape":"ResourceArn"},
   510          "FirewallName":{"shape":"ResourceName"},
   511          "FirewallPolicyArn":{"shape":"ResourceArn"}
   512        }
   513      },
   514      "AssociateFirewallPolicyResponse":{
   515        "type":"structure",
   516        "members":{
   517          "FirewallArn":{"shape":"ResourceArn"},
   518          "FirewallName":{"shape":"ResourceName"},
   519          "FirewallPolicyArn":{"shape":"ResourceArn"},
   520          "UpdateToken":{"shape":"UpdateToken"}
   521        }
   522      },
   523      "AssociateSubnetsRequest":{
   524        "type":"structure",
   525        "required":["SubnetMappings"],
   526        "members":{
   527          "UpdateToken":{"shape":"UpdateToken"},
   528          "FirewallArn":{"shape":"ResourceArn"},
   529          "FirewallName":{"shape":"ResourceName"},
   530          "SubnetMappings":{"shape":"SubnetMappings"}
   531        }
   532      },
   533      "AssociateSubnetsResponse":{
   534        "type":"structure",
   535        "members":{
   536          "FirewallArn":{"shape":"ResourceArn"},
   537          "FirewallName":{"shape":"ResourceName"},
   538          "SubnetMappings":{"shape":"SubnetMappings"},
   539          "UpdateToken":{"shape":"UpdateToken"}
   540        }
   541      },
   542      "Attachment":{
   543        "type":"structure",
   544        "members":{
   545          "SubnetId":{"shape":"AzSubnet"},
   546          "EndpointId":{"shape":"EndpointId"},
   547          "Status":{"shape":"AttachmentStatus"}
   548        }
   549      },
   550      "AttachmentStatus":{
   551        "type":"string",
   552        "enum":[
   553          "CREATING",
   554          "DELETING",
   555          "SCALING",
   556          "READY"
   557        ]
   558      },
   559      "AvailabilityZone":{"type":"string"},
   560      "AzSubnet":{
   561        "type":"string",
   562        "max":128,
   563        "min":1,
   564        "pattern":"^subnet-[0-9a-f]+$"
   565      },
   566      "AzSubnets":{
   567        "type":"list",
   568        "member":{"shape":"AzSubnet"}
   569      },
   570      "Boolean":{"type":"boolean"},
   571      "CollectionMember_String":{"type":"string"},
   572      "ConfigurationSyncState":{
   573        "type":"string",
   574        "enum":[
   575          "PENDING",
   576          "IN_SYNC"
   577        ]
   578      },
   579      "CreateFirewallPolicyRequest":{
   580        "type":"structure",
   581        "required":[
   582          "FirewallPolicyName",
   583          "FirewallPolicy"
   584        ],
   585        "members":{
   586          "FirewallPolicyName":{"shape":"ResourceName"},
   587          "FirewallPolicy":{"shape":"FirewallPolicy"},
   588          "Description":{"shape":"Description"},
   589          "Tags":{"shape":"TagList"},
   590          "DryRun":{"shape":"Boolean"}
   591        }
   592      },
   593      "CreateFirewallPolicyResponse":{
   594        "type":"structure",
   595        "required":[
   596          "UpdateToken",
   597          "FirewallPolicyResponse"
   598        ],
   599        "members":{
   600          "UpdateToken":{"shape":"UpdateToken"},
   601          "FirewallPolicyResponse":{"shape":"FirewallPolicyResponse"}
   602        }
   603      },
   604      "CreateFirewallRequest":{
   605        "type":"structure",
   606        "required":[
   607          "FirewallName",
   608          "FirewallPolicyArn",
   609          "VpcId",
   610          "SubnetMappings"
   611        ],
   612        "members":{
   613          "FirewallName":{"shape":"ResourceName"},
   614          "FirewallPolicyArn":{"shape":"ResourceArn"},
   615          "VpcId":{"shape":"VpcId"},
   616          "SubnetMappings":{"shape":"SubnetMappings"},
   617          "DeleteProtection":{"shape":"Boolean"},
   618          "SubnetChangeProtection":{"shape":"Boolean"},
   619          "FirewallPolicyChangeProtection":{"shape":"Boolean"},
   620          "Description":{"shape":"Description"},
   621          "Tags":{"shape":"TagList"}
   622        }
   623      },
   624      "CreateFirewallResponse":{
   625        "type":"structure",
   626        "members":{
   627          "Firewall":{"shape":"Firewall"},
   628          "FirewallStatus":{"shape":"FirewallStatus"}
   629        }
   630      },
   631      "CreateRuleGroupRequest":{
   632        "type":"structure",
   633        "required":[
   634          "RuleGroupName",
   635          "Type",
   636          "Capacity"
   637        ],
   638        "members":{
   639          "RuleGroupName":{"shape":"ResourceName"},
   640          "RuleGroup":{"shape":"RuleGroup"},
   641          "Rules":{"shape":"RulesString"},
   642          "Type":{"shape":"RuleGroupType"},
   643          "Description":{"shape":"Description"},
   644          "Capacity":{"shape":"RuleCapacity"},
   645          "Tags":{"shape":"TagList"},
   646          "DryRun":{"shape":"Boolean"}
   647        }
   648      },
   649      "CreateRuleGroupResponse":{
   650        "type":"structure",
   651        "required":[
   652          "UpdateToken",
   653          "RuleGroupResponse"
   654        ],
   655        "members":{
   656          "UpdateToken":{"shape":"UpdateToken"},
   657          "RuleGroupResponse":{"shape":"RuleGroupResponse"}
   658        }
   659      },
   660      "CustomAction":{
   661        "type":"structure",
   662        "required":[
   663          "ActionName",
   664          "ActionDefinition"
   665        ],
   666        "members":{
   667          "ActionName":{"shape":"ActionName"},
   668          "ActionDefinition":{"shape":"ActionDefinition"}
   669        }
   670      },
   671      "CustomActions":{
   672        "type":"list",
   673        "member":{"shape":"CustomAction"}
   674      },
   675      "DeleteFirewallPolicyRequest":{
   676        "type":"structure",
   677        "members":{
   678          "FirewallPolicyName":{"shape":"ResourceName"},
   679          "FirewallPolicyArn":{"shape":"ResourceArn"}
   680        }
   681      },
   682      "DeleteFirewallPolicyResponse":{
   683        "type":"structure",
   684        "required":["FirewallPolicyResponse"],
   685        "members":{
   686          "FirewallPolicyResponse":{"shape":"FirewallPolicyResponse"}
   687        }
   688      },
   689      "DeleteFirewallRequest":{
   690        "type":"structure",
   691        "members":{
   692          "FirewallName":{"shape":"ResourceName"},
   693          "FirewallArn":{"shape":"ResourceArn"}
   694        }
   695      },
   696      "DeleteFirewallResponse":{
   697        "type":"structure",
   698        "members":{
   699          "Firewall":{"shape":"Firewall"},
   700          "FirewallStatus":{"shape":"FirewallStatus"}
   701        }
   702      },
   703      "DeleteResourcePolicyRequest":{
   704        "type":"structure",
   705        "required":["ResourceArn"],
   706        "members":{
   707          "ResourceArn":{"shape":"ResourceArn"}
   708        }
   709      },
   710      "DeleteResourcePolicyResponse":{
   711        "type":"structure",
   712        "members":{
   713        }
   714      },
   715      "DeleteRuleGroupRequest":{
   716        "type":"structure",
   717        "members":{
   718          "RuleGroupName":{"shape":"ResourceName"},
   719          "RuleGroupArn":{"shape":"ResourceArn"},
   720          "Type":{"shape":"RuleGroupType"}
   721        }
   722      },
   723      "DeleteRuleGroupResponse":{
   724        "type":"structure",
   725        "required":["RuleGroupResponse"],
   726        "members":{
   727          "RuleGroupResponse":{"shape":"RuleGroupResponse"}
   728        }
   729      },
   730      "DescribeFirewallPolicyRequest":{
   731        "type":"structure",
   732        "members":{
   733          "FirewallPolicyName":{"shape":"ResourceName"},
   734          "FirewallPolicyArn":{"shape":"ResourceArn"}
   735        }
   736      },
   737      "DescribeFirewallPolicyResponse":{
   738        "type":"structure",
   739        "required":[
   740          "UpdateToken",
   741          "FirewallPolicyResponse"
   742        ],
   743        "members":{
   744          "UpdateToken":{"shape":"UpdateToken"},
   745          "FirewallPolicyResponse":{"shape":"FirewallPolicyResponse"},
   746          "FirewallPolicy":{"shape":"FirewallPolicy"}
   747        }
   748      },
   749      "DescribeFirewallRequest":{
   750        "type":"structure",
   751        "members":{
   752          "FirewallName":{"shape":"ResourceName"},
   753          "FirewallArn":{"shape":"ResourceArn"}
   754        }
   755      },
   756      "DescribeFirewallResponse":{
   757        "type":"structure",
   758        "members":{
   759          "UpdateToken":{"shape":"UpdateToken"},
   760          "Firewall":{"shape":"Firewall"},
   761          "FirewallStatus":{"shape":"FirewallStatus"}
   762        }
   763      },
   764      "DescribeLoggingConfigurationRequest":{
   765        "type":"structure",
   766        "members":{
   767          "FirewallArn":{"shape":"ResourceArn"},
   768          "FirewallName":{"shape":"ResourceName"}
   769        }
   770      },
   771      "DescribeLoggingConfigurationResponse":{
   772        "type":"structure",
   773        "members":{
   774          "FirewallArn":{"shape":"ResourceArn"},
   775          "LoggingConfiguration":{"shape":"LoggingConfiguration"}
   776        }
   777      },
   778      "DescribeResourcePolicyRequest":{
   779        "type":"structure",
   780        "required":["ResourceArn"],
   781        "members":{
   782          "ResourceArn":{"shape":"ResourceArn"}
   783        }
   784      },
   785      "DescribeResourcePolicyResponse":{
   786        "type":"structure",
   787        "members":{
   788          "Policy":{"shape":"PolicyString"}
   789        }
   790      },
   791      "DescribeRuleGroupRequest":{
   792        "type":"structure",
   793        "members":{
   794          "RuleGroupName":{"shape":"ResourceName"},
   795          "RuleGroupArn":{"shape":"ResourceArn"},
   796          "Type":{"shape":"RuleGroupType"}
   797        }
   798      },
   799      "DescribeRuleGroupResponse":{
   800        "type":"structure",
   801        "required":[
   802          "UpdateToken",
   803          "RuleGroupResponse"
   804        ],
   805        "members":{
   806          "UpdateToken":{"shape":"UpdateToken"},
   807          "RuleGroup":{"shape":"RuleGroup"},
   808          "RuleGroupResponse":{"shape":"RuleGroupResponse"}
   809        }
   810      },
   811      "Description":{
   812        "type":"string",
   813        "max":512,
   814        "pattern":"^.*$"
   815      },
   816      "Destination":{
   817        "type":"string",
   818        "max":1024,
   819        "min":1,
   820        "pattern":"^.*$"
   821      },
   822      "Dimension":{
   823        "type":"structure",
   824        "required":["Value"],
   825        "members":{
   826          "Value":{"shape":"DimensionValue"}
   827        }
   828      },
   829      "DimensionValue":{
   830        "type":"string",
   831        "max":128,
   832        "min":1,
   833        "pattern":"^[a-zA-Z0-9-_ ]+$"
   834      },
   835      "Dimensions":{
   836        "type":"list",
   837        "member":{"shape":"Dimension"},
   838        "max":1,
   839        "min":1
   840      },
   841      "DisassociateSubnetsRequest":{
   842        "type":"structure",
   843        "required":["SubnetIds"],
   844        "members":{
   845          "UpdateToken":{"shape":"UpdateToken"},
   846          "FirewallArn":{"shape":"ResourceArn"},
   847          "FirewallName":{"shape":"ResourceName"},
   848          "SubnetIds":{"shape":"AzSubnets"}
   849        }
   850      },
   851      "DisassociateSubnetsResponse":{
   852        "type":"structure",
   853        "members":{
   854          "FirewallArn":{"shape":"ResourceArn"},
   855          "FirewallName":{"shape":"ResourceName"},
   856          "SubnetMappings":{"shape":"SubnetMappings"},
   857          "UpdateToken":{"shape":"UpdateToken"}
   858        }
   859      },
   860      "EndpointId":{"type":"string"},
   861      "ErrorMessage":{"type":"string"},
   862      "Firewall":{
   863        "type":"structure",
   864        "required":[
   865          "FirewallPolicyArn",
   866          "VpcId",
   867          "SubnetMappings",
   868          "FirewallId"
   869        ],
   870        "members":{
   871          "FirewallName":{"shape":"ResourceName"},
   872          "FirewallArn":{"shape":"ResourceArn"},
   873          "FirewallPolicyArn":{"shape":"ResourceArn"},
   874          "VpcId":{"shape":"VpcId"},
   875          "SubnetMappings":{"shape":"SubnetMappings"},
   876          "DeleteProtection":{"shape":"Boolean"},
   877          "SubnetChangeProtection":{"shape":"Boolean"},
   878          "FirewallPolicyChangeProtection":{"shape":"Boolean"},
   879          "Description":{"shape":"Description"},
   880          "FirewallId":{"shape":"ResourceId"},
   881          "Tags":{"shape":"TagList"}
   882        }
   883      },
   884      "FirewallMetadata":{
   885        "type":"structure",
   886        "members":{
   887          "FirewallName":{"shape":"ResourceName"},
   888          "FirewallArn":{"shape":"ResourceArn"}
   889        }
   890      },
   891      "FirewallPolicies":{
   892        "type":"list",
   893        "member":{"shape":"FirewallPolicyMetadata"}
   894      },
   895      "FirewallPolicy":{
   896        "type":"structure",
   897        "required":[
   898          "StatelessDefaultActions",
   899          "StatelessFragmentDefaultActions"
   900        ],
   901        "members":{
   902          "StatelessRuleGroupReferences":{"shape":"StatelessRuleGroupReferences"},
   903          "StatelessDefaultActions":{"shape":"StatelessActions"},
   904          "StatelessFragmentDefaultActions":{"shape":"StatelessActions"},
   905          "StatelessCustomActions":{"shape":"CustomActions"},
   906          "StatefulRuleGroupReferences":{"shape":"StatefulRuleGroupReferences"},
   907          "StatefulDefaultActions":{"shape":"StatefulActions"},
   908          "StatefulEngineOptions":{"shape":"StatefulEngineOptions"}
   909        }
   910      },
   911      "FirewallPolicyMetadata":{
   912        "type":"structure",
   913        "members":{
   914          "Name":{"shape":"ResourceName"},
   915          "Arn":{"shape":"ResourceArn"}
   916        }
   917      },
   918      "FirewallPolicyResponse":{
   919        "type":"structure",
   920        "required":[
   921          "FirewallPolicyName",
   922          "FirewallPolicyArn",
   923          "FirewallPolicyId"
   924        ],
   925        "members":{
   926          "FirewallPolicyName":{"shape":"ResourceName"},
   927          "FirewallPolicyArn":{"shape":"ResourceArn"},
   928          "FirewallPolicyId":{"shape":"ResourceId"},
   929          "Description":{"shape":"Description"},
   930          "FirewallPolicyStatus":{"shape":"ResourceStatus"},
   931          "Tags":{"shape":"TagList"},
   932          "ConsumedStatelessRuleCapacity":{"shape":"RuleCapacity"},
   933          "ConsumedStatefulRuleCapacity":{"shape":"RuleCapacity"},
   934          "NumberOfAssociations":{"shape":"NumberOfAssociations"}
   935        }
   936      },
   937      "FirewallStatus":{
   938        "type":"structure",
   939        "required":[
   940          "Status",
   941          "ConfigurationSyncStateSummary"
   942        ],
   943        "members":{
   944          "Status":{"shape":"FirewallStatusValue"},
   945          "ConfigurationSyncStateSummary":{"shape":"ConfigurationSyncState"},
   946          "SyncStates":{"shape":"SyncStates"}
   947        }
   948      },
   949      "FirewallStatusValue":{
   950        "type":"string",
   951        "enum":[
   952          "PROVISIONING",
   953          "DELETING",
   954          "READY"
   955        ]
   956      },
   957      "Firewalls":{
   958        "type":"list",
   959        "member":{"shape":"FirewallMetadata"}
   960      },
   961      "Flags":{
   962        "type":"list",
   963        "member":{"shape":"TCPFlag"}
   964      },
   965      "GeneratedRulesType":{
   966        "type":"string",
   967        "enum":[
   968          "ALLOWLIST",
   969          "DENYLIST"
   970        ]
   971      },
   972      "HashMapKey":{
   973        "type":"string",
   974        "max":50,
   975        "min":3,
   976        "pattern":"^[0-9A-Za-z.\\-_@\\/]+$"
   977      },
   978      "HashMapValue":{
   979        "type":"string",
   980        "max":1024,
   981        "min":1,
   982        "pattern":"[\\s\\S]*$"
   983      },
   984      "Header":{
   985        "type":"structure",
   986        "required":[
   987          "Protocol",
   988          "Source",
   989          "SourcePort",
   990          "Direction",
   991          "Destination",
   992          "DestinationPort"
   993        ],
   994        "members":{
   995          "Protocol":{"shape":"StatefulRuleProtocol"},
   996          "Source":{"shape":"Source"},
   997          "SourcePort":{"shape":"Port"},
   998          "Direction":{"shape":"StatefulRuleDirection"},
   999          "Destination":{"shape":"Destination"},
  1000          "DestinationPort":{"shape":"Port"}
  1001        }
  1002      },
  1003      "IPSet":{
  1004        "type":"structure",
  1005        "required":["Definition"],
  1006        "members":{
  1007          "Definition":{"shape":"VariableDefinitionList"}
  1008        }
  1009      },
  1010      "IPSets":{
  1011        "type":"map",
  1012        "key":{"shape":"RuleVariableName"},
  1013        "value":{"shape":"IPSet"}
  1014      },
  1015      "InsufficientCapacityException":{
  1016        "type":"structure",
  1017        "members":{
  1018          "Message":{"shape":"ErrorMessage"}
  1019        },
  1020        "exception":true,
  1021        "fault":true
  1022      },
  1023      "InternalServerError":{
  1024        "type":"structure",
  1025        "members":{
  1026          "Message":{"shape":"ErrorMessage"}
  1027        },
  1028        "exception":true,
  1029        "fault":true
  1030      },
  1031      "InvalidOperationException":{
  1032        "type":"structure",
  1033        "members":{
  1034          "Message":{"shape":"ErrorMessage"}
  1035        },
  1036        "exception":true
  1037      },
  1038      "InvalidRequestException":{
  1039        "type":"structure",
  1040        "members":{
  1041          "Message":{"shape":"ErrorMessage"}
  1042        },
  1043        "exception":true
  1044      },
  1045      "InvalidResourcePolicyException":{
  1046        "type":"structure",
  1047        "members":{
  1048          "Message":{"shape":"ErrorMessage"}
  1049        },
  1050        "exception":true
  1051      },
  1052      "InvalidTokenException":{
  1053        "type":"structure",
  1054        "members":{
  1055          "Message":{"shape":"ErrorMessage"}
  1056        },
  1057        "exception":true
  1058      },
  1059      "Keyword":{
  1060        "type":"string",
  1061        "max":128,
  1062        "min":1,
  1063        "pattern":".*"
  1064      },
  1065      "LimitExceededException":{
  1066        "type":"structure",
  1067        "members":{
  1068          "Message":{"shape":"ErrorMessage"}
  1069        },
  1070        "exception":true
  1071      },
  1072      "ListFirewallPoliciesRequest":{
  1073        "type":"structure",
  1074        "members":{
  1075          "NextToken":{"shape":"PaginationToken"},
  1076          "MaxResults":{"shape":"PaginationMaxResults"}
  1077        }
  1078      },
  1079      "ListFirewallPoliciesResponse":{
  1080        "type":"structure",
  1081        "members":{
  1082          "NextToken":{"shape":"PaginationToken"},
  1083          "FirewallPolicies":{"shape":"FirewallPolicies"}
  1084        }
  1085      },
  1086      "ListFirewallsRequest":{
  1087        "type":"structure",
  1088        "members":{
  1089          "NextToken":{"shape":"PaginationToken"},
  1090          "VpcIds":{"shape":"VpcIds"},
  1091          "MaxResults":{"shape":"PaginationMaxResults"}
  1092        }
  1093      },
  1094      "ListFirewallsResponse":{
  1095        "type":"structure",
  1096        "members":{
  1097          "NextToken":{"shape":"PaginationToken"},
  1098          "Firewalls":{"shape":"Firewalls"}
  1099        }
  1100      },
  1101      "ListRuleGroupsRequest":{
  1102        "type":"structure",
  1103        "members":{
  1104          "NextToken":{"shape":"PaginationToken"},
  1105          "MaxResults":{"shape":"PaginationMaxResults"}
  1106        }
  1107      },
  1108      "ListRuleGroupsResponse":{
  1109        "type":"structure",
  1110        "members":{
  1111          "NextToken":{"shape":"PaginationToken"},
  1112          "RuleGroups":{"shape":"RuleGroups"}
  1113        }
  1114      },
  1115      "ListTagsForResourceRequest":{
  1116        "type":"structure",
  1117        "required":["ResourceArn"],
  1118        "members":{
  1119          "NextToken":{"shape":"PaginationToken"},
  1120          "MaxResults":{"shape":"TagsPaginationMaxResults"},
  1121          "ResourceArn":{"shape":"ResourceArn"}
  1122        }
  1123      },
  1124      "ListTagsForResourceResponse":{
  1125        "type":"structure",
  1126        "members":{
  1127          "NextToken":{"shape":"PaginationToken"},
  1128          "Tags":{"shape":"TagList"}
  1129        }
  1130      },
  1131      "LogDestinationConfig":{
  1132        "type":"structure",
  1133        "required":[
  1134          "LogType",
  1135          "LogDestinationType",
  1136          "LogDestination"
  1137        ],
  1138        "members":{
  1139          "LogType":{"shape":"LogType"},
  1140          "LogDestinationType":{"shape":"LogDestinationType"},
  1141          "LogDestination":{"shape":"LogDestinationMap"}
  1142        }
  1143      },
  1144      "LogDestinationConfigs":{
  1145        "type":"list",
  1146        "member":{"shape":"LogDestinationConfig"}
  1147      },
  1148      "LogDestinationMap":{
  1149        "type":"map",
  1150        "key":{"shape":"HashMapKey"},
  1151        "value":{"shape":"HashMapValue"}
  1152      },
  1153      "LogDestinationPermissionException":{
  1154        "type":"structure",
  1155        "members":{
  1156          "Message":{"shape":"ErrorMessage"}
  1157        },
  1158        "exception":true
  1159      },
  1160      "LogDestinationType":{
  1161        "type":"string",
  1162        "enum":[
  1163          "S3",
  1164          "CloudWatchLogs",
  1165          "KinesisDataFirehose"
  1166        ],
  1167        "max":30,
  1168        "min":2,
  1169        "pattern":"[0-9A-Za-z]+"
  1170      },
  1171      "LogType":{
  1172        "type":"string",
  1173        "enum":[
  1174          "ALERT",
  1175          "FLOW"
  1176        ]
  1177      },
  1178      "LoggingConfiguration":{
  1179        "type":"structure",
  1180        "required":["LogDestinationConfigs"],
  1181        "members":{
  1182          "LogDestinationConfigs":{"shape":"LogDestinationConfigs"}
  1183        }
  1184      },
  1185      "MatchAttributes":{
  1186        "type":"structure",
  1187        "members":{
  1188          "Sources":{"shape":"Addresses"},
  1189          "Destinations":{"shape":"Addresses"},
  1190          "SourcePorts":{"shape":"PortRanges"},
  1191          "DestinationPorts":{"shape":"PortRanges"},
  1192          "Protocols":{"shape":"ProtocolNumbers"},
  1193          "TCPFlags":{"shape":"TCPFlags"}
  1194        }
  1195      },
  1196      "NumberOfAssociations":{"type":"integer"},
  1197      "PaginationMaxResults":{
  1198        "type":"integer",
  1199        "max":100,
  1200        "min":1
  1201      },
  1202      "PaginationToken":{
  1203        "type":"string",
  1204        "max":2048,
  1205        "min":1,
  1206        "pattern":"[0-9A-Za-z:\\/+=]+$"
  1207      },
  1208      "PerObjectStatus":{
  1209        "type":"structure",
  1210        "members":{
  1211          "SyncStatus":{"shape":"PerObjectSyncStatus"},
  1212          "UpdateToken":{"shape":"UpdateToken"}
  1213        }
  1214      },
  1215      "PerObjectSyncStatus":{
  1216        "type":"string",
  1217        "enum":[
  1218          "PENDING",
  1219          "IN_SYNC"
  1220        ]
  1221      },
  1222      "PolicyString":{
  1223        "type":"string",
  1224        "max":395000,
  1225        "min":1,
  1226        "pattern":".*\\S.*"
  1227      },
  1228      "Port":{
  1229        "type":"string",
  1230        "max":1024,
  1231        "min":1,
  1232        "pattern":"^.*$"
  1233      },
  1234      "PortRange":{
  1235        "type":"structure",
  1236        "required":[
  1237          "FromPort",
  1238          "ToPort"
  1239        ],
  1240        "members":{
  1241          "FromPort":{"shape":"PortRangeBound"},
  1242          "ToPort":{"shape":"PortRangeBound"}
  1243        }
  1244      },
  1245      "PortRangeBound":{
  1246        "type":"integer",
  1247        "max":65535,
  1248        "min":0
  1249      },
  1250      "PortRanges":{
  1251        "type":"list",
  1252        "member":{"shape":"PortRange"}
  1253      },
  1254      "PortSet":{
  1255        "type":"structure",
  1256        "members":{
  1257          "Definition":{"shape":"VariableDefinitionList"}
  1258        }
  1259      },
  1260      "PortSets":{
  1261        "type":"map",
  1262        "key":{"shape":"RuleVariableName"},
  1263        "value":{"shape":"PortSet"}
  1264      },
  1265      "Priority":{
  1266        "type":"integer",
  1267        "max":65535,
  1268        "min":1
  1269      },
  1270      "ProtocolNumber":{
  1271        "type":"integer",
  1272        "max":255,
  1273        "min":0
  1274      },
  1275      "ProtocolNumbers":{
  1276        "type":"list",
  1277        "member":{"shape":"ProtocolNumber"}
  1278      },
  1279      "PublishMetricAction":{
  1280        "type":"structure",
  1281        "required":["Dimensions"],
  1282        "members":{
  1283          "Dimensions":{"shape":"Dimensions"}
  1284        }
  1285      },
  1286      "PutResourcePolicyRequest":{
  1287        "type":"structure",
  1288        "required":[
  1289          "ResourceArn",
  1290          "Policy"
  1291        ],
  1292        "members":{
  1293          "ResourceArn":{"shape":"ResourceArn"},
  1294          "Policy":{"shape":"PolicyString"}
  1295        }
  1296      },
  1297      "PutResourcePolicyResponse":{
  1298        "type":"structure",
  1299        "members":{
  1300        }
  1301      },
  1302      "ResourceArn":{
  1303        "type":"string",
  1304        "max":256,
  1305        "min":1,
  1306        "pattern":"^arn:aws.*"
  1307      },
  1308      "ResourceId":{
  1309        "type":"string",
  1310        "max":36,
  1311        "min":36,
  1312        "pattern":"^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$"
  1313      },
  1314      "ResourceName":{
  1315        "type":"string",
  1316        "max":128,
  1317        "min":1,
  1318        "pattern":"^[a-zA-Z0-9-]+$"
  1319      },
  1320      "ResourceNotFoundException":{
  1321        "type":"structure",
  1322        "members":{
  1323          "Message":{"shape":"ErrorMessage"}
  1324        },
  1325        "exception":true
  1326      },
  1327      "ResourceOwnerCheckException":{
  1328        "type":"structure",
  1329        "members":{
  1330          "Message":{"shape":"ErrorMessage"}
  1331        },
  1332        "exception":true
  1333      },
  1334      "ResourceStatus":{
  1335        "type":"string",
  1336        "enum":[
  1337          "ACTIVE",
  1338          "DELETING"
  1339        ]
  1340      },
  1341      "RuleCapacity":{"type":"integer"},
  1342      "RuleDefinition":{
  1343        "type":"structure",
  1344        "required":[
  1345          "MatchAttributes",
  1346          "Actions"
  1347        ],
  1348        "members":{
  1349          "MatchAttributes":{"shape":"MatchAttributes"},
  1350          "Actions":{"shape":"StatelessActions"}
  1351        }
  1352      },
  1353      "RuleGroup":{
  1354        "type":"structure",
  1355        "required":["RulesSource"],
  1356        "members":{
  1357          "RuleVariables":{"shape":"RuleVariables"},
  1358          "RulesSource":{"shape":"RulesSource"},
  1359          "StatefulRuleOptions":{"shape":"StatefulRuleOptions"}
  1360        }
  1361      },
  1362      "RuleGroupMetadata":{
  1363        "type":"structure",
  1364        "members":{
  1365          "Name":{"shape":"ResourceName"},
  1366          "Arn":{"shape":"ResourceArn"}
  1367        }
  1368      },
  1369      "RuleGroupResponse":{
  1370        "type":"structure",
  1371        "required":[
  1372          "RuleGroupArn",
  1373          "RuleGroupName",
  1374          "RuleGroupId"
  1375        ],
  1376        "members":{
  1377          "RuleGroupArn":{"shape":"ResourceArn"},
  1378          "RuleGroupName":{"shape":"ResourceName"},
  1379          "RuleGroupId":{"shape":"ResourceId"},
  1380          "Description":{"shape":"Description"},
  1381          "Type":{"shape":"RuleGroupType"},
  1382          "Capacity":{"shape":"RuleCapacity"},
  1383          "RuleGroupStatus":{"shape":"ResourceStatus"},
  1384          "Tags":{"shape":"TagList"},
  1385          "ConsumedCapacity":{"shape":"RuleCapacity"},
  1386          "NumberOfAssociations":{"shape":"NumberOfAssociations"}
  1387        }
  1388      },
  1389      "RuleGroupType":{
  1390        "type":"string",
  1391        "enum":[
  1392          "STATELESS",
  1393          "STATEFUL"
  1394        ]
  1395      },
  1396      "RuleGroups":{
  1397        "type":"list",
  1398        "member":{"shape":"RuleGroupMetadata"}
  1399      },
  1400      "RuleOption":{
  1401        "type":"structure",
  1402        "required":["Keyword"],
  1403        "members":{
  1404          "Keyword":{"shape":"Keyword"},
  1405          "Settings":{"shape":"Settings"}
  1406        }
  1407      },
  1408      "RuleOptions":{
  1409        "type":"list",
  1410        "member":{"shape":"RuleOption"}
  1411      },
  1412      "RuleOrder":{
  1413        "type":"string",
  1414        "enum":[
  1415          "DEFAULT_ACTION_ORDER",
  1416          "STRICT_ORDER"
  1417        ]
  1418      },
  1419      "RuleTargets":{
  1420        "type":"list",
  1421        "member":{"shape":"CollectionMember_String"}
  1422      },
  1423      "RuleVariableName":{
  1424        "type":"string",
  1425        "max":32,
  1426        "min":1,
  1427        "pattern":"^[A-Za-z][A-Za-z0-9_]*$"
  1428      },
  1429      "RuleVariables":{
  1430        "type":"structure",
  1431        "members":{
  1432          "IPSets":{"shape":"IPSets"},
  1433          "PortSets":{"shape":"PortSets"}
  1434        }
  1435      },
  1436      "RulesSource":{
  1437        "type":"structure",
  1438        "members":{
  1439          "RulesString":{"shape":"RulesString"},
  1440          "RulesSourceList":{"shape":"RulesSourceList"},
  1441          "StatefulRules":{"shape":"StatefulRules"},
  1442          "StatelessRulesAndCustomActions":{"shape":"StatelessRulesAndCustomActions"}
  1443        }
  1444      },
  1445      "RulesSourceList":{
  1446        "type":"structure",
  1447        "required":[
  1448          "Targets",
  1449          "TargetTypes",
  1450          "GeneratedRulesType"
  1451        ],
  1452        "members":{
  1453          "Targets":{"shape":"RuleTargets"},
  1454          "TargetTypes":{"shape":"TargetTypes"},
  1455          "GeneratedRulesType":{"shape":"GeneratedRulesType"}
  1456        }
  1457      },
  1458      "RulesString":{
  1459        "type":"string",
  1460        "max":2000000,
  1461        "min":0
  1462      },
  1463      "Setting":{
  1464        "type":"string",
  1465        "max":8192,
  1466        "min":1,
  1467        "pattern":".*"
  1468      },
  1469      "Settings":{
  1470        "type":"list",
  1471        "member":{"shape":"Setting"}
  1472      },
  1473      "Source":{
  1474        "type":"string",
  1475        "max":1024,
  1476        "min":1,
  1477        "pattern":"^.*$"
  1478      },
  1479      "StatefulAction":{
  1480        "type":"string",
  1481        "enum":[
  1482          "PASS",
  1483          "DROP",
  1484          "ALERT"
  1485        ]
  1486      },
  1487      "StatefulActions":{
  1488        "type":"list",
  1489        "member":{"shape":"CollectionMember_String"}
  1490      },
  1491      "StatefulEngineOptions":{
  1492        "type":"structure",
  1493        "members":{
  1494          "RuleOrder":{"shape":"RuleOrder"}
  1495        }
  1496      },
  1497      "StatefulRule":{
  1498        "type":"structure",
  1499        "required":[
  1500          "Action",
  1501          "Header",
  1502          "RuleOptions"
  1503        ],
  1504        "members":{
  1505          "Action":{"shape":"StatefulAction"},
  1506          "Header":{"shape":"Header"},
  1507          "RuleOptions":{"shape":"RuleOptions"}
  1508        }
  1509      },
  1510      "StatefulRuleDirection":{
  1511        "type":"string",
  1512        "enum":[
  1513          "FORWARD",
  1514          "ANY"
  1515        ]
  1516      },
  1517      "StatefulRuleGroupReference":{
  1518        "type":"structure",
  1519        "required":["ResourceArn"],
  1520        "members":{
  1521          "ResourceArn":{"shape":"ResourceArn"},
  1522          "Priority":{
  1523            "shape":"Priority",
  1524            "box":true
  1525          }
  1526        }
  1527      },
  1528      "StatefulRuleGroupReferences":{
  1529        "type":"list",
  1530        "member":{"shape":"StatefulRuleGroupReference"}
  1531      },
  1532      "StatefulRuleOptions":{
  1533        "type":"structure",
  1534        "members":{
  1535          "RuleOrder":{"shape":"RuleOrder"}
  1536        }
  1537      },
  1538      "StatefulRuleProtocol":{
  1539        "type":"string",
  1540        "enum":[
  1541          "IP",
  1542          "TCP",
  1543          "UDP",
  1544          "ICMP",
  1545          "HTTP",
  1546          "FTP",
  1547          "TLS",
  1548          "SMB",
  1549          "DNS",
  1550          "DCERPC",
  1551          "SSH",
  1552          "SMTP",
  1553          "IMAP",
  1554          "MSN",
  1555          "KRB5",
  1556          "IKEV2",
  1557          "TFTP",
  1558          "NTP",
  1559          "DHCP"
  1560        ]
  1561      },
  1562      "StatefulRules":{
  1563        "type":"list",
  1564        "member":{"shape":"StatefulRule"}
  1565      },
  1566      "StatelessActions":{
  1567        "type":"list",
  1568        "member":{"shape":"CollectionMember_String"}
  1569      },
  1570      "StatelessRule":{
  1571        "type":"structure",
  1572        "required":[
  1573          "RuleDefinition",
  1574          "Priority"
  1575        ],
  1576        "members":{
  1577          "RuleDefinition":{"shape":"RuleDefinition"},
  1578          "Priority":{"shape":"Priority"}
  1579        }
  1580      },
  1581      "StatelessRuleGroupReference":{
  1582        "type":"structure",
  1583        "required":[
  1584          "ResourceArn",
  1585          "Priority"
  1586        ],
  1587        "members":{
  1588          "ResourceArn":{"shape":"ResourceArn"},
  1589          "Priority":{"shape":"Priority"}
  1590        }
  1591      },
  1592      "StatelessRuleGroupReferences":{
  1593        "type":"list",
  1594        "member":{"shape":"StatelessRuleGroupReference"}
  1595      },
  1596      "StatelessRules":{
  1597        "type":"list",
  1598        "member":{"shape":"StatelessRule"}
  1599      },
  1600      "StatelessRulesAndCustomActions":{
  1601        "type":"structure",
  1602        "required":["StatelessRules"],
  1603        "members":{
  1604          "StatelessRules":{"shape":"StatelessRules"},
  1605          "CustomActions":{"shape":"CustomActions"}
  1606        }
  1607      },
  1608      "SubnetMapping":{
  1609        "type":"structure",
  1610        "required":["SubnetId"],
  1611        "members":{
  1612          "SubnetId":{"shape":"CollectionMember_String"}
  1613        }
  1614      },
  1615      "SubnetMappings":{
  1616        "type":"list",
  1617        "member":{"shape":"SubnetMapping"}
  1618      },
  1619      "SyncState":{
  1620        "type":"structure",
  1621        "members":{
  1622          "Attachment":{"shape":"Attachment"},
  1623          "Config":{"shape":"SyncStateConfig"}
  1624        }
  1625      },
  1626      "SyncStateConfig":{
  1627        "type":"map",
  1628        "key":{"shape":"ResourceName"},
  1629        "value":{"shape":"PerObjectStatus"}
  1630      },
  1631      "SyncStates":{
  1632        "type":"map",
  1633        "key":{"shape":"AvailabilityZone"},
  1634        "value":{"shape":"SyncState"}
  1635      },
  1636      "TCPFlag":{
  1637        "type":"string",
  1638        "enum":[
  1639          "FIN",
  1640          "SYN",
  1641          "RST",
  1642          "PSH",
  1643          "ACK",
  1644          "URG",
  1645          "ECE",
  1646          "CWR"
  1647        ]
  1648      },
  1649      "TCPFlagField":{
  1650        "type":"structure",
  1651        "required":["Flags"],
  1652        "members":{
  1653          "Flags":{"shape":"Flags"},
  1654          "Masks":{"shape":"Flags"}
  1655        }
  1656      },
  1657      "TCPFlags":{
  1658        "type":"list",
  1659        "member":{"shape":"TCPFlagField"}
  1660      },
  1661      "Tag":{
  1662        "type":"structure",
  1663        "required":[
  1664          "Key",
  1665          "Value"
  1666        ],
  1667        "members":{
  1668          "Key":{"shape":"TagKey"},
  1669          "Value":{"shape":"TagValue"}
  1670        }
  1671      },
  1672      "TagKey":{
  1673        "type":"string",
  1674        "max":128,
  1675        "min":1,
  1676        "pattern":"^.*$"
  1677      },
  1678      "TagKeyList":{
  1679        "type":"list",
  1680        "member":{"shape":"TagKey"},
  1681        "max":200,
  1682        "min":1
  1683      },
  1684      "TagList":{
  1685        "type":"list",
  1686        "member":{"shape":"Tag"},
  1687        "max":200,
  1688        "min":1
  1689      },
  1690      "TagResourceRequest":{
  1691        "type":"structure",
  1692        "required":[
  1693          "ResourceArn",
  1694          "Tags"
  1695        ],
  1696        "members":{
  1697          "ResourceArn":{"shape":"ResourceArn"},
  1698          "Tags":{"shape":"TagList"}
  1699        }
  1700      },
  1701      "TagResourceResponse":{
  1702        "type":"structure",
  1703        "members":{
  1704        }
  1705      },
  1706      "TagValue":{
  1707        "type":"string",
  1708        "max":256,
  1709        "min":0,
  1710        "pattern":"^.*$"
  1711      },
  1712      "TagsPaginationMaxResults":{
  1713        "type":"integer",
  1714        "max":100,
  1715        "min":0
  1716      },
  1717      "TargetType":{
  1718        "type":"string",
  1719        "enum":[
  1720          "TLS_SNI",
  1721          "HTTP_HOST"
  1722        ]
  1723      },
  1724      "TargetTypes":{
  1725        "type":"list",
  1726        "member":{"shape":"TargetType"}
  1727      },
  1728      "ThrottlingException":{
  1729        "type":"structure",
  1730        "members":{
  1731          "Message":{"shape":"ErrorMessage"}
  1732        },
  1733        "exception":true
  1734      },
  1735      "UnsupportedOperationException":{
  1736        "type":"structure",
  1737        "members":{
  1738          "Message":{"shape":"ErrorMessage"}
  1739        },
  1740        "exception":true
  1741      },
  1742      "UntagResourceRequest":{
  1743        "type":"structure",
  1744        "required":[
  1745          "ResourceArn",
  1746          "TagKeys"
  1747        ],
  1748        "members":{
  1749          "ResourceArn":{"shape":"ResourceArn"},
  1750          "TagKeys":{"shape":"TagKeyList"}
  1751        }
  1752      },
  1753      "UntagResourceResponse":{
  1754        "type":"structure",
  1755        "members":{
  1756        }
  1757      },
  1758      "UpdateFirewallDeleteProtectionRequest":{
  1759        "type":"structure",
  1760        "required":["DeleteProtection"],
  1761        "members":{
  1762          "UpdateToken":{"shape":"UpdateToken"},
  1763          "FirewallArn":{"shape":"ResourceArn"},
  1764          "FirewallName":{"shape":"ResourceName"},
  1765          "DeleteProtection":{"shape":"Boolean"}
  1766        }
  1767      },
  1768      "UpdateFirewallDeleteProtectionResponse":{
  1769        "type":"structure",
  1770        "members":{
  1771          "FirewallArn":{"shape":"ResourceArn"},
  1772          "FirewallName":{"shape":"ResourceName"},
  1773          "DeleteProtection":{"shape":"Boolean"},
  1774          "UpdateToken":{"shape":"UpdateToken"}
  1775        }
  1776      },
  1777      "UpdateFirewallDescriptionRequest":{
  1778        "type":"structure",
  1779        "members":{
  1780          "UpdateToken":{"shape":"UpdateToken"},
  1781          "FirewallArn":{"shape":"ResourceArn"},
  1782          "FirewallName":{"shape":"ResourceName"},
  1783          "Description":{"shape":"Description"}
  1784        }
  1785      },
  1786      "UpdateFirewallDescriptionResponse":{
  1787        "type":"structure",
  1788        "members":{
  1789          "FirewallArn":{"shape":"ResourceArn"},
  1790          "FirewallName":{"shape":"ResourceName"},
  1791          "Description":{"shape":"Description"},
  1792          "UpdateToken":{"shape":"UpdateToken"}
  1793        }
  1794      },
  1795      "UpdateFirewallPolicyChangeProtectionRequest":{
  1796        "type":"structure",
  1797        "required":["FirewallPolicyChangeProtection"],
  1798        "members":{
  1799          "UpdateToken":{"shape":"UpdateToken"},
  1800          "FirewallArn":{"shape":"ResourceArn"},
  1801          "FirewallName":{"shape":"ResourceName"},
  1802          "FirewallPolicyChangeProtection":{"shape":"Boolean"}
  1803        }
  1804      },
  1805      "UpdateFirewallPolicyChangeProtectionResponse":{
  1806        "type":"structure",
  1807        "members":{
  1808          "UpdateToken":{"shape":"UpdateToken"},
  1809          "FirewallArn":{"shape":"ResourceArn"},
  1810          "FirewallName":{"shape":"ResourceName"},
  1811          "FirewallPolicyChangeProtection":{"shape":"Boolean"}
  1812        }
  1813      },
  1814      "UpdateFirewallPolicyRequest":{
  1815        "type":"structure",
  1816        "required":[
  1817          "UpdateToken",
  1818          "FirewallPolicy"
  1819        ],
  1820        "members":{
  1821          "UpdateToken":{"shape":"UpdateToken"},
  1822          "FirewallPolicyArn":{"shape":"ResourceArn"},
  1823          "FirewallPolicyName":{"shape":"ResourceName"},
  1824          "FirewallPolicy":{"shape":"FirewallPolicy"},
  1825          "Description":{"shape":"Description"},
  1826          "DryRun":{"shape":"Boolean"}
  1827        }
  1828      },
  1829      "UpdateFirewallPolicyResponse":{
  1830        "type":"structure",
  1831        "required":[
  1832          "UpdateToken",
  1833          "FirewallPolicyResponse"
  1834        ],
  1835        "members":{
  1836          "UpdateToken":{"shape":"UpdateToken"},
  1837          "FirewallPolicyResponse":{"shape":"FirewallPolicyResponse"}
  1838        }
  1839      },
  1840      "UpdateLoggingConfigurationRequest":{
  1841        "type":"structure",
  1842        "members":{
  1843          "FirewallArn":{"shape":"ResourceArn"},
  1844          "FirewallName":{"shape":"ResourceName"},
  1845          "LoggingConfiguration":{"shape":"LoggingConfiguration"}
  1846        }
  1847      },
  1848      "UpdateLoggingConfigurationResponse":{
  1849        "type":"structure",
  1850        "members":{
  1851          "FirewallArn":{"shape":"ResourceArn"},
  1852          "FirewallName":{"shape":"ResourceName"},
  1853          "LoggingConfiguration":{"shape":"LoggingConfiguration"}
  1854        }
  1855      },
  1856      "UpdateRuleGroupRequest":{
  1857        "type":"structure",
  1858        "required":["UpdateToken"],
  1859        "members":{
  1860          "UpdateToken":{"shape":"UpdateToken"},
  1861          "RuleGroupArn":{"shape":"ResourceArn"},
  1862          "RuleGroupName":{"shape":"ResourceName"},
  1863          "RuleGroup":{"shape":"RuleGroup"},
  1864          "Rules":{"shape":"RulesString"},
  1865          "Type":{"shape":"RuleGroupType"},
  1866          "Description":{"shape":"Description"},
  1867          "DryRun":{"shape":"Boolean"}
  1868        }
  1869      },
  1870      "UpdateRuleGroupResponse":{
  1871        "type":"structure",
  1872        "required":[
  1873          "UpdateToken",
  1874          "RuleGroupResponse"
  1875        ],
  1876        "members":{
  1877          "UpdateToken":{"shape":"UpdateToken"},
  1878          "RuleGroupResponse":{"shape":"RuleGroupResponse"}
  1879        }
  1880      },
  1881      "UpdateSubnetChangeProtectionRequest":{
  1882        "type":"structure",
  1883        "required":["SubnetChangeProtection"],
  1884        "members":{
  1885          "UpdateToken":{"shape":"UpdateToken"},
  1886          "FirewallArn":{"shape":"ResourceArn"},
  1887          "FirewallName":{"shape":"ResourceName"},
  1888          "SubnetChangeProtection":{"shape":"Boolean"}
  1889        }
  1890      },
  1891      "UpdateSubnetChangeProtectionResponse":{
  1892        "type":"structure",
  1893        "members":{
  1894          "UpdateToken":{"shape":"UpdateToken"},
  1895          "FirewallArn":{"shape":"ResourceArn"},
  1896          "FirewallName":{"shape":"ResourceName"},
  1897          "SubnetChangeProtection":{"shape":"Boolean"}
  1898        }
  1899      },
  1900      "UpdateToken":{
  1901        "type":"string",
  1902        "max":1024,
  1903        "min":1,
  1904        "pattern":"^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$"
  1905      },
  1906      "VariableDefinition":{
  1907        "type":"string",
  1908        "min":1,
  1909        "pattern":"^.*$"
  1910      },
  1911      "VariableDefinitionList":{
  1912        "type":"list",
  1913        "member":{"shape":"VariableDefinition"}
  1914      },
  1915      "VpcId":{
  1916        "type":"string",
  1917        "max":128,
  1918        "min":1,
  1919        "pattern":"^vpc-[0-9a-f]+$"
  1920      },
  1921      "VpcIds":{
  1922        "type":"list",
  1923        "member":{"shape":"VpcId"}
  1924      }
  1925    }
  1926  }