Class: Aws::VPCLattice::Client

Inherits:
Seahorse::Client::Base show all
Includes:
ClientStubs
Defined in:
gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb

Overview

An API client for VPCLattice. To construct a client, you need to configure a :region and :credentials.

client = Aws::VPCLattice::Client.new(
  region: region_name,
  credentials: credentials,
  # ...
)

For details on configuring region and credentials see the developer guide.

See #initialize for a full list of supported configuration options.

Instance Attribute Summary

Attributes inherited from Seahorse::Client::Base

#config, #handlers

API Operations collapse

Instance Method Summary collapse

Methods included from ClientStubs

#api_requests, #stub_data, #stub_responses

Methods inherited from Seahorse::Client::Base

add_plugin, api, clear_plugins, define, new, #operation_names, plugins, remove_plugin, set_api, set_plugins

Methods included from Seahorse::Client::HandlerBuilder

#handle, #handle_request, #handle_response

Constructor Details

#initialize(options) ⇒ Client

Returns a new instance of Client.

Parameters:

  • options (Hash)

Options Hash (options):

  • :plugins (Array<Seahorse::Client::Plugin>) — default: []]

    A list of plugins to apply to the client. Each plugin is either a class name or an instance of a plugin class.

  • :credentials (required, Aws::CredentialProvider)

    Your AWS credentials used for authentication. This can be any class that includes and implements Aws::CredentialProvider, or instance of any one of the following classes:

    • Aws::Credentials - Used for configuring static, non-refreshing credentials.

    • Aws::SharedCredentials - Used for loading static credentials from a shared file, such as ~/.aws/config.

    • Aws::AssumeRoleCredentials - Used when you need to assume a role.

    • Aws::AssumeRoleWebIdentityCredentials - Used when you need to assume a role after providing credentials via the web.

    • Aws::SSOCredentials - Used for loading credentials from AWS SSO using an access token generated from aws login.

    • Aws::ProcessCredentials - Used for loading credentials from a process that outputs to stdout.

    • Aws::InstanceProfileCredentials - Used for loading credentials from an EC2 IMDS on an EC2 instance.

    • Aws::ECSCredentials - Used for loading credentials from instances running in ECS.

    • Aws::CognitoIdentityCredentials - Used for loading credentials from the Cognito Identity service.

    When :credentials are not configured directly, the following locations will be searched for credentials:

    • Aws.config[:credentials]

    • The :access_key_id, :secret_access_key, :session_token, and :account_id options.

    • ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'], ENV['AWS_SESSION_TOKEN'], and ENV['AWS_ACCOUNT_ID'].

    • ~/.aws/credentials

    • ~/.aws/config

    • EC2/ECS IMDS instance profile - When used by default, the timeouts are very aggressive. Construct and pass an instance of Aws::InstanceProfileCredentials or Aws::ECSCredentials to enable retries and extended timeouts. Instance profile credential fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED'] to true.

  • :region (required, String)

    The AWS region to connect to. The configured :region is used to determine the service :endpoint. When not passed, a default :region is searched for in the following locations:

    • Aws.config[:region]
    • ENV['AWS_REGION']
    • ENV['AMAZON_REGION']
    • ENV['AWS_DEFAULT_REGION']
    • ~/.aws/credentials
    • ~/.aws/config
  • :access_key_id (String)
  • :account_id (String)
  • :active_endpoint_cache (Boolean) — default: false

    When set to true, a thread polling for endpoints will be running in the background every 60 secs (default). Defaults to false.

  • :adaptive_retry_wait_to_fill (Boolean) — default: true

    Used only in adaptive retry mode. When true, the request will sleep until there is sufficent client side capacity to retry the request. When false, the request will raise a RetryCapacityNotAvailableError and will not retry instead of sleeping.

  • :auth_scheme_preference (Array<String>)

    A list of preferred authentication schemes to use when making a request. Supported values are: sigv4, sigv4a, httpBearerAuth, and noAuth. When set using ENV['AWS_AUTH_SCHEME_PREFERENCE'] or in shared config as auth_scheme_preference, the value should be a comma-separated list.

  • :client_side_monitoring (Boolean) — default: false

    When true, client-side metrics will be collected for all API requests from this client.

  • :client_side_monitoring_client_id (String) — default: ""

    Allows you to provide an identifier for this client which will be attached to all generated client side metrics. Defaults to an empty string.

  • :client_side_monitoring_host (String) — default: "127.0.0.1"

    Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_port (Integer) — default: 31000

    Required for publishing client metrics. The port that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher) — default: Aws::ClientSideMonitoring::Publisher

    Allows you to provide a custom client-side monitoring publisher class. By default, will use the Client Side Monitoring Agent Publisher.

  • :convert_params (Boolean) — default: true

    When true, an attempt is made to coerce request parameters into the required types.

  • :correct_clock_skew (Boolean) — default: true

    Used only in standard and adaptive retry modes. Specifies whether to apply a clock skew correction and retry requests with skewed client clocks.

  • :defaults_mode (String) — default: "legacy"

    See DefaultsModeConfiguration for a list of the accepted modes and the configuration defaults that are included.

  • :disable_host_prefix_injection (Boolean) — default: false

    When true, the SDK will not prepend the modeled host prefix to the endpoint.

  • :disable_request_compression (Boolean) — default: false

    When set to 'true' the request body will not be compressed for supported operations.

  • :endpoint (String, URI::HTTPS, URI::HTTP)

    Normally you should not configure the :endpoint option directly. This is normally constructed from the :region option. Configuring :endpoint is normally reserved for connecting to test or custom endpoints. The endpoint should be a URI formatted like:

    'http://example.com'
    'https://example.com'
    'http://example.com:123'
    
  • :endpoint_cache_max_entries (Integer) — default: 1000

    Used for the maximum size limit of the LRU cache storing endpoints data for endpoint discovery enabled operations. Defaults to 1000.

  • :endpoint_cache_max_threads (Integer) — default: 10

    Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.

  • :endpoint_cache_poll_interval (Integer) — default: 60

    When :endpoint_discovery and :active_endpoint_cache is enabled, Use this option to config the time interval in seconds for making requests fetching endpoints information. Defaults to 60 sec.

  • :endpoint_discovery (Boolean) — default: false

    When set to true, endpoint discovery will be enabled for operations when available.

  • :ignore_configured_endpoint_urls (Boolean)

    Setting to true disables use of endpoint URLs provided via environment variables and the shared configuration file.

  • :log_formatter (Aws::Log::Formatter) — default: Aws::Log::Formatter.default

    The log formatter.

  • :log_level (Symbol) — default: :info

    The log level to send messages to the :logger at.

  • :logger (Logger)

    The Logger instance to send log messages to. If this option is not set, logging will be disabled.

  • :max_attempts (Integer) — default: 3

    An integer representing the maximum number attempts that will be made for a single request, including the initial attempt. For example, setting this value to 5 will result in a request being retried up to 4 times. Used in standard and adaptive retry modes.

  • :profile (String) — default: "default"

    Used when loading credentials from the shared credentials file at HOME/.aws/credentials. When not specified, 'default' is used.

  • :request_checksum_calculation (String) — default: "when_supported"

    Determines when a checksum will be calculated for request payloads. Values are:

    • when_supported - (default) When set, a checksum will be calculated for all request payloads of operations modeled with the httpChecksum trait where requestChecksumRequired is true and/or a requestAlgorithmMember is modeled.
    • when_required - When set, a checksum will only be calculated for request payloads of operations modeled with the httpChecksum trait where requestChecksumRequired is true or where a requestAlgorithmMember is modeled and supplied.
  • :request_min_compression_size_bytes (Integer) — default: 10240

    The minimum size in bytes that triggers compression for request bodies. The value must be non-negative integer value between 0 and 10485780 bytes inclusive.

  • :response_checksum_validation (String) — default: "when_supported"

    Determines when checksum validation will be performed on response payloads. Values are:

    • when_supported - (default) When set, checksum validation is performed on all response payloads of operations modeled with the httpChecksum trait where responseAlgorithms is modeled, except when no modeled checksum algorithms are supported.
    • when_required - When set, checksum validation is not performed on response payloads of operations unless the checksum algorithm is supported and the requestValidationModeMember member is set to ENABLED.
  • :retry_backoff (Proc)

    A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay. This option is only used in the legacy retry mode.

  • :retry_base_delay (Float) — default: 0.3

    The base delay in seconds used by the default backoff function. This option is only used in the legacy retry mode.

  • :retry_jitter (Symbol) — default: :none

    A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number. This option is only used in the legacy retry mode.

    @see https://www.awsarchitectureblog.com/2015/03/backoff.html

  • :retry_limit (Integer) — default: 3

    The maximum number of times to retry failed requests. Only ~ 500 level server errors and certain ~ 400 level client errors are retried. Generally, these are throttling errors, data checksum errors, networking errors, timeout errors, auth errors, endpoint discovery, and errors from expired credentials. This option is only used in the legacy retry mode.

  • :retry_max_delay (Integer) — default: 0

    The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function. This option is only used in the legacy retry mode.

  • :retry_mode (String) — default: "legacy"

    Specifies which retry algorithm to use. Values are:

    • legacy - The pre-existing retry behavior. This is the default value if no retry mode is provided.

    • standard - A standardized set of retry rules across the AWS SDKs. This includes support for retry quotas, which limit the number of unsuccessful retries a client can make.

    • adaptive - A retry mode that includes all the functionality of standard mode along with automatic client side throttling.

  • :sdk_ua_app_id (String)

    A unique and opaque application ID that is appended to the User-Agent header as app/sdk_ua_app_id. It should have a maximum length of 50. This variable is sourced from environment variable AWS_SDK_UA_APP_ID or the shared config profile attribute sdk_ua_app_id.

  • :secret_access_key (String)
  • :session_token (String)
  • :sigv4a_signing_region_set (Array)

    A list of regions that should be signed with SigV4a signing. When not passed, a default :sigv4a_signing_region_set is searched for in the following locations:

    • Aws.config[:sigv4a_signing_region_set]
    • ENV['AWS_SIGV4A_SIGNING_REGION_SET']
    • ~/.aws/config
  • :stub_responses (Boolean) — default: false

    Causes the client to return stubbed responses. By default fake responses are generated and returned. You can specify the response data to return or errors to raise by calling ClientStubs#stub_responses. See ClientStubs for more information.

    Please note When response stubbing is enabled, no HTTP requests are made, and retries are disabled.

  • :telemetry_provider (Aws::Telemetry::TelemetryProviderBase) — default: Aws::Telemetry::NoOpTelemetryProvider

    Allows you to provide a telemetry provider, which is used to emit telemetry data. By default, uses NoOpTelemetryProvider which will not record or emit any telemetry data. The SDK supports the following telemetry providers:

    • OpenTelemetry (OTel) - To use the OTel provider, install and require the opentelemetry-sdk gem and then, pass in an instance of a Aws::Telemetry::OTelProvider for telemetry provider.
  • :token_provider (Aws::TokenProvider)

    Your Bearer token used for authentication. This can be any class that includes and implements Aws::TokenProvider, or instance of any one of the following classes:

    • Aws::StaticTokenProvider - Used for configuring static, non-refreshing tokens.

    • Aws::SSOTokenProvider - Used for loading tokens from AWS SSO using an access token generated from aws login.

    When :token_provider is not configured directly, the Aws::TokenProviderChain will be used to search for tokens configured for your profile in shared configuration files.

  • :use_dualstack_endpoint (Boolean)

    When set to true, dualstack enabled endpoints (with .aws TLD) will be used if available.

  • :use_fips_endpoint (Boolean)

    When set to true, fips compatible endpoints will be used if available. When a fips region is used, the region is normalized and this config is set to true.

  • :validate_params (Boolean) — default: true

    When true, request parameters are validated before sending the request.

  • :endpoint_provider (Aws::VPCLattice::EndpointProvider)

    The endpoint provider used to resolve endpoints. Any object that responds to #resolve_endpoint(parameters) where parameters is a Struct similar to Aws::VPCLattice::EndpointParameters.

  • :http_continue_timeout (Float) — default: 1

    The number of seconds to wait for a 100-continue response before sending the request body. This option has no effect unless the request has "Expect" header set to "100-continue". Defaults to nil which disables this behaviour. This value can safely be set per request on the session.

  • :http_idle_timeout (Float) — default: 5

    The number of seconds a connection is allowed to sit idle before it is considered stale. Stale connections are closed and removed from the pool before making a request.

  • :http_open_timeout (Float) — default: 15

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_proxy (URI::HTTP, String)

    A proxy to send requests through. Formatted like 'http://proxy.com:123'.

  • :http_read_timeout (Float) — default: 60

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_wire_trace (Boolean) — default: false

    When true, HTTP debug output will be sent to the :logger.

  • :on_chunk_received (Proc)

    When a Proc object is provided, it will be used as callback when each chunk of the response body is received. It provides three arguments: the chunk, the number of bytes received, and the total number of bytes in the response (or nil if the server did not send a content-length).

  • :on_chunk_sent (Proc)

    When a Proc object is provided, it will be used as callback when each chunk of the request body is sent. It provides three arguments: the chunk, the number of bytes read from the body, and the total number of bytes in the body.

  • :raise_response_errors (Boolean) — default: true

    When true, response errors are raised.

  • :ssl_ca_bundle (String)

    Full path to the SSL certificate authority bundle file that should be used when verifying peer certificates. If you do not pass :ssl_ca_bundle or :ssl_ca_directory the the system default will be used if available.

  • :ssl_ca_directory (String)

    Full path of the directory that contains the unbundled SSL certificate authority files for verifying peer certificates. If you do not pass :ssl_ca_bundle or :ssl_ca_directory the the system default will be used if available.

  • :ssl_ca_store (String)

    Sets the X509::Store to verify peer certificate.

  • :ssl_cert (OpenSSL::X509::Certificate)

    Sets a client certificate when creating http connections.

  • :ssl_key (OpenSSL::PKey)

    Sets a client key when creating http connections.

  • :ssl_timeout (Float)

    Sets the SSL timeout in seconds

  • :ssl_verify_peer (Boolean) — default: true

    When true, SSL peer certificates are verified when establishing a connection.



