Class: Aws::Health::Client

Inherits:
Seahorse::Client::Base
  • Object
show all
Includes:
ClientStubs
Defined in:
lib/aws-sdk-health/client.rb

Overview

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

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

For details on configuring region and credentials see the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).

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

Class Attribute Summary collapse

API Operations collapse

Class Method Summary collapse

Instance Method Summary collapse

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. This can be an 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`

    • The ‘:access_key_id`, `:secret_access_key`, and `:session_token` options.

    • ENV, ENV

    • ‘~/.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::InstanceProfileCredentails` or `Aws::ECSCredentials` to enable retries and extended timeouts. Instance profile credential fetching can be disabled by setting ENV 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:

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

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

    Set to true to disable SDK automatically adding host prefix to default service endpoint when available.

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

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

  • :simple_json (Boolean) — default: false

    Disables request parameter conversion, validation, and formatting. Also disables response data type conversions. The request parameters hash must be formatted exactly as the API expects.This option is useful when you want to ensure the highest level of performance by avoiding overhead of walking request parameters and response data structures.

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

  • :token_provider (Aws::TokenProvider)

    A Bearer Token Provider. This can be an 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::Health::EndpointProvider)

    The endpoint provider used to resolve endpoints. Any object that responds to ‘#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::Health::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 ‘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_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.



429
430
431
# File 'lib/aws-sdk-health/client.rb', line 429

def initialize(*args)
  super
end

Class Attribute Details

.identifierObject (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



1508
1509
1510
# File 'lib/aws-sdk-health/client.rb', line 1508

def identifier
  @identifier
end

Class Method Details

.errors_moduleObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



1511
1512
1513
# File 'lib/aws-sdk-health/client.rb', line 1511

def errors_module
  Errors
end

Instance Method Details

#build_request(operation_name, params = {}) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Parameters:

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


1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
# File 'lib/aws-sdk-health/client.rb', line 1486

def build_request(operation_name, params = {})
  handlers = @handlers.for(operation_name)
  context = Seahorse::Client::RequestContext.new(
    operation_name: operation_name,
    operation: config.api.operation(operation_name),
    client: self,
    params: params,
    config: config)
  context[:gem_name] = 'aws-sdk-health'
  context[:gem_version] = '1.67.0'
  Seahorse::Client::Request.new(handlers, context)
end

#describe_affected_accounts_for_organization(params = {}) ⇒ Types::DescribeAffectedAccountsForOrganizationResponse

Returns a list of accounts in the organization from Organizations that are affected by the provided event. For more information about the different types of Health events, see [Event].

Before you can call this operation, you must first enable Health to work with Organizations. To do this, call the

EnableHealthServiceAccessForOrganization][2

operation from your

organization’s management account.

<note markdown=“1”> This API operation uses pagination. Specify the ‘nextToken` parameter in the next request to return more results.

</note>

[1]: docs.aws.amazon.com/health/latest/APIReference/API_Event.html [2]: docs.aws.amazon.com/health/latest/APIReference/API_EnableHealthServiceAccessForOrganization.html

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

Examples:

Request syntax with placeholder values


resp = client.describe_affected_accounts_for_organization({
  event_arn: "eventArn", # required
  next_token: "nextToken",
  max_results: 1,
})

Response structure


resp.affected_accounts #=> Array
resp.affected_accounts[0] #=> String
resp.event_scope_code #=> String, one of "PUBLIC", "ACCOUNT_SPECIFIC", "NONE"
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :event_arn (required, String)

    The unique identifier for the event. The event ARN has the ‘arn:aws:health:event-region::event/SERVICE/EVENT_TYPE_CODE/EVENT_TYPE_PLUS_ID ` format.

    For example, an event ARN might look like the following:

    ‘arn:aws:health:us-east-1::event/EC2/EC2_INSTANCE_RETIREMENT_SCHEDULED/EC2_INSTANCE_RETIREMENT_SCHEDULED_ABC123-DEF456`

  • :next_token (String)

    If the results of a search are large, only a portion of the results are returned, and a ‘nextToken` pagination token is returned in the response. To retrieve the next batch of results, reissue the search request and include the returned token. When all results have been returned, the response does not contain a pagination token value.

  • :max_results (Integer)

    The maximum number of items to return in one batch, between 10 and 100, inclusive.

Returns:

See Also:



501
502
503
504
# File 'lib/aws-sdk-health/client.rb', line 501

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

#describe_affected_entities(params = {}) ⇒ Types::DescribeAffectedEntitiesResponse

Returns a list of entities that have been affected by the specified events, based on the specified filter criteria. Entities can refer to individual customer resources, groups of customer resources, or any other construct, depending on the Amazon Web Service. Events that have impact beyond that of the affected entities, or where the extent of impact is unknown, include at least one entity indicating this.

At least one event ARN is required.

<note markdown=“1”> * This API operation uses pagination. Specify the ‘nextToken`

