2023/08/31 - AWS Health APIs and Notifications - 1 new 3 updated api methods
Changes Adds new API DescribeEntityAggregatesForOrganization that retrieves entity aggregates across your organization. Also adds support for resource status filtering in DescribeAffectedEntitiesForOrganization, resource status aggregates in the DescribeEntityAggregates response, and new resource statuses.
Returns a list of entity aggregates for your Organizations that are affected by each of the specified events.
See also: AWS API Documentation
Request Syntax
client.describe_entity_aggregates_for_organization( eventArns=[ 'string', ], awsAccountIds=[ 'string', ] )
list
[REQUIRED]
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"
(string) --
list
A list of 12-digit Amazon Web Services account numbers that contains the affected entities.
(string) --
dict
Response Syntax
{ 'organizationEntityAggregates': [ { 'eventArn': 'string', 'count': 123, 'statuses': { 'string': 123 }, 'accounts': [ { 'accountId': 'string', 'count': 123, 'statuses': { 'string': 123 } }, ] }, ] }
Response Structure
(dict) --
organizationEntityAggregates (list) --
The list of entity aggregates for each of the specified accounts that are affected by each of the specified events.
(dict) --
The aggregate results of entities affected by the specified event in your organization. The results are aggregated by the entity status codes for the specified set of accountsIDs.
eventArn (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"
count (integer) --
The number of entities for the organization that match the filter criteria for the specified events.
statuses (dict) --
The number of affected entities aggregated by the entitiy status codes.
(string) --
(integer) --
accounts (list) --
A list of entity aggregates for each of the specified accounts in your organization that are affected by a specific event. If there are no awsAccountIds provided in the request, this field will be empty in the response.
(dict) --
The number of entities in an account that are impacted by a specific event aggregated by the entity status codes.
accountId (string) --
The 12-digit Amazon Web Services account numbers that contains the affected entities.
count (integer) --
The number of entities that match the filter criteria for the specified events.
statuses (dict) --
The number of affected entities aggregated by the entity status codes.
(string) --
(integer) --
{'filter': {'statusCodes': {'PENDING', 'RESOLVED'}}}Response
{'entities': {'statusCode': {'PENDING', 'RESOLVED'}}}
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
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 .
See also: AWS API Documentation
Request Syntax
client.describe_affected_entities( filter={ 'eventArns': [ 'string', ], 'entityArns': [ 'string', ], 'entityValues': [ 'string', ], 'lastUpdatedTimes': [ { 'from': datetime(2015, 1, 1), 'to': datetime(2015, 1, 1) }, ], 'tags': [ { 'string': 'string' }, ], 'statusCodes': [ 'IMPAIRED'|'UNIMPAIRED'|'UNKNOWN'|'PENDING'|'RESOLVED', ] }, locale='string', nextToken='string', maxResults=123 )
dict
[REQUIRED]
Values to narrow the results returned. At least one event ARN is required.
eventArns (list) -- [REQUIRED]
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"
(string) --
entityArns (list) --
A list of entity ARNs (unique identifiers).
(string) --
entityValues (list) --
A list of IDs for affected entities.
(string) --
lastUpdatedTimes (list) --
A list of the most recent dates and times that the entity was updated.
(dict) --
A range of dates and times that is used by the EventFilter and EntityFilter objects. If from is set and to is set: match items where the timestamp (startTime , endTime , or lastUpdatedTime ) is between from and to inclusive. If from is set and to is not set: match items where the timestamp value is equal to or after from . If from is not set and to is set: match items where the timestamp value is equal to or before to .
from (datetime) --
The starting date and time of a time range.
to (datetime) --
The ending date and time of a time range.
tags (list) --
A map of entity tags attached to the affected entity.
Note
Currently, the tags property isn't supported.
(dict) --
(string) --
(string) --
statusCodes (list) --
A list of entity status codes (IMPAIRED , UNIMPAIRED , or UNKNOWN ).
(string) --
string
The locale (language) to return information in. English (en) is the default and the only supported value at this time.
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.
integer
The maximum number of items to return in one batch, between 10 and 100, inclusive.
dict
Response Syntax
{ 'entities': [ { 'entityArn': 'string', 'eventArn': 'string', 'entityValue': 'string', 'entityUrl': 'string', 'awsAccountId': 'string', 'lastUpdatedTime': datetime(2015, 1, 1), 'statusCode': 'IMPAIRED'|'UNIMPAIRED'|'UNKNOWN'|'PENDING'|'RESOLVED', 'tags': { 'string': 'string' } }, ], 'nextToken': 'string' }
Response Structure
(dict) --
entities (list) --
The entities that match the filter criteria.
(dict) --
Information about an entity that is affected by a Health event.
entityArn (string) --
The unique identifier for the entity. Format: arn:aws:health:*entity-region* :*aws-account* :entity/*entity-id* `` . Example: ``arn:aws:health:us-east-1:111222333444:entity/AVh5GGT7ul1arKr1sE1K
eventArn (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
entityValue (string) --
The ID of the affected entity.
entityUrl (string) --
The URL of the affected entity.
awsAccountId (string) --
The 12-digit Amazon Web Services account number that contains the affected entity.
lastUpdatedTime (datetime) --
The most recent time that the entity was updated.
statusCode (string) --
The most recent status of the entity affected by the event. The possible values are IMPAIRED , UNIMPAIRED , and UNKNOWN .
tags (dict) --
A map of entity tags attached to the affected entity.
Note
Currently, the tags property isn't supported.
(string) --
(string) --
nextToken (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.
{'organizationEntityAccountFilters': [{'awsAccountId': 'string', 'eventArn': 'string', 'statusCodes': ['IMPAIRED | UNIMPAIRED ' '| UNKNOWN | PENDING | ' 'RESOLVED']}]}Response
{'entities': {'statusCode': {'PENDING', 'RESOLVED'}}}
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 operation from your organization's management account.
Note
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 .
See also: AWS API Documentation
Request Syntax
client.describe_affected_entities_for_organization( organizationEntityFilters=[ { 'eventArn': 'string', 'awsAccountId': 'string' }, ], locale='string', nextToken='string', maxResults=123, organizationEntityAccountFilters=[ { 'eventArn': 'string', 'awsAccountId': 'string', 'statusCodes': [ 'IMPAIRED'|'UNIMPAIRED'|'UNKNOWN'|'PENDING'|'RESOLVED', ] }, ] )
list
A JSON set of elements including the awsAccountId and the eventArn .
(dict) --
The values used to filter results from the DescribeEventDetailsForOrganization and DescribeAffectedEntitiesForOrganization operations.
eventArn (string) -- [REQUIRED]
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
awsAccountId (string) --
The 12-digit Amazon Web Services account numbers that contains the affected entities.
string
The locale (language) to return information in. English (en) is the default and the only supported value at this time.
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.
integer
The maximum number of items to return in one batch, between 10 and 100, inclusive.
list
A JSON set of elements including the awsAccountId , eventArn and a set of statusCodes .
(dict) --
A JSON set of elements including the awsAccountId , eventArn and a set of statusCodes .
eventArn (string) -- [REQUIRED]
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
awsAccountId (string) --
The 12-digit Amazon Web Services account numbers that contains the affected entities.
statusCodes (list) --
A list of entity status codes.
(string) --
dict
Response Syntax
{ 'entities': [ { 'entityArn': 'string', 'eventArn': 'string', 'entityValue': 'string', 'entityUrl': 'string', 'awsAccountId': 'string', 'lastUpdatedTime': datetime(2015, 1, 1), 'statusCode': 'IMPAIRED'|'UNIMPAIRED'|'UNKNOWN'|'PENDING'|'RESOLVED', 'tags': { 'string': 'string' } }, ], 'failedSet': [ { 'awsAccountId': 'string', 'eventArn': 'string', 'errorName': 'string', 'errorMessage': 'string' }, ], 'nextToken': 'string' }
Response Structure
(dict) --
entities (list) --
A JSON set of elements including the awsAccountId and its entityArn , entityValue and its entityArn , lastUpdatedTime , and statusCode .
(dict) --
Information about an entity that is affected by a Health event.
entityArn (string) --
The unique identifier for the entity. Format: arn:aws:health:*entity-region* :*aws-account* :entity/*entity-id* `` . Example: ``arn:aws:health:us-east-1:111222333444:entity/AVh5GGT7ul1arKr1sE1K
eventArn (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
entityValue (string) --
The ID of the affected entity.
entityUrl (string) --
The URL of the affected entity.
awsAccountId (string) --
The 12-digit Amazon Web Services account number that contains the affected entity.
lastUpdatedTime (datetime) --
The most recent time that the entity was updated.
statusCode (string) --
The most recent status of the entity affected by the event. The possible values are IMPAIRED , UNIMPAIRED , and UNKNOWN .
tags (dict) --
A map of entity tags attached to the affected entity.
Note
Currently, the tags property isn't supported.
(string) --
(string) --
failedSet (list) --
A JSON set of elements of the failed response, including the awsAccountId , errorMessage , errorName , and eventArn .
(dict) --
Error information returned when a DescribeAffectedEntitiesForOrganization operation can't find or process a specific entity.
awsAccountId (string) --
The 12-digit Amazon Web Services account numbers that contains the affected entities.
eventArn (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
errorName (string) --
The name of the error.
errorMessage (string) --
A message that describes the error. Follow the error message and retry your request.
For example, the InvalidAccountInputError error message appears if you call the DescribeAffectedEntitiesForOrganization operation and specify the AccountSpecific value for the EventScopeCode parameter, but don't specify an Amazon Web Services account.
nextToken (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.
{'entityAggregates': {'statuses': {'IMPAIRED | UNIMPAIRED | UNKNOWN | PENDING | RESOLVED': 'integer'}}}
Returns the number of entities that are affected by each of the specified events.
See also: AWS API Documentation
Request Syntax
client.describe_entity_aggregates( eventArns=[ 'string', ] )
list
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"
(string) --
dict
Response Syntax
{ 'entityAggregates': [ { 'eventArn': 'string', 'count': 123, 'statuses': { 'string': 123 } }, ] }
Response Structure
(dict) --
entityAggregates (list) --
The number of entities that are affected by each of the specified events.
(dict) --
The number of entities that are affected by one or more events. Returned by the DescribeEntityAggregates operation.
eventArn (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
count (integer) --
The number of entities that match the criteria for the specified events.
statuses (dict) --
The number of affected entities aggregated by the entity status codes.
(string) --
(integer) --