R/securityhub_operations.R

Defines functions securityhub_update_standards_control securityhub_update_security_hub_configuration securityhub_update_security_control securityhub_update_organization_configuration securityhub_update_insight securityhub_update_findings securityhub_update_finding_aggregator securityhub_update_connector_v2 securityhub_update_configuration_policy securityhub_update_automation_rule_v2 securityhub_update_aggregator_v2 securityhub_update_action_target securityhub_untag_resource securityhub_tag_resource securityhub_start_configuration_policy_disassociation securityhub_start_configuration_policy_association securityhub_register_connector_v2 securityhub_list_tags_for_resource securityhub_list_standards_control_associations securityhub_list_security_control_definitions securityhub_list_organization_admin_accounts securityhub_list_members securityhub_list_invitations securityhub_list_finding_aggregators securityhub_list_enabled_products_for_import securityhub_list_connectors_v2 securityhub_list_configuration_policy_associations securityhub_list_configuration_policies securityhub_list_automation_rules_v2 securityhub_list_automation_rules securityhub_list_aggregators_v2 securityhub_invite_members securityhub_get_security_control_definition securityhub_get_resources_v2 securityhub_get_resources_trends_v2 securityhub_get_resources_statistics_v2 securityhub_get_recommended_policy_v2 securityhub_get_members securityhub_get_master_account securityhub_get_invitations_count securityhub_get_insights securityhub_get_insight_results securityhub_get_findings_v2 securityhub_get_findings_trends_v2 securityhub_get_findings securityhub_get_finding_statistics_v2 securityhub_get_finding_history securityhub_get_finding_aggregator securityhub_get_enabled_standards securityhub_get_connector_v2 securityhub_get_configuration_policy_association securityhub_get_configuration_policy securityhub_get_automation_rule_v2 securityhub_get_aggregator_v2 securityhub_get_administrator_account securityhub_generate_recommended_policy_v2 securityhub_enable_security_hub_v2 securityhub_enable_security_hub securityhub_enable_organization_admin_account securityhub_enable_import_findings_for_product securityhub_disassociate_members securityhub_disassociate_from_master_account securityhub_disassociate_from_administrator_account securityhub_disable_security_hub_v2 securityhub_disable_security_hub securityhub_disable_organization_admin_account securityhub_disable_import_findings_for_product securityhub_describe_standards_controls securityhub_describe_standards securityhub_describe_security_hub_v2 securityhub_describe_products_v2 securityhub_describe_products securityhub_describe_organization_configuration securityhub_describe_hub securityhub_describe_action_targets securityhub_delete_members securityhub_delete_invitations securityhub_delete_insight securityhub_delete_finding_aggregator securityhub_delete_connector_v2 securityhub_delete_configuration_policy securityhub_delete_automation_rule_v2 securityhub_delete_aggregator_v2 securityhub_delete_action_target securityhub_decline_invitations securityhub_create_ticket_v2 securityhub_create_members securityhub_create_insight securityhub_create_finding_aggregator securityhub_create_connector_v2 securityhub_create_configuration_policy securityhub_create_automation_rule_v2 securityhub_create_automation_rule securityhub_create_aggregator_v2 securityhub_create_action_target securityhub_batch_update_standards_control_associations securityhub_batch_update_findings_v2 securityhub_batch_update_findings securityhub_batch_update_automation_rules securityhub_batch_import_findings securityhub_batch_get_standards_control_associations securityhub_batch_get_security_controls securityhub_batch_get_configuration_policy_associations securityhub_batch_get_automation_rules securityhub_batch_enable_standards securityhub_batch_disable_standards securityhub_batch_delete_automation_rules securityhub_accept_invitation securityhub_accept_administrator_invitation

Documented in securityhub_accept_administrator_invitation securityhub_accept_invitation securityhub_batch_delete_automation_rules securityhub_batch_disable_standards securityhub_batch_enable_standards securityhub_batch_get_automation_rules securityhub_batch_get_configuration_policy_associations securityhub_batch_get_security_controls securityhub_batch_get_standards_control_associations securityhub_batch_import_findings securityhub_batch_update_automation_rules securityhub_batch_update_findings securityhub_batch_update_findings_v2 securityhub_batch_update_standards_control_associations securityhub_create_action_target securityhub_create_aggregator_v2 securityhub_create_automation_rule securityhub_create_automation_rule_v2 securityhub_create_configuration_policy securityhub_create_connector_v2 securityhub_create_finding_aggregator securityhub_create_insight securityhub_create_members securityhub_create_ticket_v2 securityhub_decline_invitations securityhub_delete_action_target securityhub_delete_aggregator_v2 securityhub_delete_automation_rule_v2 securityhub_delete_configuration_policy securityhub_delete_connector_v2 securityhub_delete_finding_aggregator securityhub_delete_insight securityhub_delete_invitations securityhub_delete_members securityhub_describe_action_targets securityhub_describe_hub securityhub_describe_organization_configuration securityhub_describe_products securityhub_describe_products_v2 securityhub_describe_security_hub_v2 securityhub_describe_standards securityhub_describe_standards_controls securityhub_disable_import_findings_for_product securityhub_disable_organization_admin_account securityhub_disable_security_hub securityhub_disable_security_hub_v2 securityhub_disassociate_from_administrator_account securityhub_disassociate_from_master_account securityhub_disassociate_members securityhub_enable_import_findings_for_product securityhub_enable_organization_admin_account securityhub_enable_security_hub securityhub_enable_security_hub_v2 securityhub_generate_recommended_policy_v2 securityhub_get_administrator_account securityhub_get_aggregator_v2 securityhub_get_automation_rule_v2 securityhub_get_configuration_policy securityhub_get_configuration_policy_association securityhub_get_connector_v2 securityhub_get_enabled_standards securityhub_get_finding_aggregator securityhub_get_finding_history securityhub_get_findings securityhub_get_finding_statistics_v2 securityhub_get_findings_trends_v2 securityhub_get_findings_v2 securityhub_get_insight_results securityhub_get_insights securityhub_get_invitations_count securityhub_get_master_account securityhub_get_members securityhub_get_recommended_policy_v2 securityhub_get_resources_statistics_v2 securityhub_get_resources_trends_v2 securityhub_get_resources_v2 securityhub_get_security_control_definition securityhub_invite_members securityhub_list_aggregators_v2 securityhub_list_automation_rules securityhub_list_automation_rules_v2 securityhub_list_configuration_policies securityhub_list_configuration_policy_associations securityhub_list_connectors_v2 securityhub_list_enabled_products_for_import securityhub_list_finding_aggregators securityhub_list_invitations securityhub_list_members securityhub_list_organization_admin_accounts securityhub_list_security_control_definitions securityhub_list_standards_control_associations securityhub_list_tags_for_resource securityhub_register_connector_v2 securityhub_start_configuration_policy_association securityhub_start_configuration_policy_disassociation securityhub_tag_resource securityhub_untag_resource securityhub_update_action_target securityhub_update_aggregator_v2 securityhub_update_automation_rule_v2 securityhub_update_configuration_policy securityhub_update_connector_v2 securityhub_update_finding_aggregator securityhub_update_findings securityhub_update_insight securityhub_update_organization_configuration securityhub_update_security_control securityhub_update_security_hub_configuration securityhub_update_standards_control

# This file is generated by make.paws. Please do not edit here.
#' @importFrom paws.common get_config new_operation new_request send_request
#' @include securityhub_service.R
NULL