parameter in the next request to return more results.
  • This operation supports resource-level permissions. You can use this operation to allow or deny access to specific Health events. For more information, see [Resource- and action-based conditions] in the *Health User Guide*.

</note>

[1]: docs.aws.amazon.com/health/latest/ug/security_iam_id-based-policy-examples.html#resource-action-based-conditions

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

Examples:

Request syntax with placeholder values


resp = client.describe_affected_entities({
  filter: { # required
    event_arns: ["eventArn"], # required
    entity_arns: ["entityArn"],
    entity_values: ["entityValue"],
    last_updated_times: [
      {
        from: Time.now,
        to: Time.now,
      },
    ],
    tags: [
      {
        "tagKey" => "tagValue",
      },
    ],
    status_codes: ["IMPAIRED"], # accepts IMPAIRED, UNIMPAIRED, UNKNOWN, PENDING, RESOLVED
  },
  locale: "locale",
  next_token: "nextToken",
  max_results: 1,
})

Response structure


resp.entities #=> Array
resp.entities[0].entity_arn #=> String
resp.entities[0].event_arn #=> String
resp.entities[0].entity_value #=> String
resp.entities[0].entity_url #=> String
resp.entities[0]. #=> String
resp.entities[0].last_updated_time #=> Time
resp.entities[0].status_code #=> String, one of "IMPAIRED", "UNIMPAIRED", "UNKNOWN", "PENDING", "RESOLVED"
resp.entities[0].tags #=> Hash
resp.entities[0].tags["tagKey"] #=> String
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :filter (required, Types::EntityFilter)

    Values to narrow the results returned. At least one event ARN is required.

  • :locale (String)

    The locale (language) to return information in. English (en) is the default and the only supported value at this time.

  • :next_token (String)

    If the results of a search are large, only a portion of the results are returned, and a ‘nextToken` pagination token is returned in the response. To retrieve the next batch of results, reissue the search request and include the returned token. When all results have been returned, the response does not contain a pagination token value.

  • :max_results (Integer)

    The maximum number of items to return in one batch, between 10 and 100, inclusive.

Returns:

See Also:



598
599
600
601
# File 'lib/aws-sdk-health/client.rb', line 598

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

#describe_affected_entities_for_organization(params = {}) ⇒ Types::DescribeAffectedEntitiesForOrganizationResponse

Returns a list of entities that have been affected by one or more events for one or more accounts in your organization in Organizations, based on the filter criteria. Entities can refer to individual customer resources, groups of customer resources, or any other construct, depending on the Amazon Web Service.

At least one event Amazon Resource Name (ARN) and account ID are required.

Before you can call this operation, you must first enable Health to work with Organizations. To do this, call the

EnableHealthServiceAccessForOrganization][1

operation from your

organization’s management account.

<note markdown=“1”> * This API operation uses pagination. Specify the ‘nextToken`

parameter in the next request to return more results.
  • This operation doesn’t support resource-level permissions. You can’t use this operation to allow or deny access to specific Health events. For more information, see [Resource- and action-based conditions] in the *Health User Guide*.

</note>

[1]: docs.aws.amazon.com/health/latest/APIReference/API_EnableHealthServiceAccessForOrganization.html [2]: docs.aws.amazon.com/health/latest/ug/security_iam_id-based-policy-examples.html#resource-action-based-conditions

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

Examples:

Request syntax with placeholder values


resp = client.describe_affected_entities_for_organization({
  organization_entity_filters: [
    {
      event_arn: "eventArn", # required
      aws_account_id: "accountId",
    },
  ],
  locale: "locale",
  next_token: "nextToken",
  max_results: 1,
  organization_entity_account_filters: [
    {
      event_arn: "eventArn", # required
      aws_account_id: "accountId",
      status_codes: ["IMPAIRED"], # accepts IMPAIRED, UNIMPAIRED, UNKNOWN, PENDING, RESOLVED
    },
  ],
})

