create_resolver_endpoint

create_resolver_endpoint(**kwargs)

Creates a Resolver endpoint. There are two types of Resolver endpoints, inbound and outbound:

  • An inbound Resolver endpoint forwards DNS queries to the DNS service for a VPC from your network.
  • An outbound Resolver endpoint forwards DNS queries from the DNS service for a VPC to your network.

See also: AWS API Documentation

Request Syntax

response = client.create_resolver_endpoint(
    CreatorRequestId='string',
    Name='string',
    SecurityGroupIds=[
        'string',
    ],
    Direction='INBOUND'|'OUTBOUND',
    IpAddresses=[
        {
            'SubnetId': 'string',
            'Ip': 'string'
        },
    ],
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
Parameters
  • CreatorRequestId (string) --

    [REQUIRED]

    A unique string that identifies the request and that allows failed requests to be retried without the risk of running the operation twice. CreatorRequestId can be any unique string, for example, a date/time stamp.

  • Name (string) -- A friendly name that lets you easily find a configuration in the Resolver dashboard in the Route 53 console.
  • SecurityGroupIds (list) --

    [REQUIRED]

    The ID of one or more security groups that you want to use to control access to this VPC. The security group that you specify must include one or more inbound rules (for inbound Resolver endpoints) or outbound rules (for outbound Resolver endpoints). Inbound and outbound rules must allow TCP and UDP access. For inbound access, open port 53. For outbound access, open the port that you're using for DNS queries on your network.

    • (string) --
  • Direction (string) --

    [REQUIRED]

    Specify the applicable value:

    • INBOUND : Resolver forwards DNS queries to the DNS service for a VPC from your network
    • OUTBOUND : Resolver forwards DNS queries from the DNS service for a VPC to your network
  • IpAddresses (list) --

    [REQUIRED]

    The subnets and IP addresses in your VPC that DNS queries originate from (for outbound endpoints) or that you forward DNS queries to (for inbound endpoints). The subnet ID uniquely identifies a VPC.

    • (dict) --

      In a CreateResolverEndpoint request, the IP address that DNS queries originate from (for outbound endpoints) or that you forward DNS queries to (for inbound endpoints). IpAddressRequest also includes the ID of the subnet that contains the IP address.

      • SubnetId (string) -- [REQUIRED]

        The ID of the subnet that contains the IP address.

      • Ip (string) --

        The IP address that you want to use for DNS queries.

  • Tags (list) --

    A list of the tag keys and values that you want to associate with the endpoint.

    • (dict) --

      One tag that you want to add to the specified resource. A tag consists of a Key (a name for the tag) and a Value .

      • Key (string) -- [REQUIRED]

        The name for the tag. For example, if you want to associate Resolver resources with the account IDs of your customers for billing purposes, the value of Key might be account-id .

      • Value (string) -- [REQUIRED]

        The value for the tag. For example, if Key is account-id , then Value might be the ID of the customer account that you're creating the resource for.

Return type

dict

Returns

Response Syntax

{
    'ResolverEndpoint': {
        'Id': 'string',
        'CreatorRequestId': 'string',
        'Arn': 'string',
        'Name': 'string',
        'SecurityGroupIds': [
            'string',
        ],
        'Direction': 'INBOUND'|'OUTBOUND',
        'IpAddressCount': 123,
        'HostVPCId': 'string',
        'Status': 'CREATING'|'OPERATIONAL'|'UPDATING'|'AUTO_RECOVERING'|'ACTION_NEEDED'|'DELETING',
        'StatusMessage': 'string',
        'CreationTime': 'string',
        'ModificationTime': 'string'
    }
}

Response Structure

  • (dict) --

    • ResolverEndpoint (dict) --

      Information about the CreateResolverEndpoint request, including the status of the request.

      • Id (string) --

        The ID of the Resolver endpoint.

      • CreatorRequestId (string) --

        A unique string that identifies the request that created the Resolver endpoint. The CreatorRequestId allows failed requests to be retried without the risk of running the operation twice.

      • Arn (string) --

        The ARN (Amazon Resource Name) for the Resolver endpoint.

      • Name (string) --

        The name that you assigned to the Resolver endpoint when you submitted a CreateResolverEndpoint request.

      • SecurityGroupIds (list) --

        The ID of one or more security groups that control access to this VPC. The security group must include one or more inbound rules (for inbound endpoints) or outbound rules (for outbound endpoints). Inbound and outbound rules must allow TCP and UDP access. For inbound access, open port 53. For outbound access, open the port that you're using for DNS queries on your network.

        • (string) --
      • Direction (string) --

        Indicates whether the Resolver endpoint allows inbound or outbound DNS queries:

        • INBOUND : allows DNS queries to your VPC from your network
        • OUTBOUND : allows DNS queries from your VPC to your network
      • IpAddressCount (integer) --

        The number of IP addresses that the Resolver endpoint can use for DNS queries.

      • HostVPCId (string) --

        The ID of the VPC that you want to create the Resolver endpoint in.

      • Status (string) --

        A code that specifies the current status of the Resolver endpoint. Valid values include the following:

        • CREATING : Resolver is creating and configuring one or more Amazon VPC network interfaces for this endpoint.
        • OPERATIONAL : The Amazon VPC network interfaces for this endpoint are correctly configured and able to pass inbound or outbound DNS queries between your network and Resolver.
        • UPDATING : Resolver is associating or disassociating one or more network interfaces with this endpoint.
        • AUTO_RECOVERING : Resolver is trying to recover one or more of the network interfaces that are associated with this endpoint. During the recovery process, the endpoint functions with limited capacity because of the limit on the number of DNS queries per IP address (per network interface). For the current limit, see Limits on Route 53 Resolver.
        • ACTION_NEEDED : This endpoint is unhealthy, and Resolver can't automatically recover it. To resolve the problem, we recommend that you check each IP address that you associated with the endpoint. For each IP address that isn't available, add another IP address and then delete the IP address that isn't available. (An endpoint must always include at least two IP addresses.) A status of ACTION_NEEDED can have a variety of causes. Here are two common causes:
          • One or more of the network interfaces that are associated with the endpoint were deleted using Amazon VPC.
          • The network interface couldn't be created for some reason that's outside the control of Resolver.
        • DELETING : Resolver is deleting this endpoint and the associated network interfaces.
      • StatusMessage (string) --

        A detailed description of the status of the Resolver endpoint.

      • CreationTime (string) --

        The date and time that the endpoint was created, in Unix time format and Coordinated Universal Time (UTC).

      • ModificationTime (string) --

        The date and time that the endpoint was last modified, in Unix time format and Coordinated Universal Time (UTC).

Exceptions

  • Route53Resolver.Client.exceptions.InvalidParameterException
  • Route53Resolver.Client.exceptions.ResourceNotFoundException
  • Route53Resolver.Client.exceptions.InvalidRequestException
  • Route53Resolver.Client.exceptions.ResourceExistsException
  • Route53Resolver.Client.exceptions.LimitExceededException
  • Route53Resolver.Client.exceptions.InternalServiceErrorException
  • Route53Resolver.Client.exceptions.ThrottlingException