#' We recommend using Organizations instead of Security Hub CSPM
#' invitations to manage your member accounts
#'
#' @description
#' We recommend using Organizations instead of Security Hub CSPM invitations to manage your member accounts. For information, see [Managing Security Hub CSPM administrator and member accounts with Organizations](https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-accounts-orgs.html) in the *Security Hub CSPM User Guide*.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_accept_administrator_invitation/](https://www.paws-r-sdk.com/docs/securityhub_accept_administrator_invitation/) for full documentation.
#'
#' @param AdministratorId [required] The account ID of the Security Hub CSPM administrator account that sent the invitation.
#' @param InvitationId [required] The identifier of the invitation sent from the Security Hub CSPM administrator account.
#'
#' @keywords internal
#'
#' @rdname securityhub_accept_administrator_invitation
securityhub_accept_administrator_invitation <- function(AdministratorId, InvitationId) {
  op <- new_operation(
    name = "AcceptAdministratorInvitation",
    http_method = "POST",
    http_path = "/administrator",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$accept_administrator_invitation_input(AdministratorId = AdministratorId, InvitationId = InvitationId)
  output <- .securityhub$accept_administrator_invitation_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$accept_administrator_invitation <- securityhub_accept_administrator_invitation

#' This method is deprecated
#'
#' @description
#' This method is deprecated. Instead, use [`accept_administrator_invitation`][securityhub_accept_administrator_invitation].
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_accept_invitation/](https://www.paws-r-sdk.com/docs/securityhub_accept_invitation/) for full documentation.
#'
#' @param MasterId &#91;required&#93; The account ID of the Security Hub CSPM administrator account that sent the invitation.
#' @param InvitationId &#91;required&#93; The identifier of the invitation sent from the Security Hub CSPM administrator account.
#'
#' @keywords internal
#'
#' @rdname securityhub_accept_invitation
securityhub_accept_invitation <- function(MasterId, InvitationId) {
  op <- new_operation(
    name = "AcceptInvitation",
    http_method = "POST",
    http_path = "/master",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$accept_invitation_input(MasterId = MasterId, InvitationId = InvitationId)
  output <- .securityhub$accept_invitation_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$accept_invitation <- securityhub_accept_invitation

#' Deletes one or more automation rules
#'
#' @description
#' Deletes one or more automation rules.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_batch_delete_automation_rules/](https://www.paws-r-sdk.com/docs/securityhub_batch_delete_automation_rules/) for full documentation.
#'
#' @param AutomationRulesArns &#91;required&#93; A list of Amazon Resource Names (ARNs) for the rules that are to be deleted.
#'
#' @keywords internal
#'
#' @rdname securityhub_batch_delete_automation_rules
securityhub_batch_delete_automation_rules <- function(AutomationRulesArns) {
  op <- new_operation(
    name = "BatchDeleteAutomationRules",
    http_method = "POST",
    http_path = "/automationrules/delete",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$batch_delete_automation_rules_input(AutomationRulesArns = AutomationRulesArns)
  output <- .securityhub$batch_delete_automation_rules_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$batch_delete_automation_rules <- securityhub_batch_delete_automation_rules

#' Disables the standards specified by the provided
#' StandardsSubscriptionArns
#'
#' @description
#' Disables the standards specified by the provided `StandardsSubscriptionArns`.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_batch_disable_standards/](https://www.paws-r-sdk.com/docs/securityhub_batch_disable_standards/) for full documentation.
#'
#' @param StandardsSubscriptionArns &#91;required&#93; The ARNs of the standards subscriptions to disable.
#'
#' @keywords internal
#'
#' @rdname securityhub_batch_disable_standards
securityhub_batch_disable_standards <- function(StandardsSubscriptionArns) {
  op <- new_operation(
    name = "BatchDisableStandards",
    http_method = "POST",
    http_path = "/standards/deregister",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$batch_disable_standards_input(StandardsSubscriptionArns = StandardsSubscriptionArns)
  output <- .securityhub$batch_disable_standards_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$batch_disable_standards <- securityhub_batch_disable_standards

#' Enables the standards specified by the provided StandardsArn
#'
#' @description
#' Enables the standards specified by the provided `StandardsArn`. To obtain the ARN for a standard, use the [`describe_standards`][securityhub_describe_standards] operation.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_batch_enable_standards/](https://www.paws-r-sdk.com/docs/securityhub_batch_enable_standards/) for full documentation.
#'
#' @param StandardsSubscriptionRequests &#91;required&#93; The list of standards checks to enable.
#'
#' @keywords internal
#'
#' @rdname securityhub_batch_enable_standards
securityhub_batch_enable_standards <- function(StandardsSubscriptionRequests) {
  op <- new_operation(
    name = "BatchEnableStandards",
    http_method = "POST",
    http_path = "/standards/register",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$batch_enable_standards_input(StandardsSubscriptionRequests = StandardsSubscriptionRequests)
  output <- .securityhub$batch_enable_standards_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$batch_enable_standards <- securityhub_batch_enable_standards

#' Retrieves a list of details for automation rules based on rule Amazon
#' Resource Names (ARNs)
#'
#' @description
#' Retrieves a list of details for automation rules based on rule Amazon Resource Names (ARNs).
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_batch_get_automation_rules/](https://www.paws-r-sdk.com/docs/securityhub_batch_get_automation_rules/) for full documentation.
#'
#' @param AutomationRulesArns &#91;required&#93; A list of rule ARNs to get details for.
#'
#' @keywords internal
#'
#' @rdname securityhub_batch_get_automation_rules
securityhub_batch_get_automation_rules <- function(AutomationRulesArns) {
  op <- new_operation(
    name = "BatchGetAutomationRules",
    http_method = "POST",
    http_path = "/automationrules/get",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$batch_get_automation_rules_input(AutomationRulesArns = AutomationRulesArns)
  output <- .securityhub$batch_get_automation_rules_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$batch_get_automation_rules <- securityhub_batch_get_automation_rules

#' Returns associations between an Security Hub CSPM configuration and a
#' batch of target accounts, organizational units, or the root
#'
#' @description
#' Returns associations between an Security Hub CSPM configuration and a batch of target accounts, organizational units, or the root. Only the Security Hub CSPM delegated administrator can invoke this operation from the home Region. A configuration can refer to a configuration policy or to a self-managed configuration.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_batch_get_configuration_policy_associations/](https://www.paws-r-sdk.com/docs/securityhub_batch_get_configuration_policy_associations/) for full documentation.
#'
#' @param ConfigurationPolicyAssociationIdentifiers &#91;required&#93; Specifies one or more target account IDs, organizational unit (OU) IDs, or the root ID to retrieve associations for.
#'
#' @keywords internal
#'
#' @rdname securityhub_batch_get_configuration_policy_associations
securityhub_batch_get_configuration_policy_associations <- function(ConfigurationPolicyAssociationIdentifiers) {
  op <- new_operation(
    name = "BatchGetConfigurationPolicyAssociations",
    http_method = "POST",
    http_path = "/configurationPolicyAssociation/batchget",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$batch_get_configuration_policy_associations_input(ConfigurationPolicyAssociationIdentifiers = ConfigurationPolicyAssociationIdentifiers)
  output <- .securityhub$batch_get_configuration_policy_associations_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$batch_get_configuration_policy_associations <- securityhub_batch_get_configuration_policy_associations

#' Provides details about a batch of security controls for the current
#' Amazon Web Services account and Amazon Web Services Region
#'
#' @description
#' Provides details about a batch of security controls for the current Amazon Web Services account and Amazon Web Services Region.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_batch_get_security_controls/](https://www.paws-r-sdk.com/docs/securityhub_batch_get_security_controls/) for full documentation.
#'
#' @param SecurityControlIds &#91;required&#93; A list of security controls (identified with `SecurityControlId`, `SecurityControlArn`, or a mix of both parameters). The security control ID or Amazon Resource Name (ARN) is the same across standards.
#'
#' @keywords internal
#'
#' @rdname securityhub_batch_get_security_controls
securityhub_batch_get_security_controls <- function(SecurityControlIds) {
  op <- new_operation(
    name = "BatchGetSecurityControls",
    http_method = "POST",
    http_path = "/securityControls/batchGet",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$batch_get_security_controls_input(SecurityControlIds = SecurityControlIds)
  output <- .securityhub$batch_get_security_controls_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$batch_get_security_controls <- securityhub_batch_get_security_controls

#' For a batch of security controls and standards, identifies whether each
#' control is currently enabled or disabled in a standard
#'
#' @description
#' For a batch of security controls and standards, identifies whether each control is currently enabled or disabled in a standard.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_batch_get_standards_control_associations/](https://www.paws-r-sdk.com/docs/securityhub_batch_get_standards_control_associations/) for full documentation.
#'
#' @param StandardsControlAssociationIds &#91;required&#93; An array with one or more objects that includes a security control (identified with `SecurityControlId`, `SecurityControlArn`, or a mix of both parameters) and the Amazon Resource Name (ARN) of a standard. This field is used to query the enablement status of a control in a specified standard. The security control ID or ARN is the same across standards.
#'
#' @keywords internal
#'
#' @rdname securityhub_batch_get_standards_control_associations
securityhub_batch_get_standards_control_associations <- function(StandardsControlAssociationIds) {
  op <- new_operation(
    name = "BatchGetStandardsControlAssociations",
    http_method = "POST",
    http_path = "/associations/batchGet",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$batch_get_standards_control_associations_input(StandardsControlAssociationIds = StandardsControlAssociationIds)
  output <- .securityhub$batch_get_standards_control_associations_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$batch_get_standards_control_associations <- securityhub_batch_get_standards_control_associations

#' Imports security findings generated by a finding provider into Security
#' Hub CSPM
#'
#' @description
#' Imports security findings generated by a finding provider into Security Hub CSPM. This action is requested by the finding provider to import its findings into Security Hub CSPM.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_batch_import_findings/](https://www.paws-r-sdk.com/docs/securityhub_batch_import_findings/) for full documentation.
#'
#' @param Findings &#91;required&#93; A list of findings to import. To successfully import a finding, it must follow the [Amazon Web Services Security Finding Format](https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-findings-format.html). Maximum of 100 findings per request.
#'
#' @keywords internal
#'
#' @rdname securityhub_batch_import_findings
securityhub_batch_import_findings <- function(Findings) {
  op <- new_operation(
    name = "BatchImportFindings",
    http_method = "POST",
    http_path = "/findings/import",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$batch_import_findings_input(Findings = Findings)
  output <- .securityhub$batch_import_findings_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$batch_import_findings <- securityhub_batch_import_findings

#' Updates one or more automation rules based on rule Amazon Resource Names
#' (ARNs) and input parameters
#'
#' @description
#' Updates one or more automation rules based on rule Amazon Resource Names (ARNs) and input parameters.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_batch_update_automation_rules/](https://www.paws-r-sdk.com/docs/securityhub_batch_update_automation_rules/) for full documentation.
#'
#' @param UpdateAutomationRulesRequestItems &#91;required&#93; An array of ARNs for the rules that are to be updated. Optionally, you can also include `RuleStatus` and `RuleOrder`.
#'
#' @keywords internal
#'
#' @rdname securityhub_batch_update_automation_rules
securityhub_batch_update_automation_rules <- function(UpdateAutomationRulesRequestItems) {
  op <- new_operation(
    name = "BatchUpdateAutomationRules",
    http_method = "PATCH",
    http_path = "/automationrules/update",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$batch_update_automation_rules_input(UpdateAutomationRulesRequestItems = UpdateAutomationRulesRequestItems)
  output <- .securityhub$batch_update_automation_rules_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$batch_update_automation_rules <- securityhub_batch_update_automation_rules

#' Used by Security Hub CSPM customers to update information about their
#' investigation into one or more findings
#'
#' @description
#' Used by Security Hub CSPM customers to update information about their investigation into one or more findings. Requested by administrator accounts or member accounts. Administrator accounts can update findings for their account and their member accounts. A member account can update findings only for their own account. Administrator and member accounts can use this operation to update the following fields and objects for one or more findings:
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_batch_update_findings/](https://www.paws-r-sdk.com/docs/securityhub_batch_update_findings/) for full documentation.
#'
#' @param FindingIdentifiers &#91;required&#93; The list of findings to update. [`batch_update_findings`][securityhub_batch_update_findings] can be used to update up to 100 findings at a time.
#' 
#' For each finding, the list provides the finding identifier and the ARN of the finding provider.
#' @param Note A user-defined note added to a finding.
#' @param Severity Used to update the finding severity.
#' @param VerificationState Indicates the veracity of a finding.
#' 
#' The available values for `VerificationState` are as follows.
#' 
#' -   `UNKNOWN` – The default disposition of a security finding
#' 
#' -   `TRUE_POSITIVE` – The security finding is confirmed
#' 
#' -   `FALSE_POSITIVE` – The security finding was determined to be a false alarm
#' 
#' -   `BENIGN_POSITIVE` – A special case of `TRUE_POSITIVE` where the finding doesn't pose any threat, is expected, or both
#' @param Confidence The updated value for the finding confidence. Confidence is defined as the likelihood that a finding accurately identifies the behavior or issue that it was intended to identify.
#' 
#' Confidence is scored on a 0-100 basis using a ratio scale, where 0 means zero percent confidence and 100 means 100 percent confidence.
#' @param Criticality The updated value for the level of importance assigned to the resources associated with the findings.
#' 
#' A score of 0 means that the underlying resources have no criticality, and a score of 100 is reserved for the most critical resources.
#' @param Types One or more finding types in the format of namespace/category/classifier that classify a finding.
#' 
#' Valid namespace values are as follows.
#' 
#' -   Software and Configuration Checks
#' 
#' -   TTPs
#' 
#' -   Effects
#' 
#' -   Unusual Behaviors
#' 
#' -   Sensitive Data Identifications
#' @param UserDefinedFields A list of name/value string pairs associated with the finding. These are custom, user-defined fields added to a finding.
#' @param Workflow Used to update the workflow status of a finding.
#' 
#' The workflow status indicates the progress of the investigation into the finding.
#' @param RelatedFindings A list of findings that are related to the updated findings.
#'
#' @keywords internal
#'
#' @rdname securityhub_batch_update_findings
securityhub_batch_update_findings <- function(FindingIdentifiers, Note = NULL, Severity = NULL, VerificationState = NULL, Confidence = NULL, Criticality = NULL, Types = NULL, UserDefinedFields = NULL, Workflow = NULL, RelatedFindings = NULL) {
  op <- new_operation(
    name = "BatchUpdateFindings",
    http_method = "PATCH",
    http_path = "/findings/batchupdate",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$batch_update_findings_input(FindingIdentifiers = FindingIdentifiers, Note = Note, Severity = Severity, VerificationState = VerificationState, Confidence = Confidence, Criticality = Criticality, Types = Types, UserDefinedFields = UserDefinedFields, Workflow = Workflow, RelatedFindings = RelatedFindings)
  output <- .securityhub$batch_update_findings_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$batch_update_findings <- securityhub_batch_update_findings

#' Updates information about a customer's investigation into a finding
#'
#' @description
#' Updates information about a customer's investigation into a finding. Delegated administrator accounts can update findings for their account and their member accounts. Member accounts can update findings for their own account.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_batch_update_findings_v2/](https://www.paws-r-sdk.com/docs/securityhub_batch_update_findings_v2/) for full documentation.
#'
#' @param MetadataUids The list of finding `metadata.uid` to indicate findings to update. Finding `metadata.uid` is a globally unique identifier associated with the finding. Customers cannot use `MetadataUids` together with `FindingIdentifiers`.
#' @param FindingIdentifiers Provides information to identify a specific V2 finding.
#' @param Comment The updated value for a user provided comment about the finding. Minimum character length 1. Maximum character length 512.
#' @param SeverityId The updated value for the normalized severity identifier. The severity ID is an integer with the allowed enum values \[0, 1, 2, 3, 4, 5, 6, 99\]. When customer provides the updated severity ID, the string sibling severity will automatically be updated in the finding.
#' @param StatusId The updated value for the normalized status identifier. The status ID is an integer with the allowed enum values \[0, 1, 2, 3, 4, 5, 99\]. When customer provides the updated status ID, the string sibling status will automatically be updated in the finding.
#'
#' @keywords internal
#'
#' @rdname securityhub_batch_update_findings_v2
securityhub_batch_update_findings_v2 <- function(MetadataUids = NULL, FindingIdentifiers = NULL, Comment = NULL, SeverityId = NULL, StatusId = NULL) {
  op <- new_operation(
    name = "BatchUpdateFindingsV2",
    http_method = "PATCH",
    http_path = "/findingsv2/batchupdatev2",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$batch_update_findings_v2_input(MetadataUids = MetadataUids, FindingIdentifiers = FindingIdentifiers, Comment = Comment, SeverityId = SeverityId, StatusId = StatusId)
  output <- .securityhub$batch_update_findings_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$batch_update_findings_v2 <- securityhub_batch_update_findings_v2

#' For a batch of security controls and standards, this operation updates
#' the enablement status of a control in a standard
#'
#' @description
#' For a batch of security controls and standards, this operation updates the enablement status of a control in a standard.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_batch_update_standards_control_associations/](https://www.paws-r-sdk.com/docs/securityhub_batch_update_standards_control_associations/) for full documentation.
#'
#' @param StandardsControlAssociationUpdates &#91;required&#93; Updates the enablement status of a security control in a specified standard.
#' 
#' Calls to this operation return a `RESOURCE_NOT_FOUND_EXCEPTION` error when the standard subscription for the control has `StandardsControlsUpdatable` value `NOT_READY_FOR_UPDATES`.
#'
#' @keywords internal
#'
#' @rdname securityhub_batch_update_standards_control_associations
securityhub_batch_update_standards_control_associations <- function(StandardsControlAssociationUpdates) {
  op <- new_operation(
    name = "BatchUpdateStandardsControlAssociations",
    http_method = "PATCH",
    http_path = "/associations",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$batch_update_standards_control_associations_input(StandardsControlAssociationUpdates = StandardsControlAssociationUpdates)
  output <- .securityhub$batch_update_standards_control_associations_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$batch_update_standards_control_associations <- securityhub_batch_update_standards_control_associations

#' Creates a custom action target in Security Hub CSPM
#'
#' @description
#' Creates a custom action target in Security Hub CSPM.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_create_action_target/](https://www.paws-r-sdk.com/docs/securityhub_create_action_target/) for full documentation.
#'
#' @param Name &#91;required&#93; The name of the custom action target. Can contain up to 20 characters.
#' @param Description &#91;required&#93; The description for the custom action target.
#' @param Id &#91;required&#93; The ID for the custom action target. Can contain up to 20 alphanumeric characters.
#'
#' @keywords internal
#'
#' @rdname securityhub_create_action_target
securityhub_create_action_target <- function(Name, Description, Id) {
  op <- new_operation(
    name = "CreateActionTarget",
    http_method = "POST",
    http_path = "/actionTargets",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$create_action_target_input(Name = Name, Description = Description, Id = Id)
  output <- .securityhub$create_action_target_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$create_action_target <- securityhub_create_action_target

#' Enables aggregation across Amazon Web Services Regions
#'
#' @description
#' Enables aggregation across Amazon Web Services Regions.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_create_aggregator_v2/](https://www.paws-r-sdk.com/docs/securityhub_create_aggregator_v2/) for full documentation.
#'
#' @param RegionLinkingMode &#91;required&#93; Determines how Regions are linked to an Aggregator V2.
#' @param LinkedRegions The list of Regions that are linked to the aggregation Region.
#' @param Tags A list of key-value pairs to be applied to the AggregatorV2.
#' @param ClientToken A unique identifier used to ensure idempotency.
#'
#' @keywords internal
#'
#' @rdname securityhub_create_aggregator_v2
securityhub_create_aggregator_v2 <- function(RegionLinkingMode, LinkedRegions = NULL, Tags = NULL, ClientToken = NULL) {
  op <- new_operation(
    name = "CreateAggregatorV2",
    http_method = "POST",
    http_path = "/aggregatorv2/create",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$create_aggregator_v2_input(RegionLinkingMode = RegionLinkingMode, LinkedRegions = LinkedRegions, Tags = Tags, ClientToken = ClientToken)
  output <- .securityhub$create_aggregator_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$create_aggregator_v2 <- securityhub_create_aggregator_v2

#' Creates an automation rule based on input parameters
#'
#' @description
#' Creates an automation rule based on input parameters.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_create_automation_rule/](https://www.paws-r-sdk.com/docs/securityhub_create_automation_rule/) for full documentation.
#'
#' @param Tags User-defined tags associated with an automation rule.
#' @param RuleStatus Whether the rule is active after it is created. If this parameter is equal to `ENABLED`, Security Hub CSPM starts applying the rule to findings and finding updates after the rule is created. To change the value of this parameter after creating a rule, use [`batch_update_automation_rules`](https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchUpdateAutomationRules.html) .
#' @param RuleOrder &#91;required&#93; An integer ranging from 1 to 1000 that represents the order in which the rule action is applied to findings. Security Hub CSPM applies rules with lower values for this parameter first.
#' @param RuleName &#91;required&#93; The name of the rule.
#' @param Description &#91;required&#93; A description of the rule.
#' @param IsTerminal Specifies whether a rule is the last to be applied with respect to a finding that matches the rule criteria. This is useful when a finding matches the criteria for multiple rules, and each rule has different actions. If a rule is terminal, Security Hub CSPM applies the rule action to a finding that matches the rule criteria and doesn't evaluate other rules for the finding. By default, a rule isn't terminal.
#' @param Criteria &#91;required&#93; A set of ASFF finding field attributes and corresponding expected values that Security Hub CSPM uses to filter findings. If a rule is enabled and a finding matches the conditions specified in this parameter, Security Hub CSPM applies the rule action to the finding.
#' @param Actions &#91;required&#93; One or more actions to update finding fields if a finding matches the conditions specified in `Criteria`.
#'
#' @keywords internal
#'
#' @rdname securityhub_create_automation_rule
securityhub_create_automation_rule <- function(Tags = NULL, RuleStatus = NULL, RuleOrder, RuleName, Description, IsTerminal = NULL, Criteria, Actions) {
  op <- new_operation(
    name = "CreateAutomationRule",
    http_method = "POST",
    http_path = "/automationrules/create",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$create_automation_rule_input(Tags = Tags, RuleStatus = RuleStatus, RuleOrder = RuleOrder, RuleName = RuleName, Description = Description, IsTerminal = IsTerminal, Criteria = Criteria, Actions = Actions)
  output <- .securityhub$create_automation_rule_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$create_automation_rule <- securityhub_create_automation_rule

#' Creates a V2 automation rule
#'
#' @description
#' Creates a V2 automation rule.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_create_automation_rule_v2/](https://www.paws-r-sdk.com/docs/securityhub_create_automation_rule_v2/) for full documentation.
#'
#' @param RuleName &#91;required&#93; The name of the V2 automation rule.
#' @param RuleStatus The status of the V2 automation rule.
#' @param Description &#91;required&#93; A description of the V2 automation rule.
#' @param RuleOrder &#91;required&#93; The value for the rule priority.
#' @param Criteria &#91;required&#93; The filtering type and configuration of the automation rule.
#' @param Actions &#91;required&#93; A list of actions to be performed when the rule criteria is met.
#' @param Tags A list of key-value pairs associated with the V2 automation rule.
#' @param ClientToken A unique identifier used to ensure idempotency.
#'
#' @keywords internal
#'
#' @rdname securityhub_create_automation_rule_v2
securityhub_create_automation_rule_v2 <- function(RuleName, RuleStatus = NULL, Description, RuleOrder, Criteria, Actions, Tags = NULL, ClientToken = NULL) {
  op <- new_operation(
    name = "CreateAutomationRuleV2",
    http_method = "POST",
    http_path = "/automationrulesv2/create",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$create_automation_rule_v2_input(RuleName = RuleName, RuleStatus = RuleStatus, Description = Description, RuleOrder = RuleOrder, Criteria = Criteria, Actions = Actions, Tags = Tags, ClientToken = ClientToken)
  output <- .securityhub$create_automation_rule_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$create_automation_rule_v2 <- securityhub_create_automation_rule_v2

#' Creates a configuration policy with the defined configuration
#'
#' @description
#' Creates a configuration policy with the defined configuration. Only the Security Hub CSPM delegated administrator can invoke this operation from the home Region.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_create_configuration_policy/](https://www.paws-r-sdk.com/docs/securityhub_create_configuration_policy/) for full documentation.
#'
#' @param Name &#91;required&#93; The name of the configuration policy. Alphanumeric characters and the following ASCII characters are permitted: `-, ., !, *, /`.
#' @param Description The description of the configuration policy.
#' @param ConfigurationPolicy &#91;required&#93; An object that defines how Security Hub CSPM is configured. It includes whether Security Hub CSPM is enabled or disabled, a list of enabled security standards, a list of enabled or disabled security controls, and a list of custom parameter values for specified controls. If you provide a list of security controls that are enabled in the configuration policy, Security Hub CSPM disables all other controls (including newly released controls). If you provide a list of security controls that are disabled in the configuration policy, Security Hub CSPM enables all other controls (including newly released controls).
#' @param Tags User-defined tags associated with a configuration policy. For more information, see [Tagging Security Hub CSPM resources](https://docs.aws.amazon.com/securityhub/latest/userguide/tagging-resources.html) in the *Security Hub CSPM user guide*.
#'
#' @keywords internal
#'
#' @rdname securityhub_create_configuration_policy
securityhub_create_configuration_policy <- function(Name, Description = NULL, ConfigurationPolicy, Tags = NULL) {
  op <- new_operation(
    name = "CreateConfigurationPolicy",
    http_method = "POST",
    http_path = "/configurationPolicy/create",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$create_configuration_policy_input(Name = Name, Description = Description, ConfigurationPolicy = ConfigurationPolicy, Tags = Tags)
  output <- .securityhub$create_configuration_policy_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$create_configuration_policy <- securityhub_create_configuration_policy

#' Grants permission to create a connectorV2 based on input parameters
#'
#' @description
#' Grants permission to create a connectorV2 based on input parameters.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_create_connector_v2/](https://www.paws-r-sdk.com/docs/securityhub_create_connector_v2/) for full documentation.
#'
#' @param Name &#91;required&#93; The unique name of the connectorV2.
#' @param Description The description of the connectorV2.
#' @param Provider &#91;required&#93; The third-party provider’s service configuration.
#' @param KmsKeyArn The Amazon Resource Name (ARN) of KMS key used to encrypt secrets for the connectorV2.
#' @param Tags The tags to add to the connectorV2 when you create.
#' @param ClientToken A unique identifier used to ensure idempotency.
#'
#' @keywords internal
#'
#' @rdname securityhub_create_connector_v2
securityhub_create_connector_v2 <- function(Name, Description = NULL, Provider, KmsKeyArn = NULL, Tags = NULL, ClientToken = NULL) {
  op <- new_operation(
    name = "CreateConnectorV2",
    http_method = "POST",
    http_path = "/connectorsv2",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$create_connector_v2_input(Name = Name, Description = Description, Provider = Provider, KmsKeyArn = KmsKeyArn, Tags = Tags, ClientToken = ClientToken)
  output <- .securityhub$create_connector_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$create_connector_v2 <- securityhub_create_connector_v2

#' The aggregation Region is now called the home Region
#'
#' @description
#' The *aggregation Region* is now called the *home Region*.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_create_finding_aggregator/](https://www.paws-r-sdk.com/docs/securityhub_create_finding_aggregator/) for full documentation.
#'
#' @param RegionLinkingMode &#91;required&#93; Indicates whether to aggregate findings from all of the available Regions in the current partition. Also determines whether to automatically aggregate findings from new Regions as Security Hub CSPM supports them and you opt into them.
#' 
#' The selected option also determines how to use the Regions provided in the Regions list.
#' 
#' The options are as follows:
#' 
#' -   `ALL_REGIONS` - Aggregates findings from all of the Regions where Security Hub CSPM is enabled. When you choose this option, Security Hub CSPM also automatically aggregates findings from new Regions as Security Hub CSPM supports them and you opt into them.
#' 
#' -   `ALL_REGIONS_EXCEPT_SPECIFIED` - Aggregates findings from all of the Regions where Security Hub CSPM is enabled, except for the Regions listed in the `Regions` parameter. When you choose this option, Security Hub CSPM also automatically aggregates findings from new Regions as Security Hub CSPM supports them and you opt into them.
#' 
#' -   `SPECIFIED_REGIONS` - Aggregates findings only from the Regions listed in the `Regions` parameter. Security Hub CSPM does not automatically aggregate findings from new Regions.
#' 
#' -   `NO_REGIONS` - Aggregates no data because no Regions are selected as linked Regions.
#' @param Regions If `RegionLinkingMode` is `ALL_REGIONS_EXCEPT_SPECIFIED`, then this is a space-separated list of Regions that don't replicate and send findings to the home Region.
#' 
#' If `RegionLinkingMode` is `SPECIFIED_REGIONS`, then this is a space-separated list of Regions that do replicate and send findings to the home Region.
#' 
#' An `InvalidInputException` error results if you populate this field while `RegionLinkingMode` is `NO_REGIONS`.
#'
#' @keywords internal
#'
#' @rdname securityhub_create_finding_aggregator
securityhub_create_finding_aggregator <- function(RegionLinkingMode, Regions = NULL) {
  op <- new_operation(
    name = "CreateFindingAggregator",
    http_method = "POST",
    http_path = "/findingAggregator/create",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$create_finding_aggregator_input(RegionLinkingMode = RegionLinkingMode, Regions = Regions)
  output <- .securityhub$create_finding_aggregator_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$create_finding_aggregator <- securityhub_create_finding_aggregator

#' Creates a custom insight in Security Hub CSPM
#'
#' @description
#' Creates a custom insight in Security Hub CSPM. An insight is a consolidation of findings that relate to a security issue that requires attention or remediation.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_create_insight/](https://www.paws-r-sdk.com/docs/securityhub_create_insight/) for full documentation.
#'
#' @param Name &#91;required&#93; The name of the custom insight to create.
#' @param Filters &#91;required&#93; One or more attributes used to filter the findings included in the insight. The insight only includes findings that match the criteria defined in the filters.
#' @param GroupByAttribute &#91;required&#93; The attribute used to group the findings for the insight. The grouping attribute identifies the type of item that the insight applies to. For example, if an insight is grouped by resource identifier, then the insight produces a list of resource identifiers.
#'
#' @keywords internal
#'
#' @rdname securityhub_create_insight
securityhub_create_insight <- function(Name, Filters, GroupByAttribute) {
  op <- new_operation(
    name = "CreateInsight",
    http_method = "POST",
    http_path = "/insights",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$create_insight_input(Name = Name, Filters = Filters, GroupByAttribute = GroupByAttribute)
  output <- .securityhub$create_insight_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$create_insight <- securityhub_create_insight

#' Creates a member association in Security Hub CSPM between the specified
#' accounts and the account used to make the request, which is the
#' administrator account
#'
#' @description
#' Creates a member association in Security Hub CSPM between the specified accounts and the account used to make the request, which is the administrator account. If you are integrated with Organizations, then the administrator account is designated by the organization management account.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_create_members/](https://www.paws-r-sdk.com/docs/securityhub_create_members/) for full documentation.
#'
#' @param AccountDetails &#91;required&#93; The list of accounts to associate with the Security Hub CSPM administrator account. For each account, the list includes the account ID and optionally the email address.
#'
#' @keywords internal
#'
#' @rdname securityhub_create_members
securityhub_create_members <- function(AccountDetails) {
  op <- new_operation(
    name = "CreateMembers",
    http_method = "POST",
    http_path = "/members",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$create_members_input(AccountDetails = AccountDetails)
  output <- .securityhub$create_members_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$create_members <- securityhub_create_members

#' Grants permission to create a ticket in the chosen ITSM based on finding
#' information for the provided finding metadata UID
#'
#' @description
#' Grants permission to create a ticket in the chosen ITSM based on finding information for the provided finding metadata UID.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_create_ticket_v2/](https://www.paws-r-sdk.com/docs/securityhub_create_ticket_v2/) for full documentation.
#'
#' @param ConnectorId &#91;required&#93; The UUID of the connectorV2 to identify connectorV2 resource.
#' @param FindingMetadataUid &#91;required&#93; The the unique ID for the finding.
#' @param ClientToken The client idempotency token.
#' @param Mode The mode for ticket creation. When set to DRYRUN, the ticket is created using a Security Hub owned template test finding to verify the integration is working correctly.
#'
#' @keywords internal
#'
#' @rdname securityhub_create_ticket_v2
securityhub_create_ticket_v2 <- function(ConnectorId, FindingMetadataUid, ClientToken = NULL, Mode = NULL) {
  op <- new_operation(
    name = "CreateTicketV2",
    http_method = "POST",
    http_path = "/ticketsv2",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$create_ticket_v2_input(ConnectorId = ConnectorId, FindingMetadataUid = FindingMetadataUid, ClientToken = ClientToken, Mode = Mode)
  output <- .securityhub$create_ticket_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$create_ticket_v2 <- securityhub_create_ticket_v2

#' We recommend using Organizations instead of Security Hub CSPM
#' invitations to manage your member accounts
#'
#' @description
#' We recommend using Organizations instead of Security Hub CSPM invitations to manage your member accounts. For information, see [Managing Security Hub CSPM administrator and member accounts with Organizations](https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-accounts-orgs.html) in the *Security Hub CSPM User Guide*.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_decline_invitations/](https://www.paws-r-sdk.com/docs/securityhub_decline_invitations/) for full documentation.
#'
#' @param AccountIds &#91;required&#93; The list of prospective member account IDs for which to decline an invitation.
#'
#' @keywords internal
#'
#' @rdname securityhub_decline_invitations
securityhub_decline_invitations <- function(AccountIds) {
  op <- new_operation(
    name = "DeclineInvitations",
    http_method = "POST",
    http_path = "/invitations/decline",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$decline_invitations_input(AccountIds = AccountIds)
  output <- .securityhub$decline_invitations_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$decline_invitations <- securityhub_decline_invitations

#' Deletes a custom action target from Security Hub CSPM
#'
#' @description
#' Deletes a custom action target from Security Hub CSPM.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_delete_action_target/](https://www.paws-r-sdk.com/docs/securityhub_delete_action_target/) for full documentation.
#'
#' @param ActionTargetArn &#91;required&#93; The Amazon Resource Name (ARN) of the custom action target to delete.
#'
#' @keywords internal
#'
#' @rdname securityhub_delete_action_target
securityhub_delete_action_target <- function(ActionTargetArn) {
  op <- new_operation(
    name = "DeleteActionTarget",
    http_method = "DELETE",
    http_path = "/actionTargets/{ActionTargetArn+}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$delete_action_target_input(ActionTargetArn = ActionTargetArn)
  output <- .securityhub$delete_action_target_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$delete_action_target <- securityhub_delete_action_target

#' Deletes the Aggregator V2
#'
#' @description
#' Deletes the Aggregator V2.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_delete_aggregator_v2/](https://www.paws-r-sdk.com/docs/securityhub_delete_aggregator_v2/) for full documentation.
#'
#' @param AggregatorV2Arn &#91;required&#93; The ARN of the Aggregator V2.
#'
#' @keywords internal
#'
#' @rdname securityhub_delete_aggregator_v2
securityhub_delete_aggregator_v2 <- function(AggregatorV2Arn) {
  op <- new_operation(
    name = "DeleteAggregatorV2",
    http_method = "DELETE",
    http_path = "/aggregatorv2/delete/{AggregatorV2Arn+}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$delete_aggregator_v2_input(AggregatorV2Arn = AggregatorV2Arn)
  output <- .securityhub$delete_aggregator_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$delete_aggregator_v2 <- securityhub_delete_aggregator_v2

#' Deletes a V2 automation rule
#'
#' @description
#' Deletes a V2 automation rule.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_delete_automation_rule_v2/](https://www.paws-r-sdk.com/docs/securityhub_delete_automation_rule_v2/) for full documentation.
#'
#' @param Identifier &#91;required&#93; The ARN of the V2 automation rule.
#'
#' @keywords internal
#'
#' @rdname securityhub_delete_automation_rule_v2
securityhub_delete_automation_rule_v2 <- function(Identifier) {
  op <- new_operation(
    name = "DeleteAutomationRuleV2",
    http_method = "DELETE",
    http_path = "/automationrulesv2/{Identifier}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$delete_automation_rule_v2_input(Identifier = Identifier)
  output <- .securityhub$delete_automation_rule_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$delete_automation_rule_v2 <- securityhub_delete_automation_rule_v2

#' Deletes a configuration policy
#'
#' @description
#' Deletes a configuration policy. Only the Security Hub CSPM delegated administrator can invoke this operation from the home Region. For the deletion to succeed, you must first disassociate a configuration policy from target accounts, organizational units, or the root by invoking the [`start_configuration_policy_disassociation`][securityhub_start_configuration_policy_disassociation] operation.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_delete_configuration_policy/](https://www.paws-r-sdk.com/docs/securityhub_delete_configuration_policy/) for full documentation.
#'
#' @param Identifier &#91;required&#93; The Amazon Resource Name (ARN) or universally unique identifier (UUID) of the configuration policy.
#'
#' @keywords internal
#'
#' @rdname securityhub_delete_configuration_policy
securityhub_delete_configuration_policy <- function(Identifier) {
  op <- new_operation(
    name = "DeleteConfigurationPolicy",
    http_method = "DELETE",
    http_path = "/configurationPolicy/{Identifier}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$delete_configuration_policy_input(Identifier = Identifier)
  output <- .securityhub$delete_configuration_policy_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$delete_configuration_policy <- securityhub_delete_configuration_policy

#' Grants permission to delete a connectorV2
#'
#' @description
#' Grants permission to delete a connectorV2.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_delete_connector_v2/](https://www.paws-r-sdk.com/docs/securityhub_delete_connector_v2/) for full documentation.
#'
#' @param ConnectorId &#91;required&#93; The UUID of the connectorV2 to identify connectorV2 resource.
#'
#' @keywords internal
#'
#' @rdname securityhub_delete_connector_v2
securityhub_delete_connector_v2 <- function(ConnectorId) {
  op <- new_operation(
    name = "DeleteConnectorV2",
    http_method = "DELETE",
    http_path = "/connectorsv2/{ConnectorId+}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$delete_connector_v2_input(ConnectorId = ConnectorId)
  output <- .securityhub$delete_connector_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$delete_connector_v2 <- securityhub_delete_connector_v2

#' The aggregation Region is now called the home Region
#'
#' @description
#' The *aggregation Region* is now called the *home Region*.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_delete_finding_aggregator/](https://www.paws-r-sdk.com/docs/securityhub_delete_finding_aggregator/) for full documentation.
#'
#' @param FindingAggregatorArn &#91;required&#93; The ARN of the finding aggregator to delete. To obtain the ARN, use [`list_finding_aggregators`][securityhub_list_finding_aggregators].
#'
#' @keywords internal
#'
#' @rdname securityhub_delete_finding_aggregator
securityhub_delete_finding_aggregator <- function(FindingAggregatorArn) {
  op <- new_operation(
    name = "DeleteFindingAggregator",
    http_method = "DELETE",
    http_path = "/findingAggregator/delete/{FindingAggregatorArn+}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$delete_finding_aggregator_input(FindingAggregatorArn = FindingAggregatorArn)
  output <- .securityhub$delete_finding_aggregator_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$delete_finding_aggregator <- securityhub_delete_finding_aggregator

#' Deletes the insight specified by the InsightArn
#'
#' @description
#' Deletes the insight specified by the `InsightArn`.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_delete_insight/](https://www.paws-r-sdk.com/docs/securityhub_delete_insight/) for full documentation.
#'
#' @param InsightArn &#91;required&#93; The ARN of the insight to delete.
#'
#' @keywords internal
#'
#' @rdname securityhub_delete_insight
securityhub_delete_insight <- function(InsightArn) {
  op <- new_operation(
    name = "DeleteInsight",
    http_method = "DELETE",
    http_path = "/insights/{InsightArn+}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$delete_insight_input(InsightArn = InsightArn)
  output <- .securityhub$delete_insight_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$delete_insight <- securityhub_delete_insight

#' We recommend using Organizations instead of Security Hub CSPM
#' invitations to manage your member accounts
#'
#' @description
#' We recommend using Organizations instead of Security Hub CSPM invitations to manage your member accounts. For information, see [Managing Security Hub CSPM administrator and member accounts with Organizations](https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-accounts-orgs.html) in the *Security Hub CSPM User Guide*.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_delete_invitations/](https://www.paws-r-sdk.com/docs/securityhub_delete_invitations/) for full documentation.
#'
#' @param AccountIds &#91;required&#93; The list of member account IDs that received the invitations you want to delete.
#'
#' @keywords internal
#'
#' @rdname securityhub_delete_invitations
securityhub_delete_invitations <- function(AccountIds) {
  op <- new_operation(
    name = "DeleteInvitations",
    http_method = "POST",
    http_path = "/invitations/delete",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$delete_invitations_input(AccountIds = AccountIds)
  output <- .securityhub$delete_invitations_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$delete_invitations <- securityhub_delete_invitations

#' Deletes the specified member accounts from Security Hub CSPM
#'
#' @description
#' Deletes the specified member accounts from Security Hub CSPM.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_delete_members/](https://www.paws-r-sdk.com/docs/securityhub_delete_members/) for full documentation.
#'
#' @param AccountIds &#91;required&#93; The list of account IDs for the member accounts to delete.
#'
#' @keywords internal
#'
#' @rdname securityhub_delete_members
securityhub_delete_members <- function(AccountIds) {
  op <- new_operation(
    name = "DeleteMembers",
    http_method = "POST",
    http_path = "/members/delete",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$delete_members_input(AccountIds = AccountIds)
  output <- .securityhub$delete_members_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$delete_members <- securityhub_delete_members

#' Returns a list of the custom action targets in Security Hub CSPM in your
#' account
#'
#' @description
#' Returns a list of the custom action targets in Security Hub CSPM in your account.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_describe_action_targets/](https://www.paws-r-sdk.com/docs/securityhub_describe_action_targets/) for full documentation.
#'
#' @param ActionTargetArns A list of custom action target ARNs for the custom action targets to retrieve.
#' @param NextToken The token that is required for pagination. On your first call to the [`describe_action_targets`][securityhub_describe_action_targets] operation, set the value of this parameter to `NULL`.
#' 
#' For subsequent calls to the operation, to continue listing data, set the value of this parameter to the value returned from the previous response.
#' @param MaxResults The maximum number of results to return.
#'
#' @keywords internal
#'
#' @rdname securityhub_describe_action_targets
securityhub_describe_action_targets <- function(ActionTargetArns = NULL, NextToken = NULL, MaxResults = NULL) {
  op <- new_operation(
    name = "DescribeActionTargets",
    http_method = "POST",
    http_path = "/actionTargets/get",
    host_prefix = "",
    paginator = list(input_token = "NextToken", output_token = "NextToken", limit_key = "MaxResults", result_key = "ActionTargets"),
    stream_api = FALSE
  )
  input <- .securityhub$describe_action_targets_input(ActionTargetArns = ActionTargetArns, NextToken = NextToken, MaxResults = MaxResults)
  output <- .securityhub$describe_action_targets_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$describe_action_targets <- securityhub_describe_action_targets

#' Returns details about the Hub resource in your account, including the
#' HubArn and the time when you enabled Security Hub CSPM
#'
#' @description
#' Returns details about the Hub resource in your account, including the `HubArn` and the time when you enabled Security Hub CSPM.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_describe_hub/](https://www.paws-r-sdk.com/docs/securityhub_describe_hub/) for full documentation.
#'
#' @param HubArn The ARN of the Hub resource to retrieve.
#'
#' @keywords internal
#'
#' @rdname securityhub_describe_hub
securityhub_describe_hub <- function(HubArn = NULL) {
  op <- new_operation(
    name = "DescribeHub",
    http_method = "GET",
    http_path = "/accounts",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$describe_hub_input(HubArn = HubArn)
  output <- .securityhub$describe_hub_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$describe_hub <- securityhub_describe_hub

#' Returns information about the way your organization is configured in
#' Security Hub CSPM
#'
#' @description
#' Returns information about the way your organization is configured in Security Hub CSPM. Only the Security Hub CSPM administrator account can invoke this operation.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_describe_organization_configuration/](https://www.paws-r-sdk.com/docs/securityhub_describe_organization_configuration/) for full documentation.
#'

#'
#' @keywords internal
#'
#' @rdname securityhub_describe_organization_configuration
securityhub_describe_organization_configuration <- function() {
  op <- new_operation(
    name = "DescribeOrganizationConfiguration",
    http_method = "GET",
    http_path = "/organization/configuration",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$describe_organization_configuration_input()
  output <- .securityhub$describe_organization_configuration_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$describe_organization_configuration <- securityhub_describe_organization_configuration

#' Returns information about product integrations in Security Hub CSPM
#'
#' @description
#' Returns information about product integrations in Security Hub CSPM.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_describe_products/](https://www.paws-r-sdk.com/docs/securityhub_describe_products/) for full documentation.
#'
#' @param NextToken The token that is required for pagination. On your first call to the [`describe_products`][securityhub_describe_products] operation, set the value of this parameter to `NULL`.
#' 
#' For subsequent calls to the operation, to continue listing data, set the value of this parameter to the value returned from the previous response.
#' @param MaxResults The maximum number of results to return.
#' @param ProductArn The ARN of the integration to return.
#'
#' @keywords internal
#'
#' @rdname securityhub_describe_products
securityhub_describe_products <- function(NextToken = NULL, MaxResults = NULL, ProductArn = NULL) {
  op <- new_operation(
    name = "DescribeProducts",
    http_method = "GET",
    http_path = "/products",
    host_prefix = "",
    paginator = list(input_token = "NextToken", output_token = "NextToken", limit_key = "MaxResults", result_key = "Products"),
    stream_api = FALSE
  )
  input <- .securityhub$describe_products_input(NextToken = NextToken, MaxResults = MaxResults, ProductArn = ProductArn)
  output <- .securityhub$describe_products_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$describe_products <- securityhub_describe_products

#' Gets information about the product integration
#'
#' @description
#' Gets information about the product integration.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_describe_products_v2/](https://www.paws-r-sdk.com/docs/securityhub_describe_products_v2/) for full documentation.
#'
#' @param NextToken The token required for pagination. On your first call, set the value of this parameter to `NULL`. For subsequent calls, to continue listing data, set the value of this parameter to the value returned in the previous response.
#' @param MaxResults The maximum number of results to return.
#'
#' @keywords internal
#'
#' @rdname securityhub_describe_products_v2
securityhub_describe_products_v2 <- function(NextToken = NULL, MaxResults = NULL) {
  op <- new_operation(
    name = "DescribeProductsV2",
    http_method = "GET",
    http_path = "/productsV2",
    host_prefix = "",
    paginator = list(input_token = "NextToken", output_token = "NextToken", limit_key = "MaxResults", result_key = "ProductsV2"),
    stream_api = FALSE
  )
  input <- .securityhub$describe_products_v2_input(NextToken = NextToken, MaxResults = MaxResults)
  output <- .securityhub$describe_products_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$describe_products_v2 <- securityhub_describe_products_v2

#' Returns details about the service resource in your account
#'
#' @description
#' Returns details about the service resource in your account.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_describe_security_hub_v2/](https://www.paws-r-sdk.com/docs/securityhub_describe_security_hub_v2/) for full documentation.
#'

#'
#' @keywords internal
#'
#' @rdname securityhub_describe_security_hub_v2
securityhub_describe_security_hub_v2 <- function() {
  op <- new_operation(
    name = "DescribeSecurityHubV2",
    http_method = "GET",
    http_path = "/hubv2",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$describe_security_hub_v2_input()
  output <- .securityhub$describe_security_hub_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$describe_security_hub_v2 <- securityhub_describe_security_hub_v2

#' Returns a list of the available standards in Security Hub CSPM
#'
#' @description
#' Returns a list of the available standards in Security Hub CSPM.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_describe_standards/](https://www.paws-r-sdk.com/docs/securityhub_describe_standards/) for full documentation.
#'
#' @param NextToken The token that is required for pagination. On your first call to the [`describe_standards`][securityhub_describe_standards] operation, set the value of this parameter to `NULL`.
#' 
#' For subsequent calls to the operation, to continue listing data, set the value of this parameter to the value returned from the previous response.
#' @param MaxResults The maximum number of standards to return.
#'
#' @keywords internal
#'
#' @rdname securityhub_describe_standards
securityhub_describe_standards <- function(NextToken = NULL, MaxResults = NULL) {
  op <- new_operation(
    name = "DescribeStandards",
    http_method = "GET",
    http_path = "/standards",
    host_prefix = "",
    paginator = list(input_token = "NextToken", output_token = "NextToken", limit_key = "MaxResults", result_key = "Standards"),
    stream_api = FALSE
  )
  input <- .securityhub$describe_standards_input(NextToken = NextToken, MaxResults = MaxResults)
  output <- .securityhub$describe_standards_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$describe_standards <- securityhub_describe_standards

#' Returns a list of security standards controls
#'
#' @description
#' Returns a list of security standards controls.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_describe_standards_controls/](https://www.paws-r-sdk.com/docs/securityhub_describe_standards_controls/) for full documentation.
#'
#' @param StandardsSubscriptionArn &#91;required&#93; The ARN of a resource that represents your subscription to a supported standard. To get the subscription ARNs of the standards you have enabled, use the [`get_enabled_standards`][securityhub_get_enabled_standards] operation.
#' @param NextToken The token that is required for pagination. On your first call to the [`describe_standards_controls`][securityhub_describe_standards_controls] operation, set the value of this parameter to `NULL`.
#' 
#' For subsequent calls to the operation, to continue listing data, set the value of this parameter to the value returned from the previous response.
#' @param MaxResults The maximum number of security standard controls to return.
#'
#' @keywords internal
#'
#' @rdname securityhub_describe_standards_controls
securityhub_describe_standards_controls <- function(StandardsSubscriptionArn, NextToken = NULL, MaxResults = NULL) {
  op <- new_operation(
    name = "DescribeStandardsControls",
    http_method = "GET",
    http_path = "/standards/controls/{StandardsSubscriptionArn+}",
    host_prefix = "",
    paginator = list(input_token = "NextToken", output_token = "NextToken", limit_key = "MaxResults", result_key = "Controls"),
    stream_api = FALSE
  )
  input <- .securityhub$describe_standards_controls_input(StandardsSubscriptionArn = StandardsSubscriptionArn, NextToken = NextToken, MaxResults = MaxResults)
  output <- .securityhub$describe_standards_controls_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$describe_standards_controls <- securityhub_describe_standards_controls

#' Disables the integration of the specified product with Security Hub CSPM
#'
#' @description
#' Disables the integration of the specified product with Security Hub CSPM. After the integration is disabled, findings from that product are no longer sent to Security Hub CSPM.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_disable_import_findings_for_product/](https://www.paws-r-sdk.com/docs/securityhub_disable_import_findings_for_product/) for full documentation.
#'
#' @param ProductSubscriptionArn &#91;required&#93; The ARN of the integrated product to disable the integration for.
#'
#' @keywords internal
#'
#' @rdname securityhub_disable_import_findings_for_product
securityhub_disable_import_findings_for_product <- function(ProductSubscriptionArn) {
  op <- new_operation(
    name = "DisableImportFindingsForProduct",
    http_method = "DELETE",
    http_path = "/productSubscriptions/{ProductSubscriptionArn+}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$disable_import_findings_for_product_input(ProductSubscriptionArn = ProductSubscriptionArn)
  output <- .securityhub$disable_import_findings_for_product_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$disable_import_findings_for_product <- securityhub_disable_import_findings_for_product

#' Disables a Security Hub CSPM administrator account
#'
#' @description
#' Disables a Security Hub CSPM administrator account. Can only be called by the organization management account.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_disable_organization_admin_account/](https://www.paws-r-sdk.com/docs/securityhub_disable_organization_admin_account/) for full documentation.
#'
#' @param AdminAccountId &#91;required&#93; The Amazon Web Services account identifier of the Security Hub CSPM administrator account.
#' @param Feature The feature for which the delegated admin account is disabled. Defaults to Security Hub CSPM if not specified.
#'
#' @keywords internal
#'
#' @rdname securityhub_disable_organization_admin_account
securityhub_disable_organization_admin_account <- function(AdminAccountId, Feature = NULL) {
  op <- new_operation(
    name = "DisableOrganizationAdminAccount",
    http_method = "POST",
    http_path = "/organization/admin/disable",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$disable_organization_admin_account_input(AdminAccountId = AdminAccountId, Feature = Feature)
  output <- .securityhub$disable_organization_admin_account_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$disable_organization_admin_account <- securityhub_disable_organization_admin_account

#' Disables Security Hub CSPM in your account only in the current Amazon
#' Web Services Region
#'
#' @description
#' Disables Security Hub CSPM in your account only in the current Amazon Web Services Region. To disable Security Hub CSPM in all Regions, you must submit one request per Region where you have enabled Security Hub CSPM.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_disable_security_hub/](https://www.paws-r-sdk.com/docs/securityhub_disable_security_hub/) for full documentation.
#'

#'
#' @keywords internal
#'
#' @rdname securityhub_disable_security_hub
securityhub_disable_security_hub <- function() {
  op <- new_operation(
    name = "DisableSecurityHub",
    http_method = "DELETE",
    http_path = "/accounts",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$disable_security_hub_input()
  output <- .securityhub$disable_security_hub_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$disable_security_hub <- securityhub_disable_security_hub

#' Disable the service for the current Amazon Web Services Region or
#' specified Amazon Web Services Region
#'
#' @description
#' Disable the service for the current Amazon Web Services Region or specified Amazon Web Services Region.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_disable_security_hub_v2/](https://www.paws-r-sdk.com/docs/securityhub_disable_security_hub_v2/) for full documentation.
#'

#'
#' @keywords internal
#'
#' @rdname securityhub_disable_security_hub_v2
securityhub_disable_security_hub_v2 <- function() {
  op <- new_operation(
    name = "DisableSecurityHubV2",
    http_method = "DELETE",
    http_path = "/hubv2",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$disable_security_hub_v2_input()
  output <- .securityhub$disable_security_hub_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$disable_security_hub_v2 <- securityhub_disable_security_hub_v2

#' Disassociates the current Security Hub CSPM member account from the
#' associated administrator account
#'
#' @description
#' Disassociates the current Security Hub CSPM member account from the associated administrator account.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_disassociate_from_administrator_account/](https://www.paws-r-sdk.com/docs/securityhub_disassociate_from_administrator_account/) for full documentation.
#'

#'
#' @keywords internal
#'
#' @rdname securityhub_disassociate_from_administrator_account
securityhub_disassociate_from_administrator_account <- function() {
  op <- new_operation(
    name = "DisassociateFromAdministratorAccount",
    http_method = "POST",
    http_path = "/administrator/disassociate",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$disassociate_from_administrator_account_input()
  output <- .securityhub$disassociate_from_administrator_account_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$disassociate_from_administrator_account <- securityhub_disassociate_from_administrator_account

#' This method is deprecated
#'
#' @description
#' This method is deprecated. Instead, use [`disassociate_from_administrator_account`][securityhub_disassociate_from_administrator_account].
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_disassociate_from_master_account/](https://www.paws-r-sdk.com/docs/securityhub_disassociate_from_master_account/) for full documentation.
#'

#'
#' @keywords internal
#'
#' @rdname securityhub_disassociate_from_master_account
securityhub_disassociate_from_master_account <- function() {
  op <- new_operation(
    name = "DisassociateFromMasterAccount",
    http_method = "POST",
    http_path = "/master/disassociate",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$disassociate_from_master_account_input()
  output <- .securityhub$disassociate_from_master_account_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$disassociate_from_master_account <- securityhub_disassociate_from_master_account

#' Disassociates the specified member accounts from the associated
#' administrator account
#'
#' @description
#' Disassociates the specified member accounts from the associated administrator account.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_disassociate_members/](https://www.paws-r-sdk.com/docs/securityhub_disassociate_members/) for full documentation.
#'
#' @param AccountIds &#91;required&#93; The account IDs of the member accounts to disassociate from the administrator account.
#'
#' @keywords internal
#'
#' @rdname securityhub_disassociate_members
securityhub_disassociate_members <- function(AccountIds) {
  op <- new_operation(
    name = "DisassociateMembers",
    http_method = "POST",
    http_path = "/members/disassociate",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$disassociate_members_input(AccountIds = AccountIds)
  output <- .securityhub$disassociate_members_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$disassociate_members <- securityhub_disassociate_members

#' Enables the integration of a partner product with Security Hub CSPM
#'
#' @description
#' Enables the integration of a partner product with Security Hub CSPM. Integrated products send findings to Security Hub CSPM.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_enable_import_findings_for_product/](https://www.paws-r-sdk.com/docs/securityhub_enable_import_findings_for_product/) for full documentation.
#'
#' @param ProductArn &#91;required&#93; The ARN of the product to enable the integration for.
#'
#' @keywords internal
#'
#' @rdname securityhub_enable_import_findings_for_product
securityhub_enable_import_findings_for_product <- function(ProductArn) {
  op <- new_operation(
    name = "EnableImportFindingsForProduct",
    http_method = "POST",
    http_path = "/productSubscriptions",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$enable_import_findings_for_product_input(ProductArn = ProductArn)
  output <- .securityhub$enable_import_findings_for_product_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$enable_import_findings_for_product <- securityhub_enable_import_findings_for_product

#' Designates the Security Hub CSPM administrator account for an
#' organization
#'
#' @description
#' Designates the Security Hub CSPM administrator account for an organization. Can only be called by the organization management account.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_enable_organization_admin_account/](https://www.paws-r-sdk.com/docs/securityhub_enable_organization_admin_account/) for full documentation.
#'
#' @param AdminAccountId &#91;required&#93; The Amazon Web Services account identifier of the account to designate as the Security Hub CSPM administrator account.
#' @param Feature The feature for which the delegated admin account is enabled. Defaults to Security Hub CSPM if not specified.
#'
#' @keywords internal
#'
#' @rdname securityhub_enable_organization_admin_account
securityhub_enable_organization_admin_account <- function(AdminAccountId, Feature = NULL) {
  op <- new_operation(
    name = "EnableOrganizationAdminAccount",
    http_method = "POST",
    http_path = "/organization/admin/enable",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$enable_organization_admin_account_input(AdminAccountId = AdminAccountId, Feature = Feature)
  output <- .securityhub$enable_organization_admin_account_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$enable_organization_admin_account <- securityhub_enable_organization_admin_account

#' Enables Security Hub CSPM for your account in the current Region or the
#' Region you specify in the request
#'
#' @description
#' Enables Security Hub CSPM for your account in the current Region or the Region you specify in the request.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_enable_security_hub/](https://www.paws-r-sdk.com/docs/securityhub_enable_security_hub/) for full documentation.
#'
#' @param Tags The tags to add to the hub resource when you enable Security Hub CSPM.
#' @param EnableDefaultStandards Whether to enable the security standards that Security Hub CSPM has designated as automatically enabled. If you don't provide a value for `EnableDefaultStandards`, it is set to `true`. To not enable the automatically enabled standards, set `EnableDefaultStandards` to `false`.
#' @param ControlFindingGenerator This field, used when enabling Security Hub CSPM, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to `SECURITY_CONTROL`, Security Hub CSPM generates a single finding for a control check even when the check applies to multiple enabled standards.
#' 
#' If the value for this field is set to `STANDARD_CONTROL`, Security Hub CSPM generates separate findings for a control check when the check applies to multiple enabled standards.
#' 
#' The value for this field in a member account matches the value in the administrator account. For accounts that aren't part of an organization, the default value of this field is `SECURITY_CONTROL` if you enabled Security Hub CSPM on or after February 23, 2023.
#'
#' @keywords internal
#'
#' @rdname securityhub_enable_security_hub
securityhub_enable_security_hub <- function(Tags = NULL, EnableDefaultStandards = NULL, ControlFindingGenerator = NULL) {
  op <- new_operation(
    name = "EnableSecurityHub",
    http_method = "POST",
    http_path = "/accounts",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$enable_security_hub_input(Tags = Tags, EnableDefaultStandards = EnableDefaultStandards, ControlFindingGenerator = ControlFindingGenerator)
  output <- .securityhub$enable_security_hub_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$enable_security_hub <- securityhub_enable_security_hub

#' Enables the service in account for the current Amazon Web Services
#' Region or specified Amazon Web Services Region
#'
#' @description
#' Enables the service in account for the current Amazon Web Services Region or specified Amazon Web Services Region.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_enable_security_hub_v2/](https://www.paws-r-sdk.com/docs/securityhub_enable_security_hub_v2/) for full documentation.
#'
#' @param Tags The tags to add to the hub V2 resource when you enable Security Hub.
#'
#' @keywords internal
#'
#' @rdname securityhub_enable_security_hub_v2
securityhub_enable_security_hub_v2 <- function(Tags = NULL) {
  op <- new_operation(
    name = "EnableSecurityHubV2",
    http_method = "POST",
    http_path = "/hubv2",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$enable_security_hub_v2_input(Tags = Tags)
  output <- .securityhub$enable_security_hub_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$enable_security_hub_v2 <- securityhub_enable_security_hub_v2

#' Begins the recommended policy generation to remediate a Security Hub
#' finding
#'
#' @description
#' Begins the recommended policy generation to remediate a Security Hub finding. [`generate_recommended_policy_v2`][securityhub_generate_recommended_policy_v2] only supports findings for unused permissions.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_generate_recommended_policy_v2/](https://www.paws-r-sdk.com/docs/securityhub_generate_recommended_policy_v2/) for full documentation.
#'
#' @param MetadataUid &#91;required&#93; The unique identifier (ID) of Security Hub OCSF findings found under the `metadata.uid` field of the finding.
#'
#' @keywords internal
#'
#' @rdname securityhub_generate_recommended_policy_v2
securityhub_generate_recommended_policy_v2 <- function(MetadataUid) {
  op <- new_operation(
    name = "GenerateRecommendedPolicyV2",
    http_method = "POST",
    http_path = "/recommendedPolicyV2/{MetadataUid}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$generate_recommended_policy_v2_input(MetadataUid = MetadataUid)
  output <- .securityhub$generate_recommended_policy_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$generate_recommended_policy_v2 <- securityhub_generate_recommended_policy_v2

#' Provides the details for the Security Hub CSPM administrator account for
#' the current member account
#'
#' @description
#' Provides the details for the Security Hub CSPM administrator account for the current member account.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_get_administrator_account/](https://www.paws-r-sdk.com/docs/securityhub_get_administrator_account/) for full documentation.
#'

#'
#' @keywords internal
#'
#' @rdname securityhub_get_administrator_account
securityhub_get_administrator_account <- function() {
  op <- new_operation(
    name = "GetAdministratorAccount",
    http_method = "GET",
    http_path = "/administrator",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$get_administrator_account_input()
  output <- .securityhub$get_administrator_account_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$get_administrator_account <- securityhub_get_administrator_account

#' Returns the configuration of the specified Aggregator V2
#'
#' @description
#' Returns the configuration of the specified Aggregator V2.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_get_aggregator_v2/](https://www.paws-r-sdk.com/docs/securityhub_get_aggregator_v2/) for full documentation.
#'
#' @param AggregatorV2Arn &#91;required&#93; The ARN of the Aggregator V2.
#'
#' @keywords internal
#'
#' @rdname securityhub_get_aggregator_v2
securityhub_get_aggregator_v2 <- function(AggregatorV2Arn) {
  op <- new_operation(
    name = "GetAggregatorV2",
    http_method = "GET",
    http_path = "/aggregatorv2/get/{AggregatorV2Arn+}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$get_aggregator_v2_input(AggregatorV2Arn = AggregatorV2Arn)
  output <- .securityhub$get_aggregator_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$get_aggregator_v2 <- securityhub_get_aggregator_v2

#' Returns an automation rule for the V2 service
#'
#' @description
#' Returns an automation rule for the V2 service.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_get_automation_rule_v2/](https://www.paws-r-sdk.com/docs/securityhub_get_automation_rule_v2/) for full documentation.
#'
#' @param Identifier &#91;required&#93; The ARN of the V2 automation rule.
#'
#' @keywords internal
#'
#' @rdname securityhub_get_automation_rule_v2
securityhub_get_automation_rule_v2 <- function(Identifier) {
  op <- new_operation(
    name = "GetAutomationRuleV2",
    http_method = "GET",
    http_path = "/automationrulesv2/{Identifier}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$get_automation_rule_v2_input(Identifier = Identifier)
  output <- .securityhub$get_automation_rule_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$get_automation_rule_v2 <- securityhub_get_automation_rule_v2

#' Provides information about a configuration policy
#'
#' @description
#' Provides information about a configuration policy. Only the Security Hub CSPM delegated administrator can invoke this operation from the home Region.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_get_configuration_policy/](https://www.paws-r-sdk.com/docs/securityhub_get_configuration_policy/) for full documentation.
#'
#' @param Identifier &#91;required&#93; The Amazon Resource Name (ARN) or universally unique identifier (UUID) of the configuration policy.
#'
#' @keywords internal
#'
#' @rdname securityhub_get_configuration_policy
securityhub_get_configuration_policy <- function(Identifier) {
  op <- new_operation(
    name = "GetConfigurationPolicy",
    http_method = "GET",
    http_path = "/configurationPolicy/get/{Identifier}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$get_configuration_policy_input(Identifier = Identifier)
  output <- .securityhub$get_configuration_policy_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$get_configuration_policy <- securityhub_get_configuration_policy

#' Returns the association between a configuration and a target account,
#' organizational unit, or the root
#'
#' @description
#' Returns the association between a configuration and a target account, organizational unit, or the root. The configuration can be a configuration policy or self-managed behavior. Only the Security Hub CSPM delegated administrator can invoke this operation from the home Region.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_get_configuration_policy_association/](https://www.paws-r-sdk.com/docs/securityhub_get_configuration_policy_association/) for full documentation.
#'
#' @param Target &#91;required&#93; The target account ID, organizational unit ID, or the root ID to retrieve the association for.
#'
#' @keywords internal
#'
#' @rdname securityhub_get_configuration_policy_association
securityhub_get_configuration_policy_association <- function(Target) {
  op <- new_operation(
    name = "GetConfigurationPolicyAssociation",
    http_method = "POST",
    http_path = "/configurationPolicyAssociation/get",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$get_configuration_policy_association_input(Target = Target)
  output <- .securityhub$get_configuration_policy_association_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$get_configuration_policy_association <- securityhub_get_configuration_policy_association

#' Grants permission to retrieve details for a connectorV2 based on
#' connector id
#'
#' @description
#' Grants permission to retrieve details for a connectorV2 based on connector id.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_get_connector_v2/](https://www.paws-r-sdk.com/docs/securityhub_get_connector_v2/) for full documentation.
#'
#' @param ConnectorId &#91;required&#93; The UUID of the connectorV2 to identify connectorV2 resource.
#'
#' @keywords internal
#'
#' @rdname securityhub_get_connector_v2
securityhub_get_connector_v2 <- function(ConnectorId) {
  op <- new_operation(
    name = "GetConnectorV2",
    http_method = "GET",
    http_path = "/connectorsv2/{ConnectorId+}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$get_connector_v2_input(ConnectorId = ConnectorId)
  output <- .securityhub$get_connector_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$get_connector_v2 <- securityhub_get_connector_v2

#' Returns a list of the standards that are currently enabled
#'
#' @description
#' Returns a list of the standards that are currently enabled.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_get_enabled_standards/](https://www.paws-r-sdk.com/docs/securityhub_get_enabled_standards/) for full documentation.
#'
#' @param StandardsSubscriptionArns The list of the standards subscription ARNs for the standards to retrieve.
#' @param NextToken The token that is required for pagination. On your first call to the [`get_enabled_standards`][securityhub_get_enabled_standards] operation, set the value of this parameter to `NULL`.
#' 
#' For subsequent calls to the operation, to continue listing data, set the value of this parameter to the value returned from the previous response.
#' @param MaxResults The maximum number of results to return in the response.
#'
#' @keywords internal
#'
#' @rdname securityhub_get_enabled_standards
securityhub_get_enabled_standards <- function(StandardsSubscriptionArns = NULL, NextToken = NULL, MaxResults = NULL) {
  op <- new_operation(
    name = "GetEnabledStandards",
    http_method = "POST",
    http_path = "/standards/get",
    host_prefix = "",
    paginator = list(input_token = "NextToken", limit_key = "MaxResults", output_token = "NextToken", result_key = "StandardsSubscriptions"),
    stream_api = FALSE
  )
  input <- .securityhub$get_enabled_standards_input(StandardsSubscriptionArns = StandardsSubscriptionArns, NextToken = NextToken, MaxResults = MaxResults)
  output <- .securityhub$get_enabled_standards_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$get_enabled_standards <- securityhub_get_enabled_standards

#' The aggregation Region is now called the home Region
#'
#' @description
#' The *aggregation Region* is now called the *home Region*.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_get_finding_aggregator/](https://www.paws-r-sdk.com/docs/securityhub_get_finding_aggregator/) for full documentation.
#'
#' @param FindingAggregatorArn &#91;required&#93; The ARN of the finding aggregator to return details for. To obtain the ARN, use [`list_finding_aggregators`][securityhub_list_finding_aggregators].
#'
#' @keywords internal
#'
#' @rdname securityhub_get_finding_aggregator
securityhub_get_finding_aggregator <- function(FindingAggregatorArn) {
  op <- new_operation(
    name = "GetFindingAggregator",
    http_method = "GET",
    http_path = "/findingAggregator/get/{FindingAggregatorArn+}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$get_finding_aggregator_input(FindingAggregatorArn = FindingAggregatorArn)
  output <- .securityhub$get_finding_aggregator_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$get_finding_aggregator <- securityhub_get_finding_aggregator

#' Returns the history of a Security Hub CSPM finding
#'
#' @description
#' Returns the history of a Security Hub CSPM finding. The history includes changes made to any fields in the Amazon Web Services Security Finding Format (ASFF) except top-level timestamp fields, such as the `CreatedAt` and `UpdatedAt` fields.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_get_finding_history/](https://www.paws-r-sdk.com/docs/securityhub_get_finding_history/) for full documentation.
#'
#' @param FindingIdentifier &#91;required&#93; Identifies which finding to get the finding history for.
#' @param StartTime A timestamp that indicates the start time of the requested finding history.
#' 
#' If you provide values for both `StartTime` and `EndTime`, Security Hub CSPM returns finding history for the specified time period. If you provide a value for `StartTime` but not for `EndTime`, Security Hub CSPM returns finding history from the `StartTime` to the time at which the API is called. If you provide a value for `EndTime` but not for `StartTime`, Security Hub CSPM returns finding history from the [CreatedAt](https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_AwsSecurityFindingFilters.html#securityhub-Type-AwsSecurityFindingFilters-CreatedAt) timestamp of the finding to the `EndTime`. If you provide neither `StartTime` nor `EndTime`, Security Hub CSPM returns finding history from the `CreatedAt` timestamp of the finding to the time at which the API is called. In all of these scenarios, the response is limited to 100 results.
#' 
#' For more information about the validation and formatting of timestamp fields in Security Hub CSPM, see [Timestamps](https://docs.aws.amazon.com/securityhub/1.0/APIReference/Welcome.html#timestamps).
#' @param EndTime An ISO 8601-formatted timestamp that indicates the end time of the requested finding history.
#' 
#' If you provide values for both `StartTime` and `EndTime`, Security Hub CSPM returns finding history for the specified time period. If you provide a value for `StartTime` but not for `EndTime`, Security Hub CSPM returns finding history from the `StartTime` to the time at which the API is called. If you provide a value for `EndTime` but not for `StartTime`, Security Hub CSPM returns finding history from the [CreatedAt](https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_AwsSecurityFindingFilters.html#securityhub-Type-AwsSecurityFindingFilters-CreatedAt) timestamp of the finding to the `EndTime`. If you provide neither `StartTime` nor `EndTime`, Security Hub CSPM returns finding history from the `CreatedAt` timestamp of the finding to the time at which the API is called. In all of these scenarios, the response is limited to 100 results.
#' 
#' For more information about the validation and formatting of timestamp fields in Security Hub CSPM, see [Timestamps](https://docs.aws.amazon.com/securityhub/1.0/APIReference/Welcome.html#timestamps).
#' @param NextToken A token for pagination purposes. Provide `NULL` as the initial value. In subsequent requests, provide the token included in the response to get up to an additional 100 results of finding history. If you don’t provide `NextToken`, Security Hub CSPM returns up to 100 results of finding history for each request.
#' @param MaxResults The maximum number of results to be returned. If you don’t provide it, Security Hub CSPM returns up to 100 results of finding history.
#'
#' @keywords internal
#'
#' @rdname securityhub_get_finding_history
securityhub_get_finding_history <- function(FindingIdentifier, StartTime = NULL, EndTime = NULL, NextToken = NULL, MaxResults = NULL) {
  op <- new_operation(
    name = "GetFindingHistory",
    http_method = "POST",
    http_path = "/findingHistory/get",
    host_prefix = "",
    paginator = list(input_token = "NextToken", output_token = "NextToken", limit_key = "MaxResults", result_key = "Records"),
    stream_api = FALSE
  )
  input <- .securityhub$get_finding_history_input(FindingIdentifier = FindingIdentifier, StartTime = StartTime, EndTime = EndTime, NextToken = NextToken, MaxResults = MaxResults)
  output <- .securityhub$get_finding_history_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$get_finding_history <- securityhub_get_finding_history

#' Returns aggregated statistical data about findings
#'
#' @description
#' Returns aggregated statistical data about findings.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_get_finding_statistics_v2/](https://www.paws-r-sdk.com/docs/securityhub_get_finding_statistics_v2/) for full documentation.
#'
#' @param GroupByRules &#91;required&#93; Specifies how security findings should be aggregated and organized in the statistical analysis. It can accept up to 5 `groupBy` fields in a single call.
#' @param Scopes Limits the results to findings from specific organizational units or from the delegated administrator's organization. Only the delegated administrator account can use this parameter. Other accounts receive an `AccessDeniedException`.
#' 
#' This parameter is optional. If you omit it, the delegated administrator sees statistics from all accounts across the entire organization. Other accounts see only statistics for their own findings.
#' 
#' You can specify up to 10 entries in `Scopes.AwsOrganizations`. If multiple entries are specified, the entries are combined using OR logic.
#' @param SortOrder Orders the aggregation count in descending or ascending order. Descending order is the default.
#' @param MaxStatisticResults The maximum number of results to be returned.
#'
#' @keywords internal
#'
#' @rdname securityhub_get_finding_statistics_v2
securityhub_get_finding_statistics_v2 <- function(GroupByRules, Scopes = NULL, SortOrder = NULL, MaxStatisticResults = NULL) {
  op <- new_operation(
    name = "GetFindingStatisticsV2",
    http_method = "POST",
    http_path = "/findingsv2/statistics",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$get_finding_statistics_v2_input(GroupByRules = GroupByRules, Scopes = Scopes, SortOrder = SortOrder, MaxStatisticResults = MaxStatisticResults)
  output <- .securityhub$get_finding_statistics_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$get_finding_statistics_v2 <- securityhub_get_finding_statistics_v2

#' Returns a list of findings that match the specified criteria
#'
#' @description
#' Returns a list of findings that match the specified criteria.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_get_findings/](https://www.paws-r-sdk.com/docs/securityhub_get_findings/) for full documentation.
#'
#' @param Filters The finding attributes used to define a condition to filter the returned findings.
#' 
#' You can filter by up to 10 finding attributes. For each attribute, you can provide up to 20 filter values.
#' 
#' Note that in the available filter fields, `WorkflowState` is deprecated. To search for a finding based on its workflow status, use `WorkflowStatus`.
#' @param SortCriteria The finding attributes used to sort the list of returned findings.
#' @param NextToken The token that is required for pagination. On your first call to the [`get_findings`][securityhub_get_findings] operation, set the value of this parameter to `NULL`.
#' 
#' For subsequent calls to the operation, to continue listing data, set the value of this parameter to the value returned from the previous response.
#' @param MaxResults The maximum number of findings to return.
#'
#' @keywords internal
#'
#' @rdname securityhub_get_findings
securityhub_get_findings <- function(Filters = NULL, SortCriteria = NULL, NextToken = NULL, MaxResults = NULL) {
  op <- new_operation(
    name = "GetFindings",
    http_method = "POST",
    http_path = "/findings",
    host_prefix = "",
    paginator = list(input_token = "NextToken", limit_key = "MaxResults", output_token = "NextToken", result_key = "Findings"),
    stream_api = FALSE
  )
  input <- .securityhub$get_findings_input(Filters = Filters, SortCriteria = SortCriteria, NextToken = NextToken, MaxResults = MaxResults)
  output <- .securityhub$get_findings_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$get_findings <- securityhub_get_findings

#' Returns findings trend data based on the specified criteria
#'
#' @description
#' Returns findings trend data based on the specified criteria. This operation helps you analyze patterns and changes in findings over time.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_get_findings_trends_v2/](https://www.paws-r-sdk.com/docs/securityhub_get_findings_trends_v2/) for full documentation.
#'
#' @param Filters The filters to apply to the findings trend data.
#' @param StartTime &#91;required&#93; The starting timestamp for the time period to analyze findings trends, in ISO 8601 format.
#' @param EndTime &#91;required&#93; The ending timestamp for the time period to analyze findings trends, in ISO 8601 format.
#' @param NextToken The token to use for paginating results. This value is returned in the response if more results are available.
#' @param MaxResults The maximum number of trend data points to return in a single response.
#'
#' @keywords internal
#'
#' @rdname securityhub_get_findings_trends_v2
securityhub_get_findings_trends_v2 <- function(Filters = NULL, StartTime, EndTime, NextToken = NULL, MaxResults = NULL) {
  op <- new_operation(
    name = "GetFindingsTrendsV2",
    http_method = "POST",
    http_path = "/findingsTrendsv2",
    host_prefix = "",
    paginator = list(input_token = "NextToken", output_token = "NextToken", limit_key = "MaxResults", result_key = "TrendsMetrics"),
    stream_api = FALSE
  )
  input <- .securityhub$get_findings_trends_v2_input(Filters = Filters, StartTime = StartTime, EndTime = EndTime, NextToken = NextToken, MaxResults = MaxResults)
  output <- .securityhub$get_findings_trends_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$get_findings_trends_v2 <- securityhub_get_findings_trends_v2

#' Returns a list of findings that match the specified criteria
#'
#' @description
#' Returns a list of findings that match the specified criteria.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_get_findings_v2/](https://www.paws-r-sdk.com/docs/securityhub_get_findings_v2/) for full documentation.
#'
#' @param Filters The finding attributes used to define a condition to filter the returned OCSF findings. You can filter up to 10 composite filters. For each filter type inside of a composite filter, you can provide up to 20 filters.
#' @param Scopes Limits the results to findings from specific organizational units or from the delegated administrator's organization. Only the delegated administrator account can use this parameter. Other accounts receive an `AccessDeniedException`.
#' 
#' This parameter is optional. If you omit it, the delegated administrator sees findings from all accounts across the entire organization. Other accounts see only their own findings.
#' 
#' You can specify up to 10 entries in `Scopes.AwsOrganizations`. If multiple entries are specified, the entries are combined using OR logic.
#' @param SortCriteria The finding attributes used to sort the list of returned findings.
#' @param NextToken The token required for pagination. On your first call, set the value of this parameter to `NULL`. For subsequent calls, to continue listing data, set the value of this parameter to the value returned in the previous response.
#' @param MaxResults The maximum number of results to return.
#'
#' @keywords internal
#'
#' @rdname securityhub_get_findings_v2
securityhub_get_findings_v2 <- function(Filters = NULL, Scopes = NULL, SortCriteria = NULL, NextToken = NULL, MaxResults = NULL) {
  op <- new_operation(
    name = "GetFindingsV2",
    http_method = "POST",
    http_path = "/findingsv2",
    host_prefix = "",
    paginator = list(input_token = "NextToken", output_token = "NextToken", limit_key = "MaxResults", result_key = "Findings"),
    stream_api = FALSE
  )
  input <- .securityhub$get_findings_v2_input(Filters = Filters, Scopes = Scopes, SortCriteria = SortCriteria, NextToken = NextToken, MaxResults = MaxResults)
  output <- .securityhub$get_findings_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$get_findings_v2 <- securityhub_get_findings_v2

#' Lists the results of the Security Hub CSPM insight specified by the
#' insight ARN
#'
#' @description
#' Lists the results of the Security Hub CSPM insight specified by the insight ARN.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_get_insight_results/](https://www.paws-r-sdk.com/docs/securityhub_get_insight_results/) for full documentation.
#'
#' @param InsightArn &#91;required&#93; The ARN of the insight for which to return results.
#'
#' @keywords internal
#'
#' @rdname securityhub_get_insight_results
securityhub_get_insight_results <- function(InsightArn) {
  op <- new_operation(
    name = "GetInsightResults",
    http_method = "GET",
    http_path = "/insights/results/{InsightArn+}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$get_insight_results_input(InsightArn = InsightArn)
  output <- .securityhub$get_insight_results_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$get_insight_results <- securityhub_get_insight_results

#' Lists and describes insights for the specified insight ARNs
#'
#' @description
#' Lists and describes insights for the specified insight ARNs.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_get_insights/](https://www.paws-r-sdk.com/docs/securityhub_get_insights/) for full documentation.
#'
#' @param InsightArns The ARNs of the insights to describe. If you don't provide any insight ARNs, then [`get_insights`][securityhub_get_insights] returns all of your custom insights. It does not return any managed insights.
#' @param NextToken The token that is required for pagination. On your first call to the [`get_insights`][securityhub_get_insights] operation, set the value of this parameter to `NULL`.
#' 
#' For subsequent calls to the operation, to continue listing data, set the value of this parameter to the value returned from the previous response.
#' @param MaxResults The maximum number of items to return in the response.
#'
#' @keywords internal
#'
#' @rdname securityhub_get_insights
securityhub_get_insights <- function(InsightArns = NULL, NextToken = NULL, MaxResults = NULL) {
  op <- new_operation(
    name = "GetInsights",
    http_method = "POST",
    http_path = "/insights/get",
    host_prefix = "",
    paginator = list(input_token = "NextToken", limit_key = "MaxResults", output_token = "NextToken", result_key = "Insights"),
    stream_api = FALSE
  )
  input <- .securityhub$get_insights_input(InsightArns = InsightArns, NextToken = NextToken, MaxResults = MaxResults)
  output <- .securityhub$get_insights_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$get_insights <- securityhub_get_insights

#' We recommend using Organizations instead of Security Hub CSPM
#' invitations to manage your member accounts
#'
#' @description
#' We recommend using Organizations instead of Security Hub CSPM invitations to manage your member accounts. For information, see [Managing Security Hub CSPM administrator and member accounts with Organizations](https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-accounts-orgs.html) in the *Security Hub CSPM User Guide*.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_get_invitations_count/](https://www.paws-r-sdk.com/docs/securityhub_get_invitations_count/) for full documentation.
#'

#'
#' @keywords internal
#'
#' @rdname securityhub_get_invitations_count
securityhub_get_invitations_count <- function() {
  op <- new_operation(
    name = "GetInvitationsCount",
    http_method = "GET",
    http_path = "/invitations/count",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$get_invitations_count_input()
  output <- .securityhub$get_invitations_count_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$get_invitations_count <- securityhub_get_invitations_count

#' This method is deprecated
#'
#' @description
#' This method is deprecated. Instead, use [`get_administrator_account`][securityhub_get_administrator_account].
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_get_master_account/](https://www.paws-r-sdk.com/docs/securityhub_get_master_account/) for full documentation.
#'

#'
#' @keywords internal
#'
#' @rdname securityhub_get_master_account
securityhub_get_master_account <- function() {
  op <- new_operation(
    name = "GetMasterAccount",
    http_method = "GET",
    http_path = "/master",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$get_master_account_input()
  output <- .securityhub$get_master_account_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$get_master_account <- securityhub_get_master_account

#' Returns the details for the Security Hub CSPM member accounts for the
#' specified account IDs
#'
#' @description
#' Returns the details for the Security Hub CSPM member accounts for the specified account IDs.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_get_members/](https://www.paws-r-sdk.com/docs/securityhub_get_members/) for full documentation.
#'
#' @param AccountIds &#91;required&#93; The list of account IDs for the Security Hub CSPM member accounts to return the details for.
#'
#' @keywords internal
#'
#' @rdname securityhub_get_members
securityhub_get_members <- function(AccountIds) {
  op <- new_operation(
    name = "GetMembers",
    http_method = "POST",
    http_path = "/members/get",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$get_members_input(AccountIds = AccountIds)
  output <- .securityhub$get_members_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$get_members <- securityhub_get_members

#' Retrieves the recommended policy to remediate a Security Hub finding
#'
#' @description
#' Retrieves the recommended policy to remediate a Security Hub finding. [`get_recommended_policy_v2`][securityhub_get_recommended_policy_v2] only supports findings for unused permissions.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_get_recommended_policy_v2/](https://www.paws-r-sdk.com/docs/securityhub_get_recommended_policy_v2/) for full documentation.
#'
#' @param MetadataUid &#91;required&#93; The unique identifier (ID) of Security Hub OCSF findings found under the `metadata.uid` field of the finding.
#' @param NextToken The token used to paginate the `RecommendationSteps` list returned. On your first call to [`get_recommended_policy_v2`][securityhub_get_recommended_policy_v2], omit this parameter or set it to `NULL`. For subsequent calls, use the `NextToken` value returned in the previous response to retrieve the next page of results.
#' @param MaxResults The maximum number of recommendation steps to return.
#'
#' @keywords internal
#'
#' @rdname securityhub_get_recommended_policy_v2
securityhub_get_recommended_policy_v2 <- function(MetadataUid, NextToken = NULL, MaxResults = NULL) {
  op <- new_operation(
    name = "GetRecommendedPolicyV2",
    http_method = "GET",
    http_path = "/recommendedPolicyV2/{MetadataUid}",
    host_prefix = "",
    paginator = list(input_token = "NextToken", output_token = "NextToken", limit_key = "MaxResults", result_key = "RecommendationSteps"),
    stream_api = FALSE
  )
  input <- .securityhub$get_recommended_policy_v2_input(MetadataUid = MetadataUid, NextToken = NextToken, MaxResults = MaxResults)
  output <- .securityhub$get_recommended_policy_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$get_recommended_policy_v2 <- securityhub_get_recommended_policy_v2

#' Retrieves statistical information about Amazon Web Services resources
#' and their associated security findings
#'
#' @description
#' Retrieves statistical information about Amazon Web Services resources and their associated security findings.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_get_resources_statistics_v2/](https://www.paws-r-sdk.com/docs/securityhub_get_resources_statistics_v2/) for full documentation.
#'
#' @param GroupByRules &#91;required&#93; How resource statistics should be aggregated and organized in the response.
#' @param Scopes Limits the results to resources from specific organizational units or from the delegated administrator's organization. Only the delegated administrator account can use this parameter. Other accounts receive an `AccessDeniedException`.
#' 
#' This parameter is optional. If you omit it, the delegated administrator sees statistics from all accounts across the entire organization. Other accounts see only statistics for their own resources.
#' 
#' You can specify up to 10 entries in `Scopes.AwsOrganizations`. If multiple entries are specified, the entries are combined using OR logic.
#' @param SortOrder Sorts aggregated statistics.
#' @param MaxStatisticResults The maximum number of results to be returned.
#'
#' @keywords internal
#'
#' @rdname securityhub_get_resources_statistics_v2
securityhub_get_resources_statistics_v2 <- function(GroupByRules, Scopes = NULL, SortOrder = NULL, MaxStatisticResults = NULL) {
  op <- new_operation(
    name = "GetResourcesStatisticsV2",
    http_method = "POST",
    http_path = "/resourcesv2/statistics",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$get_resources_statistics_v2_input(GroupByRules = GroupByRules, Scopes = Scopes, SortOrder = SortOrder, MaxStatisticResults = MaxStatisticResults)
  output <- .securityhub$get_resources_statistics_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$get_resources_statistics_v2 <- securityhub_get_resources_statistics_v2

#' Returns resource trend data based on the specified criteria
#'
#' @description
#' Returns resource trend data based on the specified criteria. This operation helps you analyze patterns and changes in resource compliance over time.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_get_resources_trends_v2/](https://www.paws-r-sdk.com/docs/securityhub_get_resources_trends_v2/) for full documentation.
#'
#' @param Filters The filters to apply to the resources trend data.
#' @param StartTime &#91;required&#93; The starting timestamp for the time period to analyze resources trends, in ISO 8601 format.
#' @param EndTime &#91;required&#93; The ending timestamp for the time period to analyze resources trends, in ISO 8601 format.
#' @param NextToken The token to use for paginating results. This value is returned in the response if more results are available.
#' @param MaxResults The maximum number of trend data points to return in a single response.
#'
#' @keywords internal
#'
#' @rdname securityhub_get_resources_trends_v2
securityhub_get_resources_trends_v2 <- function(Filters = NULL, StartTime, EndTime, NextToken = NULL, MaxResults = NULL) {
  op <- new_operation(
    name = "GetResourcesTrendsV2",
    http_method = "POST",
    http_path = "/resourcesTrendsv2",
    host_prefix = "",
    paginator = list(input_token = "NextToken", output_token = "NextToken", limit_key = "MaxResults", result_key = "TrendsMetrics"),
    stream_api = FALSE
  )
  input <- .securityhub$get_resources_trends_v2_input(Filters = Filters, StartTime = StartTime, EndTime = EndTime, NextToken = NextToken, MaxResults = MaxResults)
  output <- .securityhub$get_resources_trends_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$get_resources_trends_v2 <- securityhub_get_resources_trends_v2

#' Returns a list of resources
#'
#' @description
#' Returns a list of resources.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_get_resources_v2/](https://www.paws-r-sdk.com/docs/securityhub_get_resources_v2/) for full documentation.
#'
#' @param Filters Filters resources based on a set of criteria.
#' @param Scopes Limits the results to resources from specific organizational units or from the delegated administrator's organization. Only the delegated administrator account can use this parameter. Other accounts receive an `AccessDeniedException`.
#' 
#' This parameter is optional. If you omit it, the delegated administrator sees resources from all accounts across the entire organization. Other accounts see only their own resources.
#' 
#' You can specify up to 10 entries in `Scopes.AwsOrganizations`. If multiple entries are specified, the entries are combined using OR logic.
#' @param SortCriteria The resource attributes used to sort the list of returned resources.
#' @param NextToken The token required for pagination. On your first call, set the value of this parameter to `NULL`. For subsequent calls, to continue listing data, set the value of this parameter to the value returned in the previous response.
#' @param MaxResults The maximum number of results to return.
#'
#' @keywords internal
#'
#' @rdname securityhub_get_resources_v2
securityhub_get_resources_v2 <- function(Filters = NULL, Scopes = NULL, SortCriteria = NULL, NextToken = NULL, MaxResults = NULL) {
  op <- new_operation(
    name = "GetResourcesV2",
    http_method = "POST",
    http_path = "/resourcesv2",
    host_prefix = "",
    paginator = list(input_token = "NextToken", output_token = "NextToken", limit_key = "MaxResults", result_key = "Resources"),
    stream_api = FALSE
  )
  input <- .securityhub$get_resources_v2_input(Filters = Filters, Scopes = Scopes, SortCriteria = SortCriteria, NextToken = NextToken, MaxResults = MaxResults)
  output <- .securityhub$get_resources_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$get_resources_v2 <- securityhub_get_resources_v2

#' Retrieves the definition of a security control
#'
#' @description
#' Retrieves the definition of a security control. The definition includes the control title, description, Region availability, parameter definitions, and other details.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_get_security_control_definition/](https://www.paws-r-sdk.com/docs/securityhub_get_security_control_definition/) for full documentation.
#'
#' @param SecurityControlId &#91;required&#93; The ID of the security control to retrieve the definition for. This field doesn’t accept an Amazon Resource Name (ARN).
#'
#' @keywords internal
#'
#' @rdname securityhub_get_security_control_definition
securityhub_get_security_control_definition <- function(SecurityControlId) {
  op <- new_operation(
    name = "GetSecurityControlDefinition",
    http_method = "GET",
    http_path = "/securityControl/definition",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$get_security_control_definition_input(SecurityControlId = SecurityControlId)
  output <- .securityhub$get_security_control_definition_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$get_security_control_definition <- securityhub_get_security_control_definition

#' We recommend using Organizations instead of Security Hub CSPM
#' invitations to manage your member accounts
#'
#' @description
#' We recommend using Organizations instead of Security Hub CSPM invitations to manage your member accounts. For information, see [Managing Security Hub CSPM administrator and member accounts with Organizations](https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-accounts-orgs.html) in the *Security Hub CSPM User Guide*.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_invite_members/](https://www.paws-r-sdk.com/docs/securityhub_invite_members/) for full documentation.
#'
#' @param AccountIds &#91;required&#93; The list of account IDs of the Amazon Web Services accounts to invite to Security Hub CSPM as members.
#'
#' @keywords internal
#'
#' @rdname securityhub_invite_members
securityhub_invite_members <- function(AccountIds) {
  op <- new_operation(
    name = "InviteMembers",
    http_method = "POST",
    http_path = "/members/invite",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$invite_members_input(AccountIds = AccountIds)
  output <- .securityhub$invite_members_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$invite_members <- securityhub_invite_members

#' Retrieves a list of V2 aggregators
#'
#' @description
#' Retrieves a list of V2 aggregators.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_list_aggregators_v2/](https://www.paws-r-sdk.com/docs/securityhub_list_aggregators_v2/) for full documentation.
#'
#' @param NextToken The token required for pagination. On your first call, set the value of this parameter to `NULL`. For subsequent calls, to continue listing data, set the value of this parameter to the value returned in the previous response.
#' @param MaxResults The maximum number of results to return.
#'
#' @keywords internal
#'
#' @rdname securityhub_list_aggregators_v2
securityhub_list_aggregators_v2 <- function(NextToken = NULL, MaxResults = NULL) {
  op <- new_operation(
    name = "ListAggregatorsV2",
    http_method = "GET",
    http_path = "/aggregatorv2/list",
    host_prefix = "",
    paginator = list(input_token = "NextToken", output_token = "NextToken", limit_key = "MaxResults", result_key = "AggregatorsV2"),
    stream_api = FALSE
  )
  input <- .securityhub$list_aggregators_v2_input(NextToken = NextToken, MaxResults = MaxResults)
  output <- .securityhub$list_aggregators_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$list_aggregators_v2 <- securityhub_list_aggregators_v2

#' A list of automation rules and their metadata for the calling account
#'
#' @description
#' A list of automation rules and their metadata for the calling account.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_list_automation_rules/](https://www.paws-r-sdk.com/docs/securityhub_list_automation_rules/) for full documentation.
#'
#' @param NextToken A token to specify where to start paginating the response. This is the `NextToken` from a previously truncated response. On your first call to the [`list_automation_rules`][securityhub_list_automation_rules] API, set the value of this parameter to `NULL`.
#' @param MaxResults The maximum number of rules to return in the response. This currently ranges from 1 to 100.
#'
#' @keywords internal
#'
#' @rdname securityhub_list_automation_rules
securityhub_list_automation_rules <- function(NextToken = NULL, MaxResults = NULL) {
  op <- new_operation(
    name = "ListAutomationRules",
    http_method = "GET",
    http_path = "/automationrules/list",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$list_automation_rules_input(NextToken = NextToken, MaxResults = MaxResults)
  output <- .securityhub$list_automation_rules_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$list_automation_rules <- securityhub_list_automation_rules

#' Returns a list of automation rules and metadata for the calling account
#'
#' @description
#' Returns a list of automation rules and metadata for the calling account.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_list_automation_rules_v2/](https://www.paws-r-sdk.com/docs/securityhub_list_automation_rules_v2/) for full documentation.
#'
#' @param NextToken The token required for pagination. On your first call, set the value of this parameter to `NULL`. For subsequent calls, to continue listing data, set the value of this parameter to the value returned in the previous response.
#' @param MaxResults The maximum number of results to return.
#'
#' @keywords internal
#'
#' @rdname securityhub_list_automation_rules_v2
securityhub_list_automation_rules_v2 <- function(NextToken = NULL, MaxResults = NULL) {
  op <- new_operation(
    name = "ListAutomationRulesV2",
    http_method = "GET",
    http_path = "/automationrulesv2/list",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$list_automation_rules_v2_input(NextToken = NextToken, MaxResults = MaxResults)
  output <- .securityhub$list_automation_rules_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$list_automation_rules_v2 <- securityhub_list_automation_rules_v2

#' Lists the configuration policies that the Security Hub CSPM delegated
#' administrator has created for your organization
#'
#' @description
#' Lists the configuration policies that the Security Hub CSPM delegated administrator has created for your organization. Only the delegated administrator can invoke this operation from the home Region.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_list_configuration_policies/](https://www.paws-r-sdk.com/docs/securityhub_list_configuration_policies/) for full documentation.
#'
#' @param NextToken The NextToken value that's returned from a previous paginated [`list_configuration_policies`][securityhub_list_configuration_policies] request where `MaxResults` was used but the results exceeded the value of that parameter. Pagination continues from the `MaxResults` was used but the results exceeded the value of that parameter. Pagination continues from the end of the previous response that returned the `NextToken` value. This value is `null` when there are no more results to return.
#' @param MaxResults The maximum number of results that's returned by [`list_configuration_policies`][securityhub_list_configuration_policies] in each page of the response. When this parameter is used, [`list_configuration_policies`][securityhub_list_configuration_policies] returns the specified number of results in a single page and a `NextToken` response element. You can see the remaining results of the initial request by sending another [`list_configuration_policies`][securityhub_list_configuration_policies] request with the returned `NextToken` value. A valid range for `MaxResults` is between 1 and 100.
#'
#' @keywords internal
#'
#' @rdname securityhub_list_configuration_policies
securityhub_list_configuration_policies <- function(NextToken = NULL, MaxResults = NULL) {
  op <- new_operation(
    name = "ListConfigurationPolicies",
    http_method = "GET",
    http_path = "/configurationPolicy/list",
    host_prefix = "",
    paginator = list(input_token = "NextToken", output_token = "NextToken", limit_key = "MaxResults", result_key = "ConfigurationPolicySummaries"),
    stream_api = FALSE
  )
  input <- .securityhub$list_configuration_policies_input(NextToken = NextToken, MaxResults = MaxResults)
  output <- .securityhub$list_configuration_policies_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$list_configuration_policies <- securityhub_list_configuration_policies

#' Provides information about the associations for your configuration
#' policies and self-managed behavior
#'
#' @description
#' Provides information about the associations for your configuration policies and self-managed behavior. Only the Security Hub CSPM delegated administrator can invoke this operation from the home Region.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_list_configuration_policy_associations/](https://www.paws-r-sdk.com/docs/securityhub_list_configuration_policy_associations/) for full documentation.
#'
#' @param NextToken The `NextToken` value that's returned from a previous paginated [`list_configuration_policy_associations`][securityhub_list_configuration_policy_associations] request where `MaxResults` was used but the results exceeded the value of that parameter. Pagination continues from the end of the previous response that returned the `NextToken` value. This value is `null` when there are no more results to return.
#' @param MaxResults The maximum number of results that's returned by [`list_configuration_policies`][securityhub_list_configuration_policies] in each page of the response. When this parameter is used, [`list_configuration_policy_associations`][securityhub_list_configuration_policy_associations] returns the specified number of results in a single page and a `NextToken` response element. You can see the remaining results of the initial request by sending another [`list_configuration_policy_associations`][securityhub_list_configuration_policy_associations] request with the returned `NextToken` value. A valid range for `MaxResults` is between 1 and 100.
#' @param Filters Options for filtering the [`list_configuration_policy_associations`][securityhub_list_configuration_policy_associations] response. You can filter by the Amazon Resource Name (ARN) or universally unique identifier (UUID) of a configuration, `AssociationType`, or `AssociationStatus`.
#'
#' @keywords internal
#'
#' @rdname securityhub_list_configuration_policy_associations
securityhub_list_configuration_policy_associations <- function(NextToken = NULL, MaxResults = NULL, Filters = NULL) {
  op <- new_operation(
    name = "ListConfigurationPolicyAssociations",
    http_method = "POST",
    http_path = "/configurationPolicyAssociation/list",
    host_prefix = "",
    paginator = list(input_token = "NextToken", output_token = "NextToken", limit_key = "MaxResults", result_key = "ConfigurationPolicyAssociationSummaries"),
    stream_api = FALSE
  )
  input <- .securityhub$list_configuration_policy_associations_input(NextToken = NextToken, MaxResults = MaxResults, Filters = Filters)
  output <- .securityhub$list_configuration_policy_associations_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$list_configuration_policy_associations <- securityhub_list_configuration_policy_associations

#' Grants permission to retrieve a list of connectorsV2 and their metadata
#' for the calling account
#'
#' @description
#' Grants permission to retrieve a list of connectorsV2 and their metadata for the calling account.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_list_connectors_v2/](https://www.paws-r-sdk.com/docs/securityhub_list_connectors_v2/) for full documentation.
#'
#' @param NextToken The pagination token per the Amazon Web Services Pagination standard
#' @param MaxResults The maximum number of results to be returned.
#' @param ProviderName The name of the third-party provider.
#' @param ConnectorStatus The status for the connectorV2.
#'
#' @keywords internal
#'
#' @rdname securityhub_list_connectors_v2
securityhub_list_connectors_v2 <- function(NextToken = NULL, MaxResults = NULL, ProviderName = NULL, ConnectorStatus = NULL) {
  op <- new_operation(
    name = "ListConnectorsV2",
    http_method = "GET",
    http_path = "/connectorsv2",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$list_connectors_v2_input(NextToken = NextToken, MaxResults = MaxResults, ProviderName = ProviderName, ConnectorStatus = ConnectorStatus)
  output <- .securityhub$list_connectors_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$list_connectors_v2 <- securityhub_list_connectors_v2

#' Lists all findings-generating solutions (products) that you are
#' subscribed to receive findings from in Security Hub CSPM
#'
#' @description
#' Lists all findings-generating solutions (products) that you are subscribed to receive findings from in Security Hub CSPM.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_list_enabled_products_for_import/](https://www.paws-r-sdk.com/docs/securityhub_list_enabled_products_for_import/) for full documentation.
#'
#' @param NextToken The token that is required for pagination. On your first call to the [`list_enabled_products_for_import`][securityhub_list_enabled_products_for_import] operation, set the value of this parameter to `NULL`.
#' 
#' For subsequent calls to the operation, to continue listing data, set the value of this parameter to the value returned from the previous response.
#' @param MaxResults The maximum number of items to return in the response.
#'
#' @keywords internal
#'
#' @rdname securityhub_list_enabled_products_for_import
securityhub_list_enabled_products_for_import <- function(NextToken = NULL, MaxResults = NULL) {
  op <- new_operation(
    name = "ListEnabledProductsForImport",
    http_method = "GET",
    http_path = "/productSubscriptions",
    host_prefix = "",
    paginator = list(input_token = "NextToken", limit_key = "MaxResults", output_token = "NextToken", result_key = "ProductSubscriptions"),
    stream_api = FALSE
  )
  input <- .securityhub$list_enabled_products_for_import_input(NextToken = NextToken, MaxResults = MaxResults)
  output <- .securityhub$list_enabled_products_for_import_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$list_enabled_products_for_import <- securityhub_list_enabled_products_for_import

#' If cross-Region aggregation is enabled, then ListFindingAggregators
#' returns the Amazon Resource Name (ARN) of the finding aggregator
#'
#' @description
#' If cross-Region aggregation is enabled, then [`list_finding_aggregators`][securityhub_list_finding_aggregators] returns the Amazon Resource Name (ARN) of the finding aggregator. You can run this operation from any Amazon Web Services Region.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_list_finding_aggregators/](https://www.paws-r-sdk.com/docs/securityhub_list_finding_aggregators/) for full documentation.
#'
#' @param NextToken The token returned with the previous set of results. Identifies the next set of results to return.
#' @param MaxResults The maximum number of results to return. This operation currently only returns a single result.
#'
#' @keywords internal
#'
#' @rdname securityhub_list_finding_aggregators
securityhub_list_finding_aggregators <- function(NextToken = NULL, MaxResults = NULL) {
  op <- new_operation(
    name = "ListFindingAggregators",
    http_method = "GET",
    http_path = "/findingAggregator/list",
    host_prefix = "",
    paginator = list(input_token = "NextToken", output_token = "NextToken", limit_key = "MaxResults", result_key = "FindingAggregators"),
    stream_api = FALSE
  )
  input <- .securityhub$list_finding_aggregators_input(NextToken = NextToken, MaxResults = MaxResults)
  output <- .securityhub$list_finding_aggregators_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$list_finding_aggregators <- securityhub_list_finding_aggregators

#' We recommend using Organizations instead of Security Hub CSPM
#' invitations to manage your member accounts
#'
#' @description
#' We recommend using Organizations instead of Security Hub CSPM invitations to manage your member accounts. For information, see [Managing Security Hub CSPM administrator and member accounts with Organizations](https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-accounts-orgs.html) in the *Security Hub CSPM User Guide*.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_list_invitations/](https://www.paws-r-sdk.com/docs/securityhub_list_invitations/) for full documentation.
#'
#' @param MaxResults The maximum number of items to return in the response.
#' @param NextToken The token that is required for pagination. On your first call to the [`list_invitations`][securityhub_list_invitations] operation, set the value of this parameter to `NULL`.
#' 
#' For subsequent calls to the operation, to continue listing data, set the value of this parameter to the value returned from the previous response.
#'
#' @keywords internal
#'
#' @rdname securityhub_list_invitations
securityhub_list_invitations <- function(MaxResults = NULL, NextToken = NULL) {
  op <- new_operation(
    name = "ListInvitations",
    http_method = "GET",
    http_path = "/invitations",
    host_prefix = "",
    paginator = list(input_token = "NextToken", limit_key = "MaxResults", output_token = "NextToken", result_key = "Invitations"),
    stream_api = FALSE
  )
  input <- .securityhub$list_invitations_input(MaxResults = MaxResults, NextToken = NextToken)
  output <- .securityhub$list_invitations_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$list_invitations <- securityhub_list_invitations

#' Lists details about all member accounts for the current Security Hub
#' CSPM administrator account
#'
#' @description
#' Lists details about all member accounts for the current Security Hub CSPM administrator account.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_list_members/](https://www.paws-r-sdk.com/docs/securityhub_list_members/) for full documentation.
#'
#' @param OnlyAssociated Specifies which member accounts to include in the response based on their relationship status with the administrator account. The default value is `TRUE`.
#' 
#' If `OnlyAssociated` is set to `TRUE`, the response includes member accounts whose relationship status with the administrator account is set to `ENABLED`.
#' 
#' If `OnlyAssociated` is set to `FALSE`, the response includes all existing member accounts.
#' @param MaxResults The maximum number of items to return in the response.
#' @param NextToken The token that is required for pagination. On your first call to the [`list_members`][securityhub_list_members] operation, set the value of this parameter to `NULL`.
#' 
#' For subsequent calls to the operation, to continue listing data, set the value of this parameter to the value returned from the previous response.
#'
#' @keywords internal
#'
#' @rdname securityhub_list_members
securityhub_list_members <- function(OnlyAssociated = NULL, MaxResults = NULL, NextToken = NULL) {
  op <- new_operation(
    name = "ListMembers",
    http_method = "GET",
    http_path = "/members",
    host_prefix = "",
    paginator = list(input_token = "NextToken", limit_key = "MaxResults", output_token = "NextToken", result_key = "Members"),
    stream_api = FALSE
  )
  input <- .securityhub$list_members_input(OnlyAssociated = OnlyAssociated, MaxResults = MaxResults, NextToken = NextToken)
  output <- .securityhub$list_members_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$list_members <- securityhub_list_members

#' Lists the Security Hub CSPM administrator accounts
#'
#' @description
#' Lists the Security Hub CSPM administrator accounts. Can only be called by the organization management account.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_list_organization_admin_accounts/](https://www.paws-r-sdk.com/docs/securityhub_list_organization_admin_accounts/) for full documentation.
#'
#' @param MaxResults The maximum number of items to return in the response.
#' @param NextToken The token that is required for pagination. On your first call to the [`list_organization_admin_accounts`][securityhub_list_organization_admin_accounts] operation, set the value of this parameter to `NULL`. For subsequent calls to the operation, to continue listing data, set the value of this parameter to the value returned from the previous response.
#' @param Feature The feature where the delegated administrator account is listed. Defaults to Security Hub CSPM if not specified.
#'
#' @keywords internal
#'
#' @rdname securityhub_list_organization_admin_accounts
securityhub_list_organization_admin_accounts <- function(MaxResults = NULL, NextToken = NULL, Feature = NULL) {
  op <- new_operation(
    name = "ListOrganizationAdminAccounts",
    http_method = "GET",
    http_path = "/organization/admin",
    host_prefix = "",
    paginator = list(input_token = "NextToken", output_token = "NextToken", limit_key = "MaxResults", result_key = "AdminAccounts"),
    stream_api = FALSE
  )
  input <- .securityhub$list_organization_admin_accounts_input(MaxResults = MaxResults, NextToken = NextToken, Feature = Feature)
  output <- .securityhub$list_organization_admin_accounts_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$list_organization_admin_accounts <- securityhub_list_organization_admin_accounts

#' Lists all of the security controls that apply to a specified standard
#'
#' @description
#' Lists all of the security controls that apply to a specified standard.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_list_security_control_definitions/](https://www.paws-r-sdk.com/docs/securityhub_list_security_control_definitions/) for full documentation.
#'
#' @param StandardsArn The Amazon Resource Name (ARN) of the standard that you want to view controls for.
#' @param NextToken Optional pagination parameter.
#' @param MaxResults An optional parameter that limits the total results of the API response to the specified number. If this parameter isn't provided in the request, the results include the first 25 security controls that apply to the specified standard. The results also include a `NextToken` parameter that you can use in a subsequent API call to get the next 25 controls. This repeats until all controls for the standard are returned.
#'
#' @keywords internal
#'
#' @rdname securityhub_list_security_control_definitions
securityhub_list_security_control_definitions <- function(StandardsArn = NULL, NextToken = NULL, MaxResults = NULL) {
  op <- new_operation(
    name = "ListSecurityControlDefinitions",
    http_method = "GET",
    http_path = "/securityControls/definitions",
    host_prefix = "",
    paginator = list(input_token = "NextToken", output_token = "NextToken", limit_key = "MaxResults", result_key = "SecurityControlDefinitions"),
    stream_api = FALSE
  )
  input <- .securityhub$list_security_control_definitions_input(StandardsArn = StandardsArn, NextToken = NextToken, MaxResults = MaxResults)
  output <- .securityhub$list_security_control_definitions_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$list_security_control_definitions <- securityhub_list_security_control_definitions

#' Specifies whether a control is currently enabled or disabled in each
#' enabled standard in the calling account
#'
#' @description
#' Specifies whether a control is currently enabled or disabled in each enabled standard in the calling account.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_list_standards_control_associations/](https://www.paws-r-sdk.com/docs/securityhub_list_standards_control_associations/) for full documentation.
#'
#' @param SecurityControlId &#91;required&#93; The identifier of the control (identified with `SecurityControlId`, `SecurityControlArn`, or a mix of both parameters) that you want to determine the enablement status of in each enabled standard.
#' @param NextToken Optional pagination parameter.
#' @param MaxResults An optional parameter that limits the total results of the API response to the specified number. If this parameter isn't provided in the request, the results include the first 25 standard and control associations. The results also include a `NextToken` parameter that you can use in a subsequent API call to get the next 25 associations. This repeats until all associations for the specified control are returned. The number of results is limited by the number of supported Security Hub CSPM standards that you've enabled in the calling account.
#'
#' @keywords internal
#'
#' @rdname securityhub_list_standards_control_associations
securityhub_list_standards_control_associations <- function(SecurityControlId, NextToken = NULL, MaxResults = NULL) {
  op <- new_operation(
    name = "ListStandardsControlAssociations",
    http_method = "GET",
    http_path = "/associations",
    host_prefix = "",
    paginator = list(input_token = "NextToken", output_token = "NextToken", limit_key = "MaxResults", result_key = "StandardsControlAssociationSummaries"),
    stream_api = FALSE
  )
  input <- .securityhub$list_standards_control_associations_input(SecurityControlId = SecurityControlId, NextToken = NextToken, MaxResults = MaxResults)
  output <- .securityhub$list_standards_control_associations_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$list_standards_control_associations <- securityhub_list_standards_control_associations

#' Returns a list of tags associated with a resource
#'
#' @description
#' Returns a list of tags associated with a resource.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_list_tags_for_resource/](https://www.paws-r-sdk.com/docs/securityhub_list_tags_for_resource/) for full documentation.
#'
#' @param ResourceArn &#91;required&#93; The ARN of the resource to retrieve tags for.
#'
#' @keywords internal
#'
#' @rdname securityhub_list_tags_for_resource
securityhub_list_tags_for_resource <- function(ResourceArn) {
  op <- new_operation(
    name = "ListTagsForResource",
    http_method = "GET",
    http_path = "/tags/{ResourceArn}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$list_tags_for_resource_input(ResourceArn = ResourceArn)
  output <- .securityhub$list_tags_for_resource_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$list_tags_for_resource <- securityhub_list_tags_for_resource

#' Grants permission to complete the authorization based on input
#' parameters
#'
#' @description
#' Grants permission to complete the authorization based on input parameters.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_register_connector_v2/](https://www.paws-r-sdk.com/docs/securityhub_register_connector_v2/) for full documentation.
#'
#' @param AuthCode &#91;required&#93; The authCode retrieved from authUrl to complete the OAuth 2.0 authorization code flow.
#' @param AuthState &#91;required&#93; The authState retrieved from authUrl to complete the OAuth 2.0 authorization code flow.
#'
#' @keywords internal
#'
#' @rdname securityhub_register_connector_v2
securityhub_register_connector_v2 <- function(AuthCode, AuthState) {
  op <- new_operation(
    name = "RegisterConnectorV2",
    http_method = "POST",
    http_path = "/connectorsv2/register",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$register_connector_v2_input(AuthCode = AuthCode, AuthState = AuthState)
  output <- .securityhub$register_connector_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$register_connector_v2 <- securityhub_register_connector_v2

#' Associates a target account, organizational unit, or the root with a
#' specified configuration
#'
#' @description
#' Associates a target account, organizational unit, or the root with a specified configuration. The target can be associated with a configuration policy or self-managed behavior. Only the Security Hub CSPM delegated administrator can invoke this operation from the home Region.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_start_configuration_policy_association/](https://www.paws-r-sdk.com/docs/securityhub_start_configuration_policy_association/) for full documentation.
#'
#' @param ConfigurationPolicyIdentifier &#91;required&#93; The Amazon Resource Name (ARN) of a configuration policy, the universally unique identifier (UUID) of a configuration policy, or a value of `SELF_MANAGED_SECURITY_HUB` for a self-managed configuration.
#' @param Target &#91;required&#93; The identifier of the target account, organizational unit, or the root to associate with the specified configuration.
#'
#' @keywords internal
#'
#' @rdname securityhub_start_configuration_policy_association
securityhub_start_configuration_policy_association <- function(ConfigurationPolicyIdentifier, Target) {
  op <- new_operation(
    name = "StartConfigurationPolicyAssociation",
    http_method = "POST",
    http_path = "/configurationPolicyAssociation/associate",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$start_configuration_policy_association_input(ConfigurationPolicyIdentifier = ConfigurationPolicyIdentifier, Target = Target)
  output <- .securityhub$start_configuration_policy_association_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$start_configuration_policy_association <- securityhub_start_configuration_policy_association

#' Disassociates a target account, organizational unit, or the root from a
#' specified configuration
#'
#' @description
#' Disassociates a target account, organizational unit, or the root from a specified configuration. When you disassociate a configuration from its target, the target inherits the configuration of the closest parent. If there’s no configuration to inherit, the target retains its settings but becomes a self-managed account. A target can be disassociated from a configuration policy or self-managed behavior. Only the Security Hub CSPM delegated administrator can invoke this operation from the home Region.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_start_configuration_policy_disassociation/](https://www.paws-r-sdk.com/docs/securityhub_start_configuration_policy_disassociation/) for full documentation.
#'
#' @param Target The identifier of the target account, organizational unit, or the root to disassociate from the specified configuration.
#' @param ConfigurationPolicyIdentifier &#91;required&#93; The Amazon Resource Name (ARN) of a configuration policy, the universally unique identifier (UUID) of a configuration policy, or a value of `SELF_MANAGED_SECURITY_HUB` for a self-managed configuration.
#'
#' @keywords internal
#'
#' @rdname securityhub_start_configuration_policy_disassociation
securityhub_start_configuration_policy_disassociation <- function(Target = NULL, ConfigurationPolicyIdentifier) {
  op <- new_operation(
    name = "StartConfigurationPolicyDisassociation",
    http_method = "POST",
    http_path = "/configurationPolicyAssociation/disassociate",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$start_configuration_policy_disassociation_input(Target = Target, ConfigurationPolicyIdentifier = ConfigurationPolicyIdentifier)
  output <- .securityhub$start_configuration_policy_disassociation_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$start_configuration_policy_disassociation <- securityhub_start_configuration_policy_disassociation

#' Adds one or more tags to a resource
#'
#' @description
#' Adds one or more tags to a resource.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_tag_resource/](https://www.paws-r-sdk.com/docs/securityhub_tag_resource/) for full documentation.
#'
#' @param ResourceArn &#91;required&#93; The ARN of the resource to apply the tags to.
#' @param Tags &#91;required&#93; The tags to add to the resource. You can add up to 50 tags at a time. The tag keys can be no longer than 128 characters. The tag values can be no longer than 256 characters.
#'
#' @keywords internal
#'
#' @rdname securityhub_tag_resource
securityhub_tag_resource <- function(ResourceArn, Tags) {
  op <- new_operation(
    name = "TagResource",
    http_method = "POST",
    http_path = "/tags/{ResourceArn}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$tag_resource_input(ResourceArn = ResourceArn, Tags = Tags)
  output <- .securityhub$tag_resource_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$tag_resource <- securityhub_tag_resource

#' Removes one or more tags from a resource
#'
#' @description
#' Removes one or more tags from a resource.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_untag_resource/](https://www.paws-r-sdk.com/docs/securityhub_untag_resource/) for full documentation.
#'
#' @param ResourceArn &#91;required&#93; The ARN of the resource to remove the tags from.
#' @param TagKeys &#91;required&#93; The tag keys associated with the tags to remove from the resource. You can remove up to 50 tags at a time.
#'
#' @keywords internal
#'
#' @rdname securityhub_untag_resource
securityhub_untag_resource <- function(ResourceArn, TagKeys) {
  op <- new_operation(
    name = "UntagResource",
    http_method = "DELETE",
    http_path = "/tags/{ResourceArn}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$untag_resource_input(ResourceArn = ResourceArn, TagKeys = TagKeys)
  output <- .securityhub$untag_resource_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$untag_resource <- securityhub_untag_resource

#' Updates the name and description of a custom action target in Security
#' Hub CSPM
#'
#' @description
#' Updates the name and description of a custom action target in Security Hub CSPM.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_update_action_target/](https://www.paws-r-sdk.com/docs/securityhub_update_action_target/) for full documentation.
#'
#' @param ActionTargetArn &#91;required&#93; The ARN of the custom action target to update.
#' @param Name The updated name of the custom action target.
#' @param Description The updated description for the custom action target.
#'
#' @keywords internal
#'
#' @rdname securityhub_update_action_target
securityhub_update_action_target <- function(ActionTargetArn, Name = NULL, Description = NULL) {
  op <- new_operation(
    name = "UpdateActionTarget",
    http_method = "PATCH",
    http_path = "/actionTargets/{ActionTargetArn+}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$update_action_target_input(ActionTargetArn = ActionTargetArn, Name = Name, Description = Description)
  output <- .securityhub$update_action_target_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$update_action_target <- securityhub_update_action_target

#' Udpates the configuration for the Aggregator V2
#'
#' @description
#' Udpates the configuration for the Aggregator V2.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_update_aggregator_v2/](https://www.paws-r-sdk.com/docs/securityhub_update_aggregator_v2/) for full documentation.
#'
#' @param AggregatorV2Arn &#91;required&#93; The ARN of the Aggregator V2.
#' @param RegionLinkingMode &#91;required&#93; Determines how Amazon Web Services Regions should be linked to the Aggregator V2.
#' @param LinkedRegions A list of Amazon Web Services Regions linked to the aggegation Region.
#'
#' @keywords internal
#'
#' @rdname securityhub_update_aggregator_v2
securityhub_update_aggregator_v2 <- function(AggregatorV2Arn, RegionLinkingMode, LinkedRegions = NULL) {
  op <- new_operation(
    name = "UpdateAggregatorV2",
    http_method = "PATCH",
    http_path = "/aggregatorv2/update/{AggregatorV2Arn+}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$update_aggregator_v2_input(AggregatorV2Arn = AggregatorV2Arn, RegionLinkingMode = RegionLinkingMode, LinkedRegions = LinkedRegions)
  output <- .securityhub$update_aggregator_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$update_aggregator_v2 <- securityhub_update_aggregator_v2

#' Updates a V2 automation rule
#'
#' @description
#' Updates a V2 automation rule.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_update_automation_rule_v2/](https://www.paws-r-sdk.com/docs/securityhub_update_automation_rule_v2/) for full documentation.
#'
#' @param Identifier &#91;required&#93; The ARN of the automation rule.
#' @param RuleStatus The status of the automation rule.
#' @param RuleOrder Represents a value for the rule priority.
#' @param Description A description of the automation rule.
#' @param RuleName The name of the automation rule.
#' @param Criteria The filtering type and configuration of the automation rule.
#' @param Actions A list of actions to be performed when the rule criteria is met.
#'
#' @keywords internal
#'
#' @rdname securityhub_update_automation_rule_v2
securityhub_update_automation_rule_v2 <- function(Identifier, RuleStatus = NULL, RuleOrder = NULL, Description = NULL, RuleName = NULL, Criteria = NULL, Actions = NULL) {
  op <- new_operation(
    name = "UpdateAutomationRuleV2",
    http_method = "PATCH",
    http_path = "/automationrulesv2/{Identifier}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$update_automation_rule_v2_input(Identifier = Identifier, RuleStatus = RuleStatus, RuleOrder = RuleOrder, Description = Description, RuleName = RuleName, Criteria = Criteria, Actions = Actions)
  output <- .securityhub$update_automation_rule_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$update_automation_rule_v2 <- securityhub_update_automation_rule_v2

#' Updates a configuration policy
#'
#' @description
#' Updates a configuration policy. Only the Security Hub CSPM delegated administrator can invoke this operation from the home Region.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_update_configuration_policy/](https://www.paws-r-sdk.com/docs/securityhub_update_configuration_policy/) for full documentation.
#'
#' @param Identifier &#91;required&#93; The Amazon Resource Name (ARN) or universally unique identifier (UUID) of the configuration policy.
#' @param Name The name of the configuration policy. Alphanumeric characters and the following ASCII characters are permitted: `-, ., !, *, /`.
#' @param Description The description of the configuration policy.
#' @param UpdatedReason The reason for updating the configuration policy.
#' @param ConfigurationPolicy An object that defines how Security Hub CSPM is configured. It includes whether Security Hub CSPM is enabled or disabled, a list of enabled security standards, a list of enabled or disabled security controls, and a list of custom parameter values for specified controls. If you provide a list of security controls that are enabled in the configuration policy, Security Hub CSPM disables all other controls (including newly released controls). If you provide a list of security controls that are disabled in the configuration policy, Security Hub CSPM enables all other controls (including newly released controls).
#' 
#' When updating a configuration policy, provide a complete list of standards that you want to enable and a complete list of controls that you want to enable or disable. The updated configuration replaces the current configuration.
#'
#' @keywords internal
#'
#' @rdname securityhub_update_configuration_policy
securityhub_update_configuration_policy <- function(Identifier, Name = NULL, Description = NULL, UpdatedReason = NULL, ConfigurationPolicy = NULL) {
  op <- new_operation(
    name = "UpdateConfigurationPolicy",
    http_method = "PATCH",
    http_path = "/configurationPolicy/{Identifier}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$update_configuration_policy_input(Identifier = Identifier, Name = Name, Description = Description, UpdatedReason = UpdatedReason, ConfigurationPolicy = ConfigurationPolicy)
  output <- .securityhub$update_configuration_policy_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$update_configuration_policy <- securityhub_update_configuration_policy

#' Grants permission to update a connectorV2 based on its id and input
#' parameters
#'
#' @description
#' Grants permission to update a connectorV2 based on its id and input parameters.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_update_connector_v2/](https://www.paws-r-sdk.com/docs/securityhub_update_connector_v2/) for full documentation.
#'
#' @param ConnectorId &#91;required&#93; The UUID of the connectorV2 to identify connectorV2 resource.
#' @param Description The description of the connectorV2.
#' @param Provider The third-party provider’s service configuration.
#'
#' @keywords internal
#'
#' @rdname securityhub_update_connector_v2
securityhub_update_connector_v2 <- function(ConnectorId, Description = NULL, Provider = NULL) {
  op <- new_operation(
    name = "UpdateConnectorV2",
    http_method = "PATCH",
    http_path = "/connectorsv2/{ConnectorId+}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$update_connector_v2_input(ConnectorId = ConnectorId, Description = Description, Provider = Provider)
  output <- .securityhub$update_connector_v2_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$update_connector_v2 <- securityhub_update_connector_v2

#' The aggregation Region is now called the home Region
#'
#' @description
#' The *aggregation Region* is now called the *home Region*.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_update_finding_aggregator/](https://www.paws-r-sdk.com/docs/securityhub_update_finding_aggregator/) for full documentation.
#'
#' @param FindingAggregatorArn &#91;required&#93; The ARN of the finding aggregator. To obtain the ARN, use [`list_finding_aggregators`][securityhub_list_finding_aggregators].
#' @param RegionLinkingMode &#91;required&#93; Indicates whether to aggregate findings from all of the available Regions in the current partition. Also determines whether to automatically aggregate findings from new Regions as Security Hub CSPM supports them and you opt into them.
#' 
#' The selected option also determines how to use the Regions provided in the Regions list.
#' 
#' The options are as follows:
#' 
#' -   `ALL_REGIONS` - Aggregates findings from all of the Regions where Security Hub CSPM is enabled. When you choose this option, Security Hub CSPM also automatically aggregates findings from new Regions as Security Hub CSPM supports them and you opt into them.
#' 
#' -   `ALL_REGIONS_EXCEPT_SPECIFIED` - Aggregates findings from all of the Regions where Security Hub CSPM is enabled, except for the Regions listed in the `Regions` parameter. When you choose this option, Security Hub CSPM also automatically aggregates findings from new Regions as Security Hub CSPM supports them and you opt into them.
#' 
#' -   `SPECIFIED_REGIONS` - Aggregates findings only from the Regions listed in the `Regions` parameter. Security Hub CSPM does not automatically aggregate findings from new Regions.
#' 
#' -   `NO_REGIONS` - Aggregates no data because no Regions are selected as linked Regions.
#' @param Regions If `RegionLinkingMode` is `ALL_REGIONS_EXCEPT_SPECIFIED`, then this is a space-separated list of Regions that don't replicate and send findings to the home Region.
#' 
#' If `RegionLinkingMode` is `SPECIFIED_REGIONS`, then this is a space-separated list of Regions that do replicate and send findings to the home Region.
#' 
#' An `InvalidInputException` error results if you populate this field while `RegionLinkingMode` is `NO_REGIONS`.
#'
#' @keywords internal
#'
#' @rdname securityhub_update_finding_aggregator
securityhub_update_finding_aggregator <- function(FindingAggregatorArn, RegionLinkingMode, Regions = NULL) {
  op <- new_operation(
    name = "UpdateFindingAggregator",
    http_method = "PATCH",
    http_path = "/findingAggregator/update",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$update_finding_aggregator_input(FindingAggregatorArn = FindingAggregatorArn, RegionLinkingMode = RegionLinkingMode, Regions = Regions)
  output <- .securityhub$update_finding_aggregator_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$update_finding_aggregator <- securityhub_update_finding_aggregator

#' UpdateFindings is a deprecated operation
#'
#' @description
#' [`update_findings`][securityhub_update_findings] is a deprecated operation. Instead of [`update_findings`][securityhub_update_findings], use the [`batch_update_findings`][securityhub_batch_update_findings] operation.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_update_findings/](https://www.paws-r-sdk.com/docs/securityhub_update_findings/) for full documentation.
#'
#' @param Filters &#91;required&#93; A collection of attributes that specify which findings you want to update.
#' @param Note The updated note for the finding.
#' @param RecordState The updated record state for the finding.
#'
#' @keywords internal
#'
#' @rdname securityhub_update_findings
securityhub_update_findings <- function(Filters, Note = NULL, RecordState = NULL) {
  op <- new_operation(
    name = "UpdateFindings",
    http_method = "PATCH",
    http_path = "/findings",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$update_findings_input(Filters = Filters, Note = Note, RecordState = RecordState)
  output <- .securityhub$update_findings_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$update_findings <- securityhub_update_findings

#' Updates the Security Hub CSPM insight identified by the specified
#' insight ARN
#'
#' @description
#' Updates the Security Hub CSPM insight identified by the specified insight ARN.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_update_insight/](https://www.paws-r-sdk.com/docs/securityhub_update_insight/) for full documentation.
#'
#' @param InsightArn &#91;required&#93; The ARN of the insight that you want to update.
#' @param Name The updated name for the insight.
#' @param Filters The updated filters that define this insight.
#' @param GroupByAttribute The updated `GroupBy` attribute that defines this insight.
#'
#' @keywords internal
#'
#' @rdname securityhub_update_insight
securityhub_update_insight <- function(InsightArn, Name = NULL, Filters = NULL, GroupByAttribute = NULL) {
  op <- new_operation(
    name = "UpdateInsight",
    http_method = "PATCH",
    http_path = "/insights/{InsightArn+}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$update_insight_input(InsightArn = InsightArn, Name = Name, Filters = Filters, GroupByAttribute = GroupByAttribute)
  output <- .securityhub$update_insight_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$update_insight <- securityhub_update_insight

#' Updates the configuration of your organization in Security Hub CSPM
#'
#' @description
#' Updates the configuration of your organization in Security Hub CSPM. Only the Security Hub CSPM administrator account can invoke this operation.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_update_organization_configuration/](https://www.paws-r-sdk.com/docs/securityhub_update_organization_configuration/) for full documentation.
#'
#' @param AutoEnable &#91;required&#93; Whether to automatically enable Security Hub CSPM in new member accounts when they join the organization.
#' 
#' If set to `true`, then Security Hub CSPM is automatically enabled in new accounts. If set to `false`, then Security Hub CSPM isn't enabled in new accounts automatically. The default value is `false`.
#' 
#' If the `ConfigurationType` of your organization is set to `CENTRAL`, then this field is set to `false` and can't be changed in the home Region and linked Regions. However, in that case, the delegated administrator can create a configuration policy in which Security Hub CSPM is enabled and associate the policy with new organization accounts.
#' @param AutoEnableStandards Whether to automatically enable Security Hub CSPM [default standards](https://docs.aws.amazon.com/securityhub/latest/userguide/) in new member accounts when they join the organization.
#' 
#' The default value of this parameter is equal to `DEFAULT`.
#' 
#' If equal to `DEFAULT`, then Security Hub CSPM default standards are automatically enabled for new member accounts. If equal to `NONE`, then default standards are not automatically enabled for new member accounts.
#' 
#' If the `ConfigurationType` of your organization is set to `CENTRAL`, then this field is set to `NONE` and can't be changed in the home Region and linked Regions. However, in that case, the delegated administrator can create a configuration policy in which specific security standards are enabled and associate the policy with new organization accounts.
#' @param OrganizationConfiguration Provides information about the way an organization is configured in Security Hub CSPM.
#'
#' @keywords internal
#'
#' @rdname securityhub_update_organization_configuration
securityhub_update_organization_configuration <- function(AutoEnable, AutoEnableStandards = NULL, OrganizationConfiguration = NULL) {
  op <- new_operation(
    name = "UpdateOrganizationConfiguration",
    http_method = "POST",
    http_path = "/organization/configuration",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$update_organization_configuration_input(AutoEnable = AutoEnable, AutoEnableStandards = AutoEnableStandards, OrganizationConfiguration = OrganizationConfiguration)
  output <- .securityhub$update_organization_configuration_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$update_organization_configuration <- securityhub_update_organization_configuration

#' Updates the properties of a security control
#'
#' @description
#' Updates the properties of a security control.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_update_security_control/](https://www.paws-r-sdk.com/docs/securityhub_update_security_control/) for full documentation.
#'
#' @param SecurityControlId &#91;required&#93; The Amazon Resource Name (ARN) or ID of the control to update.
#' @param Parameters &#91;required&#93; An object that specifies which security control parameters to update.
#' @param LastUpdateReason The most recent reason for updating the properties of the security control. This field accepts alphanumeric characters in addition to white spaces, dashes, and underscores.
#'
#' @keywords internal
#'
#' @rdname securityhub_update_security_control
securityhub_update_security_control <- function(SecurityControlId, Parameters, LastUpdateReason = NULL) {
  op <- new_operation(
    name = "UpdateSecurityControl",
    http_method = "PATCH",
    http_path = "/securityControl/update",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$update_security_control_input(SecurityControlId = SecurityControlId, Parameters = Parameters, LastUpdateReason = LastUpdateReason)
  output <- .securityhub$update_security_control_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$update_security_control <- securityhub_update_security_control

#' Updates configuration options for Security Hub CSPM
#'
#' @description
#' Updates configuration options for Security Hub CSPM.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_update_security_hub_configuration/](https://www.paws-r-sdk.com/docs/securityhub_update_security_hub_configuration/) for full documentation.
#'
#' @param AutoEnableControls Whether to automatically enable new controls when they are added to standards that are enabled.
#' 
#' By default, this is set to `true`, and new controls are enabled automatically. To not automatically enable new controls, set this to `false`.
#' 
#' When you automatically enable new controls, you can interact with the controls in the console and programmatically immediately after release. However, automatically enabled controls have a temporary default status of `DISABLED`. It can take up to several days for Security Hub CSPM to process the control release and designate the control as `ENABLED` in your account. During the processing period, you can manually enable or disable a control, and Security Hub CSPM will maintain that designation regardless of whether you have `AutoEnableControls` set to `true`.
#' @param ControlFindingGenerator Updates whether the calling account has consolidated control findings turned on. If the value for this field is set to `SECURITY_CONTROL`, Security Hub CSPM generates a single finding for a control check even when the check applies to multiple enabled standards.
#' 
#' If the value for this field is set to `STANDARD_CONTROL`, Security Hub CSPM generates separate findings for a control check when the check applies to multiple enabled standards.
#' 
#' For accounts that are part of an organization, this value can only be updated in the administrator account.
#'
#' @keywords internal
#'
#' @rdname securityhub_update_security_hub_configuration
securityhub_update_security_hub_configuration <- function(AutoEnableControls = NULL, ControlFindingGenerator = NULL) {
  op <- new_operation(
    name = "UpdateSecurityHubConfiguration",
    http_method = "PATCH",
    http_path = "/accounts",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$update_security_hub_configuration_input(AutoEnableControls = AutoEnableControls, ControlFindingGenerator = ControlFindingGenerator)
  output <- .securityhub$update_security_hub_configuration_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$update_security_hub_configuration <- securityhub_update_security_hub_configuration

#' Used to control whether an individual security standard control is
#' enabled or disabled
#'
#' @description
#' Used to control whether an individual security standard control is enabled or disabled.
#'
#' See [https://www.paws-r-sdk.com/docs/securityhub_update_standards_control/](https://www.paws-r-sdk.com/docs/securityhub_update_standards_control/) for full documentation.
#'
#' @param StandardsControlArn &#91;required&#93; The ARN of the security standard control to enable or disable.
#' @param ControlStatus The updated status of the security standard control.
#' @param DisabledReason A description of the reason why you are disabling a security standard control. If you are disabling a control, then this is required.
#'
#' @keywords internal
#'
#' @rdname securityhub_update_standards_control
securityhub_update_standards_control <- function(StandardsControlArn, ControlStatus = NULL, DisabledReason = NULL) {
  op <- new_operation(
    name = "UpdateStandardsControl",
    http_method = "PATCH",
    http_path = "/standards/control/{StandardsControlArn+}",
    host_prefix = "",
    paginator = list(),
    stream_api = FALSE
  )
  input <- .securityhub$update_standards_control_input(StandardsControlArn = StandardsControlArn, ControlStatus = ControlStatus, DisabledReason = DisabledReason)
  output <- .securityhub$update_standards_control_output()
  config <- get_config()
  svc <- .securityhub$service(config, op)
  request <- new_request(svc, op, input, output)
  response <- send_request(request)
  return(response)
}
.securityhub$operations$update_standards_control <- securityhub_update_standards_control

Try the paws.security.identity package in your browser

Any scripts or data that you put into this service are public.

paws.security.identity documentation built on May 31, 2026, 9:07 a.m.