Response structure


resp.entities #=> Array
resp.entities[0].entity_arn #=> String
resp.entities[0].event_arn #=> String
resp.entities[0].entity_value #=> String
resp.entities[0].entity_url #=> String
resp.entities[0]. #=> String
resp.entities[0].last_updated_time #=> Time
resp.entities[0].status_code #=> String, one of "IMPAIRED", "UNIMPAIRED", "UNKNOWN", "PENDING", "RESOLVED"
resp.entities[0].tags #=> Hash
resp.entities[0].tags["tagKey"] #=> String
resp.failed_set #=> Array
resp.failed_set[0]. #=> String
resp.failed_set[0].event_arn #=> String
resp.failed_set[0].error_name #=> String
resp.failed_set[0].error_message #=> String
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :organization_entity_filters (Array<Types::EventAccountFilter>)

    A JSON set of elements including the ‘awsAccountId` and the `eventArn`.

  • :locale (String)

    The locale (language) to return information in. English (en) is the default and the only supported value at this time.

  • :next_token (String)

    If the results of a search are large, only a portion of the results are returned, and a ‘nextToken` pagination token is returned in the response. To retrieve the next batch of results, reissue the search request and include the returned token. When all results have been returned, the response does not contain a pagination token value.

  • :max_results (Integer)

    The maximum number of items to return in one batch, between 10 and 100, inclusive.

  • :organization_entity_account_filters (Array<Types::EntityAccountFilter>)

    A JSON set of elements including the ‘awsAccountId`, `eventArn` and a set of `statusCodes`.

Returns:

See Also:



707
708
709
710
# File 'lib/aws-sdk-health/client.rb', line 707

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

#describe_entity_aggregates(params = {}) ⇒ Types::DescribeEntityAggregatesResponse

Returns the number of entities that are affected by each of the specified events.

Examples:

Request syntax with placeholder values


resp = client.describe_entity_aggregates({
  event_arns: ["eventArn"],
})

Response structure


resp.entity_aggregates #=> Array
resp.entity_aggregates[0].event_arn #=> String
resp.entity_aggregates[0].count #=> Integer
resp.entity_aggregates[0].statuses #=> Hash
resp.entity_aggregates[0].statuses["entityStatusCode"] #=> Integer

Parameters:

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

    ({})

Options Hash (params):

  • :event_arns (Array<String>)

    A list of event ARNs (unique identifiers). For example: ‘“arn:aws:health:us-east-1::event/EC2/EC2_INSTANCE_RETIREMENT_SCHEDULED/EC2_INSTANCE_RETIREMENT_SCHEDULED_ABC123-CDE456”, “arn:aws:health:us-west-1::event/EBS/AWS_EBS_LOST_VOLUME/AWS_EBS_LOST_VOLUME_CHI789_JKL101”`

Returns:

See Also:



742
743
744
745
# File 'lib/aws-sdk-health/client.rb', line 742

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

#describe_entity_aggregates_for_organization(params = {}) ⇒ Types::DescribeEntityAggregatesForOrganizationResponse

Returns a list of entity aggregates for your Organizations that are affected by each of the specified events.

Examples:

Request syntax with placeholder values


resp = client.describe_entity_aggregates_for_organization({
  event_arns: ["eventArn"], # required
  aws_account_ids: ["accountId"],
})

Response structure


resp.organization_entity_aggregates #=> Array
resp.organization_entity_aggregates[0].event_arn #=> String
resp.organization_entity_aggregates[0].count #=> Integer
resp.organization_entity_aggregates[0].statuses #=> Hash
resp.organization_entity_aggregates[0].statuses["entityStatusCode"] #=> Integer
resp.organization_entity_aggregates[0].accounts #=> Array
resp.organization_entity_aggregates[0].accounts[0]. #=> String
resp.organization_entity_aggregates[0].accounts[0].count #=> Integer
resp.organization_entity_aggregates[0].accounts[0].statuses #=> Hash
resp.organization_entity_aggregates[0].accounts[0].statuses["entityStatusCode"] #=> Integer

Parameters:

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

    ({})

