/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.ssmincidents; import javax.annotation.Generated; import com.amazonaws.*; import com.amazonaws.regions.*; import com.amazonaws.services.ssmincidents.model.*; import com.amazonaws.services.ssmincidents.waiters.AWSSSMIncidentsWaiters; /** * Interface for accessing SSM Incidents. *

* Note: Do not directly implement this interface, new methods are added to it regularly. Extend from * {@link com.amazonaws.services.ssmincidents.AbstractAWSSSMIncidents} instead. *

*

*

* Systems Manager Incident Manager is an incident management console designed to help users mitigate and recover from * incidents affecting their Amazon Web Services-hosted applications. An incident is any unplanned interruption or * reduction in quality of services. *

*

* Incident Manager increases incident resolution by notifying responders of impact, highlighting relevant * troubleshooting data, and providing collaboration tools to get services back up and running. To achieve the primary * goal of reducing the time-to-resolution of critical incidents, Incident Manager automates response plans and enables * responder team escalation. *

*/ @Generated("com.amazonaws:aws-java-sdk-code-generator") public interface AWSSSMIncidents { /** * The region metadata service name for computing region endpoints. You can use this value to retrieve metadata * (such as supported regions) of the service. * * @see RegionUtils#getRegionsForService(String) */ String ENDPOINT_PREFIX = "ssm-incidents"; /** *

* A replication set replicates and encrypts your data to the provided Regions with the provided KMS key. *

* * @param createReplicationSetRequest * @return Result of the CreateReplicationSet operation returned by the service. * @throws ServiceQuotaExceededException * Request would cause a service quota to be exceeded. * @throws ThrottlingException * The request was denied due to request throttling. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws ConflictException * Updating or deleting a resource causes an inconsistent state. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.CreateReplicationSet * @see AWS API Documentation */ CreateReplicationSetResult createReplicationSet(CreateReplicationSetRequest createReplicationSetRequest); /** *

* Creates a response plan that automates the initial response to incidents. A response plan engages contacts, * starts chat channel collaboration, and initiates runbooks at the beginning of an incident. *

* * @param createResponsePlanRequest * @return Result of the CreateResponsePlan operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws ResourceNotFoundException * Request references a resource which doesn't exist. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws ConflictException * Updating or deleting a resource causes an inconsistent state. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.CreateResponsePlan * @see AWS API Documentation */ CreateResponsePlanResult createResponsePlan(CreateResponsePlanRequest createResponsePlanRequest); /** *

* Creates a custom timeline event on the incident details page of an incident record. Incident Manager * automatically creates timeline events that mark key moments during an incident. You can create custom timeline * events to mark important events that Incident Manager can detect automatically. *

* * @param createTimelineEventRequest * @return Result of the CreateTimelineEvent operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws ResourceNotFoundException * Request references a resource which doesn't exist. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws ConflictException * Updating or deleting a resource causes an inconsistent state. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.CreateTimelineEvent * @see AWS API Documentation */ CreateTimelineEventResult createTimelineEvent(CreateTimelineEventRequest createTimelineEventRequest); /** *

* Delete an incident record from Incident Manager. *

* * @param deleteIncidentRecordRequest * @return Result of the DeleteIncidentRecord operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.DeleteIncidentRecord * @see AWS API Documentation */ DeleteIncidentRecordResult deleteIncidentRecord(DeleteIncidentRecordRequest deleteIncidentRecordRequest); /** *

* Deletes all Regions in your replication set. Deleting the replication set deletes all Incident Manager data. *

* * @param deleteReplicationSetRequest * @return Result of the DeleteReplicationSet operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws ResourceNotFoundException * Request references a resource which doesn't exist. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.DeleteReplicationSet * @see AWS API Documentation */ DeleteReplicationSetResult deleteReplicationSet(DeleteReplicationSetRequest deleteReplicationSetRequest); /** *

* Deletes the resource policy that Resource Access Manager uses to share your Incident Manager resource. *

* * @param deleteResourcePolicyRequest * @return Result of the DeleteResourcePolicy operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws ResourceNotFoundException * Request references a resource which doesn't exist. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.DeleteResourcePolicy * @see AWS API Documentation */ DeleteResourcePolicyResult deleteResourcePolicy(DeleteResourcePolicyRequest deleteResourcePolicyRequest); /** *

* Deletes the specified response plan. Deleting a response plan stops all linked CloudWatch alarms and EventBridge * events from creating an incident with this response plan. *

* * @param deleteResponsePlanRequest * @return Result of the DeleteResponsePlan operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.DeleteResponsePlan * @see AWS API Documentation */ DeleteResponsePlanResult deleteResponsePlan(DeleteResponsePlanRequest deleteResponsePlanRequest); /** *

* Deletes a timeline event from an incident. *

* * @param deleteTimelineEventRequest * @return Result of the DeleteTimelineEvent operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.DeleteTimelineEvent * @see AWS API Documentation */ DeleteTimelineEventResult deleteTimelineEvent(DeleteTimelineEventRequest deleteTimelineEventRequest); /** *

* Returns the details for the specified incident record. *

* * @param getIncidentRecordRequest * @return Result of the GetIncidentRecord operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws ResourceNotFoundException * Request references a resource which doesn't exist. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.GetIncidentRecord * @see AWS API Documentation */ GetIncidentRecordResult getIncidentRecord(GetIncidentRecordRequest getIncidentRecordRequest); /** *

* Retrieve your Incident Manager replication set. *

* * @param getReplicationSetRequest * @return Result of the GetReplicationSet operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws ResourceNotFoundException * Request references a resource which doesn't exist. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.GetReplicationSet * @see AWS API Documentation */ GetReplicationSetResult getReplicationSet(GetReplicationSetRequest getReplicationSetRequest); /** *

* Retrieves the resource policies attached to the specified response plan. *

* * @param getResourcePoliciesRequest * @return Result of the GetResourcePolicies operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws ResourceNotFoundException * Request references a resource which doesn't exist. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.GetResourcePolicies * @see AWS API Documentation */ GetResourcePoliciesResult getResourcePolicies(GetResourcePoliciesRequest getResourcePoliciesRequest); /** *

* Retrieves the details of the specified response plan. *

* * @param getResponsePlanRequest * @return Result of the GetResponsePlan operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws ResourceNotFoundException * Request references a resource which doesn't exist. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.GetResponsePlan * @see AWS * API Documentation */ GetResponsePlanResult getResponsePlan(GetResponsePlanRequest getResponsePlanRequest); /** *

* Retrieves a timeline event based on its ID and incident record. *

* * @param getTimelineEventRequest * @return Result of the GetTimelineEvent operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws ResourceNotFoundException * Request references a resource which doesn't exist. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.GetTimelineEvent * @see AWS * API Documentation */ GetTimelineEventResult getTimelineEvent(GetTimelineEventRequest getTimelineEventRequest); /** *

* Lists all incident records in your account. Use this command to retrieve the Amazon Resource Name (ARN) of the * incident record you want to update. *

* * @param listIncidentRecordsRequest * @return Result of the ListIncidentRecords operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.ListIncidentRecords * @see AWS API Documentation */ ListIncidentRecordsResult listIncidentRecords(ListIncidentRecordsRequest listIncidentRecordsRequest); /** *

* List all related items for an incident record. *

* * @param listRelatedItemsRequest * @return Result of the ListRelatedItems operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.ListRelatedItems * @see AWS * API Documentation */ ListRelatedItemsResult listRelatedItems(ListRelatedItemsRequest listRelatedItemsRequest); /** *

* Lists details about the replication set configured in your account. *

* * @param listReplicationSetsRequest * @return Result of the ListReplicationSets operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.ListReplicationSets * @see AWS API Documentation */ ListReplicationSetsResult listReplicationSets(ListReplicationSetsRequest listReplicationSetsRequest); /** *

* Lists all response plans in your account. *

* * @param listResponsePlansRequest * @return Result of the ListResponsePlans operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.ListResponsePlans * @see AWS API Documentation */ ListResponsePlansResult listResponsePlans(ListResponsePlansRequest listResponsePlansRequest); /** *

* Lists the tags that are attached to the specified response plan. *

* * @param listTagsForResourceRequest * @return Result of the ListTagsForResource operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws ResourceNotFoundException * Request references a resource which doesn't exist. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.ListTagsForResource * @see AWS API Documentation */ ListTagsForResourceResult listTagsForResource(ListTagsForResourceRequest listTagsForResourceRequest); /** *

* Lists timeline events for the specified incident record. *

* * @param listTimelineEventsRequest * @return Result of the ListTimelineEvents operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.ListTimelineEvents * @see AWS API Documentation */ ListTimelineEventsResult listTimelineEvents(ListTimelineEventsRequest listTimelineEventsRequest); /** *

* Adds a resource policy to the specified response plan. The resource policy is used to share the response plan * using Resource Access Manager (RAM). For more information about cross-account sharing, see Cross-Region and cross-account incident management. *

* * @param putResourcePolicyRequest * @return Result of the PutResourcePolicy operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws ResourceNotFoundException * Request references a resource which doesn't exist. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.PutResourcePolicy * @see AWS API Documentation */ PutResourcePolicyResult putResourcePolicy(PutResourcePolicyRequest putResourcePolicyRequest); /** *

* Used to start an incident from CloudWatch alarms, EventBridge events, or manually. *

* * @param startIncidentRequest * @return Result of the StartIncident operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws ResourceNotFoundException * Request references a resource which doesn't exist. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws ConflictException * Updating or deleting a resource causes an inconsistent state. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.StartIncident * @see AWS * API Documentation */ StartIncidentResult startIncident(StartIncidentRequest startIncidentRequest); /** *

* Adds a tag to a response plan. *

* * @param tagResourceRequest * @return Result of the TagResource operation returned by the service. * @throws ServiceQuotaExceededException * Request would cause a service quota to be exceeded. * @throws ThrottlingException * The request was denied due to request throttling. * @throws ResourceNotFoundException * Request references a resource which doesn't exist. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws ConflictException * Updating or deleting a resource causes an inconsistent state. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.TagResource * @see AWS API * Documentation */ TagResourceResult tagResource(TagResourceRequest tagResourceRequest); /** *

* Removes a tag from a resource. *

* * @param untagResourceRequest * @return Result of the UntagResource operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws ResourceNotFoundException * Request references a resource which doesn't exist. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws ConflictException * Updating or deleting a resource causes an inconsistent state. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.UntagResource * @see AWS * API Documentation */ UntagResourceResult untagResource(UntagResourceRequest untagResourceRequest); /** *

* Update deletion protection to either allow or deny deletion of the final Region in a replication set. *

* * @param updateDeletionProtectionRequest * @return Result of the UpdateDeletionProtection operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws ResourceNotFoundException * Request references a resource which doesn't exist. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.UpdateDeletionProtection * @see AWS API Documentation */ UpdateDeletionProtectionResult updateDeletionProtection(UpdateDeletionProtectionRequest updateDeletionProtectionRequest); /** *

* Update the details of an incident record. You can use this operation to update an incident record from the * defined chat channel. For more information about using actions in chat channels, see Interacting through * chat. *

* * @param updateIncidentRecordRequest * @return Result of the UpdateIncidentRecord operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws ResourceNotFoundException * Request references a resource which doesn't exist. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws ConflictException * Updating or deleting a resource causes an inconsistent state. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.UpdateIncidentRecord * @see AWS API Documentation */ UpdateIncidentRecordResult updateIncidentRecord(UpdateIncidentRecordRequest updateIncidentRecordRequest); /** *

* Add or remove related items from the related items tab of an incident record. *

* * @param updateRelatedItemsRequest * @return Result of the UpdateRelatedItems operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws ResourceNotFoundException * Request references a resource which doesn't exist. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws ConflictException * Updating or deleting a resource causes an inconsistent state. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.UpdateRelatedItems * @see AWS API Documentation */ UpdateRelatedItemsResult updateRelatedItems(UpdateRelatedItemsRequest updateRelatedItemsRequest); /** *

* Add or delete Regions from your replication set. *

* * @param updateReplicationSetRequest * @return Result of the UpdateReplicationSet operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws ResourceNotFoundException * Request references a resource which doesn't exist. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws ConflictException * Updating or deleting a resource causes an inconsistent state. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.UpdateReplicationSet * @see AWS API Documentation */ UpdateReplicationSetResult updateReplicationSet(UpdateReplicationSetRequest updateReplicationSetRequest); /** *

* Updates the specified response plan. *

* * @param updateResponsePlanRequest * @return Result of the UpdateResponsePlan operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws ResourceNotFoundException * Request references a resource which doesn't exist. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws ConflictException * Updating or deleting a resource causes an inconsistent state. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.UpdateResponsePlan * @see AWS API Documentation */ UpdateResponsePlanResult updateResponsePlan(UpdateResponsePlanRequest updateResponsePlanRequest); /** *

* Updates a timeline event. You can update events of type Custom Event. *

* * @param updateTimelineEventRequest * @return Result of the UpdateTimelineEvent operation returned by the service. * @throws ThrottlingException * The request was denied due to request throttling. * @throws ResourceNotFoundException * Request references a resource which doesn't exist. * @throws AccessDeniedException * You don't have sufficient access to perform this operation. * @throws ValidationException * The input fails to satisfy the constraints specified by an Amazon Web Services service. * @throws ConflictException * Updating or deleting a resource causes an inconsistent state. * @throws InternalServerException * The request processing has failed because of an unknown error, exception or failure. * @sample AWSSSMIncidents.UpdateTimelineEvent * @see AWS API Documentation */ UpdateTimelineEventResult updateTimelineEvent(UpdateTimelineEventRequest updateTimelineEventRequest); /** * Shuts down this client object, releasing any resources that might be held open. This is an optional method, and * callers are not expected to call it, but can if they want to explicitly release any open resources. Once a client * has been shutdown, it should not be used to make any more requests. */ void shutdown(); /** * Returns additional metadata for a previously executed successful request, typically used for debugging issues * where a service isn't acting as expected. This data isn't considered part of the result data returned by an * operation, so it's available through this separate, diagnostic interface. *

* Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic * information for an executed request, you should use this method to retrieve it as soon as possible after * executing a request. * * @param request * The originally executed request. * * @return The response metadata for the specified request, or null if none is available. */ ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request); AWSSSMIncidentsWaiters waiters(); }