{"note":"OpenAPI conversion -- returning structured metadata","name":"amazonaws-com-fms","description":"Firewall Management Service","version":"2018-01-01","base_url":"","endpoints":42,"raw":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api Firewall Management Service\n@version 2018-01-01\n@auth AWS SigV4\n@endpoints 42\n@hint download_for_search\n@toc root(42)\n\n@endpoint POST /\n@desc Sets a Firewall Manager default administrator account. The Firewall Manager default administrator account can manage third-party firewalls and has full administrative scope that allows administration of all policy types, accounts, organizational units, and Regions. This account must be a member account of the organization in Organizations whose resources you want to protect. For information about working with Firewall Manager administrator accounts, see Managing Firewall Manager administrators in the Firewall Manager Developer Guide.\n@required {AdminAccount: str}\n\n@endpoint POST /\n@desc Sets the Firewall Manager policy administrator as a tenant administrator of a third-party firewall service. A tenant is an instance of the third-party firewall service that's associated with your Amazon Web Services customer account.\n@required {ThirdPartyFirewall: str}\n@returns(200) {ThirdPartyFirewallStatus: str?}\n\n@endpoint POST /\n@desc Associate resources to a Firewall Manager resource set.\n@required {ResourceSetIdentifier: str, Items: [str]}\n@returns(200) {ResourceSetIdentifier: str, FailedItems: [FailedItem]}\n\n@endpoint POST /\n@desc Disassociates resources from a Firewall Manager resource set.\n@required {ResourceSetIdentifier: str, Items: [str]}\n@returns(200) {ResourceSetIdentifier: str, FailedItems: [FailedItem]}\n\n@endpoint POST /\n@desc Permanently deletes an Firewall Manager applications list.\n@required {ListId: str}\n\n@endpoint POST /\n@desc Deletes an Firewall Manager association with the IAM role and the Amazon Simple Notification Service (SNS) topic that is used to record Firewall Manager SNS logs.\n\n@endpoint POST /\n@desc Permanently deletes an Firewall Manager policy.\n@required {PolicyId: str}\n@optional {DeleteAllPolicyResources: bool}\n\n@endpoint POST /\n@desc Permanently deletes an Firewall Manager protocols list.\n@required {ListId: str}\n\n@endpoint POST /\n@desc Deletes the specified ResourceSet.\n@required {Identifier: str}\n\n@endpoint POST /\n@desc Disassociates an Firewall Manager administrator account. To set a different account as an Firewall Manager administrator, submit a PutAdminAccount request. To set an account as a default administrator account, you must submit an AssociateAdminAccount request. Disassociation of the default administrator account follows the first in, last out principle. If you are the default administrator, all Firewall Manager administrators within the organization must first disassociate their accounts before you can disassociate your account.\n\n@endpoint POST /\n@desc Disassociates a Firewall Manager policy administrator from a third-party firewall tenant. When you call DisassociateThirdPartyFirewall, the third-party firewall vendor deletes all of the firewalls that are associated with the account.\n@required {ThirdPartyFirewall: str}\n@returns(200) {ThirdPartyFirewallStatus: str?}\n\n@endpoint POST /\n@desc Returns the Organizations account that is associated with Firewall Manager as the Firewall Manager default administrator.\n@returns(200) {AdminAccount: str?, RoleStatus: str?}\n\n@endpoint POST /\n@desc Returns information about the specified account's administrative scope. The administrative scope defines the resources that an Firewall Manager administrator can manage.\n@required {AdminAccount: str}\n@returns(200) {AdminScope: AdminScope?{AccountScope: AccountScope?{Accounts: [str]?, AllAccountsEnabled: bool?, ExcludeSpecifiedAccounts: bool?}, OrganizationalUnitScope: OrganizationalUnitScope?{OrganizationalUnits: [str]?, AllOrganizationalUnitsEnabled: bool?, ExcludeSpecifiedOrganizationalUnits: bool?}, RegionScope: RegionScope?{Regions: [str]?, AllRegionsEnabled: bool?}, PolicyTypeScope: PolicyTypeScope?{PolicyTypes: [str]?, AllPolicyTypesEnabled: bool?}}, Status: str?}\n\n@endpoint POST /\n@desc Returns information about the specified Firewall Manager applications list.\n@required {ListId: str}\n@optional {DefaultList: bool}\n@returns(200) {AppsList: AppsListData?{ListId: str?, ListName: str, ListUpdateToken: str?, CreateTime: str(timestamp)?, LastUpdateTime: str(timestamp)?, AppsList: [App], PreviousAppsList: map<str,[App]>?}, AppsListArn: str?}\n\n@endpoint POST /\n@desc Returns detailed compliance information about the specified member account. Details include resources that are in and out of compliance with the specified policy.  The reasons for resources being considered compliant depend on the Firewall Manager policy type.\n@required {PolicyId: str, MemberAccount: str}\n@returns(200) {PolicyComplianceDetail: PolicyComplianceDetail?{PolicyOwner: str?, PolicyId: str?, MemberAccount: str?, Violators: [ComplianceViolator]?, EvaluationLimitExceeded: bool?, ExpiredAt: str(timestamp)?, IssueInfoMap: map<str,str>?}}\n\n@endpoint POST /\n@desc Information about the Amazon Simple Notification Service (SNS) topic that is used to record Firewall Manager SNS logs.\n@returns(200) {SnsTopicArn: str?, SnsRoleName: str?}\n\n@endpoint POST /\n@desc Returns information about the specified Firewall Manager policy.\n@required {PolicyId: str}\n@returns(200) {Policy: Policy?{PolicyId: str?, PolicyName: str, PolicyUpdateToken: str?, SecurityServicePolicyData: SecurityServicePolicyData{Type: str, ManagedServiceData: str?, PolicyOption: PolicyOption?{NetworkFirewallPolicy: NetworkFirewallPolicy?, ThirdPartyFirewallPolicy: ThirdPartyFirewallPolicy?, NetworkAclCommonPolicy: NetworkAclCommonPolicy?}}, ResourceType: str, ResourceTypeList: [str]?, ResourceTags: [ResourceTag]?, ExcludeResourceTags: bool, RemediationEnabled: bool, DeleteUnusedFMManagedResources: bool?, IncludeMap: map<str,[str]>?, ExcludeMap: map<str,[str]>?, ResourceSetIds: [str]?, PolicyDescription: str?, PolicyStatus: str?}, PolicyArn: str?}\n\n@endpoint POST /\n@desc If you created a Shield Advanced policy, returns policy-level attack summary information in the event of a potential DDoS attack. Other policy types are currently unsupported.\n@required {PolicyId: str}\n@optional {MemberAccountId: str, StartTime: str(timestamp), EndTime: str(timestamp), NextToken: str, MaxResults: int}\n@returns(200) {AdminAccountId: str?, ServiceType: str?, Data: str?, NextToken: str?}\n\n@endpoint POST /\n@desc Returns information about the specified Firewall Manager protocols list.\n@required {ListId: str}\n@optional {DefaultList: bool}\n@returns(200) {ProtocolsList: ProtocolsListData?{ListId: str?, ListName: str, ListUpdateToken: str?, CreateTime: str(timestamp)?, LastUpdateTime: str(timestamp)?, ProtocolsList: [str], PreviousProtocolsList: map<str,[str]>?}, ProtocolsListArn: str?}\n\n@endpoint POST /\n@desc Gets information about a specific resource set.\n@required {Identifier: str}\n@returns(200) {ResourceSet: ResourceSet{Id: str?, Name: str, Description: str?, UpdateToken: str?, ResourceTypeList: [str], LastUpdateTime: str(timestamp)?, ResourceSetStatus: str?}, ResourceSetArn: str}\n\n@endpoint POST /\n@desc The onboarding status of a Firewall Manager admin account to third-party firewall vendor tenant.\n@required {ThirdPartyFirewall: str}\n@returns(200) {ThirdPartyFirewallStatus: str?, MarketplaceOnboardingStatus: str?}\n\n@endpoint POST /\n@desc Retrieves violations for a resource based on the specified Firewall Manager policy and Amazon Web Services account.\n@required {PolicyId: str, MemberAccount: str, ResourceId: str, ResourceType: str}\n@returns(200) {ViolationDetail: ViolationDetail?{PolicyId: str, MemberAccount: str, ResourceId: str, ResourceType: str, ResourceViolations: [ResourceViolation], ResourceTags: [Tag]?, ResourceDescription: str?}}\n\n@endpoint POST /\n@desc Returns a AdminAccounts object that lists the Firewall Manager administrators within the organization that are onboarded to Firewall Manager by AssociateAdminAccount. This operation can be called only from the organization's management account.\n@optional {NextToken: str, MaxResults: int}\n@returns(200) {AdminAccounts: [AdminAccountSummary]?, NextToken: str?}\n\n@endpoint POST /\n@desc Lists the accounts that are managing the specified Organizations member account. This is useful for any member account so that they can view the accounts who are managing their account. This operation only returns the managing administrators that have the requested account within their AdminScope.\n@optional {NextToken: str, MaxResults: int}\n@returns(200) {AdminAccounts: [str]?, NextToken: str?}\n\n@endpoint POST /\n@desc Returns an array of AppsListDataSummary objects.\n@required {MaxResults: int}\n@optional {DefaultLists: bool, NextToken: str}\n@returns(200) {AppsLists: [AppsListDataSummary]?, NextToken: str?}\n\n@endpoint POST /\n@desc Returns an array of PolicyComplianceStatus objects. Use PolicyComplianceStatus to get a summary of which member accounts are protected by the specified policy.\n@required {PolicyId: str}\n@optional {NextToken: str, MaxResults: int}\n@returns(200) {PolicyComplianceStatusList: [PolicyComplianceStatus]?, NextToken: str?}\n\n@endpoint POST /\n@desc Returns an array of resources in the organization's accounts that are available to be associated with a resource set.\n@required {MemberAccountIds: [str], ResourceType: str}\n@optional {MaxResults: int, NextToken: str}\n@returns(200) {Items: [DiscoveredResource]?, NextToken: str?}\n\n@endpoint POST /\n@desc Returns a MemberAccounts object that lists the member accounts in the administrator's Amazon Web Services organization. Either an Firewall Manager administrator or the organization's management account can make this request.\n@optional {NextToken: str, MaxResults: int}\n@returns(200) {MemberAccounts: [str]?, NextToken: str?}\n\n@endpoint POST /\n@desc Returns an array of PolicySummary objects.\n@optional {NextToken: str, MaxResults: int}\n@returns(200) {PolicyList: [PolicySummary]?, NextToken: str?}\n\n@endpoint POST /\n@desc Returns an array of ProtocolsListDataSummary objects.\n@required {MaxResults: int}\n@optional {DefaultLists: bool, NextToken: str}\n@returns(200) {ProtocolsLists: [ProtocolsListDataSummary]?, NextToken: str?}\n\n@endpoint POST /\n@desc Returns an array of resources that are currently associated to a resource set.\n@required {Identifier: str}\n@optional {MaxResults: int, NextToken: str}\n@returns(200) {Items: [Resource], NextToken: str?}\n\n@endpoint POST /\n@desc Returns an array of ResourceSetSummary objects.\n@optional {NextToken: str, MaxResults: int}\n@returns(200) {ResourceSets: [ResourceSetSummary]?, NextToken: str?}\n\n@endpoint POST /\n@desc Retrieves the list of tags for the specified Amazon Web Services resource.\n@required {ResourceArn: str}\n@returns(200) {TagList: [Tag]?}\n\n@endpoint POST /\n@desc Retrieves a list of all of the third-party firewall policies that are associated with the third-party firewall administrator's account.\n@required {ThirdPartyFirewall: str, MaxResults: int}\n@optional {NextToken: str}\n@returns(200) {ThirdPartyFirewallFirewallPolicies: [ThirdPartyFirewallFirewallPolicy]?, NextToken: str?}\n\n@endpoint POST /\n@desc Creates or updates an Firewall Manager administrator account. The account must be a member of the organization that was onboarded to Firewall Manager by AssociateAdminAccount. Only the organization's management account can create an Firewall Manager administrator account. When you create an Firewall Manager administrator account, the service checks to see if the account is already a delegated administrator within Organizations. If the account isn't a delegated administrator, Firewall Manager calls Organizations to delegate the account within Organizations. For more information about administrator accounts within Organizations, see Managing the Amazon Web Services Accounts in Your Organization.\n@required {AdminAccount: str}\n@optional {AdminScope: AdminScope}\n\n@endpoint POST /\n@desc Creates an Firewall Manager applications list.\n@required {AppsList: AppsListData}\n@optional {TagList: [Tag]}\n@returns(200) {AppsList: AppsListData?{ListId: str?, ListName: str, ListUpdateToken: str?, CreateTime: str(timestamp)?, LastUpdateTime: str(timestamp)?, AppsList: [App], PreviousAppsList: map<str,[App]>?}, AppsListArn: str?}\n\n@endpoint POST /\n@desc Designates the IAM role and Amazon Simple Notification Service (SNS) topic that Firewall Manager uses to record SNS logs. To perform this action outside of the console, you must first configure the SNS topic's access policy to allow the SnsRoleName to publish SNS logs. If the SnsRoleName provided is a role other than the AWSServiceRoleForFMS service-linked role, this role must have a trust relationship configured to allow the Firewall Manager service principal fms.amazonaws.com to assume this role. For information about configuring an SNS access policy, see Service roles for Firewall Manager in the Firewall Manager Developer Guide.\n@required {SnsTopicArn: str, SnsRoleName: str}\n\n@endpoint POST /\n@desc Creates an Firewall Manager policy. A Firewall Manager policy is specific to the individual policy type. If you want to enforce multiple policy types across accounts, you can create multiple policies. You can create more than one policy for each type.  If you add a new account to an organization that you created with Organizations, Firewall Manager automatically applies the policy to the resources in that account that are within scope of the policy.  Firewall Manager provides the following types of policies:     WAF policy - This policy applies WAF web ACL protections to specified accounts and resources.     Shield Advanced policy - This policy applies Shield Advanced protection to specified accounts and resources.     Security Groups policy - This type of policy gives you control over security groups that are in use throughout your organization in Organizations and lets you enforce a baseline set of rules across your organization.     Network ACL policy - This type of policy gives you control over the network ACLs that are in use throughout your organization in Organizations and lets you enforce a baseline set of first and last network ACL rules across your organization.     Network Firewall policy - This policy applies Network Firewall protection to your organization's VPCs.     DNS Firewall policy - This policy applies Amazon Route 53 Resolver DNS Firewall protections to your organization's VPCs.     Third-party firewall policy - This policy applies third-party firewall protections. Third-party firewalls are available by subscription through the Amazon Web Services Marketplace console at Amazon Web Services Marketplace.    Palo Alto Networks Cloud NGFW policy - This policy applies Palo Alto Networks Cloud Next Generation Firewall (NGFW) protections and Palo Alto Networks Cloud NGFW rulestacks to your organization's VPCs.    Fortigate CNF policy - This policy applies Fortigate Cloud Native Firewall (CNF) protections. Fortigate CNF is a cloud-centered solution that blocks Zero-Day threats and secures cloud infrastructures with industry-leading advanced threat prevention, smart web application firewalls (WAF), and API protection.\n@required {Policy: Policy}\n@optional {TagList: [Tag]}\n@returns(200) {Policy: Policy?{PolicyId: str?, PolicyName: str, PolicyUpdateToken: str?, SecurityServicePolicyData: SecurityServicePolicyData{Type: str, ManagedServiceData: str?, PolicyOption: PolicyOption?{NetworkFirewallPolicy: NetworkFirewallPolicy?, ThirdPartyFirewallPolicy: ThirdPartyFirewallPolicy?, NetworkAclCommonPolicy: NetworkAclCommonPolicy?}}, ResourceType: str, ResourceTypeList: [str]?, ResourceTags: [ResourceTag]?, ExcludeResourceTags: bool, RemediationEnabled: bool, DeleteUnusedFMManagedResources: bool?, IncludeMap: map<str,[str]>?, ExcludeMap: map<str,[str]>?, ResourceSetIds: [str]?, PolicyDescription: str?, PolicyStatus: str?}, PolicyArn: str?}\n\n@endpoint POST /\n@desc Creates an Firewall Manager protocols list.\n@required {ProtocolsList: ProtocolsListData}\n@optional {TagList: [Tag]}\n@returns(200) {ProtocolsList: ProtocolsListData?{ListId: str?, ListName: str, ListUpdateToken: str?, CreateTime: str(timestamp)?, LastUpdateTime: str(timestamp)?, ProtocolsList: [str], PreviousProtocolsList: map<str,[str]>?}, ProtocolsListArn: str?}\n\n@endpoint POST /\n@desc Creates the resource set. An Firewall Manager resource set defines the resources to import into an Firewall Manager policy from another Amazon Web Services service.\n@required {ResourceSet: ResourceSet}\n@optional {TagList: [Tag]}\n@returns(200) {ResourceSet: ResourceSet{Id: str?, Name: str, Description: str?, UpdateToken: str?, ResourceTypeList: [str], LastUpdateTime: str(timestamp)?, ResourceSetStatus: str?}, ResourceSetArn: str}\n\n@endpoint POST /\n@desc Adds one or more tags to an Amazon Web Services resource.\n@required {ResourceArn: str, TagList: [Tag]}\n\n@endpoint POST /\n@desc Removes one or more tags from an Amazon Web Services resource.\n@required {ResourceArn: str, TagKeys: [str]}\n\n@end\n"}