Options Hash (params):

  • :event_arns (required, Array<String>)

    A list of event ARNs (unique identifiers). For example: ‘“arn:aws:health:us-east-1::event/EC2/EC2_INSTANCE_RETIREMENT_SCHEDULED/EC2_INSTANCE_RETIREMENT_SCHEDULED_ABC123-CDE456”, “arn:aws:health:us-west-1::event/EBS/AWS_EBS_LOST_VOLUME/AWS_EBS_LOST_VOLUME_CHI789_JKL101”`

  • :aws_account_ids (Array<String>)

    A list of 12-digit Amazon Web Services account numbers that contains the affected entities.

Returns:

See Also:



787
788
789
790
# File 'lib/aws-sdk-health/client.rb', line 787

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

#describe_event_aggregates(params = {}) ⇒ Types::DescribeEventAggregatesResponse

Returns the number of events of each event type (issue, scheduled change, and account notification). If no filter is specified, the counts of all events in each category are returned.

<note markdown=“1”> This API operation uses pagination. Specify the ‘nextToken` parameter in the next request to return more results.

</note>

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

Examples:

Request syntax with placeholder values


resp = client.describe_event_aggregates({
  filter: {
    event_arns: ["eventArn"],
    event_type_codes: ["eventType"],
    services: ["service"],
    regions: ["region"],
    availability_zones: ["availabilityZone"],
    start_times: [
      {
        from: Time.now,
        to: Time.now,
      },
    ],
    end_times: [
      {
        from: Time.now,
        to: Time.now,
      },
    ],
    last_updated_times: [
      {
        from: Time.now,
        to: Time.now,
      },
    ],
    entity_arns: ["entityArn"],
    entity_values: ["entityValue"],
    event_type_categories: ["issue"], # accepts issue, accountNotification, scheduledChange, investigation
    tags: [
      {
        "tagKey" => "tagValue",
      },
    ],
    event_status_codes: ["open"], # accepts open, closed, upcoming
  },
  aggregate_field: "eventTypeCategory", # required, accepts eventTypeCategory
  max_results: 1,
  next_token: "nextToken",
})

Response structure


resp.event_aggregates #=> Array
resp.event_aggregates[0].aggregate_value #=> String
resp.event_aggregates[0].count #=> Integer
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :filter (Types::EventFilter)

    Values to narrow the results returned.

  • :aggregate_field (required, String)

    The only currently supported value is ‘eventTypeCategory`.

  • :max_results (Integer)

    The maximum number of items to return in one batch, between 10 and 100, inclusive.

  • :next_token (String)

    If the results of a search are large, only a portion of the results are returned, and a ‘nextToken` pagination token is returned in the response. To retrieve the next batch of results, reissue the search request and include the returned token. When all results have been returned, the response does not contain a pagination token value.

Returns:

See Also:



878
879
880
881
# File 'lib/aws-sdk-health/client.rb', line 878

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

#describe_event_details(params = {}) ⇒ Types::DescribeEventDetailsResponse

Returns detailed information about one or more specified events. Information includes standard event data (Amazon Web Services Region, service, and so on, as returned by [DescribeEvents]), a detailed event description, and possible additional metadata that depends upon the nature of the event. Affected entities are not included. To retrieve the entities, use the [DescribeAffectedEntities] operation.

If a specified event can’t be retrieved, an error message is returned for that event.

<note markdown=“1”> This operation supports resource-level permissions. You can use this operation to allow or deny access to specific Health events. For more information, see [Resource- and action-based conditions] in the *Health User Guide*.

</note>

[1]: docs.aws.amazon.com/health/latest/APIReference/API_DescribeEvents.html [2]: docs.aws.amazon.com/health/latest/APIReference/API_DescribeAffectedEntities.html [3]: docs.aws.amazon.com/health/latest/ug/security_iam_id-based-policy-examples.html#resource-action-based-conditions

Examples:

Request syntax with placeholder values


resp = client.describe_event_details({
  event_arns: ["eventArn"], # required
  locale: "locale",
})

Response structure