471
472
473
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 471

def initialize(*args)
  super
end

Instance Method Details

#batch_update_rule(params = {}) ⇒ Types::BatchUpdateRuleResponse

Updates the listener rules in a batch. You can use this operation to change the priority of listener rules. This can be useful when bulk updating or swapping rule priority.

Required permissions: vpc-lattice:UpdateRule

For more information, see How Amazon VPC Lattice works with IAM in the Amazon VPC Lattice User Guide.

Examples:

Request syntax with placeholder values


resp = client.batch_update_rule({
  service_identifier: "ServiceIdentifier", # required
  listener_identifier: "ListenerIdentifier", # required
  rules: [ # required
    {
      rule_identifier: "RuleIdentifier", # required
      match: {
        http_match: {
          method: "HttpMethod",
          path_match: {
            match: { # required
              exact: "PathMatchExact",
              prefix: "PathMatchPrefix",
            },
            case_sensitive: false,
          },
          header_matches: [
            {
              name: "HeaderMatchName", # required
              match: { # required
                exact: "HeaderMatchExact",
                prefix: "HeaderMatchPrefix",
                contains: "HeaderMatchContains",
              },
              case_sensitive: false,
            },
          ],
        },
      },
      priority: 1,
      action: {
        forward: {
          target_groups: [ # required
            {
              target_group_identifier: "TargetGroupIdentifier", # required
              weight: 1,
            },
          ],
        },
        fixed_response: {
          status_code: 1, # required
        },
      },
    },
  ],
})

Response structure


resp.successful #=> Array
resp.successful[0].arn #=> String
resp.successful[0].id #=> String
resp.successful[0].name #=> String
resp.successful[0].is_default #=> Boolean
resp.successful[0].match.http_match.method #=> String
resp.successful[0].match.http_match.path_match.match.exact #=> String
resp.successful[0].match.http_match.path_match.match.prefix #=> String
resp.successful[0].match.http_match.path_match.case_sensitive #=> Boolean
resp.successful[0].match.http_match.header_matches #=> Array
resp.successful[0].match.http_match.header_matches[0].name #=> String
resp.successful[0].match.http_match.header_matches[0].match.exact #=> String
resp.successful[0].match.http_match.header_matches[0].match.prefix #=> String
resp.successful[0].match.http_match.header_matches[0].match.contains #=> String
resp.successful[0].match.http_match.header_matches[0].case_sensitive #=> Boolean
resp.successful[0].priority #=> Integer
resp.successful[0].action.forward.target_groups #=> Array
resp.successful[0].action.forward.target_groups[0].target_group_identifier #=> String
resp.successful[0].action.forward.target_groups[0].weight #=> Integer
resp.successful[0].action.fixed_response.status_code #=> Integer
resp.unsuccessful #=> Array
resp.unsuccessful[0].rule_identifier #=> String
resp.unsuccessful[0].failure_code #=> String
resp.unsuccessful[0].failure_message #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_identifier (required, String)

    The ID or ARN of the service.

  • :listener_identifier (required, String)

    The ID or ARN of the listener.

  • :rules (required, Array<Types::RuleUpdate>)

    The rules for the specified listener.

Returns:

See Also:



584
585
586
587
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 584

def batch_update_rule(params = {}, options = {})
  req = build_request(:batch_update_rule, params)
  req.send_request(options)
end

#create_access_log_subscription(params = {}) ⇒ Types::CreateAccessLogSubscriptionResponse

Enables access logs to be sent to Amazon CloudWatch, Amazon S3, and Amazon Kinesis Data Firehose. The service network owner can use the access logs to audit the services in the network. The service network owner can only see access logs from clients and services that are associated with their service network. Access log entries represent traffic originated from VPCs associated with that network. For more information, see Access logs in the Amazon VPC Lattice User Guide.

Examples:

Request syntax with placeholder values


