Skip to content

get_firewall_rule async

get_firewall_rule(
    firewall_rule_id: ResourceId,
    *,
    config_overrides: Optional[AsyncRoute53GlobalResolverClientConfig] = None,
) -> GetFirewallRuleOutput

Retrieves information about a DNS firewall rule.

Route 53 Global Resolver is a global service that supports resolvers in multiple Amazon Web Services Regions but you must specify the US East (Ohio) Region to create, update, or otherwise work with Route 53 Global Resolver resources. That is, for example, specify --region us-east-2 on Amazon Web Services CLI commands.

Parameters:

  • firewall_rule_id (ResourceId) –

    ID of the DNS Firewall rule.

Raises:

Source code in docs_src/capo_route53globalresolver/_services/async_route53_global_resolver.py
async def get_firewall_rule(
    self,
    firewall_rule_id: "capo_route53globalresolver.types.resource_id.ResourceId",
    *,
    config_overrides: Optional[AsyncRoute53GlobalResolverClientConfig] = None,
) -> "capo_route53globalresolver.types.get_firewall_rule_output.GetFirewallRuleOutput":
    """<p>Retrieves information about a DNS firewall rule.</p> <important> <p>Route 53 Global Resolver is a global service that supports resolvers in multiple Amazon Web Services Regions but you must specify the US East (Ohio) Region to create, update, or otherwise work with Route 53 Global Resolver resources. That is, for example, specify <code>--region us-east-2</code> on Amazon Web Services CLI commands.</p> </important>

    Args:
        firewall_rule_id: <p>ID of the DNS Firewall rule.</p>

    Raises:
        capo_route53globalresolver.errors.access_denied_exception.AccessDeniedException: <p>You don't have permission to perform this operation. Check your IAM permissions and try again.</p>
        capo_route53globalresolver.errors.internal_server_exception.InternalServerException: <p>An internal server error occurred. Try again later.</p>
        capo_route53globalresolver.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource was not found. Verify the resource ID and try again.</p>
        capo_route53globalresolver.errors.throttling_exception.ThrottlingException: <p>The request was throttled due to too many requests. Wait a moment and try again.</p>
        capo_route53globalresolver.errors.validation_exception.ValidationException: <p>The input parameters are invalid. Check the parameter values and try again.</p>
        capo_route53globalresolver.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_route53globalresolver.types.get_firewall_rule_input.GetFirewallRuleInput]",
    ) -> AsyncOperationResponse[
        "capo_route53globalresolver.types.get_firewall_rule_output.GetFirewallRuleOutput"
    ]:
        import capo_route53globalresolver._operations.ec2_dns_global_resolver_customer_api.get_firewall_rule

        (
            output,
            http_response,
        ) = await capo_route53globalresolver._operations.ec2_dns_global_resolver_customer_api.get_firewall_rule.async_get_firewall_rule(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("GetFirewallRule")
    )
    input_: capo_route53globalresolver.types.get_firewall_rule_input.GetFirewallRuleInput = {
        "firewall_rule_id": firewall_rule_id
    }

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output