resp.successful_set #=> Array
resp.successful_set[0].event.arn #=> String
resp.successful_set[0].event.service #=> String
resp.successful_set[0].event.event_type_code #=> String
resp.successful_set[0].event.event_type_category #=> String, one of "issue", "accountNotification", "scheduledChange", "investigation"
resp.successful_set[0].event.region #=> String
resp.successful_set[0].event.availability_zone #=> String
resp.successful_set[0].event.start_time #=> Time
resp.successful_set[0].event.end_time #=> Time
resp.successful_set[0].event.last_updated_time #=> Time
resp.successful_set[0].event.status_code #=> String, one of "open", "closed", "upcoming"
resp.successful_set[0].event.event_scope_code #=> String, one of "PUBLIC", "ACCOUNT_SPECIFIC", "NONE"
resp.successful_set[0].event_description.latest_description #=> String
resp.successful_set[0]. #=> Hash
resp.successful_set[0].["metadataKey"] #=> String
resp.failed_set #=> Array
resp.failed_set[0].event_arn #=> String
resp.failed_set[0].error_name #=> String
resp.failed_set[0].error_message #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :event_arns (required, Array<String>)

    A list of event ARNs (unique identifiers). For example: ‘“arn:aws:health:us-east-1::event/EC2/EC2_INSTANCE_RETIREMENT_SCHEDULED/EC2_INSTANCE_RETIREMENT_SCHEDULED_ABC123-CDE456”, “arn:aws:health:us-west-1::event/EBS/AWS_EBS_LOST_VOLUME/AWS_EBS_LOST_VOLUME_CHI789_JKL101”`

  • :locale (String)

    The locale (language) to return information in. English (en) is the default and the only supported value at this time.

Returns:

See Also:



954
955
956
957
# File 'lib/aws-sdk-health/client.rb', line 954

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

#describe_event_details_for_organization(params = {}) ⇒ Types::DescribeEventDetailsForOrganizationResponse

Returns detailed information about one or more specified events for one or more Amazon Web Services accounts in your organization. This information includes standard event data (such as the Amazon Web Services Region and service), an event description, and (depending on the event) possible metadata. This operation doesn’t return affected entities, such as the resources related to the event. To return affected entities, use the

DescribeAffectedEntitiesForOrganization][1

operation.

<note markdown=“1”> Before you can call this operation, you must first enable Health to work with Organizations. To do this, call the

EnableHealthServiceAccessForOrganization][2

operation from your

organization’s management account.

</note>

When you call the ‘DescribeEventDetailsForOrganization` operation, specify the `organizationEventDetailFilters` object in the request. Depending on the Health event type, note the following differences:

  • To return event details for a public event, you must specify a null value for the ‘awsAccountId` parameter. If you specify an account ID for a public event, Health returns an error message because public events aren’t specific to an account.

  • To return event details for an event that is specific to an account in your organization, you must specify the ‘awsAccountId` parameter in the request. If you don’t specify an account ID, Health returns an error message because the event is specific to an account in your organization.

For more information, see [Event].

<note markdown=“1”> This operation doesn’t support resource-level permissions. You can’t use this operation to allow or deny access to specific Health events. For more information, see [Resource- and action-based conditions] in the *Health User Guide*.

</note>

[1]: docs.aws.amazon.com/health/latest/APIReference/API_DescribeAffectedEntitiesForOrganization.html [2]: docs.aws.amazon.com/health/latest/APIReference/API_EnableHealthServiceAccessForOrganization.html [3]: docs.aws.amazon.com/health/latest/APIReference/API_Event.html [4]: docs.aws.amazon.com/health/latest/ug/security_iam_id-based-policy-examples.html#resource-action-based-conditions

Examples:

Request syntax with placeholder values


resp = client.describe_event_details_for_organization({
  organization_event_detail_filters: [ # required
    {
      event_arn: "eventArn", # required
      aws_account_id: "accountId",
    },
  ],
  locale: "locale",
})

Response structure


