All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.iot.AWSIot Maven / Gradle / Ivy

Go to download

The AWS Android SDK for AWS IoT module holds the client classes that are used for communicating with AWS IoT Service

There is a newer version: 2.6.27
Show newest version
/*
 * Copyright 2010-2016 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.iot;

import com.amazonaws.*;
import com.amazonaws.regions.*;
import com.amazonaws.services.iot.model.*;

/**
 * Interface for accessing AWS IoT AWS IoT
 * 

* AWS IoT provides secure, bi-directional communication between * Internet-connected things (such as sensors, actuators, embedded devices, or * smart appliances) and the AWS cloud. You can discover your custom IoT-Data * endpoint to communicate with, configure rules for data processing and * integration with other services, organize resources associated with each * thing (Thing Registry), configure logging, and create and manage policies and * credentials to authenticate things. *

*

* For more information about how AWS IoT works, see the Developer Guide. *

**/ public interface AWSIot { /** * Overrides the default endpoint for this client * ("https://iot.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: "iot.us-east-1.amazonaws.com") * or a full URL, including the protocol (ex: * "https://iot.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: http://developer.amazonwebservices.com/connect/entry.jspa?externalID= * 3912 *

* 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: "iot.us-east-1.amazonaws.com") or a * full URL, including the protocol (ex: * "https://iot.us-east-1.amazonaws.com") of the region specific * AWS endpoint this client will communicate with. * @throws IllegalArgumentException If any problems are detected with the * specified endpoint. */ public void setEndpoint(String endpoint) throws java.lang.IllegalArgumentException; /** * An alternative to {@link AWSIot#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. * @throws java.lang.IllegalArgumentException If the given region is null, * or if this service isn't available in the given region. See * {@link Region#isServiceSupported(String)} * @see Region#getRegion(com.amazonaws.regions.Regions) * @see Region#createClient(Class, * com.amazonaws.auth.AWSCredentialsProvider, ClientConfiguration) */ public void setRegion(Region region) throws java.lang.IllegalArgumentException; /** *

* Accepts a pending certificate transfer. The default state of the * certificate is INACTIVE. *

*

* To check for pending certificate transfers, call ListCertificates * to enumerate your certificates. *

* * @param acceptCertificateTransferRequest

* The input for the AcceptCertificateTransfer operation. *

* @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws TransferAlreadyCompletedException

* You can't revert the certificate transfer because the * transfer is already complete. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ void acceptCertificateTransfer(AcceptCertificateTransferRequest acceptCertificateTransferRequest) throws AmazonClientException, AmazonServiceException; /** *

* Attaches the specified policy to the specified principal (certificate or * other credential). *

* * @param attachPrincipalPolicyRequest

* The input for the AttachPrincipalPolicy operation. *

* @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws LimitExceededException

* The number of attached entities exceeds the limit. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ void attachPrincipalPolicy(AttachPrincipalPolicyRequest attachPrincipalPolicyRequest) throws AmazonClientException, AmazonServiceException; /** *

* Attaches the specified principal to the specified thing. *

* * @param attachThingPrincipalRequest

* The input for the AttachThingPrincipal operation. *

* @return attachThingPrincipalResult The response from the * AttachThingPrincipal service method, as returned by AWS IoT. * @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ AttachThingPrincipalResult attachThingPrincipal( AttachThingPrincipalRequest attachThingPrincipalRequest) throws AmazonClientException, AmazonServiceException; /** *

* Cancels a pending transfer for the specified certificate. *

*

* Note Only the transfer source account can use this operation to * cancel a transfer. (Transfer destinations can use * RejectCertificateTransfer instead.) After transfer, AWS IoT * returns the certificate to the source account in the INACTIVE state. * After the destination account has accepted the transfer, the transfer * cannot be cancelled. *

*

* After a certificate transfer is cancelled, the status of the certificate * changes from PENDING_TRANSFER to INACTIVE. *

* * @param cancelCertificateTransferRequest

* The input for the CancelCertificateTransfer operation. *

* @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws TransferAlreadyCompletedException

* You can't revert the certificate transfer because the * transfer is already complete. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ void cancelCertificateTransfer(CancelCertificateTransferRequest cancelCertificateTransferRequest) throws AmazonClientException, AmazonServiceException; /** *

* Creates an X.509 certificate using the specified certificate signing * request. *

*

* Note Reusing the same certificate signing request (CSR) results in * a distinct certificate. *

*

* You can create multiple certificates in a batch by creating a directory, * copying multiple .csr files into that directory, and then specifying that * directory on the command line. The following commands show how to create * a batch of certificates given a batch of CSRs. *

*

* Assuming a set of CSRs are located inside of the directory * my-csr-directory: *

*

* On Linux and OS X, the command is: *

*

* $ ls my-csr-directory/ | xargs -I {} aws iot create-certificate-from-csr * --certificate-signing-request file://my-csr-directory/{} *

*

* This command lists all of the CSRs in my-csr-directory and pipes each CSR * file name to the aws iot create-certificate-from-csr AWS CLI command to * create a certificate for the corresponding CSR. *

*

* The aws iot create-certificate-from-csr part of the command can also be * run in parallel to speed up the certificate creation process: *

*

* $ ls my-csr-directory/ | xargs -P 10 -I {} aws iot * create-certificate-from-csr --certificate-signing-request * file://my-csr-directory/{} *

*

* On Windows PowerShell, the command to create certificates for all CSRs in * my-csr-directory is: *

*

* > ls -Name my-csr-directory | %{aws iot create-certificate-from-csr * --certificate-signing-request file://my-csr-directory/$_} *

*

* On a Windows command prompt, the command to create certificates for all * CSRs in my-csr-directory is: *

*

* > forfiles /p my-csr-directory /c * "cmd /c aws iot create-certificate-from-csr --certificate-signing-request file://@path" *

* * @param createCertificateFromCsrRequest

* The input for the CreateCertificateFromCsr operation. *

* @return createCertificateFromCsrResult The response from the * CreateCertificateFromCsr service method, as returned by AWS IoT. * @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ CreateCertificateFromCsrResult createCertificateFromCsr( CreateCertificateFromCsrRequest createCertificateFromCsrRequest) throws AmazonClientException, AmazonServiceException; /** *

* Creates a 2048-bit RSA key pair and issues an X.509 certificate using the * issued public key. *

*

* Note This is the only time AWS IoT issues the private key for this * certificate, so it is important to keep it in a secure location. *

* * @param createKeysAndCertificateRequest

* The input for the CreateKeysAndCertificate operation. *

* @return createKeysAndCertificateResult The response from the * CreateKeysAndCertificate service method, as returned by AWS IoT. * @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ CreateKeysAndCertificateResult createKeysAndCertificate( CreateKeysAndCertificateRequest createKeysAndCertificateRequest) throws AmazonClientException, AmazonServiceException; /** *

* Creates an AWS IoT policy. *

*

* The created policy is the default version for the policy. This operation * creates a policy version with a version identifier of 1 and sets * 1 as the policy's default version. *

* * @param createPolicyRequest

* The input for the CreatePolicy operation. *

* @return createPolicyResult The response from the CreatePolicy service * method, as returned by AWS IoT. * @throws ResourceAlreadyExistsException

* The resource already exists. *

* @throws MalformedPolicyException

* The policy documentation is not valid. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ CreatePolicyResult createPolicy(CreatePolicyRequest createPolicyRequest) throws AmazonClientException, AmazonServiceException; /** *

* Creates a new version of the specified AWS IoT policy. To update a * policy, create a new policy version. A managed policy can have up to five * versions. If the policy has five versions, you must use * DeletePolicyVersion to delete an existing version before you * create a new one. *

*

* Optionally, you can set the new version as the policy's default version. * The default version is the operative version (that is, the version that * is in effect for the certificates to which the policy is attached). *

* * @param createPolicyVersionRequest

* The input for the CreatePolicyVersion operation. *

* @return createPolicyVersionResult The response from the * CreatePolicyVersion service method, as returned by AWS IoT. * @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws MalformedPolicyException

* The policy documentation is not valid. *

* @throws VersionsLimitExceededException

* The number of policy versions exceeds the limit. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ CreatePolicyVersionResult createPolicyVersion( CreatePolicyVersionRequest createPolicyVersionRequest) throws AmazonClientException, AmazonServiceException; /** *

* Creates a thing in the Thing Registry. *

* * @param createThingRequest

* The input for the CreateThing operation. *

* @return createThingResult The response from the CreateThing service * method, as returned by AWS IoT. * @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws ResourceAlreadyExistsException

* The resource already exists. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ CreateThingResult createThing(CreateThingRequest createThingRequest) throws AmazonClientException, AmazonServiceException; /** *

* Creates a rule. Creating rules is an administrator-level action. Any user * who has permission to create rules will be able to access data processed * by the rule. *

* * @param createTopicRuleRequest

* The input for the CreateTopicRule operation. *

* @throws SqlParseException

* The Rule-SQL expression can't be parsed correctly. *

* @throws InternalException

* An unexpected error has occurred. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ResourceAlreadyExistsException

* The resource already exists. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ void createTopicRule(CreateTopicRuleRequest createTopicRuleRequest) throws AmazonClientException, AmazonServiceException; /** *

* Deletes a registered CA certificate. *

* * @param deleteCACertificateRequest

* Input for the DeleteCACertificate operation. *

* @return deleteCACertificateResult The response from the * DeleteCACertificate service method, as returned by AWS IoT. * @throws InvalidRequestException

* The request is not valid. *

* @throws CertificateStateException

* The certificate operation is not allowed. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ DeleteCACertificateResult deleteCACertificate( DeleteCACertificateRequest deleteCACertificateRequest) throws AmazonClientException, AmazonServiceException; /** *

* Deletes the specified certificate. *

*

* A certificate cannot be deleted if it has a policy attached to it or if * its status is set to ACTIVE. To delete a certificate, first use the * DetachPrincipalPolicy API to detach all policies. Next, use the * UpdateCertificate API to set the certificate to the INACTIVE * status. *

* * @param deleteCertificateRequest

* The input for the DeleteCertificate operation. *

* @throws CertificateStateException

* The certificate operation is not allowed. *

* @throws DeleteConflictException

* You can't delete the resource because it is attached to one * or more resources. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ void deleteCertificate(DeleteCertificateRequest deleteCertificateRequest) throws AmazonClientException, AmazonServiceException; /** *

* Deletes the specified policy. *

*

* A policy cannot be deleted if it has non-default versions or it is * attached to any certificate. *

*

* To delete a policy, use the DeletePolicyVersion API to delete all * non-default versions of the policy; use the DetachPrincipalPolicy API to * detach the policy from any certificate; and then use the DeletePolicy API * to delete the policy. *

*

* When a policy is deleted using DeletePolicy, its default version is * deleted with it. *

* * @param deletePolicyRequest

* The input for the DeletePolicy operation. *

* @throws DeleteConflictException

* You can't delete the resource because it is attached to one * or more resources. *

* @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ void deletePolicy(DeletePolicyRequest deletePolicyRequest) throws AmazonClientException, AmazonServiceException; /** *

* Deletes the specified version of the specified policy. You cannot delete * the default version of a policy using this API. To delete the default * version of a policy, use DeletePolicy. To find out which version * of a policy is marked as the default version, use ListPolicyVersions. *

* * @param deletePolicyVersionRequest

* The input for the DeletePolicyVersion operation. *

* @throws DeleteConflictException

* You can't delete the resource because it is attached to one * or more resources. *

* @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ void deletePolicyVersion(DeletePolicyVersionRequest deletePolicyVersionRequest) throws AmazonClientException, AmazonServiceException; /** *

* Deletes a CA certificate registration code. *

* * @param deleteRegistrationCodeRequest

* The input for the DeleteRegistrationCode operation. *

* @return deleteRegistrationCodeResult The response from the * DeleteRegistrationCode service method, as returned by AWS IoT. * @throws ThrottlingException

* The rate exceeds the limit. *

* @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ DeleteRegistrationCodeResult deleteRegistrationCode( DeleteRegistrationCodeRequest deleteRegistrationCodeRequest) throws AmazonClientException, AmazonServiceException; /** *

* Deletes the specified thing from the Thing Registry. *

* * @param deleteThingRequest

* The input for the DeleteThing operation. *

* @return deleteThingResult The response from the DeleteThing service * method, as returned by AWS IoT. * @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ DeleteThingResult deleteThing(DeleteThingRequest deleteThingRequest) throws AmazonClientException, AmazonServiceException; /** *

* Deletes the specified rule. *

* * @param deleteTopicRuleRequest

* The input for the DeleteTopicRule operation. *

* @throws InternalException

* An unexpected error has occurred. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ void deleteTopicRule(DeleteTopicRuleRequest deleteTopicRuleRequest) throws AmazonClientException, AmazonServiceException; /** *

* Describes a registered CA certificate. *

* * @param describeCACertificateRequest

* The input for the DescribeCACertificate operation. *

* @return describeCACertificateResult The response from the * DescribeCACertificate service method, as returned by AWS IoT. * @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ DescribeCACertificateResult describeCACertificate( DescribeCACertificateRequest describeCACertificateRequest) throws AmazonClientException, AmazonServiceException; /** *

* Gets information about the specified certificate. *

* * @param describeCertificateRequest

* The input for the DescribeCertificate operation. *

* @return describeCertificateResult The response from the * DescribeCertificate service method, as returned by AWS IoT. * @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ DescribeCertificateResult describeCertificate( DescribeCertificateRequest describeCertificateRequest) throws AmazonClientException, AmazonServiceException; /** *

* Returns a unique endpoint specific to the AWS account making the call. *

* * @param describeEndpointRequest

* The input for the DescribeEndpoint operation. *

* @return describeEndpointResult The response from the DescribeEndpoint * service method, as returned by AWS IoT. * @throws InternalFailureException

* An unexpected error has occurred. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ DescribeEndpointResult describeEndpoint(DescribeEndpointRequest describeEndpointRequest) throws AmazonClientException, AmazonServiceException; /** *

* Gets information about the specified thing. *

* * @param describeThingRequest

* The input for the DescribeThing operation. *

* @return describeThingResult The response from the DescribeThing service * method, as returned by AWS IoT. * @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ DescribeThingResult describeThing(DescribeThingRequest describeThingRequest) throws AmazonClientException, AmazonServiceException; /** *

* Removes the specified policy from the specified certificate. *

* * @param detachPrincipalPolicyRequest

* The input for the DetachPrincipalPolicy operation. *

* @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ void detachPrincipalPolicy(DetachPrincipalPolicyRequest detachPrincipalPolicyRequest) throws AmazonClientException, AmazonServiceException; /** *

* Detaches the specified principal from the specified thing. *

* * @param detachThingPrincipalRequest

* The input for the DetachThingPrincipal operation. *

* @return detachThingPrincipalResult The response from the * DetachThingPrincipal service method, as returned by AWS IoT. * @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ DetachThingPrincipalResult detachThingPrincipal( DetachThingPrincipalRequest detachThingPrincipalRequest) throws AmazonClientException, AmazonServiceException; /** *

* Disables the specified rule. *

* * @param disableTopicRuleRequest

* The input for the DisableTopicRuleRequest operation. *

* @throws InternalException

* An unexpected error has occurred. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ void disableTopicRule(DisableTopicRuleRequest disableTopicRuleRequest) throws AmazonClientException, AmazonServiceException; /** *

* Enables the specified rule. *

* * @param enableTopicRuleRequest

* The input for the EnableTopicRuleRequest operation. *

* @throws InternalException

* An unexpected error has occurred. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ void enableTopicRule(EnableTopicRuleRequest enableTopicRuleRequest) throws AmazonClientException, AmazonServiceException; /** *

* Gets the logging options. *

* * @param getLoggingOptionsRequest

* The input for the GetLoggingOptions operation. *

* @return getLoggingOptionsResult The response from the GetLoggingOptions * service method, as returned by AWS IoT. * @throws InternalException

* An unexpected error has occurred. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ GetLoggingOptionsResult getLoggingOptions(GetLoggingOptionsRequest getLoggingOptionsRequest) throws AmazonClientException, AmazonServiceException; /** *

* Gets information about the specified policy with the policy document of * the default version. *

* * @param getPolicyRequest

* The input for the GetPolicy operation. *

* @return getPolicyResult The response from the GetPolicy service method, * as returned by AWS IoT. * @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ GetPolicyResult getPolicy(GetPolicyRequest getPolicyRequest) throws AmazonClientException, AmazonServiceException; /** *

* Gets information about the specified policy version. *

* * @param getPolicyVersionRequest

* The input for the GetPolicyVersion operation. *

* @return getPolicyVersionResult The response from the GetPolicyVersion * service method, as returned by AWS IoT. * @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ GetPolicyVersionResult getPolicyVersion(GetPolicyVersionRequest getPolicyVersionRequest) throws AmazonClientException, AmazonServiceException; /** *

* Gets a registration code used to register a CA certificate with AWS IoT. *

* * @param getRegistrationCodeRequest

* The input to the GetRegistrationCode operation. *

* @return getRegistrationCodeResult The response from the * GetRegistrationCode service method, as returned by AWS IoT. * @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ GetRegistrationCodeResult getRegistrationCode( GetRegistrationCodeRequest getRegistrationCodeRequest) throws AmazonClientException, AmazonServiceException; /** *

* Gets information about the specified rule. *

* * @param getTopicRuleRequest

* The input for the GetTopicRule operation. *

* @return getTopicRuleResult The response from the GetTopicRule service * method, as returned by AWS IoT. * @throws InternalException

* An unexpected error has occurred. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ GetTopicRuleResult getTopicRule(GetTopicRuleRequest getTopicRuleRequest) throws AmazonClientException, AmazonServiceException; /** *

* Lists the CA certificates registered for your AWS account. *

*

* The results are paginated with a default page size of 25. You can use the * returned marker to retrieve additional results. *

* * @param listCACertificatesRequest

* Input for the ListCACertificates operation. *

* @return listCACertificatesResult The response from the ListCACertificates * service method, as returned by AWS IoT. * @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ ListCACertificatesResult listCACertificates(ListCACertificatesRequest listCACertificatesRequest) throws AmazonClientException, AmazonServiceException; /** *

* Lists the certificates registered in your AWS account. *

*

* The results are paginated with a default page size of 25. You can use the * returned marker to retrieve additional results. *

* * @param listCertificatesRequest

* The input for the ListCertificates operation. *

* @return listCertificatesResult The response from the ListCertificates * service method, as returned by AWS IoT. * @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ ListCertificatesResult listCertificates(ListCertificatesRequest listCertificatesRequest) throws AmazonClientException, AmazonServiceException; /** *

* List the device certificates signed by the specified CA certificate. *

* * @param listCertificatesByCARequest

* The input to the ListCertificatesByCA operation. *

* @return listCertificatesByCAResult The response from the * ListCertificatesByCA service method, as returned by AWS IoT. * @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ ListCertificatesByCAResult listCertificatesByCA( ListCertificatesByCARequest listCertificatesByCARequest) throws AmazonClientException, AmazonServiceException; /** *

* Lists your policies. *

* * @param listPoliciesRequest

* The input for the ListPolicies operation. *

* @return listPoliciesResult The response from the ListPolicies service * method, as returned by AWS IoT. * @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ ListPoliciesResult listPolicies(ListPoliciesRequest listPoliciesRequest) throws AmazonClientException, AmazonServiceException; /** *

* Lists the principals associated with the specified policy. *

* * @param listPolicyPrincipalsRequest

* The input for the ListPolicyPrincipals operation. *

* @return listPolicyPrincipalsResult The response from the * ListPolicyPrincipals service method, as returned by AWS IoT. * @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ ListPolicyPrincipalsResult listPolicyPrincipals( ListPolicyPrincipalsRequest listPolicyPrincipalsRequest) throws AmazonClientException, AmazonServiceException; /** *

* Lists the versions of the specified policy and identifies the default * version. *

* * @param listPolicyVersionsRequest

* The input for the ListPolicyVersions operation. *

* @return listPolicyVersionsResult The response from the ListPolicyVersions * service method, as returned by AWS IoT. * @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ ListPolicyVersionsResult listPolicyVersions(ListPolicyVersionsRequest listPolicyVersionsRequest) throws AmazonClientException, AmazonServiceException; /** *

* Lists the policies attached to the specified principal. If you use an * Cognito identity, the ID must be in AmazonCognito Identity format. *

* * @param listPrincipalPoliciesRequest

* The input for the ListPrincipalPolicies operation. *

* @return listPrincipalPoliciesResult The response from the * ListPrincipalPolicies service method, as returned by AWS IoT. * @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ ListPrincipalPoliciesResult listPrincipalPolicies( ListPrincipalPoliciesRequest listPrincipalPoliciesRequest) throws AmazonClientException, AmazonServiceException; /** *

* Lists the things associated with the specified principal. *

* * @param listPrincipalThingsRequest

* The input for the ListPrincipalThings operation. *

* @return listPrincipalThingsResult The response from the * ListPrincipalThings service method, as returned by AWS IoT. * @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ ListPrincipalThingsResult listPrincipalThings( ListPrincipalThingsRequest listPrincipalThingsRequest) throws AmazonClientException, AmazonServiceException; /** *

* Lists the principals associated with the specified thing. *

* * @param listThingPrincipalsRequest

* The input for the ListThingPrincipal operation. *

* @return listThingPrincipalsResult The response from the * ListThingPrincipals service method, as returned by AWS IoT. * @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ ListThingPrincipalsResult listThingPrincipals( ListThingPrincipalsRequest listThingPrincipalsRequest) throws AmazonClientException, AmazonServiceException; /** *

* Lists your things. You can pass an AttributeName or AttributeValue to * filter your things (for example, * "ListThings where AttributeName=Color and AttributeValue=Red"). *

* * @param listThingsRequest

* The input for the ListThings operation. *

* @return listThingsResult The response from the ListThings service method, * as returned by AWS IoT. * @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ ListThingsResult listThings(ListThingsRequest listThingsRequest) throws AmazonClientException, AmazonServiceException; /** *

* Lists the rules for the specific topic. *

* * @param listTopicRulesRequest

* The input for the ListTopicRules operation. *

* @return listTopicRulesResult The response from the ListTopicRules service * method, as returned by AWS IoT. * @throws InternalException

* An unexpected error has occurred. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ ListTopicRulesResult listTopicRules(ListTopicRulesRequest listTopicRulesRequest) throws AmazonClientException, AmazonServiceException; /** *

* Registers a CA certificate with AWS IoT. This CA certificate can then be * used to sign device certificates, which can be then registered with AWS * IoT. You can register up to 10 CA certificates per AWS account that have * the same subject field and public key. This enables you to have up to 10 * certificate authorities sign your device certificates. If you have more * than one CA certificate registered, make sure you pass the CA certificate * when you register your device certificates with the RegisterCertificate * API. *

* * @param registerCACertificateRequest

* The input to the RegisterCACertificate operation. *

* @return registerCACertificateResult The response from the * RegisterCACertificate service method, as returned by AWS IoT. * @throws ResourceAlreadyExistsException

* The resource already exists. *

* @throws RegistrationCodeValidationException

* The registration code is invalid. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws CertificateValidationException

* The certificate is invalid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws LimitExceededException

* The number of attached entities exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ RegisterCACertificateResult registerCACertificate( RegisterCACertificateRequest registerCACertificateRequest) throws AmazonClientException, AmazonServiceException; /** *

* Registers a device certificate with AWS IoT. If you have more than one CA * certificate that has the same subject field, you must specify the CA * certificate that was used to sign the device certificate being * registered. *

* * @param registerCertificateRequest

* The input to the RegisterCertificate operation. *

* @return registerCertificateResult The response from the * RegisterCertificate service method, as returned by AWS IoT. * @throws ResourceAlreadyExistsException

* The resource already exists. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws CertificateValidationException

* The certificate is invalid. *

* @throws CertificateStateException

* The certificate operation is not allowed. *

* @throws CertificateConflictException

* Unable to verify the CA certificate used to sign the device * certificate you are attempting to register. This is happens * when you have registered more than one CA certificate that * has the same subject field and public key. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ RegisterCertificateResult registerCertificate( RegisterCertificateRequest registerCertificateRequest) throws AmazonClientException, AmazonServiceException; /** *

* Rejects a pending certificate transfer. After AWS IoT rejects a * certificate transfer, the certificate status changes from * PENDING_TRANSFER to INACTIVE. *

*

* To check for pending certificate transfers, call ListCertificates * to enumerate your certificates. *

*

* This operation can only be called by the transfer destination. After it * is called, the certificate will be returned to the source's account in * the INACTIVE state. *

* * @param rejectCertificateTransferRequest

* The input for the RejectCertificateTransfer operation. *

* @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws TransferAlreadyCompletedException

* You can't revert the certificate transfer because the * transfer is already complete. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ void rejectCertificateTransfer(RejectCertificateTransferRequest rejectCertificateTransferRequest) throws AmazonClientException, AmazonServiceException; /** *

* Replaces the specified rule. You must specify all parameters for the new * rule. Creating rules is an administrator-level action. Any user who has * permission to create rules will be able to access data processed by the * rule. *

* * @param replaceTopicRuleRequest

* The input for the ReplaceTopicRule operation. *

* @throws SqlParseException

* The Rule-SQL expression can't be parsed correctly. *

* @throws InternalException

* An unexpected error has occurred. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ void replaceTopicRule(ReplaceTopicRuleRequest replaceTopicRuleRequest) throws AmazonClientException, AmazonServiceException; /** *

* Sets the specified version of the specified policy as the policy's * default (operative) version. This action affects all certificates to * which the policy is attached. To list the principals the policy is * attached to, use the ListPrincipalPolicy API. *

* * @param setDefaultPolicyVersionRequest

* The input for the SetDefaultPolicyVersion operation. *

* @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ void setDefaultPolicyVersion(SetDefaultPolicyVersionRequest setDefaultPolicyVersionRequest) throws AmazonClientException, AmazonServiceException; /** *

* Sets the logging options. *

* * @param setLoggingOptionsRequest

* The input for the SetLoggingOptions operation. *

* @throws InternalException

* An unexpected error has occurred. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ void setLoggingOptions(SetLoggingOptionsRequest setLoggingOptionsRequest) throws AmazonClientException, AmazonServiceException; /** *

* Transfers the specified certificate to the specified AWS account. *

*

* You can cancel the transfer until it is acknowledged by the recipient. *

*

* No notification is sent to the transfer destination's account. It is up * to the caller to notify the transfer target. *

*

* The certificate being transferred must not be in the ACTIVE state. You * can use the UpdateCertificate API to deactivate it. *

*

* The certificate must not have any policies attached to it. You can use * the DetachPrincipalPolicy API to detach them. *

* * @param transferCertificateRequest

* The input for the TransferCertificate operation. *

* @return transferCertificateResult The response from the * TransferCertificate service method, as returned by AWS IoT. * @throws InvalidRequestException

* The request is not valid. *

* @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws CertificateStateException

* The certificate operation is not allowed. *

* @throws TransferConflictException

* You can't transfer the certificate because authorization * policies are still attached. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ TransferCertificateResult transferCertificate( TransferCertificateRequest transferCertificateRequest) throws AmazonClientException, AmazonServiceException; /** *

* Updates a registered CA certificate. *

* * @param updateCACertificateRequest

* The input to the UpdateCACertificate operation. *

* @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ void updateCACertificate(UpdateCACertificateRequest updateCACertificateRequest) throws AmazonClientException, AmazonServiceException; /** *

* Updates the status of the specified certificate. This operation is * idempotent. *

*

* Moving a certificate from the ACTIVE state (including REVOKED) will not * disconnect currently connected devices, but these devices will be unable * to reconnect. *

*

* The ACTIVE state is required to authenticate devices connecting to AWS * IoT using a certificate. *

* * @param updateCertificateRequest

* The input for the UpdateCertificate operation. *

* @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws CertificateStateException

* The certificate operation is not allowed. *

* @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ void updateCertificate(UpdateCertificateRequest updateCertificateRequest) throws AmazonClientException, AmazonServiceException; /** *

* Updates the data for a thing. *

* * @param updateThingRequest

* The input for the UpdateThing operation. *

* @return updateThingResult The response from the UpdateThing service * method, as returned by AWS IoT. * @throws InvalidRequestException

* The request is not valid. *

* @throws ThrottlingException

* The rate exceeds the limit. *

* @throws UnauthorizedException

* You are not authorized to perform this operation. *

* @throws ServiceUnavailableException

* The service is temporarily unavailable. *

* @throws InternalFailureException

* An unexpected error has occurred. *

* @throws ResourceNotFoundException

* The specified resource does not exist. *

* @throws AmazonClientException If any internal errors are encountered * inside the client while attempting to make the request or * handle the response. For example if a network connection is * not available. * @throws AmazonServiceException If an error response is returned by AWS * IoT indicating either a problem with the data in the request, * or a server side issue. */ UpdateThingResult updateThing(UpdateThingRequest updateThingRequest) throws AmazonClientException, AmazonServiceException; /** * 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. */ public 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. */ public ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request); }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy