import type { HttpHandlerOptions as __HttpHandlerOptions, MetricsRecorder as __MetricsRecorder, PaginationConfiguration, Paginator } from "@smithy/types"; import { type DescribeAffectedAccountsForOrganizationCommandInput, type DescribeAffectedAccountsForOrganizationCommandOutput } from "./commands/DescribeAffectedAccountsForOrganizationCommand"; import { type DescribeAffectedEntitiesCommandInput, type DescribeAffectedEntitiesCommandOutput } from "./commands/DescribeAffectedEntitiesCommand"; import { type DescribeAffectedEntitiesForOrganizationCommandInput, type DescribeAffectedEntitiesForOrganizationCommandOutput } from "./commands/DescribeAffectedEntitiesForOrganizationCommand"; import { type DescribeEntityAggregatesCommandInput, type DescribeEntityAggregatesCommandOutput } from "./commands/DescribeEntityAggregatesCommand"; import { type DescribeEntityAggregatesForOrganizationCommandInput, type DescribeEntityAggregatesForOrganizationCommandOutput } from "./commands/DescribeEntityAggregatesForOrganizationCommand"; import { type DescribeEventAggregatesCommandInput, type DescribeEventAggregatesCommandOutput } from "./commands/DescribeEventAggregatesCommand"; import { type DescribeEventDetailsCommandInput, type DescribeEventDetailsCommandOutput } from "./commands/DescribeEventDetailsCommand"; import { type DescribeEventDetailsForOrganizationCommandInput, type DescribeEventDetailsForOrganizationCommandOutput } from "./commands/DescribeEventDetailsForOrganizationCommand"; import { type DescribeEventsCommandInput, type DescribeEventsCommandOutput } from "./commands/DescribeEventsCommand"; import { type DescribeEventsForOrganizationCommandInput, type DescribeEventsForOrganizationCommandOutput } from "./commands/DescribeEventsForOrganizationCommand"; import { type DescribeEventTypesCommandInput, type DescribeEventTypesCommandOutput } from "./commands/DescribeEventTypesCommand"; import { type DescribeHealthServiceStatusForOrganizationCommandInput, type DescribeHealthServiceStatusForOrganizationCommandOutput } from "./commands/DescribeHealthServiceStatusForOrganizationCommand"; import { type DisableHealthServiceAccessForOrganizationCommandInput, type DisableHealthServiceAccessForOrganizationCommandOutput } from "./commands/DisableHealthServiceAccessForOrganizationCommand"; import { type EnableHealthServiceAccessForOrganizationCommandInput, type EnableHealthServiceAccessForOrganizationCommandOutput } from "./commands/EnableHealthServiceAccessForOrganizationCommand"; import { HealthClient } from "./HealthClient"; /** * @public */ export interface HealthRequestOptions extends __HttpHandlerOptions { metricsRecorder?: __MetricsRecorder; } export interface Health { /** * @see {@link DescribeAffectedAccountsForOrganizationCommand} */ describeAffectedAccountsForOrganization(args: DescribeAffectedAccountsForOrganizationCommandInput, options?: HealthRequestOptions): Promise; describeAffectedAccountsForOrganization(args: DescribeAffectedAccountsForOrganizationCommandInput, cb: (err: any, data?: DescribeAffectedAccountsForOrganizationCommandOutput) => void): void; describeAffectedAccountsForOrganization(args: DescribeAffectedAccountsForOrganizationCommandInput, options: HealthRequestOptions, cb: (err: any, data?: DescribeAffectedAccountsForOrganizationCommandOutput) => void): void; /** * @see {@link DescribeAffectedEntitiesCommand} */ describeAffectedEntities(args: DescribeAffectedEntitiesCommandInput, options?: HealthRequestOptions): Promise; describeAffectedEntities(args: DescribeAffectedEntitiesCommandInput, cb: (err: any, data?: DescribeAffectedEntitiesCommandOutput) => void): void; describeAffectedEntities(args: DescribeAffectedEntitiesCommandInput, options: HealthRequestOptions, cb: (err: any, data?: DescribeAffectedEntitiesCommandOutput) => void): void; /** * @see {@link DescribeAffectedEntitiesForOrganizationCommand} */ describeAffectedEntitiesForOrganization(): Promise; describeAffectedEntitiesForOrganization(args: DescribeAffectedEntitiesForOrganizationCommandInput, options?: HealthRequestOptions): Promise; describeAffectedEntitiesForOrganization(args: DescribeAffectedEntitiesForOrganizationCommandInput, cb: (err: any, data?: DescribeAffectedEntitiesForOrganizationCommandOutput) => void): void; describeAffectedEntitiesForOrganization(args: DescribeAffectedEntitiesForOrganizationCommandInput, options: HealthRequestOptions, cb: (err: any, data?: DescribeAffectedEntitiesForOrganizationCommandOutput) => void): void; /** * @see {@link DescribeEntityAggregatesCommand} */ describeEntityAggregates(): Promise; describeEntityAggregates(args: DescribeEntityAggregatesCommandInput, options?: HealthRequestOptions): Promise; describeEntityAggregates(args: DescribeEntityAggregatesCommandInput, cb: (err: any, data?: DescribeEntityAggregatesCommandOutput) => void): void; describeEntityAggregates(args: DescribeEntityAggregatesCommandInput, options: HealthRequestOptions, cb: (err: any, data?: DescribeEntityAggregatesCommandOutput) => void): void; /** * @see {@link DescribeEntityAggregatesForOrganizationCommand} */ describeEntityAggregatesForOrganization(args: DescribeEntityAggregatesForOrganizationCommandInput, options?: HealthRequestOptions): Promise; describeEntityAggregatesForOrganization(args: DescribeEntityAggregatesForOrganizationCommandInput, cb: (err: any, data?: DescribeEntityAggregatesForOrganizationCommandOutput) => void): void; describeEntityAggregatesForOrganization(args: DescribeEntityAggregatesForOrganizationCommandInput, options: HealthRequestOptions, cb: (err: any, data?: DescribeEntityAggregatesForOrganizationCommandOutput) => void): void; /** * @see {@link DescribeEventAggregatesCommand} */ describeEventAggregates(args: DescribeEventAggregatesCommandInput, options?: HealthRequestOptions): Promise; describeEventAggregates(args: DescribeEventAggregatesCommandInput, cb: (err: any, data?: DescribeEventAggregatesCommandOutput) => void): void; describeEventAggregates(args: DescribeEventAggregatesCommandInput, options: HealthRequestOptions, cb: (err: any, data?: DescribeEventAggregatesCommandOutput) => void): void; /** * @see {@link DescribeEventDetailsCommand} */ describeEventDetails(args: DescribeEventDetailsCommandInput, options?: HealthRequestOptions): Promise; describeEventDetails(args: DescribeEventDetailsCommandInput, cb: (err: any, data?: DescribeEventDetailsCommandOutput) => void): void; describeEventDetails(args: DescribeEventDetailsCommandInput, options: HealthRequestOptions, cb: (err: any, data?: DescribeEventDetailsCommandOutput) => void): void; /** * @see {@link DescribeEventDetailsForOrganizationCommand} */ describeEventDetailsForOrganization(args: DescribeEventDetailsForOrganizationCommandInput, options?: HealthRequestOptions): Promise; describeEventDetailsForOrganization(args: DescribeEventDetailsForOrganizationCommandInput, cb: (err: any, data?: DescribeEventDetailsForOrganizationCommandOutput) => void): void; describeEventDetailsForOrganization(args: DescribeEventDetailsForOrganizationCommandInput, options: HealthRequestOptions, cb: (err: any, data?: DescribeEventDetailsForOrganizationCommandOutput) => void): void; /** * @see {@link DescribeEventsCommand} */ describeEvents(): Promise; describeEvents(args: DescribeEventsCommandInput, options?: HealthRequestOptions): Promise; describeEvents(args: DescribeEventsCommandInput, cb: (err: any, data?: DescribeEventsCommandOutput) => void): void; describeEvents(args: DescribeEventsCommandInput, options: HealthRequestOptions, cb: (err: any, data?: DescribeEventsCommandOutput) => void): void; /** * @see {@link DescribeEventsForOrganizationCommand} */ describeEventsForOrganization(): Promise; describeEventsForOrganization(args: DescribeEventsForOrganizationCommandInput, options?: HealthRequestOptions): Promise; describeEventsForOrganization(args: DescribeEventsForOrganizationCommandInput, cb: (err: any, data?: DescribeEventsForOrganizationCommandOutput) => void): void; describeEventsForOrganization(args: DescribeEventsForOrganizationCommandInput, options: HealthRequestOptions, cb: (err: any, data?: DescribeEventsForOrganizationCommandOutput) => void): void; /** * @see {@link DescribeEventTypesCommand} */ describeEventTypes(): Promise; describeEventTypes(args: DescribeEventTypesCommandInput, options?: HealthRequestOptions): Promise; describeEventTypes(args: DescribeEventTypesCommandInput, cb: (err: any, data?: DescribeEventTypesCommandOutput) => void): void; describeEventTypes(args: DescribeEventTypesCommandInput, options: HealthRequestOptions, cb: (err: any, data?: DescribeEventTypesCommandOutput) => void): void; /** * @see {@link DescribeHealthServiceStatusForOrganizationCommand} */ describeHealthServiceStatusForOrganization(): Promise; describeHealthServiceStatusForOrganization(args: DescribeHealthServiceStatusForOrganizationCommandInput, options?: HealthRequestOptions): Promise; describeHealthServiceStatusForOrganization(args: DescribeHealthServiceStatusForOrganizationCommandInput, cb: (err: any, data?: DescribeHealthServiceStatusForOrganizationCommandOutput) => void): void; describeHealthServiceStatusForOrganization(args: DescribeHealthServiceStatusForOrganizationCommandInput, options: HealthRequestOptions, cb: (err: any, data?: DescribeHealthServiceStatusForOrganizationCommandOutput) => void): void; /** * @see {@link DisableHealthServiceAccessForOrganizationCommand} */ disableHealthServiceAccessForOrganization(): Promise; disableHealthServiceAccessForOrganization(args: DisableHealthServiceAccessForOrganizationCommandInput, options?: HealthRequestOptions): Promise; disableHealthServiceAccessForOrganization(args: DisableHealthServiceAccessForOrganizationCommandInput, cb: (err: any, data?: DisableHealthServiceAccessForOrganizationCommandOutput) => void): void; disableHealthServiceAccessForOrganization(args: DisableHealthServiceAccessForOrganizationCommandInput, options: HealthRequestOptions, cb: (err: any, data?: DisableHealthServiceAccessForOrganizationCommandOutput) => void): void; /** * @see {@link EnableHealthServiceAccessForOrganizationCommand} */ enableHealthServiceAccessForOrganization(): Promise; enableHealthServiceAccessForOrganization(args: EnableHealthServiceAccessForOrganizationCommandInput, options?: HealthRequestOptions): Promise; enableHealthServiceAccessForOrganization(args: EnableHealthServiceAccessForOrganizationCommandInput, cb: (err: any, data?: EnableHealthServiceAccessForOrganizationCommandOutput) => void): void; enableHealthServiceAccessForOrganization(args: EnableHealthServiceAccessForOrganizationCommandInput, options: HealthRequestOptions, cb: (err: any, data?: EnableHealthServiceAccessForOrganizationCommandOutput) => void): void; /** * @see {@link DescribeAffectedAccountsForOrganizationCommand} * @param args - command input. * @param paginationConfig - optional pagination config. * @returns AsyncIterable of {@link DescribeAffectedAccountsForOrganizationCommandOutput}. */ paginateDescribeAffectedAccountsForOrganization(args: DescribeAffectedAccountsForOrganizationCommandInput, paginationConfig?: Omit): Paginator; /** * @see {@link DescribeAffectedEntitiesCommand} * @param args - command input. * @param paginationConfig - optional pagination config. * @returns AsyncIterable of {@link DescribeAffectedEntitiesCommandOutput}. */ paginateDescribeAffectedEntities(args: DescribeAffectedEntitiesCommandInput, paginationConfig?: Omit): Paginator; /** * @see {@link DescribeAffectedEntitiesForOrganizationCommand} * @param args - command input. * @param paginationConfig - optional pagination config. * @returns AsyncIterable of {@link DescribeAffectedEntitiesForOrganizationCommandOutput}. */ paginateDescribeAffectedEntitiesForOrganization(args?: DescribeAffectedEntitiesForOrganizationCommandInput, paginationConfig?: Omit): Paginator; /** * @see {@link DescribeEventAggregatesCommand} * @param args - command input. * @param paginationConfig - optional pagination config. * @returns AsyncIterable of {@link DescribeEventAggregatesCommandOutput}. */ paginateDescribeEventAggregates(args: DescribeEventAggregatesCommandInput, paginationConfig?: Omit): Paginator; /** * @see {@link DescribeEventsCommand} * @param args - command input. * @param paginationConfig - optional pagination config. * @returns AsyncIterable of {@link DescribeEventsCommandOutput}. */ paginateDescribeEvents(args?: DescribeEventsCommandInput, paginationConfig?: Omit): Paginator; /** * @see {@link DescribeEventsForOrganizationCommand} * @param args - command input. * @param paginationConfig - optional pagination config. * @returns AsyncIterable of {@link DescribeEventsForOrganizationCommandOutput}. */ paginateDescribeEventsForOrganization(args?: DescribeEventsForOrganizationCommandInput, paginationConfig?: Omit): Paginator; /** * @see {@link DescribeEventTypesCommand} * @param args - command input. * @param paginationConfig - optional pagination config. * @returns AsyncIterable of {@link DescribeEventTypesCommandOutput}. */ paginateDescribeEventTypes(args?: DescribeEventTypesCommandInput, paginationConfig?: Omit): Paginator; } /** * Health *

The Health API provides access to the Health information that appears in the * Health Dashboard. You can use * the API operations to get information about events that might affect your Amazon Web Services services and resources.

*

You must have a Business, Enterprise On-Ramp, or Enterprise Support plan from Amazon Web Services Support 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.

*

For API access, you need an access key ID and a secret access key. Use temporary * credentials instead of long-term access keys when possible. Temporary credentials include * an access key ID, a secret access key, and a security token that indicates when the * credentials expire. For more information, see Best practices for managing * Amazon Web Services access keys in the Amazon Web Services General Reference.

*

You can use the Health endpoint health.us-east-1.amazonaws.com (HTTPS) to call the * Health API operations. Health supports a multi-Region application architecture * and has two regional endpoints in an active-passive configuration. You can use the high * availability endpoint example to determine which Amazon Web Services Region is active, so that you can * get the latest information from the API. For more information, see Accessing the Health * API in the Health User Guide.

*

For authentication of requests, Health uses the Signature Version 4 Signing * Process.

*

If your Amazon Web Services account is part of Organizations, you can use the Health organizational * view feature. This feature provides a centralized view of Health events across all * accounts in your organization. You can aggregate Health events in real time to * identify accounts in your organization that are affected by an operational event or get * notified of security vulnerabilities. Use the organizational view API operations to enable * this feature and return event information. For more information, see Aggregating * Health events in the Health User Guide.

* *

When you use the Health API operations to return Health events, see the * following recommendations:

*
    *
  • *

    Use the eventScopeCode parameter to specify whether to return Health * events that are public or account-specific.

    *
  • *
  • *

    Use pagination to view all events from the response. For example, if you call * the DescribeEventsForOrganization operation to get all events in your * organization, you might receive several page results. Specify the * nextToken in the next request to return more results.

    *
  • *
*
* @public */ export declare class Health extends HealthClient implements Health { }