resp.successful_set #=> Array
resp.successful_set[0]. #=> String
resp.successful_set[0].event.arn #=> String
resp.successful_set[0].event.service #=> String
resp.successful_set[0].event.event_type_code #=> String
resp.successful_set[0].event.event_type_category #=> String, one of "issue", "accountNotification", "scheduledChange", "investigation"
resp.successful_set[0].event.region #=> String
resp.successful_set[0].event.availability_zone #=> String
resp.successful_set[0].event.start_time #=> Time
resp.successful_set[0].event.end_time #=> Time
resp.successful_set[0].event.last_updated_time #=> Time
resp.successful_set[0].event.status_code #=> String, one of "open", "closed", "upcoming"
resp.successful_set[0].event.event_scope_code #=> String, one of "PUBLIC", "ACCOUNT_SPECIFIC", "NONE"
resp.successful_set[0].event_description.latest_description #=> String
resp.successful_set[0]. #=> Hash
resp.successful_set[0].["metadataKey"] #=> String
resp.failed_set #=> Array
resp.failed_set[0]. #=> String
resp.failed_set[0].event_arn #=> String
resp.failed_set[0].error_name #=> String
resp.failed_set[0].error_message #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :organization_event_detail_filters (required, Array<Types::EventAccountFilter>)

    A set of JSON elements that includes the ‘awsAccountId` and the `eventArn`.

  • :locale (String)

    The locale (language) to return information in. English (en) is the default and the only supported value at this time.

Returns:

See Also:



1059
1060
1061
1062
# File 'lib/aws-sdk-health/client.rb', line 1059

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

#describe_event_types(params = {}) ⇒ Types::DescribeEventTypesResponse

Returns the event types that meet the specified filter criteria. You can use this API operation to find information about the Health event, such as the category, Amazon Web Service, and event code. The metadata for each event appears in the [EventType] object.

If you don’t specify a filter criteria, the API operation returns all event types, in no particular order.

<note markdown=“1”> This API operation uses pagination. Specify the ‘nextToken` parameter in the next request to return more results.

</note>

[1]: docs.aws.amazon.com/health/latest/APIReference/API_EventType.html

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

Examples:

Request syntax with placeholder values


resp = client.describe_event_types({
  filter: {
    event_type_codes: ["eventTypeCode"],
    services: ["service"],
    event_type_categories: ["issue"], # accepts issue, accountNotification, scheduledChange, investigation
  },
  locale: "locale",
  next_token: "nextToken",
  max_results: 1,
})

Response structure


resp.event_types #=> Array
resp.event_types[0].service #=> String
resp.event_types[0].code #=> String
resp.event_types[0].category #=> String, one of "issue", "accountNotification", "scheduledChange", "investigation"
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :filter (Types::EventTypeFilter)

    Values to narrow the results returned.

  • :locale (String)

    The locale (language) to return information in. English (en) is the default and the only supported value at this time.

  • :next_token (String)

    If the results of a search are large, only a portion of the results are returned, and a ‘nextToken` pagination token is returned in the response. To retrieve the next batch of results, reissue the search request and include the returned token. When all results have been returned, the response does not contain a pagination token value.

  • :max_results (Integer)

    The maximum number of items to return in one batch, between 10 and 100, inclusive.

    <note markdown=“1”> If you don’t specify the ‘maxResults` parameter, this operation returns a maximum of 30 items by default.

    </note>
    

Returns:

See Also:



1136
1137
1138
1139
# File 'lib/aws-sdk-health/client.rb', line 1136

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

#describe_events(params = {}) ⇒ Types::DescribeEventsResponse

Returns information about events that meet the specified filter criteria. Events are returned in a summary form and do not include the detailed description, any additional metadata that depends on the event type, or any affected resources. To retrieve that information, use the [DescribeEventDetails] and [DescribeAffectedEntities] operations.

If no filter criteria are specified, all events are returned. Results are sorted by ‘lastModifiedTime`, starting with the most recent event.

<note markdown=“1”> * When you call the ‘DescribeEvents` operation and specify an entity

