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 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 - An experimental retry mode that includes all the functionality of standard mode along with automatic client side throttling. This is a provisional mode that may change behavior in the future.

  • :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.



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

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:



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

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:



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

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:



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

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,
  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

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.

  • :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:



911
912
913
914
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 911

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,
  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

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.

  • :tags (Hash<String,String>)

    The tags for the resource gateway.

Returns:

See Also:



1019
1020
1021
1022
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1019

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:



1153
1154
1155
1156
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1153

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:



1243
1244
1245
1246
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1243

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:



1324
1325
1326
1327
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1324

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
  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

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.

  • :tags (Hash<String,String>)

    A key-value pair to associate with a resource.

Returns:

See Also:



1384
1385
1386
1387
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1384

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:



1463
1464
1465
1466
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1463

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
  security_group_ids: ["SecurityGroupId"],
  tags: {
    "TagKey" => "TagValue",
  },
})

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

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.

  • :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.

Returns:

See Also:



1555
1556
1557
1558
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1555

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:



1666
1667
1668
1669
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1666

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:



1688
1689
1690
1691
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1688

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:



1714
1715
1716
1717
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1714

def delete_auth_policy(params = {}, options = {})
  req = build_request(:delete_auth_policy, 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:



1740
1741
1742
1743
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1740

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:



1762
1763
1764
1765
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1762

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:



1799
1800
1801
1802
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1799

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:



1833
1834
1835
1836
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1833

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:



1855
1856
1857
1858
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1855

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:



1896
1897
1898
1899
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1896

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:



1939
1940
1941
1942
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1939

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:



1970
1971
1972
1973
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 1970

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:



2003
2004
2005
2006
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2003

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:



2036
2037
2038
2039
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2036

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:



2070
2071
2072
2073
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2070

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:



2103
2104
2105
2106
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2103

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:



2148
2149
2150
2151
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2148

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:



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

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:



2225
2226
2227
2228
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2225

def get_auth_policy(params = {}, options = {})
  req = build_request(:get_auth_policy, 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:



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

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

Parameters:

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

    ({})

Options Hash (params):

  • :resource_configuration_identifier (required, String)

    The ID of the resource configuration.

Returns:

See Also:



2341
2342
2343
2344
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2341

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.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.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:



2391
2392
2393
2394
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2391

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:



2421
2422
2423
2424
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2421

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:



2492
2493
2494
2495
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2492

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:



2543
2544
2545
2546
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2543

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:



2587
2588
2589
2590
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2587

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.dns_entry.domain_name #=> String
resp.dns_entry.hosted_zone_id #=> String
resp.is_managed_association #=> Boolean

Parameters:

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

    ({})

Options Hash (params):

  • :service_network_resource_association_identifier (required, String)

    The ID of the association.

Returns:

See Also:



2650
2651
2652
2653
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2650

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:



2708
2709
2710
2711
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2708

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.failure_message #=> String
resp.failure_code #=> String
resp.last_updated_at #=> Time

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:



2762
2763
2764
2765
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2762

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:



2826
2827
2828
2829
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2826

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:



2875
2876
2877
2878
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2875

def list_access_log_subscriptions(params = {}, options = {})
  req = build_request(:list_access_log_subscriptions, 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:



2922
2923
2924
2925
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2922

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",
  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.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.

  • :max_results (Integer)

    The maximum page size.

  • :next_token (String)

    A pagination token for the next page of results.

Returns:

See Also:



2977
2978
2979
2980
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 2977

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:



3039
3040
3041
3042
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3039

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].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:



3089
3090
3091
3092
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3089

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:



3140
3141
3142
3143
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3140

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.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:



3210
3211
3212
3213
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3210

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:



3277
3278
3279
3280
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3277

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].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:



3333
3334
3335
3336
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3333

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:



3381
3382
3383
3384
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3381

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:



3426
3427
3428
3429
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3426

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:



3472
3473
3474
3475
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3472

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:



3501
3502
3503
3504
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3501

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:



3560
3561
3562
3563
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3560

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:



3615
3616
3617
3618
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3615

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:



3659
3660
3661
3662
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3659

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:



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

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:



3736
3737
3738
3739
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3736

def register_targets(params = {}, options = {})
  req = build_request(:register_targets, 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:



3764
3765
3766
3767
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3764

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:



3790
3791
3792
3793
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3790

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:



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

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:



3895
3896
3897
3898
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3895

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:



3982
3983
3984
3985
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 3982

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:



4030
4031
4032
4033
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 4030

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:



4139
4140
4141
4142
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 4139

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:



4191
4192
4193
4194
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 4191

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:



4235
4236
4237
4238
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 4235

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:



4281
4282
4283
4284
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 4281

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:



4351
4352
4353
4354
# File 'gems/aws-sdk-vpclattice/lib/aws-sdk-vpclattice/client.rb', line 4351

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