com.amazonaws.services.support.AWSSupport Maven / Gradle / Ivy
Show all versions of aws-java-sdk-support Show documentation
/*
* Copyright 2016-2021 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.support;
import javax.annotation.Generated;
import com.amazonaws.*;
import com.amazonaws.regions.*;
import com.amazonaws.services.support.model.*;
/**
* Interface for accessing AWS Support.
*
* Note: Do not directly implement this interface, new methods are added to it regularly. Extend from
* {@link com.amazonaws.services.support.AbstractAWSSupport} instead.
*
*
* AWS Support
*
* The AWS Support API Reference is intended for programmers who need detailed information about the AWS Support
* operations and data types. You can use the API to manage your support cases programmatically. The AWS Support API
* uses HTTP methods that return results in JSON format.
*
*
*
* -
*
* You must have a Business or Enterprise Support plan to use the AWS Support API.
*
*
* -
*
* If you call the AWS Support API from an account that does not have a Business or Enterprise Support plan, the
* SubscriptionRequiredException
error message appears. For information about changing your support plan,
* see AWS Support.
*
*
*
*
*
* The AWS Support service also exposes a set of AWS
* Trusted Advisor features. You can retrieve a list of checks and their descriptions, get check results, specify
* checks to refresh, and get the refresh status of checks.
*
*
* The following list describes the AWS Support case management operations:
*
*
* -
*
* Service names, issue categories, and available severity levels - The DescribeServices and
* DescribeSeverityLevels operations return AWS service names, service codes, service categories, and problem
* severity levels. You use these values when you call the CreateCase operation.
*
*
* -
*
* Case creation, case details, and case resolution - The CreateCase, DescribeCases,
* DescribeAttachment, and ResolveCase operations create AWS Support cases, retrieve information about
* cases, and resolve cases.
*
*
* -
*
* Case communication - The DescribeCommunications, AddCommunicationToCase, and AddAttachmentsToSet
* operations retrieve and add communications and attachments to AWS Support cases.
*
*
*
*
* The following list describes the operations available from the AWS Support service for Trusted Advisor:
*
*
* -
*
* DescribeTrustedAdvisorChecks returns the list of checks that run against your AWS resources.
*
*
* -
*
* Using the checkId
for a specific check returned by DescribeTrustedAdvisorChecks, you can call
* DescribeTrustedAdvisorCheckResult to obtain the results for the check that you specified.
*
*
* -
*
* DescribeTrustedAdvisorCheckSummaries returns summarized results for one or more Trusted Advisor checks.
*
*
* -
*
* RefreshTrustedAdvisorCheck requests that Trusted Advisor rerun a specified check.
*
*
* -
*
* DescribeTrustedAdvisorCheckRefreshStatuses reports the refresh status of one or more checks.
*
*
*
*
* For authentication of requests, AWS Support uses Signature Version 4 Signing
* Process.
*
*
* See About the AWS Support API in the
* AWS Support User Guide for information about how to use this service to create and manage your support cases,
* and how to call Trusted Advisor for results of checks on your resources.
*
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public interface AWSSupport {
/**
* 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 = "support";
/**
* Overrides the default endpoint for this client ("https://support.us-east-1.amazonaws.com"). Callers can use this
* method to control which AWS region they want to work with.
*
* Callers can pass in just the endpoint (ex: "support.us-east-1.amazonaws.com") or a full URL, including the
* protocol (ex: "https://support.us-east-1.amazonaws.com"). If the protocol is not specified here, the default
* protocol from this client's {@link ClientConfiguration} will be used, which by default is HTTPS.
*
* For more information on using AWS regions with the AWS SDK for Java, and a complete list of all available
* endpoints for all AWS services, see: https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/java-dg-region-selection.html#region-selection-
* choose-endpoint
*
* This method is not threadsafe. An endpoint should be configured when the client is created and before any
* service requests are made. Changing it afterwards creates inevitable race conditions for any service requests in
* transit or retrying.
*
* @param endpoint
* The endpoint (ex: "support.us-east-1.amazonaws.com") or a full URL, including the protocol (ex:
* "https://support.us-east-1.amazonaws.com") of the region specific AWS endpoint this client will
* communicate with.
* @deprecated use {@link AwsClientBuilder#setEndpointConfiguration(AwsClientBuilder.EndpointConfiguration)} for
* example:
* {@code builder.setEndpointConfiguration(new EndpointConfiguration(endpoint, signingRegion));}
*/
@Deprecated
void setEndpoint(String endpoint);
/**
* An alternative to {@link AWSSupport#setEndpoint(String)}, sets the regional endpoint for this client's service
* calls. Callers can use this method to control which AWS region they want to work with.
*
* By default, all service endpoints in all regions use the https protocol. To use http instead, specify it in the
* {@link ClientConfiguration} supplied at construction.
*
* This method is not threadsafe. A region should be configured when the client is created and before any service
* requests are made. Changing it afterwards creates inevitable race conditions for any service requests in transit
* or retrying.
*
* @param region
* The region this client will communicate with. See {@link Region#getRegion(com.amazonaws.regions.Regions)}
* for accessing a given region. Must not be null and must be a region where the service is available.
*
* @see Region#getRegion(com.amazonaws.regions.Regions)
* @see Region#createClient(Class, com.amazonaws.auth.AWSCredentialsProvider, ClientConfiguration)
* @see Region#isServiceSupported(String)
* @deprecated use {@link AwsClientBuilder#setRegion(String)}
*/
@Deprecated
void setRegion(Region region);
/**
*
* Adds one or more attachments to an attachment set.
*
*
* An attachment set is a temporary container for attachments that you add to a case or case communication. The set
* is available for 1 hour after it's created. The expiryTime
returned in the response is when the set
* expires.
*
*
*
* -
*
* You must have a Business or Enterprise Support plan to use the AWS Support API.
*
*
* -
*
* If you call the AWS Support API from an account that does not have a Business or Enterprise Support plan, the
* SubscriptionRequiredException
error message appears. For information about changing your support
* plan, see AWS Support.
*
*
*
*
*
* @param addAttachmentsToSetRequest
* @return Result of the AddAttachmentsToSet operation returned by the service.
* @throws InternalServerErrorException
* An internal server error occurred.
* @throws AttachmentSetIdNotFoundException
* An attachment set with the specified ID could not be found.
* @throws AttachmentSetExpiredException
* The expiration time of the attachment set has passed. The set expires 1 hour after it is created.
* @throws AttachmentSetSizeLimitExceededException
* A limit for the size of an attachment set has been exceeded. The limits are three attachments and 5 MB
* per attachment.
* @throws AttachmentLimitExceededException
* The limit for the number of attachment sets created in a short period of time has been exceeded.
* @sample AWSSupport.AddAttachmentsToSet
* @see AWS
* API Documentation
*/
AddAttachmentsToSetResult addAttachmentsToSet(AddAttachmentsToSetRequest addAttachmentsToSetRequest);
/**
*
* Adds additional customer communication to an AWS Support case. Use the caseId
parameter to identify
* the case to which to add communication. You can list a set of email addresses to copy on the communication by
* using the ccEmailAddresses
parameter. The communicationBody
value contains the text of
* the communication.
*
*
*
* -
*
* You must have a Business or Enterprise Support plan to use the AWS Support API.
*
*
* -
*
* If you call the AWS Support API from an account that does not have a Business or Enterprise Support plan, the
* SubscriptionRequiredException
error message appears. For information about changing your support
* plan, see AWS Support.
*
*
*
*
*
* @param addCommunicationToCaseRequest
* @return Result of the AddCommunicationToCase operation returned by the service.
* @throws InternalServerErrorException
* An internal server error occurred.
* @throws CaseIdNotFoundException
* The requested caseId
couldn't be located.
* @throws AttachmentSetIdNotFoundException
* An attachment set with the specified ID could not be found.
* @throws AttachmentSetExpiredException
* The expiration time of the attachment set has passed. The set expires 1 hour after it is created.
* @sample AWSSupport.AddCommunicationToCase
* @see AWS
* API Documentation
*/
AddCommunicationToCaseResult addCommunicationToCase(AddCommunicationToCaseRequest addCommunicationToCaseRequest);
/**
*
* Creates a case in the AWS Support Center. This operation is similar to how you create a case in the AWS Support
* Center Create Case page.
*
*
* The AWS Support API doesn't support requesting service limit increases. You can submit a service limit increase
* in the following ways:
*
*
* -
*
* Submit a request from the AWS Support Center Create Case page.
*
*
* -
*
* Use the Service Quotas RequestServiceQuotaIncrease operation.
*
*
*
*
* A successful CreateCase
request returns an AWS Support case number. You can use the
* DescribeCases operation and specify the case number to get existing AWS Support cases. After you create a
* case, use the AddCommunicationToCase operation to add additional communication or attachments to an
* existing case.
*
*
* The caseId
is separate from the displayId
that appears in the AWS Support Center. Use the DescribeCases operation to
* get the displayId
.
*
*
*
* -
*
* You must have a Business or Enterprise Support plan to use the AWS Support API.
*
*
* -
*
* If you call the AWS Support API from an account that does not have a Business or Enterprise Support plan, the
* SubscriptionRequiredException
error message appears. For information about changing your support
* plan, see AWS Support.
*
*
*
*
*
* @param createCaseRequest
* @return Result of the CreateCase operation returned by the service.
* @throws InternalServerErrorException
* An internal server error occurred.
* @throws CaseCreationLimitExceededException
* The case creation limit for the account has been exceeded.
* @throws AttachmentSetIdNotFoundException
* An attachment set with the specified ID could not be found.
* @throws AttachmentSetExpiredException
* The expiration time of the attachment set has passed. The set expires 1 hour after it is created.
* @sample AWSSupport.CreateCase
* @see AWS API
* Documentation
*/
CreateCaseResult createCase(CreateCaseRequest createCaseRequest);
/**
*
* Returns the attachment that has the specified ID. Attachments can include screenshots, error logs, or other files
* that describe your issue. Attachment IDs are generated by the case management system when you add an attachment
* to a case or case communication. Attachment IDs are returned in the AttachmentDetails objects that are
* returned by the DescribeCommunications operation.
*
*
*
* -
*
* You must have a Business or Enterprise Support plan to use the AWS Support API.
*
*
* -
*
* If you call the AWS Support API from an account that does not have a Business or Enterprise Support plan, the
* SubscriptionRequiredException
error message appears. For information about changing your support
* plan, see AWS Support.
*
*
*
*
*
* @param describeAttachmentRequest
* @return Result of the DescribeAttachment operation returned by the service.
* @throws InternalServerErrorException
* An internal server error occurred.
* @throws DescribeAttachmentLimitExceededException
* The limit for the number of DescribeAttachment requests in a short period of time has been
* exceeded.
* @throws AttachmentIdNotFoundException
* An attachment with the specified ID could not be found.
* @sample AWSSupport.DescribeAttachment
* @see AWS API
* Documentation
*/
DescribeAttachmentResult describeAttachment(DescribeAttachmentRequest describeAttachmentRequest);
/**
*
* Returns a list of cases that you specify by passing one or more case IDs. You can use the afterTime
* and beforeTime
parameters to filter the cases by date. You can set values for the
* includeResolvedCases
and includeCommunications
parameters to specify how much
* information to return.
*
*
* The response returns the following in JSON format:
*
*
* -
*
* One or more CaseDetails data
* types.
*
*
* -
*
* One or more nextToken
values, which specify where to paginate the returned records represented by
* the CaseDetails
objects.
*
*
*
*
* Case data is available for 12 months after creation. If a case was created more than 12 months ago, a request
* might return an error.
*
*
*
* -
*
* You must have a Business or Enterprise Support plan to use the AWS Support API.
*
*
* -
*
* If you call the AWS Support API from an account that does not have a Business or Enterprise Support plan, the
* SubscriptionRequiredException
error message appears. For information about changing your support
* plan, see AWS Support.
*
*
*
*
*
* @param describeCasesRequest
* @return Result of the DescribeCases operation returned by the service.
* @throws InternalServerErrorException
* An internal server error occurred.
* @throws CaseIdNotFoundException
* The requested caseId
couldn't be located.
* @sample AWSSupport.DescribeCases
* @see AWS API
* Documentation
*/
DescribeCasesResult describeCases(DescribeCasesRequest describeCasesRequest);
/**
* Simplified method form for invoking the DescribeCases operation.
*
* @see #describeCases(DescribeCasesRequest)
*/
DescribeCasesResult describeCases();
/**
*
* Returns communications and attachments for one or more support cases. Use the afterTime
and
* beforeTime
parameters to filter by date. You can use the caseId
parameter to restrict
* the results to a specific case.
*
*
* Case data is available for 12 months after creation. If a case was created more than 12 months ago, a request for
* data might cause an error.
*
*
* You can use the maxResults
and nextToken
parameters to control the pagination of the
* results. Set maxResults
to the number of cases that you want to display on each page, and use
* nextToken
to specify the resumption of pagination.
*
*
*
* -
*
* You must have a Business or Enterprise Support plan to use the AWS Support API.
*
*
* -
*
* If you call the AWS Support API from an account that does not have a Business or Enterprise Support plan, the
* SubscriptionRequiredException
error message appears. For information about changing your support
* plan, see AWS Support.
*
*
*
*
*
* @param describeCommunicationsRequest
* @return Result of the DescribeCommunications operation returned by the service.
* @throws InternalServerErrorException
* An internal server error occurred.
* @throws CaseIdNotFoundException
* The requested caseId
couldn't be located.
* @sample AWSSupport.DescribeCommunications
* @see AWS
* API Documentation
*/
DescribeCommunicationsResult describeCommunications(DescribeCommunicationsRequest describeCommunicationsRequest);
/**
*
* Returns the current list of AWS services and a list of service categories for each service. You then use service
* names and categories in your CreateCase requests. Each AWS service has its own set of categories.
*
*
* The service codes and category codes correspond to the values that appear in the Service and
* Category lists on the AWS Support Center Create Case page. The values in those fields
* don't necessarily match the service codes and categories returned by the DescribeServices
operation.
* Always use the service codes and categories that the DescribeServices
operation returns, so that you
* have the most recent set of service and category codes.
*
*
*
* -
*
* You must have a Business or Enterprise Support plan to use the AWS Support API.
*
*
* -
*
* If you call the AWS Support API from an account that does not have a Business or Enterprise Support plan, the
* SubscriptionRequiredException
error message appears. For information about changing your support
* plan, see AWS Support.
*
*
*
*
*
* @param describeServicesRequest
* @return Result of the DescribeServices operation returned by the service.
* @throws InternalServerErrorException
* An internal server error occurred.
* @sample AWSSupport.DescribeServices
* @see AWS API
* Documentation
*/
DescribeServicesResult describeServices(DescribeServicesRequest describeServicesRequest);
/**
* Simplified method form for invoking the DescribeServices operation.
*
* @see #describeServices(DescribeServicesRequest)
*/
DescribeServicesResult describeServices();
/**
*
* Returns the list of severity levels that you can assign to a support case. The severity level for a case is also
* a field in the CaseDetails data type that you include for a CreateCase request.
*
*
*
* -
*
* You must have a Business or Enterprise Support plan to use the AWS Support API.
*
*
* -
*
* If you call the AWS Support API from an account that does not have a Business or Enterprise Support plan, the
* SubscriptionRequiredException
error message appears. For information about changing your support
* plan, see AWS Support.
*
*
*
*
*
* @param describeSeverityLevelsRequest
* @return Result of the DescribeSeverityLevels operation returned by the service.
* @throws InternalServerErrorException
* An internal server error occurred.
* @sample AWSSupport.DescribeSeverityLevels
* @see AWS
* API Documentation
*/
DescribeSeverityLevelsResult describeSeverityLevels(DescribeSeverityLevelsRequest describeSeverityLevelsRequest);
/**
* Simplified method form for invoking the DescribeSeverityLevels operation.
*
* @see #describeSeverityLevels(DescribeSeverityLevelsRequest)
*/
DescribeSeverityLevelsResult describeSeverityLevels();
/**
*
* Returns the refresh status of the AWS Trusted Advisor checks that have the specified check IDs. You can get the
* check IDs by calling the DescribeTrustedAdvisorChecks operation.
*
*
* Some checks are refreshed automatically, and you can't return their refresh statuses by using the
* DescribeTrustedAdvisorCheckRefreshStatuses
operation. If you call this operation for these checks,
* you might see an InvalidParameterValue
error.
*
*
*
* -
*
* You must have a Business or Enterprise Support plan to use the AWS Support API.
*
*
* -
*
* If you call the AWS Support API from an account that does not have a Business or Enterprise Support plan, the
* SubscriptionRequiredException
error message appears. For information about changing your support
* plan, see AWS Support.
*
*
*
*
*
* @param describeTrustedAdvisorCheckRefreshStatusesRequest
* @return Result of the DescribeTrustedAdvisorCheckRefreshStatuses operation returned by the service.
* @throws InternalServerErrorException
* An internal server error occurred.
* @sample AWSSupport.DescribeTrustedAdvisorCheckRefreshStatuses
* @see AWS API Documentation
*/
DescribeTrustedAdvisorCheckRefreshStatusesResult describeTrustedAdvisorCheckRefreshStatuses(
DescribeTrustedAdvisorCheckRefreshStatusesRequest describeTrustedAdvisorCheckRefreshStatusesRequest);
/**
*
* Returns the results of the AWS Trusted Advisor check that has the specified check ID. You can get the check IDs
* by calling the DescribeTrustedAdvisorChecks operation.
*
*
* The response contains a TrustedAdvisorCheckResult object, which contains these three objects:
*
*
* -
*
*
* -
*
*
* -
*
*
*
*
* In addition, the response contains these fields:
*
*
* -
*
* status - The alert status of the check can be ok
(green), warning
(yellow),
* error
(red), or not_available
.
*
*
* -
*
* timestamp - The time of the last refresh of the check.
*
*
* -
*
* checkId - The unique identifier for the check.
*
*
*
*
*
* -
*
* You must have a Business or Enterprise Support plan to use the AWS Support API.
*
*
* -
*
* If you call the AWS Support API from an account that does not have a Business or Enterprise Support plan, the
* SubscriptionRequiredException
error message appears. For information about changing your support
* plan, see AWS Support.
*
*
*
*
*
* @param describeTrustedAdvisorCheckResultRequest
* @return Result of the DescribeTrustedAdvisorCheckResult operation returned by the service.
* @throws InternalServerErrorException
* An internal server error occurred.
* @sample AWSSupport.DescribeTrustedAdvisorCheckResult
* @see AWS API Documentation
*/
DescribeTrustedAdvisorCheckResultResult describeTrustedAdvisorCheckResult(DescribeTrustedAdvisorCheckResultRequest describeTrustedAdvisorCheckResultRequest);
/**
*
* Returns the results for the AWS Trusted Advisor check summaries for the check IDs that you specified. You can get
* the check IDs by calling the DescribeTrustedAdvisorChecks operation.
*
*
* The response contains an array of TrustedAdvisorCheckSummary objects.
*
*
*
* -
*
* You must have a Business or Enterprise Support plan to use the AWS Support API.
*
*
* -
*
* If you call the AWS Support API from an account that does not have a Business or Enterprise Support plan, the
* SubscriptionRequiredException
error message appears. For information about changing your support
* plan, see AWS Support.
*
*
*
*
*
* @param describeTrustedAdvisorCheckSummariesRequest
* @return Result of the DescribeTrustedAdvisorCheckSummaries operation returned by the service.
* @throws InternalServerErrorException
* An internal server error occurred.
* @sample AWSSupport.DescribeTrustedAdvisorCheckSummaries
* @see AWS API Documentation
*/
DescribeTrustedAdvisorCheckSummariesResult describeTrustedAdvisorCheckSummaries(
DescribeTrustedAdvisorCheckSummariesRequest describeTrustedAdvisorCheckSummariesRequest);
/**
*
* Returns information about all available AWS Trusted Advisor checks, including the name, ID, category,
* description, and metadata. You must specify a language code. The AWS Support API currently supports English
* ("en") and Japanese ("ja"). The response contains a TrustedAdvisorCheckDescription object for each check.
* You must set the AWS Region to us-east-1.
*
*
*
* -
*
* You must have a Business or Enterprise Support plan to use the AWS Support API.
*
*
* -
*
* If you call the AWS Support API from an account that does not have a Business or Enterprise Support plan, the
* SubscriptionRequiredException
error message appears. For information about changing your support
* plan, see AWS Support.
*
*
* -
*
* The names and descriptions for Trusted Advisor checks are subject to change. We recommend that you specify the
* check ID in your code to uniquely identify a check.
*
*
*
*
*
* @param describeTrustedAdvisorChecksRequest
* @return Result of the DescribeTrustedAdvisorChecks operation returned by the service.
* @throws InternalServerErrorException
* An internal server error occurred.
* @sample AWSSupport.DescribeTrustedAdvisorChecks
* @see AWS API Documentation
*/
DescribeTrustedAdvisorChecksResult describeTrustedAdvisorChecks(DescribeTrustedAdvisorChecksRequest describeTrustedAdvisorChecksRequest);
/**
*
* Refreshes the AWS Trusted Advisor check that you specify using the check ID. You can get the check IDs by calling
* the DescribeTrustedAdvisorChecks operation.
*
*
*
* Some checks are refreshed automatically. If you call the RefreshTrustedAdvisorCheck
operation to
* refresh them, you might see the InvalidParameterValue
error.
*
*
*
* The response contains a TrustedAdvisorCheckRefreshStatus object.
*
*
*
* -
*
* You must have a Business or Enterprise Support plan to use the AWS Support API.
*
*
* -
*
* If you call the AWS Support API from an account that does not have a Business or Enterprise Support plan, the
* SubscriptionRequiredException
error message appears. For information about changing your support
* plan, see AWS Support.
*
*
*
*
*
* @param refreshTrustedAdvisorCheckRequest
* @return Result of the RefreshTrustedAdvisorCheck operation returned by the service.
* @throws InternalServerErrorException
* An internal server error occurred.
* @sample AWSSupport.RefreshTrustedAdvisorCheck
* @see AWS API Documentation
*/
RefreshTrustedAdvisorCheckResult refreshTrustedAdvisorCheck(RefreshTrustedAdvisorCheckRequest refreshTrustedAdvisorCheckRequest);
/**
*
* Resolves a support case. This operation takes a caseId
and returns the initial and final state of
* the case.
*
*
*
* -
*
* You must have a Business or Enterprise Support plan to use the AWS Support API.
*
*
* -
*
* If you call the AWS Support API from an account that does not have a Business or Enterprise Support plan, the
* SubscriptionRequiredException
error message appears. For information about changing your support
* plan, see AWS Support.
*
*
*
*
*
* @param resolveCaseRequest
* @return Result of the ResolveCase operation returned by the service.
* @throws InternalServerErrorException
* An internal server error occurred.
* @throws CaseIdNotFoundException
* The requested caseId
couldn't be located.
* @sample AWSSupport.ResolveCase
* @see AWS API
* Documentation
*/
ResolveCaseResult resolveCase(ResolveCaseRequest resolveCaseRequest);
/**
* Simplified method form for invoking the ResolveCase operation.
*
* @see #resolveCase(ResolveCaseRequest)
*/
ResolveCaseResult resolveCase();
/**
* 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);
}