for the `entityValues` parameter, Health might return public events
that aren't specific to that resource. For example, if you call
`DescribeEvents` and specify an ID for an Amazon Elastic Compute
Cloud (Amazon EC2) instance, Health might return events that aren't
specific to that resource or service. To get events that are
specific to a service, use the `services` parameter in the `filter`
object. For more information, see [Event][3].
  • This API operation uses pagination. Specify the ‘nextToken` parameter in the next request to return more results.

</note>

[1]: docs.aws.amazon.com/health/latest/APIReference/API_DescribeEventDetails.html [2]: docs.aws.amazon.com/health/latest/APIReference/API_DescribeAffectedEntities.html [3]: docs.aws.amazon.com/health/latest/APIReference/API_Event.html

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

Examples:

Request syntax with placeholder values


resp = client.describe_events({
  filter: {
    event_arns: ["eventArn"],
    event_type_codes: ["eventType"],
    services: ["service"],
    regions: ["region"],
    availability_zones: ["availabilityZone"],
    start_times: [
      {
        from: Time.now,
        to: Time.now,
      },
    ],
    end_times: [
      {
        from: Time.now,
        to: Time.now,
      },
    ],
    last_updated_times: [
      {
        from: Time.now,
        to: Time.now,
      },
    ],
    entity_arns: ["entityArn"],
    entity_values: ["entityValue"],
    event_type_categories: ["issue"], # accepts issue, accountNotification, scheduledChange, investigation
    tags: [
      {
        "tagKey" => "tagValue",
      },
    ],
    event_status_codes: ["open"], # accepts open, closed, upcoming
  },
  next_token: "nextToken",
  max_results: 1,
  locale: "locale",
})

Response structure


resp.events #=> Array
resp.events[0].arn #=> String
resp.events[0].service #=> String
resp.events[0].event_type_code #=> String
resp.events[0].event_type_category #=> String, one of "issue", "accountNotification", "scheduledChange", "investigation"
resp.events[0].region #=> String
resp.events[0].availability_zone #=> String
resp.events[0].start_time #=> Time
resp.events[0].end_time #=> Time
resp.events[0].last_updated_time #=> Time
resp.events[0].status_code #=> String, one of "open", "closed", "upcoming"
resp.events[0].event_scope_code #=> String, one of "PUBLIC", "ACCOUNT_SPECIFIC", "NONE"
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :filter (Types::EventFilter)

    Values to narrow the results returned.

  • :next_token (String)

    If the results of a search are large, only a portion of the results are returned, and a ‘nextToken` pagination token is returned in the response. To retrieve the next batch of results, reissue the search request and include the returned token. When all results have been returned, the response does not contain a pagination token value.

  • :max_results (Integer)

    The maximum number of items to return in one batch, between 10 and 100, inclusive.

  • :locale (String)

    The locale (language) to return information in. English (en) is the default and the only supported value at this time.

Returns:

See Also:



1258
1259
1260
1261
# File 'lib/aws-sdk-health/client.rb', line 1258

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

#describe_events_for_organization(params = {}) ⇒ Types::DescribeEventsForOrganizationResponse