resp = client.create_access_log_subscription({
  client_token: "ClientToken",
  resource_identifier: "ResourceIdentifier", # required
  destination_arn: "AccessLogDestinationArn", # required
  service_network_log_type: "SERVICE", # accepts SERVICE, RESOURCE
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.id #=> String
resp.arn #=> String
resp.resource_id #=> String
resp.resource_arn #=> String
resp.service_network_log_type #=> String, one of "SERVICE", "RESOURCE"
resp.destination_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you retry a request that completed successfully using the same client token and parameters, the retry succeeds without performing any actions. If the parameters aren't identical, the retry fails.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

  • :resource_identifier (required, String)

    The ID or ARN of the service network or service.

  • :destination_arn (required, String)

    The Amazon Resource Name (ARN) of the destination. The supported destination types are CloudWatch Log groups, Kinesis Data Firehose delivery streams, and Amazon S3 buckets.

  • :service_network_log_type (String)

    The type of log that monitors your Amazon VPC Lattice service networks.

  • :tags (Hash<String,String>)

    The tags for the access log subscription.

Returns:

See Also:



661
662
663
664
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 661

def create_access_log_subscription(params = {}, options = {})
  req = build_request(:create_access_log_subscription, params)
  req.send_request(options)
end

#create_listener(params = {}) ⇒ Types::CreateListenerResponse

Creates a listener for a service. Before you start using your Amazon VPC Lattice service, you must add one or more listeners. A listener is a process that checks for connection requests to your services. For more information, see Listeners in the Amazon VPC Lattice User Guide.

Examples:

Request syntax with placeholder values


resp = client.create_listener({
  service_identifier: "ServiceIdentifier", # required
  name: "ListenerName", # required
  protocol: "HTTP", # required, accepts HTTP, HTTPS, TLS_PASSTHROUGH
  port: 1,
  default_action: { # required
    forward: {
      target_groups: [ # required
        {
          target_group_identifier: "TargetGroupIdentifier", # required
          weight: 1,
        },
      ],
    },
    fixed_response: {
      status_code: 1, # required
    },
  },
  client_token: "ClientToken",
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.arn #=> String
resp.id #=> String
resp.name #=> String
resp.protocol #=> String, one of "HTTP", "HTTPS", "TLS_PASSTHROUGH"
resp.port #=> Integer
resp.service_arn #=> String
resp.service_id #=> String
resp.default_action.forward.target_groups #=> Array
resp.default_action.forward.target_groups[0].target_group_identifier #=> String
resp.default_action.forward.target_groups[0].weight #=> Integer
resp.default_action.fixed_response.status_code #=> Integer

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_identifier (required, String)

    The ID or ARN of the service.

  • :name (required, String)

    The name of the listener. A listener name must be unique within a service. The valid characters are a-z, 0-9, and hyphens (-). You can't use a hyphen as the first or last character, or immediately after another hyphen.

  • :protocol (required, String)

    The listener protocol.

  • :port (Integer)

    The listener port. You can specify a value from 1 to 65535. For HTTP, the default is 80. For HTTPS, the default is 443.

  • :default_action (required, Types::RuleAction)

    The action for the default rule. Each listener has a default rule. The default rule is used if no other rules match.

  • :client_token (String)

    A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you retry a request that completed successfully using the same client token and parameters, the retry succeeds without performing any actions. If the parameters aren't identical, the retry fails.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

  • :tags (Hash<String,String>)

    The tags for the listener.

Returns:

See Also:



764
765
766
767
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 764

def create_listener(params = {}, options = {})
  req = build_request(:create_listener, params)
  req.send_request(options)
end

#create_resource_configuration(params = {}) ⇒ Types::CreateResourceConfigurationResponse

Creates a resource configuration. A resource configuration defines a specific resource. You can associate a resource configuration with a service network or a VPC endpoint.

Examples:

Request syntax with placeholder values


resp = client.create_resource_configuration({
  name: "ResourceConfigurationName", # required
  type: "GROUP", # required, accepts GROUP, CHILD, SINGLE, ARN
  port_ranges: ["PortRange"],
  protocol: "TCP", # accepts TCP
  resource_gateway_identifier: "ResourceGatewayIdentifier",
  resource_configuration_group_identifier: "ResourceConfigurationIdentifier",
  resource_configuration_definition: {
    dns_resource: {
      domain_name: "DomainName",
      ip_address_type: "IPV4", # accepts IPV4, IPV6, DUALSTACK
    },
    ip_resource: {
      ip_address: "IpAddress",
    },
    arn_resource: {
      arn: "WildcardArn",
    },
  },
  allow_association_to_shareable_service_network: false,
  custom_domain_name: "DomainName",
  group_domain: "DomainName",
  domain_verification_identifier: "DomainVerificationIdentifier",
  client_token: "ClientToken",
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.id #=> String
resp.name #=> String
resp.arn #=> String
resp.resource_gateway_id #=> String
resp.resource_configuration_group_id #=> String
resp.type #=> String, one of "GROUP", "CHILD", "SINGLE", "ARN"
resp.port_ranges #=> Array
resp.port_ranges[0] #=> String
resp.protocol #=> String, one of "TCP"
resp.status #=> String, one of "ACTIVE", "CREATE_IN_PROGRESS", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.resource_configuration_definition.dns_resource.domain_name #=> String
resp.resource_configuration_definition.dns_resource.ip_address_type #=> String, one of "IPV4", "IPV6", "DUALSTACK"
resp.resource_configuration_definition.ip_resource.ip_address #=> String
resp.resource_configuration_definition.arn_resource.arn #=> String
resp.allow_association_to_shareable_service_network #=> Boolean
resp.created_at #=> Time
resp.failure_reason #=> String
resp.custom_domain_name #=> String
resp.domain_verification_id #=> String
resp.group_domain #=> String
resp.domain_verification_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the resource configuration. The name must be unique within the account. The valid characters are a-z, 0-9, and hyphens (-). You can't use a hyphen as the first or last character, or immediately after another hyphen.

  • :type (required, String)

    The type of resource configuration. A resource configuration can be one of the following types:

    • SINGLE - A single resource.

    • GROUP - A group of resources. You must create a group resource configuration before you create a child resource configuration.

    • CHILD - A single resource that is part of a group resource configuration.

    • ARN - An Amazon Web Services resource.

  • :port_ranges (Array<String>) — default: SINGLE, GROUP, CHILD

    The TCP port ranges that a consumer can use to access a resource configuration (for example: 1-65535). You can separate port ranges using commas (for example: 1,2,22-30).

  • :protocol (String) — default: SINGLE, GROUP

    The protocol accepted by the resource configuration.

  • :resource_gateway_identifier (String) — default: SINGLE, GROUP, ARN

    The ID or ARN of the resource gateway used to connect to the resource configuration. For a child resource configuration, this value is inherited from the parent resource configuration.

  • :resource_configuration_group_identifier (String) — default: CHILD

    The ID or ARN of the parent resource configuration of type GROUP. This is used to associate a child resource configuration with a group resource configuration.

  • :resource_configuration_definition (Types::ResourceConfigurationDefinition)

    Identifies the resource configuration in one of the following ways:

    • Amazon Resource Name (ARN) - Supported resource-types that are provisioned by Amazon Web Services services, such as RDS databases, can be identified by their ARN.

    • Domain name - Any domain name that is publicly resolvable.

    • IP address - For IPv4 and IPv6, only IP addresses in the VPC are supported.

  • :allow_association_to_shareable_service_network (Boolean) — default: SINGLE, GROUP, ARN

    Specifies whether the resource configuration can be associated with a sharable service network. The default is false.

  • :custom_domain_name (String)

    A custom domain name for your resource configuration. Additionally, provide a DomainVerificationID to prove your ownership of a domain.

  • :group_domain (String) — default: GROUP

    The group domain for a group resource configuration. Any domains that you create for the child resource are subdomains of the group domain. Child resources inherit the verification status of the domain.

  • :domain_verification_identifier (String)

    The domain verification ID of your verified custom domain name. If you don't provide an ID, you must configure the DNS settings yourself.

  • :client_token (String)

    A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you retry a request that completed successfully using the same client token and parameters, the retry succeeds without performing any actions. If the parameters aren't identical, the retry fails.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

  • :tags (Hash<String,String>)

    The tags for the resource configuration.

Returns:

See Also:



934
935
936
937
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 934

def create_resource_configuration(params = {}, options = {})
  req = build_request(:create_resource_configuration, params)
  req.send_request(options)
end

#create_resource_gateway(params = {}) ⇒ Types::CreateResourceGatewayResponse

A resource gateway is a point of ingress into the VPC where a resource resides. It spans multiple Availability Zones. For your resource to be accessible from all Availability Zones, you should create your resource gateways to span as many Availability Zones as possible. A VPC can have multiple resource gateways.

Examples:

Request syntax with placeholder values


resp = client.create_resource_gateway({
  client_token: "ClientToken",
  name: "ResourceGatewayName", # required
  vpc_identifier: "VpcId",
  subnet_ids: ["SubnetId"],
  security_group_ids: ["SecurityGroupId"],
  ip_address_type: "IPV4", # accepts IPV4, IPV6, DUALSTACK
  ipv4_addresses_per_eni: 1,
  resource_config_dns_resolution: "IN_VPC", # accepts IN_VPC, PUBLIC
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.name #=> String
resp.id #=> String
resp.arn #=> String
resp.status #=> String, one of "ACTIVE", "CREATE_IN_PROGRESS", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.vpc_identifier #=> String
resp.subnet_ids #=> Array
resp.subnet_ids[0] #=> String
resp.security_group_ids #=> Array
resp.security_group_ids[0] #=> String
resp.ip_address_type #=> String, one of "IPV4", "IPV6", "DUALSTACK"
resp.ipv4_addresses_per_eni #=> Integer
resp.resource_config_dns_resolution #=> String, one of "IN_VPC", "PUBLIC"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you retry a request that completed successfully using the same client token and parameters, the retry succeeds without performing any actions. If the parameters aren't identical, the retry fails.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

  • :name (required, String)

    The name of the resource gateway.

  • :vpc_identifier (String)

    The ID of the VPC for the resource gateway.

  • :subnet_ids (Array<String>)

    The IDs of the VPC subnets in which to create the resource gateway.

  • :security_group_ids (Array<String>)

    The IDs of the security groups to apply to the resource gateway. The security groups must be in the same VPC.

  • :ip_address_type (String)

    A resource gateway can have IPv4, IPv6 or dualstack addresses. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource, as described here:

    • IPv4Assign IPv4 addresses to your resource gateway network interfaces. This option is supported only if all selected subnets have IPv4 address ranges, and the resource also has an IPv4 address.

    • IPv6Assign IPv6 addresses to your resource gateway network interfaces. This option is supported only if all selected subnets are IPv6 only subnets, and the resource also has an IPv6 address.

    • DualstackAssign both IPv4 and IPv6 addresses to your resource gateway network interfaces. This option is supported only if all selected subnets have both IPv4 and IPv6 address ranges, and the resource either has an IPv4 or IPv6 address.

    The IP address type of the resource gateway is independent of the IP address type of the client or the VPC endpoint through which the resource is accessed.

  • :ipv4_addresses_per_eni (Integer)

    The number of IPv4 addresses in each ENI for the resource gateway.

  • :resource_config_dns_resolution (String)

    Indicates how DNS is resolved for resource configurations associated to this resource gateway. ResourceConfigDnsResolution is set at creation time and cannot be changed.

    • IN_VPC - DNS resolution occurs privately within the resource gateway's VPC. DNS queries for resources behind this resource gateway resolve using the DNS resolvers defined in the VPC's DHCP option sets. Use this when your resource domain names are hosted in private Route 53 hosted zones or on-premises DNS servers reachable from the VPC.

    • PUBLIC - DNS resolution occurs against public DNS resolvers. DNS queries for resources behind this resource gateway resolve using standard public DNS. Use this when your resource domain names are publicly resolvable.

  • :tags (Hash<String,String>)

    The tags for the resource gateway.

Returns:

See Also:



1062
1063
1064
1065
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1062

def create_resource_gateway(params = {}, options = {})
  req = build_request(:create_resource_gateway, params)
  req.send_request(options)
end

#create_rule(params = {}) ⇒ Types::CreateRuleResponse

Creates a listener rule. Each listener has a default rule for checking connection requests, but you can define additional rules. Each rule consists of a priority, one or more actions, and one or more conditions. For more information, see Listener rules in the Amazon VPC Lattice User Guide.

Examples:

Request syntax with placeholder values


resp = client.create_rule({
  service_identifier: "ServiceIdentifier", # required
  listener_identifier: "ListenerIdentifier", # required
  name: "RuleName", # required
  match: { # required
    http_match: {
      method: "HttpMethod",
      path_match: {
        match: { # required
          exact: "PathMatchExact",
          prefix: "PathMatchPrefix",
        },
        case_sensitive: false,
      },
      header_matches: [
        {
          name: "HeaderMatchName", # required
          match: { # required
            exact: "HeaderMatchExact",
            prefix: "HeaderMatchPrefix",
            contains: "HeaderMatchContains",
          },
          case_sensitive: false,
        },
      ],
    },
  },
  priority: 1, # required
  action: { # required
    forward: {
      target_groups: [ # required
        {
          target_group_identifier: "TargetGroupIdentifier", # required
          weight: 1,
        },
      ],
    },
    fixed_response: {
      status_code: 1, # required
    },
  },
  client_token: "ClientToken",
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.arn #=> String
resp.id #=> String
resp.name #=> String
resp.match.http_match.method #=> String
resp.match.http_match.path_match.match.exact #=> String
resp.match.http_match.path_match.match.prefix #=> String
resp.match.http_match.path_match.case_sensitive #=> Boolean
resp.match.http_match.header_matches #=> Array
resp.match.http_match.header_matches[0].name #=> String
resp.match.http_match.header_matches[0].match.exact #=> String
resp.match.http_match.header_matches[0].match.prefix #=> String
resp.match.http_match.header_matches[0].match.contains #=> String
resp.match.http_match.header_matches[0].case_sensitive #=> Boolean
resp.priority #=> Integer
resp.action.forward.target_groups #=> Array
resp.action.forward.target_groups[0].target_group_identifier #=> String
resp.action.forward.target_groups[0].weight #=> Integer
resp.action.fixed_response.status_code #=> Integer

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_identifier (required, String)

    The ID or ARN of the service.

  • :listener_identifier (required, String)

    The ID or ARN of the listener.

  • :name (required, String)

    The name of the rule. The name must be unique within the listener. The valid characters are a-z, 0-9, and hyphens (-). You can't use a hyphen as the first or last character, or immediately after another hyphen.

  • :match (required, Types::RuleMatch)

    The rule match.

  • :priority (required, Integer)

    The priority assigned to the rule. Each rule for a specific listener must have a unique priority. The lower the priority number the higher the priority.

  • :action (required, Types::RuleAction)

    The action for the default rule.

  • :client_token (String)

    A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you retry a request that completed successfully using the same client token and parameters, the retry succeeds without performing any actions. If the parameters aren't identical, the retry fails.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

  • :tags (Hash<String,String>)

    The tags for the rule.

Returns:

See Also:



1196
1197
1198
1199
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1196

def create_rule(params = {}, options = {})
  req = build_request(:create_rule, params)
  req.send_request(options)
end

#create_service(params = {}) ⇒ Types::CreateServiceResponse

Creates a service. A service is any software application that can run on instances containers, or serverless functions within an account or virtual private cloud (VPC).

For more information, see Services in the Amazon VPC Lattice User Guide.

Examples:

Request syntax with placeholder values


resp = client.create_service({
  client_token: "ClientToken",
  name: "ServiceName", # required
  tags: {
    "TagKey" => "TagValue",
  },
  custom_domain_name: "ServiceCustomDomainName",
  certificate_arn: "CertificateArn",
  auth_type: "NONE", # accepts NONE, AWS_IAM
})

Response structure


resp.id #=> String
resp.arn #=> String
resp.name #=> String
resp.custom_domain_name #=> String
resp.certificate_arn #=> String
resp.status #=> String, one of "ACTIVE", "CREATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED"
resp.auth_type #=> String, one of "NONE", "AWS_IAM"
resp.dns_entry.domain_name #=> String
resp.dns_entry.hosted_zone_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you retry a request that completed successfully using the same client token and parameters, the retry succeeds without performing any actions. If the parameters aren't identical, the retry fails.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

  • :name (required, String)

    The name of the service. The name must be unique within the account. The valid characters are a-z, 0-9, and hyphens (-). You can't use a hyphen as the first or last character, or immediately after another hyphen.

  • :tags (Hash<String,String>)

    The tags for the service.

  • :custom_domain_name (String)

    The custom domain name of the service.

  • :certificate_arn (String)

    The Amazon Resource Name (ARN) of the certificate.

  • :auth_type (String)

    The type of IAM policy.

    • NONE: The resource does not use an IAM policy. This is the default.

    • AWS_IAM: The resource uses an IAM policy. When this type is used, auth is enabled and an auth policy is required.

Returns:

See Also:



1286
1287
1288
1289
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1286

def create_service(params = {}, options = {})
  req = build_request(:create_service, params)
  req.send_request(options)
end

#create_service_network(params = {}) ⇒ Types::CreateServiceNetworkResponse

Creates a service network. A service network is a logical boundary for a collection of services. You can associate services and VPCs with a service network.

For more information, see Service networks in the Amazon VPC Lattice User Guide.

Examples:

Request syntax with placeholder values


resp = client.create_service_network({
  client_token: "ClientToken",
  name: "ServiceNetworkName", # required
  auth_type: "NONE", # accepts NONE, AWS_IAM
  tags: {
    "TagKey" => "TagValue",
  },
  sharing_config: {
    enabled: false,
  },
})

Response structure


resp.id #=> String
resp.name #=> String
resp.arn #=> String
resp.sharing_config.enabled #=> Boolean
resp.auth_type #=> String, one of "NONE", "AWS_IAM"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you retry a request that completed successfully using the same client token and parameters, the retry succeeds without performing any actions. If the parameters aren't identical, the retry fails.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

  • :name (required, String)

    The name of the service network. The name must be unique to the account. The valid characters are a-z, 0-9, and hyphens (-). You can't use a hyphen as the first or last character, or immediately after another hyphen.

  • :auth_type (String)

    The type of IAM policy.

    • NONE: The resource does not use an IAM policy. This is the default.

    • AWS_IAM: The resource uses an IAM policy. When this type is used, auth is enabled and an auth policy is required.

  • :tags (Hash<String,String>)

    The tags for the service network.

  • :sharing_config (Types::SharingConfig)

    Specify if the service network should be enabled for sharing.

Returns:

See Also:



1367
1368
1369
1370
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1367

def create_service_network(params = {}, options = {})
  req = build_request(:create_service_network, params)
  req.send_request(options)
end

#create_service_network_resource_association(params = {}) ⇒ Types::CreateServiceNetworkResourceAssociationResponse

Associates the specified service network with the specified resource configuration. This allows the resource configuration to receive connections through the service network, including through a service network VPC endpoint.

Examples:

Request syntax with placeholder values


resp = client.create_service_network_resource_association({
  client_token: "ClientToken",
  resource_configuration_identifier: "ResourceConfigurationIdentifier", # required
  service_network_identifier: "ServiceNetworkIdentifierWithoutRegex", # required
  private_dns_enabled: false,
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.id #=> String
resp.arn #=> String
resp.status #=> String, one of "CREATE_IN_PROGRESS", "ACTIVE", "PARTIAL", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED"
resp.created_by #=> String
resp.private_dns_enabled #=> Boolean

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you retry a request that completed successfully using the same client token and parameters, the retry succeeds without performing any actions. If the parameters aren't identical, the retry fails.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

  • :resource_configuration_identifier (required, String)

    The ID of the resource configuration to associate with the service network.

  • :service_network_identifier (required, String)

    The ID of the service network to associate with the resource configuration.

  • :private_dns_enabled (Boolean)

    Indicates if private DNS is enabled for the service network resource association.

  • :tags (Hash<String,String>)

    A key-value pair to associate with a resource.

Returns:

See Also:



1434
1435
1436
1437
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1434

def create_service_network_resource_association(params = {}, options = {})
  req = build_request(:create_service_network_resource_association, params)
  req.send_request(options)
end

#create_service_network_service_association(params = {}) ⇒ Types::CreateServiceNetworkServiceAssociationResponse

Associates the specified service with the specified service network. For more information, see Manage service associations in the Amazon VPC Lattice User Guide.

You can't use this operation if the service and service network are already associated or if there is a disassociation or deletion in progress. If the association fails, you can retry the operation by deleting the association and recreating it.

You cannot associate a service and service network that are shared with a caller. The caller must own either the service or the service network.

As a result of this operation, the association is created in the service network account and the association owner account.

Examples:

Request syntax with placeholder values


resp = client.create_service_network_service_association({
  client_token: "ClientToken",
  service_identifier: "ServiceIdentifier", # required
  service_network_identifier: "ServiceNetworkIdentifier", # required
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.id #=> String
resp.status #=> String, one of "CREATE_IN_PROGRESS", "ACTIVE", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED"
resp.arn #=> String
resp.created_by #=> String
resp.custom_domain_name #=> String
resp.dns_entry.domain_name #=> String
resp.dns_entry.hosted_zone_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you retry a request that completed successfully using the same client token and parameters, the retry succeeds without performing any actions. If the parameters aren't identical, the retry fails.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

  • :service_identifier (required, String)

    The ID or ARN of the service.

  • :service_network_identifier (required, String)

    The ID or ARN of the service network. You must use an ARN if the resources are in different accounts.

  • :tags (Hash<String,String>)

    The tags for the association.

Returns:

See Also:



1513
1514
1515
1516
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1513

def create_service_network_service_association(params = {}, options = {})
  req = build_request(:create_service_network_service_association, params)
  req.send_request(options)
end

#create_service_network_vpc_association(params = {}) ⇒ Types::CreateServiceNetworkVpcAssociationResponse

Associates a VPC with a service network. When you associate a VPC with the service network, it enables all the resources within that VPC to be clients and communicate with other services in the service network. For more information, see Manage VPC associations in the Amazon VPC Lattice User Guide.

You can't use this operation if there is a disassociation in progress. If the association fails, retry by deleting the association and recreating it.

As a result of this operation, the association gets created in the service network account and the VPC owner account.

If you add a security group to the service network and VPC association, the association must continue to always have at least one security group. You can add or edit security groups at any time. However, to remove all security groups, you must first delete the association and recreate it without security groups.

Examples:

Request syntax with placeholder values


resp = client.create_service_network_vpc_association({
  client_token: "ClientToken",
  service_network_identifier: "ServiceNetworkIdentifier", # required
  vpc_identifier: "VpcId", # required
  private_dns_enabled: false,
  security_group_ids: ["SecurityGroupId"],
  tags: {
    "TagKey" => "TagValue",
  },
  dns_options: {
    private_dns_preference: "VERIFIED_DOMAINS_ONLY", # accepts VERIFIED_DOMAINS_ONLY, ALL_DOMAINS, VERIFIED_DOMAINS_AND_SPECIFIED_DOMAINS, SPECIFIED_DOMAINS_ONLY
    private_dns_specified_domains: ["PrivateDnsSpecifiedDomain"],
  },
})

Response structure


resp.id #=> String
resp.status #=> String, one of "CREATE_IN_PROGRESS", "ACTIVE", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED", "UPDATE_FAILED"
resp.arn #=> String
resp.created_by #=> String
resp.security_group_ids #=> Array
resp.security_group_ids[0] #=> String
resp.private_dns_enabled #=> Boolean
resp.dns_options.private_dns_preference #=> String, one of "VERIFIED_DOMAINS_ONLY", "ALL_DOMAINS", "VERIFIED_DOMAINS_AND_SPECIFIED_DOMAINS", "SPECIFIED_DOMAINS_ONLY"
resp.dns_options.private_dns_specified_domains #=> Array
resp.dns_options.private_dns_specified_domains[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you retry a request that completed successfully using the same client token and parameters, the retry succeeds without performing any actions. If the parameters aren't identical, the retry fails.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

  • :service_network_identifier (required, String)

    The ID or ARN of the service network. You must use an ARN if the resources are in different accounts.

  • :vpc_identifier (required, String)

    The ID of the VPC.

  • :private_dns_enabled (Boolean)

    Indicates if private DNS is enabled for the VPC association.

  • :security_group_ids (Array<String>)

    The IDs of the security groups. Security groups aren't added by default. You can add a security group to apply network level controls to control which resources in a VPC are allowed to access the service network and its services. For more information, see Control traffic to resources using security groups in the Amazon VPC User Guide.

  • :tags (Hash<String,String>)

    The tags for the association.

  • :dns_options (Types::DnsOptions)

    DNS options for the service network VPC association.

Returns:

See Also:



1622
1623
1624
1625
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1622

def create_service_network_vpc_association(params = {}, options = {})
  req = build_request(:create_service_network_vpc_association, params)
  req.send_request(options)
end

#create_target_group(params = {}) ⇒ Types::CreateTargetGroupResponse

Creates a target group. A target group is a collection of targets, or compute resources, that run your application or service. A target group can only be used by a single service.

For more information, see Target groups in the Amazon VPC Lattice User Guide.

Examples:

Request syntax with placeholder values


resp = client.create_target_group({
  name: "TargetGroupName", # required
  type: "IP", # required, accepts IP, LAMBDA, INSTANCE, ALB
  config: {
    port: 1,
    protocol: "HTTP", # accepts HTTP, HTTPS, TCP
    protocol_version: "HTTP1", # accepts HTTP1, HTTP2, GRPC
    ip_address_type: "IPV4", # accepts IPV4, IPV6
    vpc_identifier: "VpcId",
    health_check: {
      enabled: false,
      protocol: "HTTP", # accepts HTTP, HTTPS, TCP
      protocol_version: "HTTP1", # accepts HTTP1, HTTP2
      port: 1,
      path: "HealthCheckPath",
      health_check_interval_seconds: 1,
      health_check_timeout_seconds: 1,
      healthy_threshold_count: 1,
      unhealthy_threshold_count: 1,
      matcher: {
        http_code: "HttpCodeMatcher",
      },
    },
    lambda_event_structure_version: "V1", # accepts V1, V2
  },
  client_token: "ClientToken",
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.id #=> String
resp.arn #=> String
resp.name #=> String
resp.type #=> String, one of "IP", "LAMBDA", "INSTANCE", "ALB"
resp.config.port #=> Integer
resp.config.protocol #=> String, one of "HTTP", "HTTPS", "TCP"
resp.config.protocol_version #=> String, one of "HTTP1", "HTTP2", "GRPC"
resp.config.ip_address_type #=> String, one of "IPV4", "IPV6"
resp.config.vpc_identifier #=> String
resp.config.health_check.enabled #=> Boolean
resp.config.health_check.protocol #=> String, one of "HTTP", "HTTPS", "TCP"
resp.config.health_check.protocol_version #=> String, one of "HTTP1", "HTTP2"
resp.config.health_check.port #=> Integer
resp.config.health_check.path #=> String
resp.config.health_check.health_check_interval_seconds #=> Integer
resp.config.health_check.health_check_timeout_seconds #=> Integer
resp.config.health_check.healthy_threshold_count #=> Integer
resp.config.health_check.unhealthy_threshold_count #=> Integer
resp.config.health_check.matcher.http_code #=> String
resp.config.lambda_event_structure_version #=> String, one of "V1", "V2"
resp.status #=> String, one of "CREATE_IN_PROGRESS", "ACTIVE", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the target group. The name must be unique within the account. The valid characters are a-z, 0-9, and hyphens (-). You can't use a hyphen as the first or last character, or immediately after another hyphen.

  • :type (required, String)

    The type of target group.

  • :config (Types::TargetGroupConfig)

    The target group configuration.

  • :client_token (String)

    A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you retry a request that completed successfully using the same client token and parameters, the retry succeeds without performing any actions. If the parameters aren't identical, the retry fails.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

  • :tags (Hash<String,String>)

    The tags for the target group.

Returns:

See Also:



1733
1734
1735
1736
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1733

def create_target_group(params = {}, options = {})
  req = build_request(:create_target_group, params)
  req.send_request(options)
end

#delete_access_log_subscription(params = {}) ⇒ Struct

Deletes the specified access log subscription.

Examples:

Request syntax with placeholder values


resp = client.delete_access_log_subscription({
  access_log_subscription_identifier: "AccessLogSubscriptionIdentifier", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :access_log_subscription_identifier (required, String)

    The ID or ARN of the access log subscription.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1755
1756
1757
1758
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1755

def delete_access_log_subscription(params = {}, options = {})
  req = build_request(:delete_access_log_subscription, params)
  req.send_request(options)
end

#delete_auth_policy(params = {}) ⇒ Struct

Deletes the specified auth policy. If an auth is set to AWS_IAM and the auth policy is deleted, all requests are denied. If you are trying to remove the auth policy completely, you must set the auth type to NONE. If auth is enabled on the resource, but no auth policy is set, all requests are denied.

Examples:

Request syntax with placeholder values


resp = client.delete_auth_policy({
  resource_identifier: "ResourceIdentifier", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_identifier (required, String)

    The ID or ARN of the resource.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1781
1782
1783
1784
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1781

def delete_auth_policy(params = {}, options = {})
  req = build_request(:delete_auth_policy, params)
  req.send_request(options)
end

#delete_domain_verification(params = {}) ⇒ Struct

Deletes the specified domain verification.

Examples:

Request syntax with placeholder values


resp = client.delete_domain_verification({
  domain_verification_identifier: "DomainVerificationIdentifier", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :domain_verification_identifier (required, String)

    The ID of the domain verification to delete.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1803
1804
1805
1806
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1803

def delete_domain_verification(params = {}, options = {})
  req = build_request(:delete_domain_verification, params)
  req.send_request(options)
end

#delete_listener(params = {}) ⇒ Struct

Deletes the specified listener.

Examples:

Request syntax with placeholder values


resp = client.delete_listener({
  service_identifier: "ServiceIdentifier", # required
  listener_identifier: "ListenerIdentifier", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_identifier (required, String)

    The ID or ARN of the service.

  • :listener_identifier (required, String)

    The ID or ARN of the listener.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1829
1830
1831
1832
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1829

def delete_listener(params = {}, options = {})
  req = build_request(:delete_listener, params)
  req.send_request(options)
end

#delete_resource_configuration(params = {}) ⇒ Struct

Deletes the specified resource configuration.

Examples:

Request syntax with placeholder values


resp = client.delete_resource_configuration({
  resource_configuration_identifier: "ResourceConfigurationIdentifier", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_configuration_identifier (required, String)

    The ID or ARN of the resource configuration.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1851
1852
1853
1854
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1851

def delete_resource_configuration(params = {}, options = {})
  req = build_request(:delete_resource_configuration, params)
  req.send_request(options)
end

#delete_resource_endpoint_association(params = {}) ⇒ Types::DeleteResourceEndpointAssociationResponse

Disassociates the resource configuration from the resource VPC endpoint.

Examples:

Request syntax with placeholder values


resp = client.delete_resource_endpoint_association({
  resource_endpoint_association_identifier: "ResourceEndpointAssociationIdentifier", # required
})

Response structure


resp.id #=> String
resp.arn #=> String
resp.resource_configuration_id #=> String
resp.resource_configuration_arn #=> String
resp.vpc_endpoint_id #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_endpoint_association_identifier (required, String)

    The ID or ARN of the association.

Returns:

See Also:



1888
1889
1890
1891
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1888

def delete_resource_endpoint_association(params = {}, options = {})
  req = build_request(:delete_resource_endpoint_association, params)
  req.send_request(options)
end

#delete_resource_gateway(params = {}) ⇒ Types::DeleteResourceGatewayResponse

Deletes the specified resource gateway.

Examples:

Request syntax with placeholder values


resp = client.delete_resource_gateway({
  resource_gateway_identifier: "ResourceGatewayIdentifier", # required
})

Response structure


resp.id #=> String
resp.arn #=> String
resp.name #=> String
resp.status #=> String, one of "ACTIVE", "CREATE_IN_PROGRESS", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_gateway_identifier (required, String)

    The ID or ARN of the resource gateway.

Returns:

See Also:



1922
1923
1924
1925
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1922

def delete_resource_gateway(params = {}, options = {})
  req = build_request(:delete_resource_gateway, params)
  req.send_request(options)
end

#delete_resource_policy(params = {}) ⇒ Struct

Deletes the specified resource policy.

Examples:

Request syntax with placeholder values


resp = client.delete_resource_policy({
  resource_arn: "ResourceArn", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the resource.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1944
1945
1946
1947
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1944

def delete_resource_policy(params = {}, options = {})
  req = build_request(:delete_resource_policy, params)
  req.send_request(options)
end

#delete_rule(params = {}) ⇒ Struct

Deletes a listener rule. Each listener has a default rule for checking connection requests, but you can define additional rules. Each rule consists of a priority, one or more actions, and one or more conditions. You can delete additional listener rules, but you cannot delete the default rule.

For more information, see Listener rules in the Amazon VPC Lattice User Guide.

Examples:

Request syntax with placeholder values


resp = client.delete_rule({
  service_identifier: "ServiceIdentifier", # required
  listener_identifier: "ListenerIdentifier", # required
  rule_identifier: "RuleIdentifier", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_identifier (required, String)

    The ID or ARN of the service.

  • :listener_identifier (required, String)

    The ID or ARN of the listener.

  • :rule_identifier (required, String)

    The ID or ARN of the rule.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1985
1986
1987
1988
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1985

def delete_rule(params = {}, options = {})
  req = build_request(:delete_rule, params)
  req.send_request(options)
end

#delete_service(params = {}) ⇒ Types::DeleteServiceResponse

Deletes a service. A service can't be deleted if it's associated with a service network. If you delete a service, all resources related to the service, such as the resource policy, auth policy, listeners, listener rules, and access log subscriptions, are also deleted. For more information, see Delete a service in the Amazon VPC Lattice User Guide.

Examples:

Request syntax with placeholder values


resp = client.delete_service({
  service_identifier: "ServiceIdentifier", # required
})

Response structure


resp.id #=> String
resp.arn #=> String
resp.name #=> String
resp.status #=> String, one of "ACTIVE", "CREATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_identifier (required, String)

    The ID or ARN of the service.

Returns:

See Also:



2028
2029
2030
2031
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2028

def delete_service(params = {}, options = {})
  req = build_request(:delete_service, params)
  req.send_request(options)
end

#delete_service_network(params = {}) ⇒ Struct

Deletes a service network. You can only delete the service network if there is no service or VPC associated with it. If you delete a service network, all resources related to the service network, such as the resource policy, auth policy, and access log subscriptions, are also deleted. For more information, see Delete a service network in the Amazon VPC Lattice User Guide.

Examples:

Request syntax with placeholder values


resp = client.delete_service_network({
  service_network_identifier: "ServiceNetworkIdentifier", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_network_identifier (required, String)

    The ID or ARN of the service network.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2059
2060
2061
2062
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2059

def delete_service_network(params = {}, options = {})
  req = build_request(:delete_service_network, params)
  req.send_request(options)
end

#delete_service_network_resource_association(params = {}) ⇒ Types::DeleteServiceNetworkResourceAssociationResponse

Deletes the association between a service network and a resource configuration.

Examples:

Request syntax with placeholder values


resp = client.delete_service_network_resource_association({
  service_network_resource_association_identifier: "ServiceNetworkResourceAssociationIdentifier", # required
})

Response structure


resp.id #=> String
resp.arn #=> String
resp.status #=> String, one of "CREATE_IN_PROGRESS", "ACTIVE", "PARTIAL", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_network_resource_association_identifier (required, String)

    The ID of the association.

Returns:

See Also:



2092
2093
2094
2095
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2092

def delete_service_network_resource_association(params = {}, options = {})
  req = build_request(:delete_service_network_resource_association, params)
  req.send_request(options)
end

#delete_service_network_service_association(params = {}) ⇒ Types::DeleteServiceNetworkServiceAssociationResponse

Deletes the association between a service and a service network. This operation fails if an association is still in progress.

Examples:

Request syntax with placeholder values


resp = client.delete_service_network_service_association({
  service_network_service_association_identifier: "ServiceNetworkServiceAssociationIdentifier", # required
})

Response structure


resp.id #=> String
resp.status #=> String, one of "CREATE_IN_PROGRESS", "ACTIVE", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED"
resp.arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_network_service_association_identifier (required, String)

    The ID or ARN of the association.

Returns:

See Also:



2125
2126
2127
2128
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2125

def delete_service_network_service_association(params = {}, options = {})
  req = build_request(:delete_service_network_service_association, params)
  req.send_request(options)
end

#delete_service_network_vpc_association(params = {}) ⇒ Types::DeleteServiceNetworkVpcAssociationResponse

Disassociates the VPC from the service network. You can't disassociate the VPC if there is a create or update association in progress.

Examples:

Request syntax with placeholder values


resp = client.delete_service_network_vpc_association({
  service_network_vpc_association_identifier: "ServiceNetworkVpcAssociationIdentifier", # required
})

Response structure


resp.id #=> String
resp.status #=> String, one of "CREATE_IN_PROGRESS", "ACTIVE", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED", "UPDATE_FAILED"
resp.arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_network_vpc_association_identifier (required, String)

    The ID or ARN of the association.

Returns:

See Also:



2159
2160
2161
2162
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2159

def delete_service_network_vpc_association(params = {}, options = {})
  req = build_request(:delete_service_network_vpc_association, params)
  req.send_request(options)
end

#delete_target_group(params = {}) ⇒ Types::DeleteTargetGroupResponse

Deletes a target group. You can't delete a target group if it is used in a listener rule or if the target group creation is in progress.

Examples:

Request syntax with placeholder values


resp = client.delete_target_group({
  target_group_identifier: "TargetGroupIdentifier", # required
})

Response structure


resp.id #=> String
resp.arn #=> String
resp.status #=> String, one of "CREATE_IN_PROGRESS", "ACTIVE", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :target_group_identifier (required, String)

    The ID or ARN of the target group.

Returns:

See Also:



2192
2193
2194
2195
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2192

def delete_target_group(params = {}, options = {})
  req = build_request(:delete_target_group, params)
  req.send_request(options)
end

#deregister_targets(params = {}) ⇒ Types::DeregisterTargetsResponse

Deregisters the specified targets from the specified target group.

Examples:

Request syntax with placeholder values


resp = client.deregister_targets({
  target_group_identifier: "TargetGroupIdentifier", # required
  targets: [ # required
    {
      id: "TargetIdString", # required
      port: 1,
    },
  ],
})

Response structure


resp.successful #=> Array
resp.successful[0].id #=> String
resp.successful[0].port #=> Integer
resp.unsuccessful #=> Array
resp.unsuccessful[0].id #=> String
resp.unsuccessful[0].port #=> Integer
resp.unsuccessful[0].failure_code #=> String
resp.unsuccessful[0].failure_message #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :target_group_identifier (required, String)

    The ID or ARN of the target group.

  • :targets (required, Array<Types::Target>)

    The targets to deregister.

Returns:

See Also:



2237
2238
2239
2240
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2237

def deregister_targets(params = {}, options = {})
  req = build_request(:deregister_targets, params)
  req.send_request(options)
end

#get_access_log_subscription(params = {}) ⇒ Types::GetAccessLogSubscriptionResponse

Retrieves information about the specified access log subscription.

Examples:

Request syntax with placeholder values


resp = client.get_access_log_subscription({
  access_log_subscription_identifier: "AccessLogSubscriptionIdentifier", # required
})

Response structure


resp.id #=> String
resp.arn #=> String
resp.resource_id #=> String
resp.resource_arn #=> String
resp.destination_arn #=> String
resp.service_network_log_type #=> String, one of "SERVICE", "RESOURCE"
resp.created_at #=> Time
resp.last_updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :access_log_subscription_identifier (required, String)

    The ID or ARN of the access log subscription.

Returns:

See Also:



2279
2280
2281
2282
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2279

def get_access_log_subscription(params = {}, options = {})
  req = build_request(:get_access_log_subscription, params)
  req.send_request(options)
end

#get_auth_policy(params = {}) ⇒ Types::GetAuthPolicyResponse

Retrieves information about the auth policy for the specified service or service network.

Examples:

Request syntax with placeholder values


resp = client.get_auth_policy({
  resource_identifier: "ResourceIdentifier", # required
})

Response structure


resp.policy #=> String
resp.state #=> String, one of "Active", "Inactive"
resp.created_at #=> Time
resp.last_updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_identifier (required, String)

    The ID or ARN of the service network or service.

Returns:

See Also:



2314
2315
2316
2317
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2314

def get_auth_policy(params = {}, options = {})
  req = build_request(:get_auth_policy, params)
  req.send_request(options)
end

#get_domain_verification(params = {}) ⇒ Types::GetDomainVerificationResponse

Retrieves information about a domain verification.ß

Examples:

Request syntax with placeholder values


resp = client.get_domain_verification({
  domain_verification_identifier: "DomainVerificationIdentifier", # required
})

Response structure


resp.id #=> String
resp.arn #=> String
resp.domain_name #=> String
resp.status #=> String, one of "VERIFIED", "PENDING", "VERIFICATION_TIMED_OUT"
resp.txt_method_config.value #=> String
resp.txt_method_config.name #=> String
resp.created_at #=> Time
resp.last_verified_time #=> Time
resp.tags #=> Hash
resp.tags["TagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :domain_verification_identifier (required, String)

    The ID or ARN of the domain verification to retrieve.

Returns:

See Also:



2358
2359
2360
2361
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2358

def get_domain_verification(params = {}, options = {})
  req = build_request(:get_domain_verification, params)
  req.send_request(options)
end

#get_listener(params = {}) ⇒ Types::GetListenerResponse

Retrieves information about the specified listener for the specified service.

Examples:

Request syntax with placeholder values


resp = client.get_listener({
  service_identifier: "ServiceIdentifier", # required
  listener_identifier: "ListenerIdentifier", # required
})

Response structure


resp.arn #=> String
resp.id #=> String
resp.name #=> String
resp.protocol #=> String, one of "HTTP", "HTTPS", "TLS_PASSTHROUGH"
resp.port #=> Integer
resp.service_arn #=> String
resp.service_id #=> String
resp.default_action.forward.target_groups #=> Array
resp.default_action.forward.target_groups[0].target_group_identifier #=> String
resp.default_action.forward.target_groups[0].weight #=> Integer
resp.default_action.fixed_response.status_code #=> Integer
resp.created_at #=> Time
resp.last_updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_identifier (required, String)

    The ID or ARN of the service.

  • :listener_identifier (required, String)

    The ID or ARN of the listener.

Returns:

See Also:



2412
2413
2414
2415
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2412

def get_listener(params = {}, options = {})
  req = build_request(:get_listener, params)
  req.send_request(options)
end

#get_resource_configuration(params = {}) ⇒ Types::GetResourceConfigurationResponse

Retrieves information about the specified resource configuration.

Examples:

Request syntax with placeholder values


resp = client.get_resource_configuration({
  resource_configuration_identifier: "ResourceConfigurationIdentifier", # required
})

Response structure


resp.id #=> String
resp.name #=> String
resp.arn #=> String
resp.resource_gateway_id #=> String
resp.resource_configuration_group_id #=> String
resp.type #=> String, one of "GROUP", "CHILD", "SINGLE", "ARN"
resp.allow_association_to_shareable_service_network #=> Boolean
resp.port_ranges #=> Array
resp.port_ranges[0] #=> String
resp.protocol #=> String, one of "TCP"
resp.custom_domain_name #=> String
resp.status #=> String, one of "ACTIVE", "CREATE_IN_PROGRESS", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.resource_configuration_definition.dns_resource.domain_name #=> String
resp.resource_configuration_definition.dns_resource.ip_address_type #=> String, one of "IPV4", "IPV6", "DUALSTACK"
resp.resource_configuration_definition.ip_resource.ip_address #=> String
resp.resource_configuration_definition.arn_resource.arn #=> String
resp.created_at #=> Time
resp.amazon_managed #=> Boolean
resp.failure_reason #=> String
resp.last_updated_at #=> Time
resp.domain_verification_id #=> String
resp.domain_verification_arn #=> String
resp.domain_verification_status #=> String, one of "VERIFIED", "PENDING", "VERIFICATION_TIMED_OUT"
resp.group_domain #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_configuration_identifier (required, String)

    The ID of the resource configuration.

Returns:

See Also:



2482
2483
2484
2485
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2482

def get_resource_configuration(params = {}, options = {})
  req = build_request(:get_resource_configuration, params)
  req.send_request(options)
end

#get_resource_gateway(params = {}) ⇒ Types::GetResourceGatewayResponse

Retrieves information about the specified resource gateway.

Examples:

Request syntax with placeholder values


resp = client.get_resource_gateway({
  resource_gateway_identifier: "ResourceGatewayIdentifier", # required
})

Response structure


resp.name #=> String
resp.id #=> String
resp.arn #=> String
resp.status #=> String, one of "ACTIVE", "CREATE_IN_PROGRESS", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.vpc_id #=> String
resp.subnet_ids #=> Array
resp.subnet_ids[0] #=> String
resp.service_managed #=> Boolean
resp.managed_by #=> String
resp.security_group_ids #=> Array
resp.security_group_ids[0] #=> String
resp.ip_address_type #=> String, one of "IPV4", "IPV6", "DUALSTACK"
resp.ipv4_addresses_per_eni #=> Integer
resp.resource_config_dns_resolution #=> String, one of "IN_VPC", "PUBLIC"
resp.created_at #=> Time
resp.last_updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_gateway_identifier (required, String)

    The ID of the resource gateway.

Returns:

See Also:



2538
2539
2540
2541
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2538

def get_resource_gateway(params = {}, options = {})
  req = build_request(:get_resource_gateway, params)
  req.send_request(options)
end

#get_resource_policy(params = {}) ⇒ Types::GetResourcePolicyResponse

Retrieves information about the specified resource policy. The resource policy is an IAM policy created on behalf of the resource owner when they share a resource.

Examples:

Request syntax with placeholder values


resp = client.get_resource_policy({
  resource_arn: "ResourceArn", # required
})

Response structure


resp.policy #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the service network or service.

Returns:

See Also:



2568
2569
2570
2571
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2568

def get_resource_policy(params = {}, options = {})
  req = build_request(:get_resource_policy, params)
  req.send_request(options)
end

#get_rule(params = {}) ⇒ Types::GetRuleResponse

Retrieves information about the specified listener rules. You can also retrieve information about the default listener rule. For more information, see Listener rules in the Amazon VPC Lattice User Guide.

Examples:

Request syntax with placeholder values


resp = client.get_rule({
  service_identifier: "ServiceIdentifier", # required
  listener_identifier: "ListenerIdentifier", # required
  rule_identifier: "RuleIdentifier", # required
})

Response structure


resp.arn #=> String
resp.id #=> String
resp.name #=> String
resp.is_default #=> Boolean
resp.match.http_match.method #=> String
resp.match.http_match.path_match.match.exact #=> String
resp.match.http_match.path_match.match.prefix #=> String
resp.match.http_match.path_match.case_sensitive #=> Boolean
resp.match.http_match.header_matches #=> Array
resp.match.http_match.header_matches[0].name #=> String
resp.match.http_match.header_matches[0].match.exact #=> String
resp.match.http_match.header_matches[0].match.prefix #=> String
resp.match.http_match.header_matches[0].match.contains #=> String
resp.match.http_match.header_matches[0].case_sensitive #=> Boolean
resp.priority #=> Integer
resp.action.forward.target_groups #=> Array
resp.action.forward.target_groups[0].target_group_identifier #=> String
resp.action.forward.target_groups[0].weight #=> Integer
resp.action.fixed_response.status_code #=> Integer
resp.created_at #=> Time
resp.last_updated_at #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_identifier (required, String)

    The ID or ARN of the service.

  • :listener_identifier (required, String)

    The ID or ARN of the listener.

  • :rule_identifier (required, String)

    The ID or ARN of the listener rule.

Returns:

See Also:



2639
2640
2641
2642
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2639

def get_rule(params = {}, options = {})
  req = build_request(:get_rule, params)
  req.send_request(options)
end

#get_service(params = {}) ⇒ Types::GetServiceResponse

Retrieves information about the specified service.

Examples:

Request syntax with placeholder values


resp = client.get_service({
  service_identifier: "ServiceIdentifier", # required
})

Response structure


resp.id #=> String
resp.name #=> String
resp.arn #=> String
resp.created_at #=> Time
resp.last_updated_at #=> Time
resp.dns_entry.domain_name #=> String
resp.dns_entry.hosted_zone_id #=> String
resp.custom_domain_name #=> String
resp.certificate_arn #=> String
resp.status #=> String, one of "ACTIVE", "CREATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED"
resp.auth_type #=> String, one of "NONE", "AWS_IAM"
resp.failure_code #=> String
resp.failure_message #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_identifier (required, String)

    The ID or ARN of the service.

Returns:

See Also:



2690
2691
2692
2693
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2690

def get_service(params = {}, options = {})
  req = build_request(:get_service, params)
  req.send_request(options)
end

#get_service_network(params = {}) ⇒ Types::GetServiceNetworkResponse

Retrieves information about the specified service network.

Examples:

Request syntax with placeholder values


resp = client.get_service_network({
  service_network_identifier: "ServiceNetworkIdentifier", # required
})

Response structure


resp.id #=> String
resp.name #=> String
resp.created_at #=> Time
resp.last_updated_at #=> Time
resp.arn #=> String
resp.auth_type #=> String, one of "NONE", "AWS_IAM"
resp.sharing_config.enabled #=> Boolean
resp.number_of_associated_vp_cs #=> Integer
resp.number_of_associated_services #=> Integer

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_network_identifier (required, String)

    The ID or ARN of the service network.

Returns:

See Also:



2734
2735
2736
2737
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2734

def get_service_network(params = {}, options = {})
  req = build_request(:get_service_network, params)
  req.send_request(options)
end

#get_service_network_resource_association(params = {}) ⇒ Types::GetServiceNetworkResourceAssociationResponse

Retrieves information about the specified association between a service network and a resource configuration.

Examples:

Request syntax with placeholder values


resp = client.get_service_network_resource_association({
  service_network_resource_association_identifier: "ServiceNetworkResourceAssociationIdentifier", # required
})

Response structure


resp.id #=> String
resp.arn #=> String
resp.status #=> String, one of "CREATE_IN_PROGRESS", "ACTIVE", "PARTIAL", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED"
resp.created_by #=> String
resp.created_at #=> Time
resp.resource_configuration_id #=> String
resp.resource_configuration_arn #=> String
resp.resource_configuration_name #=> String
resp.service_network_id #=> String
resp.service_network_arn #=> String
resp.service_network_name #=> String
resp.failure_reason #=> String
resp.failure_code #=> String
resp.last_updated_at #=> Time
resp.private_dns_entry.domain_name #=> String
resp.private_dns_entry.hosted_zone_id #=> String
resp.private_dns_enabled #=> Boolean
resp.dns_entry.domain_name #=> String
resp.dns_entry.hosted_zone_id #=> String
resp.is_managed_association #=> Boolean
resp.domain_verification_status #=> String, one of "VERIFIED", "PENDING", "VERIFICATION_TIMED_OUT"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_network_resource_association_identifier (required, String)

    The ID of the association.

Returns:

See Also:



2801
2802
2803
2804
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2801

def get_service_network_resource_association(params = {}, options = {})
  req = build_request(:get_service_network_resource_association, params)
  req.send_request(options)
end

#get_service_network_service_association(params = {}) ⇒ Types::GetServiceNetworkServiceAssociationResponse

Retrieves information about the specified association between a service network and a service.

Examples:

Request syntax with placeholder values


resp = client.get_service_network_service_association({
  service_network_service_association_identifier: "ServiceNetworkServiceAssociationIdentifier", # required
})

Response structure


resp.id #=> String
resp.status #=> String, one of "CREATE_IN_PROGRESS", "ACTIVE", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED"
resp.arn #=> String
resp.created_by #=> String
resp.created_at #=> Time
resp.service_id #=> String
resp.service_name #=> String
resp.service_arn #=> String
resp.service_network_id #=> String
resp.service_network_name #=> String
resp.service_network_arn #=> String
resp.dns_entry.domain_name #=> String
resp.dns_entry.hosted_zone_id #=> String
resp.custom_domain_name #=> String
resp.failure_message #=> String
resp.failure_code #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_network_service_association_identifier (required, String)

    The ID or ARN of the association.

Returns:

See Also:



2859
2860
2861
2862
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2859

def get_service_network_service_association(params = {}, options = {})
  req = build_request(:get_service_network_service_association, params)
  req.send_request(options)
end

#get_service_network_vpc_association(params = {}) ⇒ Types::GetServiceNetworkVpcAssociationResponse

Retrieves information about the specified association between a service network and a VPC.

Examples:

Request syntax with placeholder values


resp = client.get_service_network_vpc_association({
  service_network_vpc_association_identifier: "ServiceNetworkVpcAssociationIdentifier", # required
})

Response structure


resp.id #=> String
resp.status #=> String, one of "CREATE_IN_PROGRESS", "ACTIVE", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED", "UPDATE_FAILED"
resp.arn #=> String
resp.created_by #=> String
resp.created_at #=> Time
resp.service_network_id #=> String
resp.service_network_name #=> String
resp.service_network_arn #=> String
resp.vpc_id #=> String
resp.security_group_ids #=> Array
resp.security_group_ids[0] #=> String
resp.private_dns_enabled #=> Boolean
resp.failure_message #=> String
resp.failure_code #=> String
resp.last_updated_at #=> Time
resp.dns_options.private_dns_preference #=> String, one of "VERIFIED_DOMAINS_ONLY", "ALL_DOMAINS", "VERIFIED_DOMAINS_AND_SPECIFIED_DOMAINS", "SPECIFIED_DOMAINS_ONLY"
resp.dns_options.private_dns_specified_domains #=> Array
resp.dns_options.private_dns_specified_domains[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_network_vpc_association_identifier (required, String)

    The ID or ARN of the association.

Returns:

See Also:



2919
2920
2921
2922
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2919

def get_service_network_vpc_association(params = {}, options = {})
  req = build_request(:get_service_network_vpc_association, params)
  req.send_request(options)
end

#get_target_group(params = {}) ⇒ Types::GetTargetGroupResponse

Retrieves information about the specified target group.

Examples:

Request syntax with placeholder values


resp = client.get_target_group({
  target_group_identifier: "TargetGroupIdentifier", # required
})

Response structure


resp.id #=> String
resp.arn #=> String
resp.name #=> String
resp.type #=> String, one of "IP", "LAMBDA", "INSTANCE", "ALB"
resp.config.port #=> Integer
resp.config.protocol #=> String, one of "HTTP", "HTTPS", "TCP"
resp.config.protocol_version #=> String, one of "HTTP1", "HTTP2", "GRPC"
resp.config.ip_address_type #=> String, one of "IPV4", "IPV6"
resp.config.vpc_identifier #=> String
resp.config.health_check.enabled #=> Boolean
resp.config.health_check.protocol #=> String, one of "HTTP", "HTTPS", "TCP"
resp.config.health_check.protocol_version #=> String, one of "HTTP1", "HTTP2"
resp.config.health_check.port #=> Integer
resp.config.health_check.path #=> String
resp.config.health_check.health_check_interval_seconds #=> Integer
resp.config.health_check.health_check_timeout_seconds #=> Integer
resp.config.health_check.healthy_threshold_count #=> Integer
resp.config.health_check.unhealthy_threshold_count #=> Integer
resp.config.health_check.matcher.http_code #=> String
resp.config.lambda_event_structure_version #=> String, one of "V1", "V2"
resp.created_at #=> Time
resp.last_updated_at #=> Time
resp.status #=> String, one of "CREATE_IN_PROGRESS", "ACTIVE", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED"
resp.service_arns #=> Array
resp.service_arns[0] #=> String
resp.failure_message #=> String
resp.failure_code #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :target_group_identifier (required, String)

    The ID or ARN of the target group.

Returns:

See Also:



2983
2984
2985
2986
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2983

def get_target_group(params = {}, options = {})
  req = build_request(:get_target_group, params)
  req.send_request(options)
end

#list_access_log_subscriptions(params = {}) ⇒ Types::ListAccessLogSubscriptionsResponse

Lists the access log subscriptions for the specified service network or service.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_access_log_subscriptions({
  resource_identifier: "ResourceIdentifier", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.items #=> Array
resp.items[0].id #=> String
resp.items[0].arn #=> String
resp.items[0].resource_id #=> String
resp.items[0].resource_arn #=> String
resp.items[0].destination_arn #=> String
resp.items[0].service_network_log_type #=> String, one of "SERVICE", "RESOURCE"
resp.items[0].created_at #=> Time
resp.items[0].last_updated_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_identifier (required, String)

    The ID or ARN of the service network or service.

  • :max_results (Integer)

    The maximum number of results to return.

  • :next_token (String)

    A pagination token for the next page of results.

Returns:

See Also:



3032
3033
3034
3035
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3032

def list_access_log_subscriptions(params = {}, options = {})
  req = build_request(:list_access_log_subscriptions, params)
  req.send_request(options)
end

#list_domain_verifications(params = {}) ⇒ Types::ListDomainVerificationsResponse

Lists the domain verifications.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_domain_verifications({
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.items #=> Array
resp.items[0].id #=> String
resp.items[0].arn #=> String
resp.items[0].domain_name #=> String
resp.items[0].status #=> String, one of "VERIFIED", "PENDING", "VERIFICATION_TIMED_OUT"
resp.items[0].txt_method_config.value #=> String
resp.items[0].txt_method_config.name #=> String
resp.items[0].created_at #=> Time
resp.items[0].last_verified_time #=> Time
resp.items[0].tags #=> Hash
resp.items[0].tags["TagKey"] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The maximum number of results to return.

  • :next_token (String)

    A pagination token for the next page of results.

Returns:

See Also:



3078
3079
3080
3081
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3078

def list_domain_verifications(params = {}, options = {})
  req = build_request(:list_domain_verifications, params)
  req.send_request(options)
end

#list_listeners(params = {}) ⇒ Types::ListListenersResponse

Lists the listeners for the specified service.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_listeners({
  service_identifier: "ServiceIdentifier", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.items #=> Array
resp.items[0].arn #=> String
resp.items[0].id #=> String
resp.items[0].name #=> String
resp.items[0].protocol #=> String, one of "HTTP", "HTTPS", "TLS_PASSTHROUGH"
resp.items[0].port #=> Integer
resp.items[0].created_at #=> Time
resp.items[0].last_updated_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_identifier (required, String)

    The ID or ARN of the service.

  • :max_results (Integer)

    The maximum number of results to return.

  • :next_token (String)

    A pagination token for the next page of results.

Returns:

See Also:



3125
3126
3127
3128
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3125

def list_listeners(params = {}, options = {})
  req = build_request(:list_listeners, params)
  req.send_request(options)
end

#list_resource_configurations(params = {}) ⇒ Types::ListResourceConfigurationsResponse

Lists the resource configurations owned by or shared with this account.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_resource_configurations({
  resource_gateway_identifier: "ResourceGatewayIdentifier",
  resource_configuration_group_identifier: "ResourceConfigurationIdentifier",
  domain_verification_identifier: "DomainVerificationIdentifier",
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.items #=> Array
resp.items[0].id #=> String
resp.items[0].name #=> String
resp.items[0].arn #=> String
resp.items[0].resource_gateway_id #=> String
resp.items[0].resource_configuration_group_id #=> String
resp.items[0].type #=> String, one of "GROUP", "CHILD", "SINGLE", "ARN"
resp.items[0].status #=> String, one of "ACTIVE", "CREATE_IN_PROGRESS", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.items[0].amazon_managed #=> Boolean
resp.items[0].created_at #=> Time
resp.items[0].last_updated_at #=> Time
resp.items[0].custom_domain_name #=> String
resp.items[0].domain_verification_id #=> String
resp.items[0].group_domain #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_gateway_identifier (String)

    The ID of the resource gateway for the resource configuration.

  • :resource_configuration_group_identifier (String)

    The ID of the resource configuration of type Group.

  • :domain_verification_identifier (String)

    The domain verification ID.

  • :max_results (Integer)

    The maximum page size.

  • :next_token (String)

    A pagination token for the next page of results.

Returns:

See Also:



3187
3188
3189
3190
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3187

def list_resource_configurations(params = {}, options = {})
  req = build_request(:list_resource_configurations, params)
  req.send_request(options)
end

#list_resource_endpoint_associations(params = {}) ⇒ Types::ListResourceEndpointAssociationsResponse

Lists the associations for the specified VPC endpoint.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_resource_endpoint_associations({
  resource_configuration_identifier: "ResourceConfigurationIdentifier", # required
  resource_endpoint_association_identifier: "ResourceEndpointAssociationIdentifier",
  vpc_endpoint_id: "VpcEndpointId",
  vpc_endpoint_owner: "VpcEndpointOwner",
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.items #=> Array
resp.items[0].id #=> String
resp.items[0].arn #=> String
resp.items[0].resource_configuration_id #=> String
resp.items[0].resource_configuration_arn #=> String
resp.items[0].resource_configuration_name #=> String
resp.items[0].vpc_endpoint_id #=> String
resp.items[0].vpc_endpoint_owner #=> String
resp.items[0].created_by #=> String
resp.items[0].created_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_configuration_identifier (required, String)

    The ID for the resource configuration associated with the VPC endpoint.

  • :resource_endpoint_association_identifier (String)

    The ID of the association.

  • :vpc_endpoint_id (String)

    The ID of the VPC endpoint in the association.

  • :vpc_endpoint_owner (String)

    The owner of the VPC endpoint in the association.

  • :max_results (Integer)

    The maximum page size.

  • :next_token (String)

    A pagination token for the next page of results.

Returns:

See Also:



3249
3250
3251
3252
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3249

def list_resource_endpoint_associations(params = {}, options = {})
  req = build_request(:list_resource_endpoint_associations, params)
  req.send_request(options)
end

#list_resource_gateways(params = {}) ⇒ Types::ListResourceGatewaysResponse

Lists the resource gateways that you own or that were shared with you.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_resource_gateways({
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.items #=> Array
resp.items[0].name #=> String
resp.items[0].id #=> String
resp.items[0].arn #=> String
resp.items[0].status #=> String, one of "ACTIVE", "CREATE_IN_PROGRESS", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.items[0].vpc_identifier #=> String
resp.items[0].subnet_ids #=> Array
resp.items[0].subnet_ids[0] #=> String
resp.items[0].security_group_ids #=> Array
resp.items[0].security_group_ids[0] #=> String
resp.items[0].ip_address_type #=> String, one of "IPV4", "IPV6", "DUALSTACK"
resp.items[0].ipv4_addresses_per_eni #=> Integer
resp.items[0].resource_config_dns_resolution #=> String, one of "IN_VPC", "PUBLIC"
resp.items[0].created_at #=> Time
resp.items[0].last_updated_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The maximum page size.

  • :next_token (String)

    If there are additional results, a pagination token for the next page of results.

Returns:

See Also:



3300
3301
3302
3303
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3300

def list_resource_gateways(params = {}, options = {})
  req = build_request(:list_resource_gateways, params)
  req.send_request(options)
end

#list_rules(params = {}) ⇒ Types::ListRulesResponse

Lists the rules for the specified listener.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_rules({
  service_identifier: "ServiceIdentifier", # required
  listener_identifier: "ListenerIdentifier", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.items #=> Array
resp.items[0].arn #=> String
resp.items[0].id #=> String
resp.items[0].name #=> String
resp.items[0].is_default #=> Boolean
resp.items[0].priority #=> Integer
resp.items[0].created_at #=> Time
resp.items[0].last_updated_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_identifier (required, String)

    The ID or ARN of the service.

  • :listener_identifier (required, String)

    The ID or ARN of the listener.

  • :max_results (Integer)

    The maximum number of results to return.

  • :next_token (String)

    A pagination token for the next page of results.

Returns:

See Also:



3351
3352
3353
3354
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3351

def list_rules(params = {}, options = {})
  req = build_request(:list_rules, params)
  req.send_request(options)
end

#list_service_network_resource_associations(params = {}) ⇒ Types::ListServiceNetworkResourceAssociationsResponse

Lists the associations between a service network and a resource configuration.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_service_network_resource_associations({
  service_network_identifier: "ServiceNetworkIdentifier",
  resource_configuration_identifier: "ResourceConfigurationIdentifier",
  max_results: 1,
  next_token: "NextToken",
  include_children: false,
})

Response structure


resp.items #=> Array
resp.items[0].id #=> String
resp.items[0].arn #=> String
resp.items[0].status #=> String, one of "CREATE_IN_PROGRESS", "ACTIVE", "PARTIAL", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED"
resp.items[0].created_by #=> String
resp.items[0].created_at #=> Time
resp.items[0].resource_configuration_id #=> String
resp.items[0].resource_configuration_arn #=> String
resp.items[0].resource_configuration_name #=> String
resp.items[0].service_network_id #=> String
resp.items[0].service_network_arn #=> String
resp.items[0].service_network_name #=> String
resp.items[0].dns_entry.domain_name #=> String
resp.items[0].dns_entry.hosted_zone_id #=> String
resp.items[0].private_dns_entry.domain_name #=> String
resp.items[0].private_dns_entry.hosted_zone_id #=> String
resp.items[0].is_managed_association #=> Boolean
resp.items[0].failure_code #=> String
resp.items[0].private_dns_enabled #=> Boolean
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_network_identifier (String)

    The ID of the service network.

  • :resource_configuration_identifier (String)

    The ID of the resource configuration.

  • :max_results (Integer)

    The maximum page size.

  • :next_token (String)

    If there are additional results, a pagination token for the next page of results.

  • :include_children (Boolean)

    Include service network resource associations of the child resource configuration with the grouped resource configuration.

    The type is boolean and the default value is false.

Returns:

See Also:



3422
3423
3424
3425
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3422

def list_service_network_resource_associations(params = {}, options = {})
  req = build_request(:list_service_network_resource_associations, params)
  req.send_request(options)
end

#list_service_network_service_associations(params = {}) ⇒ Types::ListServiceNetworkServiceAssociationsResponse

Lists the associations between a service network and a service. You can filter the list either by service or service network. You must provide either the service network identifier or the service identifier.

Every association in Amazon VPC Lattice has a unique Amazon Resource Name (ARN), such as when a service network is associated with a VPC or when a service is associated with a service network. If the association is for a resource is shared with another account, the association includes the local account ID as the prefix in the ARN.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_service_network_service_associations({
  service_network_identifier: "ServiceNetworkIdentifier",
  service_identifier: "ServiceIdentifier",
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.items #=> Array
resp.items[0].id #=> String
resp.items[0].status #=> String, one of "CREATE_IN_PROGRESS", "ACTIVE", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED"
resp.items[0].arn #=> String
resp.items[0].created_by #=> String
resp.items[0].created_at #=> Time
resp.items[0].service_id #=> String
resp.items[0].service_name #=> String
resp.items[0].service_arn #=> String
resp.items[0].service_network_id #=> String
resp.items[0].service_network_name #=> String
resp.items[0].service_network_arn #=> String
resp.items[0].dns_entry.domain_name #=> String
resp.items[0].dns_entry.hosted_zone_id #=> String
resp.items[0].custom_domain_name #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_network_identifier (String)

    The ID or ARN of the service network.

  • :service_identifier (String)

    The ID or ARN of the service.

  • :max_results (Integer)

    The maximum number of results to return.

  • :next_token (String)

    A pagination token for the next page of results.

Returns:

See Also:



3489
3490
3491
3492
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3489

def list_service_network_service_associations(params = {}, options = {})
  req = build_request(:list_service_network_service_associations, params)
  req.send_request(options)
end

#list_service_network_vpc_associations(params = {}) ⇒ Types::ListServiceNetworkVpcAssociationsResponse

Lists the associations between a service network and a VPC. You can filter the list either by VPC or service network. You must provide either the ID of the service network identifier or the ID of the VPC.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_service_network_vpc_associations({
  service_network_identifier: "ServiceNetworkIdentifier",
  vpc_identifier: "VpcId",
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.items #=> Array
resp.items[0].id #=> String
resp.items[0].arn #=> String
resp.items[0].status #=> String, one of "CREATE_IN_PROGRESS", "ACTIVE", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED", "UPDATE_FAILED"
resp.items[0].created_by #=> String
resp.items[0].created_at #=> Time
resp.items[0].service_network_id #=> String
resp.items[0].service_network_name #=> String
resp.items[0].service_network_arn #=> String
resp.items[0].private_dns_enabled #=> Boolean
resp.items[0].dns_options.private_dns_preference #=> String, one of "VERIFIED_DOMAINS_ONLY", "ALL_DOMAINS", "VERIFIED_DOMAINS_AND_SPECIFIED_DOMAINS", "SPECIFIED_DOMAINS_ONLY"
resp.items[0].dns_options.private_dns_specified_domains #=> Array
resp.items[0].dns_options.private_dns_specified_domains[0] #=> String
resp.items[0].vpc_id #=> String
resp.items[0].last_updated_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_network_identifier (String)

    The ID or ARN of the service network.

  • :vpc_identifier (String)

    The ID or ARN of the VPC.

  • :max_results (Integer)

    The maximum number of results to return.

  • :next_token (String)

    A pagination token for the next page of results.

Returns:

See Also:



3549
3550
3551
3552
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3549

def list_service_network_vpc_associations(params = {}, options = {})
  req = build_request(:list_service_network_vpc_associations, params)
  req.send_request(options)
end

#list_service_network_vpc_endpoint_associations(params = {}) ⇒ Types::ListServiceNetworkVpcEndpointAssociationsResponse

Lists the associations between a service network and a VPC endpoint.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_service_network_vpc_endpoint_associations({
  service_network_identifier: "ServiceNetworkIdentifier", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.items #=> Array
resp.items[0].vpc_endpoint_id #=> String
resp.items[0].vpc_id #=> String
resp.items[0].vpc_endpoint_owner_id #=> String
resp.items[0].id #=> String
resp.items[0].state #=> String
resp.items[0].service_network_arn #=> String
resp.items[0].created_at #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_network_identifier (required, String)

    The ID of the service network associated with the VPC endpoint.

  • :max_results (Integer)

    The maximum page size.

  • :next_token (String)

    If there are additional results, a pagination token for the next page of results.

Returns:

See Also:



3597
3598
3599
3600
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3597

def list_service_network_vpc_endpoint_associations(params = {}, options = {})
  req = build_request(:list_service_network_vpc_endpoint_associations, params)
  req.send_request(options)
end

#list_service_networks(params = {}) ⇒ Types::ListServiceNetworksResponse

Lists the service networks owned by or shared with this account. The account ID in the ARN shows which account owns the service network.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_service_networks({
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.items #=> Array
resp.items[0].id #=> String
resp.items[0].name #=> String
resp.items[0].arn #=> String
resp.items[0].created_at #=> Time
resp.items[0].last_updated_at #=> Time
resp.items[0].number_of_associated_vp_cs #=> Integer
resp.items[0].number_of_associated_services #=> Integer
resp.items[0].number_of_associated_resource_configurations #=> Integer
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The maximum number of results to return.

  • :next_token (String)

    A pagination token for the next page of results.

Returns:

See Also:



3642
3643
3644
3645
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3642

def list_service_networks(params = {}, options = {})
  req = build_request(:list_service_networks, params)
  req.send_request(options)
end

#list_services(params = {}) ⇒ Types::ListServicesResponse

Lists the services owned by the caller account or shared with the caller account.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_services({
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.items #=> Array
resp.items[0].id #=> String
resp.items[0].name #=> String
resp.items[0].arn #=> String
resp.items[0].created_at #=> Time
resp.items[0].last_updated_at #=> Time
resp.items[0].dns_entry.domain_name #=> String
resp.items[0].dns_entry.hosted_zone_id #=> String
resp.items[0].custom_domain_name #=> String
resp.items[0].status #=> String, one of "ACTIVE", "CREATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED"
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The maximum number of results to return.

  • :next_token (String)

    A pagination token for the next page of results.

Returns:

See Also:



3688
3689
3690
3691
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3688

def list_services(params = {}, options = {})
  req = build_request(:list_services, params)
  req.send_request(options)
end

#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResponse

Lists the tags for the specified resource.

Examples:

Request syntax with placeholder values


resp = client.list_tags_for_resource({
  resource_arn: "Arn", # required
})

Response structure


resp.tags #=> Hash
resp.tags["TagKey"] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the resource.

Returns:

See Also:



3717
3718
3719
3720
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3717

def list_tags_for_resource(params = {}, options = {})
  req = build_request(:list_tags_for_resource, params)
  req.send_request(options)
end

#list_target_groups(params = {}) ⇒ Types::ListTargetGroupsResponse

Lists your target groups. You can narrow your search by using the filters below in your request.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_target_groups({
  max_results: 1,
  next_token: "NextToken",
  vpc_identifier: "VpcId",
  target_group_type: "IP", # accepts IP, LAMBDA, INSTANCE, ALB
})

Response structure


resp.items #=> Array
resp.items[0].id #=> String
resp.items[0].arn #=> String
resp.items[0].name #=> String
resp.items[0].type #=> String, one of "IP", "LAMBDA", "INSTANCE", "ALB"
resp.items[0].created_at #=> Time
resp.items[0].port #=> Integer
resp.items[0].protocol #=> String, one of "HTTP", "HTTPS", "TCP"
resp.items[0].ip_address_type #=> String, one of "IPV4", "IPV6"
resp.items[0].vpc_identifier #=> String
resp.items[0].last_updated_at #=> Time
resp.items[0].status #=> String, one of "CREATE_IN_PROGRESS", "ACTIVE", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED"
resp.items[0].service_arns #=> Array
resp.items[0].service_arns[0] #=> String
resp.items[0].lambda_event_structure_version #=> String, one of "V1", "V2"
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :max_results (Integer)

    The maximum number of results to return.

  • :next_token (String)

    A pagination token for the next page of results.

  • :vpc_identifier (String)

    The ID or ARN of the VPC.

  • :target_group_type (String)

    The target group type.

Returns:

See Also:



3776
3777
3778
3779
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3776

def list_target_groups(params = {}, options = {})
  req = build_request(:list_target_groups, params)
  req.send_request(options)
end

#list_targets(params = {}) ⇒ Types::ListTargetsResponse

Lists the targets for the target group. By default, all targets are included. You can use this API to check the health status of targets. You can also filter the results by target.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_targets({
  target_group_identifier: "TargetGroupIdentifier", # required
  max_results: 1,
  next_token: "NextToken",
  targets: [
    {
      id: "TargetIdString", # required
      port: 1,
    },
  ],
})

Response structure


resp.items #=> Array
resp.items[0].id #=> String
resp.items[0].port #=> Integer
resp.items[0].status #=> String, one of "DRAINING", "UNAVAILABLE", "HEALTHY", "UNHEALTHY", "INITIAL", "UNUSED"
resp.items[0].reason_code #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :target_group_identifier (required, String)

    The ID or ARN of the target group.

  • :max_results (Integer)

    The maximum number of results to return.

  • :next_token (String)

    A pagination token for the next page of results.

  • :targets (Array<Types::Target>)

    The targets.

Returns:

See Also:



3831
3832
3833
3834
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3831

def list_targets(params = {}, options = {})
  req = build_request(:list_targets, params)
  req.send_request(options)
end

#put_auth_policy(params = {}) ⇒ Types::PutAuthPolicyResponse

Creates or updates the auth policy. The policy string in JSON must not contain newlines or blank lines.

For more information, see Auth policies in the Amazon VPC Lattice User Guide.

Examples:

Request syntax with placeholder values


resp = client.put_auth_policy({
  resource_identifier: "ResourceIdentifier", # required
  policy: "AuthPolicyString", # required
})

Response structure


resp.policy #=> String
resp.state #=> String, one of "Active", "Inactive"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_identifier (required, String)

    The ID or ARN of the service network or service for which the policy is created.

  • :policy (required, String)

    The auth policy. The policy string in JSON must not contain newlines or blank lines.

Returns:

See Also:



3875
3876
3877
3878
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3875

def put_auth_policy(params = {}, options = {})
  req = build_request(:put_auth_policy, params)
  req.send_request(options)
end

#put_resource_policy(params = {}) ⇒ Struct

Attaches a resource-based permission policy to a service or service network. The policy must contain the same actions and condition statements as the Amazon Web Services Resource Access Manager permission for sharing services and service networks.

Examples:

Request syntax with placeholder values


resp = client.put_resource_policy({
  resource_arn: "ResourceArn", # required
  policy: "PolicyString", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The ID or ARN of the service network or service for which the policy is created.

  • :policy (required, String)

    An IAM policy. The policy string in JSON must not contain newlines or blank lines.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



3906
3907
3908
3909
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3906

def put_resource_policy(params = {}, options = {})
  req = build_request(:put_resource_policy, params)
  req.send_request(options)
end

#register_targets(params = {}) ⇒ Types::RegisterTargetsResponse

Registers the targets with the target group. If it's a Lambda target, you can only have one target in a target group.

Examples:

Request syntax with placeholder values


resp = client.register_targets({
  target_group_identifier: "TargetGroupIdentifier", # required
  targets: [ # required
    {
      id: "TargetIdString", # required
      port: 1,
    },
  ],
})

Response structure


resp.successful #=> Array
resp.successful[0].id #=> String
resp.successful[0].port #=> Integer
resp.unsuccessful #=> Array
resp.unsuccessful[0].id #=> String
resp.unsuccessful[0].port #=> Integer
resp.unsuccessful[0].failure_code #=> String
resp.unsuccessful[0].failure_message #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :target_group_identifier (required, String)

    The ID or ARN of the target group.

  • :targets (required, Array<Types::Target>)

    The targets.

Returns:

See Also:



3952
3953
3954
3955
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3952

def register_targets(params = {}, options = {})
  req = build_request(:register_targets, params)
  req.send_request(options)
end

#start_domain_verification(params = {}) ⇒ Types::StartDomainVerificationResponse

Starts the domain verification process for a custom domain name.

Examples:

Request syntax with placeholder values


resp = client.start_domain_verification({
  client_token: "ClientToken",
  domain_name: "DomainName", # required
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.id #=> String
resp.arn #=> String
resp.domain_name #=> String
resp.status #=> String, one of "VERIFIED", "PENDING", "VERIFICATION_TIMED_OUT"
resp.txt_method_config.value #=> String
resp.txt_method_config.name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :client_token (String)

    A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you retry a request that completed successfully using the same client token and parameters, the retry succeeds without performing any actions. If the parameters aren't identical, the retry fails.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

  • :domain_name (required, String)

    The domain name to verify ownership for.

  • :tags (Hash<String,String>)

    The tags for the domain verification.

Returns:

See Also:



4006
4007
4008
4009
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 4006

def start_domain_verification(params = {}, options = {})
  req = build_request(:start_domain_verification, params)
  req.send_request(options)
end

#tag_resource(params = {}) ⇒ Struct

Adds the specified tags to the specified resource.

Examples:

Request syntax with placeholder values


resp = client.tag_resource({
  resource_arn: "Arn", # required
  tags: { # required
    "TagKey" => "TagValue",
  },
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the resource.

  • :tags (required, Hash<String,String>)

    The tags for the resource.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4034
4035
4036
4037
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 4034

def tag_resource(params = {}, options = {})
  req = build_request(:tag_resource, params)
  req.send_request(options)
end

#untag_resource(params = {}) ⇒ Struct

Removes the specified tags from the specified resource.

Examples:

Request syntax with placeholder values


resp = client.untag_resource({
  resource_arn: "Arn", # required
  tag_keys: ["TagKey"], # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the resource.

  • :tag_keys (required, Array<String>)

    The tag keys of the tags to remove.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4060
4061
4062
4063
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 4060

def untag_resource(params = {}, options = {})
  req = build_request(:untag_resource, params)
  req.send_request(options)
end

#update_access_log_subscription(params = {}) ⇒ Types::UpdateAccessLogSubscriptionResponse

Updates the specified access log subscription.

Examples:

Request syntax with placeholder values


resp = client.update_access_log_subscription({
  access_log_subscription_identifier: "AccessLogSubscriptionIdentifier", # required
  destination_arn: "AccessLogDestinationArn", # required
})

Response structure


resp.id #=> String
resp.arn #=> String
resp.resource_id #=> String
resp.resource_arn #=> String
resp.destination_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :access_log_subscription_identifier (required, String)

    The ID or ARN of the access log subscription.

  • :destination_arn (required, String)

    The Amazon Resource Name (ARN) of the access log destination.

Returns:

See Also:



4100
4101
4102
4103
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 4100

def update_access_log_subscription(params = {}, options = {})
  req = build_request(:update_access_log_subscription, params)
  req.send_request(options)
end

#update_listener(params = {}) ⇒ Types::UpdateListenerResponse

Updates the specified listener for the specified service.

Examples:

Request syntax with placeholder values


resp = client.update_listener({
  service_identifier: "ServiceIdentifier", # required
  listener_identifier: "ListenerIdentifier", # required
  default_action: { # required
    forward: {
      target_groups: [ # required
        {
          target_group_identifier: "TargetGroupIdentifier", # required
          weight: 1,
        },
      ],
    },
    fixed_response: {
      status_code: 1, # required
    },
  },
})

Response structure


resp.arn #=> String
resp.id #=> String
resp.name #=> String
resp.protocol #=> String, one of "HTTP", "HTTPS", "TLS_PASSTHROUGH"
resp.port #=> Integer
resp.service_arn #=> String
resp.service_id #=> String
resp.default_action.forward.target_groups #=> Array
resp.default_action.forward.target_groups[0].target_group_identifier #=> String
resp.default_action.forward.target_groups[0].weight #=> Integer
resp.default_action.fixed_response.status_code #=> Integer

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_identifier (required, String)

    The ID or ARN of the service.

  • :listener_identifier (required, String)

    The ID or ARN of the listener.

  • :default_action (required, Types::RuleAction)

    The action for the default rule.

Returns:

See Also:



4165
4166
4167
4168
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 4165

def update_listener(params = {}, options = {})
  req = build_request(:update_listener, params)
  req.send_request(options)
end

#update_resource_configuration(params = {}) ⇒ Types::UpdateResourceConfigurationResponse

Updates the specified resource configuration.

Examples:

Request syntax with placeholder values


resp = client.update_resource_configuration({
  resource_configuration_identifier: "ResourceConfigurationIdentifier", # required
  resource_configuration_definition: {
    dns_resource: {
      domain_name: "DomainName",
      ip_address_type: "IPV4", # accepts IPV4, IPV6, DUALSTACK
    },
    ip_resource: {
      ip_address: "IpAddress",
    },
    arn_resource: {
      arn: "WildcardArn",
    },
  },
  allow_association_to_shareable_service_network: false,
  port_ranges: ["PortRange"],
})

Response structure


resp.id #=> String
resp.name #=> String
resp.arn #=> String
resp.resource_gateway_id #=> String
resp.resource_configuration_group_id #=> String
resp.type #=> String, one of "GROUP", "CHILD", "SINGLE", "ARN"
resp.port_ranges #=> Array
resp.port_ranges[0] #=> String
resp.allow_association_to_shareable_service_network #=> Boolean
resp.protocol #=> String, one of "TCP"
resp.status #=> String, one of "ACTIVE", "CREATE_IN_PROGRESS", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.resource_configuration_definition.dns_resource.domain_name #=> String
resp.resource_configuration_definition.dns_resource.ip_address_type #=> String, one of "IPV4", "IPV6", "DUALSTACK"
resp.resource_configuration_definition.ip_resource.ip_address #=> String
resp.resource_configuration_definition.arn_resource.arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_configuration_identifier (required, String)

    The ID of the resource configuration.

  • :resource_configuration_definition (Types::ResourceConfigurationDefinition)

    Identifies the resource configuration in one of the following ways:

    • Amazon Resource Name (ARN) - Supported resource-types that are provisioned by Amazon Web Services services, such as RDS databases, can be identified by their ARN.

    • Domain name - Any domain name that is publicly resolvable.

    • IP address - For IPv4 and IPv6, only IP addresses in the VPC are supported.

  • :allow_association_to_shareable_service_network (Boolean)

    Indicates whether to add the resource configuration to service networks that are shared with other accounts.

  • :port_ranges (Array<String>)

    The TCP port ranges that a consumer can use to access a resource configuration. You can separate port ranges with a comma. Example: 1-65535 or 1,2,22-30

Returns:

See Also:



4252
4253
4254
4255
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 4252

def update_resource_configuration(params = {}, options = {})
  req = build_request(:update_resource_configuration, params)
  req.send_request(options)
end

#update_resource_gateway(params = {}) ⇒ Types::UpdateResourceGatewayResponse

Updates the specified resource gateway.

Examples:

Request syntax with placeholder values


resp = client.update_resource_gateway({
  resource_gateway_identifier: "ResourceGatewayIdentifier", # required
  security_group_ids: ["SecurityGroupId"],
})

Response structure


resp.name #=> String
resp.id #=> String
resp.arn #=> String
resp.status #=> String, one of "ACTIVE", "CREATE_IN_PROGRESS", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED"
resp.vpc_id #=> String
resp.subnet_ids #=> Array
resp.subnet_ids[0] #=> String
resp.security_group_ids #=> Array
resp.security_group_ids[0] #=> String
resp.ip_address_type #=> String, one of "IPV4", "IPV6"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_gateway_identifier (required, String)

    The ID or ARN of the resource gateway.

  • :security_group_ids (Array<String>)

    The IDs of the security groups associated with the resource gateway.

Returns:

See Also:



4300
4301
4302
4303
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 4300

def update_resource_gateway(params = {}, options = {})
  req = build_request(:update_resource_gateway, params)
  req.send_request(options)
end

#update_rule(params = {}) ⇒ Types::UpdateRuleResponse

Updates a specified rule for the listener. You can't modify a default listener rule. To modify a default listener rule, use UpdateListener.

Examples:

Request syntax with placeholder values


resp = client.update_rule({
  service_identifier: "ServiceIdentifier", # required
  listener_identifier: "ListenerIdentifier", # required
  rule_identifier: "RuleIdentifier", # required
  match: {
    http_match: {
      method: "HttpMethod",
      path_match: {
        match: { # required
          exact: "PathMatchExact",
          prefix: "PathMatchPrefix",
        },
        case_sensitive: false,
      },
      header_matches: [
        {
          name: "HeaderMatchName", # required
          match: { # required
            exact: "HeaderMatchExact",
            prefix: "HeaderMatchPrefix",
            contains: "HeaderMatchContains",
          },
          case_sensitive: false,
        },
      ],
    },
  },
  priority: 1,
  action: {
    forward: {
      target_groups: [ # required
        {
          target_group_identifier: "TargetGroupIdentifier", # required
          weight: 1,
        },
      ],
    },
    fixed_response: {
      status_code: 1, # required
    },
  },
})

Response structure


resp.arn #=> String
resp.id #=> String
resp.name #=> String
resp.is_default #=> Boolean
resp.match.http_match.method #=> String
resp.match.http_match.path_match.match.exact #=> String
resp.match.http_match.path_match.match.prefix #=> String
resp.match.http_match.path_match.case_sensitive #=> Boolean
resp.match.http_match.header_matches #=> Array
resp.match.http_match.header_matches[0].name #=> String
resp.match.http_match.header_matches[0].match.exact #=> String
resp.match.http_match.header_matches[0].match.prefix #=> String
resp.match.http_match.header_matches[0].match.contains #=> String
resp.match.http_match.header_matches[0].case_sensitive #=> Boolean
resp.priority #=> Integer
resp.action.forward.target_groups #=> Array
resp.action.forward.target_groups[0].target_group_identifier #=> String
resp.action.forward.target_groups[0].weight #=> Integer
resp.action.fixed_response.status_code #=> Integer

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_identifier (required, String)

    The ID or ARN of the service.

  • :listener_identifier (required, String)

    The ID or ARN of the listener.

  • :rule_identifier (required, String)

    The ID or ARN of the rule.

  • :match (Types::RuleMatch)

    The rule match.

  • :priority (Integer)

    The rule priority. A listener can't have multiple rules with the same priority.

  • :action (Types::RuleAction)

    Information about the action for the specified listener rule.

Returns:

See Also:



4409
4410
4411
4412
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 4409

def update_rule(params = {}, options = {})
  req = build_request(:update_rule, params)
  req.send_request(options)
end

#update_service(params = {}) ⇒ Types::UpdateServiceResponse

Updates the specified service.

Examples:

Request syntax with placeholder values


resp = client.update_service({
  service_identifier: "ServiceIdentifier", # required
  certificate_arn: "CertificateArn",
  auth_type: "NONE", # accepts NONE, AWS_IAM
})

Response structure


resp.id #=> String
resp.arn #=> String
resp.name #=> String
resp.custom_domain_name #=> String
resp.certificate_arn #=> String
resp.auth_type #=> String, one of "NONE", "AWS_IAM"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_identifier (required, String)

    The ID or ARN of the service.

  • :certificate_arn (String)

    The Amazon Resource Name (ARN) of the certificate.

  • :auth_type (String)

    The type of IAM policy.

    • NONE: The resource does not use an IAM policy. This is the default.

    • AWS_IAM: The resource uses an IAM policy. When this type is used, auth is enabled and an auth policy is required.

Returns:

See Also:



4461
4462
4463
4464
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 4461

def update_service(params = {}, options = {})
  req = build_request(:update_service, params)
  req.send_request(options)
end

#update_service_network(params = {}) ⇒ Types::UpdateServiceNetworkResponse

Updates the specified service network.

Examples:

Request syntax with placeholder values


resp = client.update_service_network({
  service_network_identifier: "ServiceNetworkIdentifier", # required
  auth_type: "NONE", # required, accepts NONE, AWS_IAM
})

Response structure


resp.id #=> String
resp.name #=> String
resp.arn #=> String
resp.auth_type #=> String, one of "NONE", "AWS_IAM"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_network_identifier (required, String)

    The ID or ARN of the service network.

  • :auth_type (required, String)

    The type of IAM policy.

    • NONE: The resource does not use an IAM policy. This is the default.

    • AWS_IAM: The resource uses an IAM policy. When this type is used, auth is enabled and an auth policy is required.

Returns:

See Also:



4505
4506
4507
4508
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 4505

def update_service_network(params = {}, options = {})
  req = build_request(:update_service_network, params)
  req.send_request(options)
end

#update_service_network_vpc_association(params = {}) ⇒ Types::UpdateServiceNetworkVpcAssociationResponse

Updates the service network and VPC association. If you add a security group to the service network and VPC association, the association must continue to have at least one security group. You can add or edit security groups at any time. However, to remove all security groups, you must first delete the association and then recreate it without security groups.

Examples:

Request syntax with placeholder values


resp = client.update_service_network_vpc_association({
  service_network_vpc_association_identifier: "ServiceNetworkVpcAssociationIdentifier", # required
  security_group_ids: ["SecurityGroupId"], # required
})

Response structure


resp.id #=> String
resp.arn #=> String
resp.status #=> String, one of "CREATE_IN_PROGRESS", "ACTIVE", "UPDATE_IN_PROGRESS", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED", "UPDATE_FAILED"
resp.created_by #=> String
resp.security_group_ids #=> Array
resp.security_group_ids[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :service_network_vpc_association_identifier (required, String)

    The ID or ARN of the association.

  • :security_group_ids (required, Array<String>)

    The IDs of the security groups.

Returns:

See Also:



4551
4552
4553
4554
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 4551

def update_service_network_vpc_association(params = {}, options = {})
  req = build_request(:update_service_network_vpc_association, params)
  req.send_request(options)
end

#update_target_group(params = {}) ⇒ Types::UpdateTargetGroupResponse

Updates the specified target group.

Examples:

Request syntax with placeholder values


resp = client.update_target_group({
  target_group_identifier: "TargetGroupIdentifier", # required
  health_check: { # required
    enabled: false,
    protocol: "HTTP", # accepts HTTP, HTTPS, TCP
    protocol_version: "HTTP1", # accepts HTTP1, HTTP2
    port: 1,
    path: "HealthCheckPath",
    health_check_interval_seconds: 1,
    health_check_timeout_seconds: 1,
    healthy_threshold_count: 1,
    unhealthy_threshold_count: 1,
    matcher: {
      http_code: "HttpCodeMatcher",
    },
  },
})

Response structure


resp.id #=> String
resp.arn #=> String
resp.name #=> String
resp.type #=> String, one of "IP", "LAMBDA", "INSTANCE", "ALB"
resp.config.port #=> Integer
resp.config.protocol #=> String, one of "HTTP", "HTTPS", "TCP"
resp.config.protocol_version #=> String, one of "HTTP1", "HTTP2", "GRPC"
resp.config.ip_address_type #=> String, one of "IPV4", "IPV6"
resp.config.vpc_identifier #=> String
resp.config.health_check.enabled #=> Boolean
resp.config.health_check.protocol #=> String, one of "HTTP", "HTTPS", "TCP"
resp.config.health_check.protocol_version #=> String, one of "HTTP1", "HTTP2"
resp.config.health_check.port #=> Integer
resp.config.health_check.path #=> String
resp.config.health_check.health_check_interval_seconds #=> Integer
resp.config.health_check.health_check_timeout_seconds #=> Integer
resp.config.health_check.healthy_threshold_count #=> Integer
resp.config.health_check.unhealthy_threshold_count #=> Integer
resp.config.health_check.matcher.http_code #=> String
resp.config.lambda_event_structure_version #=> String, one of "V1", "V2"
resp.status #=> String, one of "CREATE_IN_PROGRESS", "ACTIVE", "DELETE_IN_PROGRESS", "CREATE_FAILED", "DELETE_FAILED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :target_group_identifier (required, String)

    The ID or ARN of the target group.

  • :health_check (required, Types::HealthCheckConfig)

    The health check configuration.

Returns:

See Also:



4621
4622
4623
4624
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 4621

def update_target_group(params = {}, options = {})
  req = build_request(:update_target_group, params)
  req.send_request(options)
end