Returns information about events across your organization in Organizations. You can use the`filters` parameter to specify the events that you want to return. Events are returned in a summary form and don’t include the affected accounts, detailed description, any additional metadata that depends on the event type, or any affected resources. To retrieve that information, use the following operations:

  • DescribeAffectedAccountsForOrganization][1
  • DescribeEventDetailsForOrganization][2
  • DescribeAffectedEntitiesForOrganization][3

If you don’t specify a ‘filter`, the `DescribeEventsForOrganizations` returns all events across your organization. Results are sorted by `lastModifiedTime`, starting with the most recent event.

For more information about the different types of Health events, see [Event].

Before you can call this operation, you must first enable Health to work with Organizations. To do this, call the

EnableHealthServiceAccessForOrganization][5

operation from your

organization’s management account.

<note markdown=“1”> This API operation uses pagination. Specify the ‘nextToken` parameter in the next request to return more results.

</note>

[1]: docs.aws.amazon.com/health/latest/APIReference/API_DescribeAffectedAccountsForOrganization.html [2]: docs.aws.amazon.com/health/latest/APIReference/API_DescribeEventDetailsForOrganization.html [3]: docs.aws.amazon.com/health/latest/APIReference/API_DescribeAffectedEntitiesForOrganization.html [4]: docs.aws.amazon.com/health/latest/APIReference/API_Event.html [5]: docs.aws.amazon.com/health/latest/APIReference/API_EnableHealthServiceAccessForOrganization.html

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

Examples:

Request syntax with placeholder values


resp = client.describe_events_for_organization({
  filter: {
    event_type_codes: ["eventType"],
    aws_account_ids: ["accountId"],
    services: ["service"],
    regions: ["region"],
    start_time: {
      from: Time.now,
      to: Time.now,
    },
    end_time: {
      from: Time.now,
      to: Time.now,
    },
    last_updated_time: {
      from: Time.now,
      to: Time.now,
    },
    entity_arns: ["entityArn"],
    entity_values: ["entityValue"],
    event_type_categories: ["issue"], # accepts issue, accountNotification, scheduledChange, investigation
    event_status_codes: ["open"], # accepts open, closed, upcoming
  },
  next_token: "nextToken",
  max_results: 1,
  locale: "locale",
})

Response structure


resp.events #=> Array
resp.events[0].arn #=> String
resp.events[0].service #=> String
resp.events[0].event_type_code #=> String
resp.events[0].event_type_category #=> String, one of "issue", "accountNotification", "scheduledChange", "investigation"
resp.events[0].event_scope_code #=> String, one of "PUBLIC", "ACCOUNT_SPECIFIC", "NONE"
resp.events[0].region #=> String
resp.events[0].start_time #=> Time
resp.events[0].end_time #=> Time
resp.events[0].last_updated_time #=> Time
resp.events[0].status_code #=> String, one of "open", "closed", "upcoming"
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :filter (Types::OrganizationEventFilter)

    Values to narrow the results returned.

  • :next_token (String)

    If the results of a search are large, only a portion of the results are returned, and a ‘nextToken` pagination token is returned in the response. To retrieve the next batch of results, reissue the search request and include the returned token. When all results have been returned, the response does not contain a pagination token value.

  • :max_results (Integer)

    The maximum number of items to return in one batch, between 10 and 100, inclusive.

  • :locale (String)

    The locale (language) to return information in. English (en) is the default and the only supported value at this time.

Returns:

See Also:



1375
1376
1377
1378
# File 'lib/aws-sdk-health/client.rb', line 1375

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

#describe_health_service_status_for_organization(params = {}) ⇒ Types::DescribeHealthServiceStatusForOrganizationResponse

This operation provides status information on enabling or disabling Health to work with your organization. To call this operation, you must use the organization’s management account.

Examples:

Response structure


resp.health_service_access_status_for_organization #=> String

Parameters:

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

    ({})

Returns:

See Also:



1396
1397
1398
1399
# File 'lib/aws-sdk-health/client.rb', line 1396

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

#disable_health_service_access_for_organization(params = {}) ⇒ Struct

Disables Health from working with Organizations. To call this operation, you must sign in to the organization’s management account. For more information, see [Aggregating Health events] in the *Health User Guide*.

This operation doesn’t remove the service-linked role from the management account in your organization. You must use the IAM console, API, or Command Line Interface (CLI) to remove the service-linked role. For more information, see [Deleting a Service-Linked Role] in the *IAM User Guide*.

<note markdown=“1”> You can also disable the organizational feature by using the Organizations [DisableAWSServiceAccess] API operation. After you call this operation, Health stops aggregating events for all other Amazon Web Services accounts in your organization. If you call the Health API operations for organizational view, Health returns an error. Health continues to aggregate health events for your Amazon Web Services account.

</note>

[1]: docs.aws.amazon.com/health/latest/ug/aggregate-events.html [2]: docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role [3]: docs.aws.amazon.com/organizations/latest/APIReference/API_DisableAWSServiceAccess.html

Parameters:

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

    ({})

Returns:

  • (Struct)

    Returns an empty response.

See Also:



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

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

#enable_health_service_access_for_organization(params = {}) ⇒ Struct

Enables Health to work with Organizations. You can use the organizational view feature to aggregate events from all Amazon Web Services accounts in your organization in a centralized location.

This operation also creates a service-linked role for the management account in the organization.

<note markdown=“1”> To call this operation, you must meet the following requirements:

* You must have a Business, Enterprise On-Ramp, or Enterprise Support
 plan from [Amazon Web Services Support][1] to use the Health API. If
 you call the Health API from an Amazon Web Services account that
 doesn't have a Business, Enterprise On-Ramp, or Enterprise Support
 plan, you receive a `SubscriptionRequiredException` error.
  • You must have permission to call this operation from the organization’s management account. For example IAM policies, see [Health identity-based policy examples].

</note>

If you don’t have the required support plan, you can instead use the Health console to enable the organizational view feature. For more information, see [Aggregating Health events] in the *Health User Guide*.

[1]: aws.amazon.com/premiumsupport/ [2]: docs.aws.amazon.com/health/latest/ug/security_iam_id-based-policy-examples.html [3]: docs.aws.amazon.com/health/latest/ug/aggregate-events.html

Parameters:

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

    ({})

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1477
1478
1479
1480
# File 'lib/aws-sdk-health/client.rb', line 1477

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

#waiter_namesObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Deprecated.


1501
1502
1503
# File 'lib/aws-sdk-health/client.rb', line 1501

def waiter_names
  []
end