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 Java SDK for AWS Iot Service module holds the client classes that are used for communicating with AWS IoT Service

There is a newer version: 1.11.9
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. */ void setEndpoint(String endpoint); /** * 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. 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) */ void setRegion(Region region); /** *

* 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. * @return Result of the AcceptCertificateTransfer operation returned by the * service. * @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. * @sample AWSIot.AcceptCertificateTransfer */ AcceptCertificateTransferResult acceptCertificateTransfer( AcceptCertificateTransferRequest acceptCertificateTransferRequest); /** *

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

* * @param attachPrincipalPolicyRequest * The input for the AttachPrincipalPolicy operation. * @return Result of the AttachPrincipalPolicy operation returned by the * service. * @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. * @sample AWSIot.AttachPrincipalPolicy */ AttachPrincipalPolicyResult attachPrincipalPolicy( AttachPrincipalPolicyRequest attachPrincipalPolicyRequest); /** *

* Attaches the specified principal to the specified thing. *

* * @param attachThingPrincipalRequest * The input for the AttachThingPrincipal operation. * @return Result of the AttachThingPrincipal operation returned by the * service. * @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. * @sample AWSIot.AttachThingPrincipal */ AttachThingPrincipalResult attachThingPrincipal( AttachThingPrincipalRequest attachThingPrincipalRequest); /** *

* 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. * @return Result of the CancelCertificateTransfer operation returned by the * service. * @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. * @sample AWSIot.CancelCertificateTransfer */ CancelCertificateTransferResult cancelCertificateTransfer( CancelCertificateTransferRequest cancelCertificateTransferRequest); /** *

* 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 Result of the CreateCertificateFromCsr operation returned by the * service. * @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. * @sample AWSIot.CreateCertificateFromCsr */ CreateCertificateFromCsrResult createCertificateFromCsr( CreateCertificateFromCsrRequest createCertificateFromCsrRequest); /** *

* 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 Result of the CreateKeysAndCertificate operation returned by the * service. * @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. * @sample AWSIot.CreateKeysAndCertificate */ CreateKeysAndCertificateResult createKeysAndCertificate( CreateKeysAndCertificateRequest createKeysAndCertificateRequest); /** *

* 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 Result of the CreatePolicy operation returned by the service. * @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. * @sample AWSIot.CreatePolicy */ CreatePolicyResult createPolicy(CreatePolicyRequest createPolicyRequest); /** *

* 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 Result of the CreatePolicyVersion operation returned by the * service. * @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. * @sample AWSIot.CreatePolicyVersion */ CreatePolicyVersionResult createPolicyVersion( CreatePolicyVersionRequest createPolicyVersionRequest); /** *

* Creates a thing in the Thing Registry. *

* * @param createThingRequest * The input for the CreateThing operation. * @return Result of the CreateThing operation returned by the service. * @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. * @sample AWSIot.CreateThing */ CreateThingResult createThing(CreateThingRequest createThingRequest); /** *

* 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. * @return Result of the CreateTopicRule operation returned by the service. * @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. * @sample AWSIot.CreateTopicRule */ CreateTopicRuleResult createTopicRule( CreateTopicRuleRequest createTopicRuleRequest); /** *

* Deletes a registered CA certificate. *

* * @param deleteCACertificateRequest * Input for the DeleteCACertificate operation. * @return Result of the DeleteCACertificate operation returned by the * service. * @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. * @sample AWSIot.DeleteCACertificate */ DeleteCACertificateResult deleteCACertificate( DeleteCACertificateRequest deleteCACertificateRequest); /** *

* 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. * @return Result of the DeleteCertificate operation returned by the * service. * @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. * @sample AWSIot.DeleteCertificate */ DeleteCertificateResult deleteCertificate( DeleteCertificateRequest deleteCertificateRequest); /** *

* 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. * @return Result of the DeletePolicy operation returned by the service. * @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. * @sample AWSIot.DeletePolicy */ DeletePolicyResult deletePolicy(DeletePolicyRequest deletePolicyRequest); /** *

* 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. * @return Result of the DeletePolicyVersion operation returned by the * service. * @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. * @sample AWSIot.DeletePolicyVersion */ DeletePolicyVersionResult deletePolicyVersion( DeletePolicyVersionRequest deletePolicyVersionRequest); /** *

* Deletes a CA certificate registration code. *

* * @param deleteRegistrationCodeRequest * The input for the DeleteRegistrationCode operation. * @return Result of the DeleteRegistrationCode operation returned by the * service. * @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. * @sample AWSIot.DeleteRegistrationCode */ DeleteRegistrationCodeResult deleteRegistrationCode( DeleteRegistrationCodeRequest deleteRegistrationCodeRequest); /** *

* Deletes the specified thing from the Thing Registry. *

* * @param deleteThingRequest * The input for the DeleteThing operation. * @return Result of the DeleteThing operation returned by the service. * @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. * @sample AWSIot.DeleteThing */ DeleteThingResult deleteThing(DeleteThingRequest deleteThingRequest); /** *

* Deletes the specified rule. *

* * @param deleteTopicRuleRequest * The input for the DeleteTopicRule operation. * @return Result of the DeleteTopicRule operation returned by the service. * @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. * @sample AWSIot.DeleteTopicRule */ DeleteTopicRuleResult deleteTopicRule( DeleteTopicRuleRequest deleteTopicRuleRequest); /** *

* Describes a registered CA certificate. *

* * @param describeCACertificateRequest * The input for the DescribeCACertificate operation. * @return Result of the DescribeCACertificate operation returned by the * service. * @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. * @sample AWSIot.DescribeCACertificate */ DescribeCACertificateResult describeCACertificate( DescribeCACertificateRequest describeCACertificateRequest); /** *

* Gets information about the specified certificate. *

* * @param describeCertificateRequest * The input for the DescribeCertificate operation. * @return Result of the DescribeCertificate operation returned by the * service. * @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. * @sample AWSIot.DescribeCertificate */ DescribeCertificateResult describeCertificate( DescribeCertificateRequest describeCertificateRequest); /** *

* Returns a unique endpoint specific to the AWS account making the call. * You specify the following URI when updating state information for your * thing: https://endpoint/things/thingName/shadow. *

* * @param describeEndpointRequest * The input for the DescribeEndpoint operation. * @return Result of the DescribeEndpoint operation returned by the service. * @throws InternalFailureException * An unexpected error has occurred. * @throws UnauthorizedException * You are not authorized to perform this operation. * @throws ThrottlingException * The rate exceeds the limit. * @sample AWSIot.DescribeEndpoint */ DescribeEndpointResult describeEndpoint( DescribeEndpointRequest describeEndpointRequest); /** *

* Gets information about the specified thing. *

* * @param describeThingRequest * The input for the DescribeThing operation. * @return Result of the DescribeThing operation returned by the service. * @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. * @sample AWSIot.DescribeThing */ DescribeThingResult describeThing(DescribeThingRequest describeThingRequest); /** *

* Removes the specified policy from the specified certificate. *

* * @param detachPrincipalPolicyRequest * The input for the DetachPrincipalPolicy operation. * @return Result of the DetachPrincipalPolicy operation returned by the * service. * @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. * @sample AWSIot.DetachPrincipalPolicy */ DetachPrincipalPolicyResult detachPrincipalPolicy( DetachPrincipalPolicyRequest detachPrincipalPolicyRequest); /** *

* Detaches the specified principal from the specified thing. *

* * @param detachThingPrincipalRequest * The input for the DetachThingPrincipal operation. * @return Result of the DetachThingPrincipal operation returned by the * service. * @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. * @sample AWSIot.DetachThingPrincipal */ DetachThingPrincipalResult detachThingPrincipal( DetachThingPrincipalRequest detachThingPrincipalRequest); /** *

* Disables the specified rule. *

* * @param disableTopicRuleRequest * The input for the DisableTopicRuleRequest operation. * @return Result of the DisableTopicRule operation returned by the service. * @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. * @sample AWSIot.DisableTopicRule */ DisableTopicRuleResult disableTopicRule( DisableTopicRuleRequest disableTopicRuleRequest); /** *

* Enables the specified rule. *

* * @param enableTopicRuleRequest * The input for the EnableTopicRuleRequest operation. * @return Result of the EnableTopicRule operation returned by the service. * @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. * @sample AWSIot.EnableTopicRule */ EnableTopicRuleResult enableTopicRule( EnableTopicRuleRequest enableTopicRuleRequest); /** *

* Gets the logging options. *

* * @param getLoggingOptionsRequest * The input for the GetLoggingOptions operation. * @return Result of the GetLoggingOptions operation returned by the * service. * @throws InternalException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @sample AWSIot.GetLoggingOptions */ GetLoggingOptionsResult getLoggingOptions( GetLoggingOptionsRequest getLoggingOptionsRequest); /** *

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

* * @param getPolicyRequest * The input for the GetPolicy operation. * @return Result of the GetPolicy operation returned by the service. * @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. * @sample AWSIot.GetPolicy */ GetPolicyResult getPolicy(GetPolicyRequest getPolicyRequest); /** *

* Gets information about the specified policy version. *

* * @param getPolicyVersionRequest * The input for the GetPolicyVersion operation. * @return Result of the GetPolicyVersion operation returned by the service. * @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. * @sample AWSIot.GetPolicyVersion */ GetPolicyVersionResult getPolicyVersion( GetPolicyVersionRequest getPolicyVersionRequest); /** *

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

* * @param getRegistrationCodeRequest * The input to the GetRegistrationCode operation. * @return Result of the GetRegistrationCode operation returned by the * service. * @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. * @sample AWSIot.GetRegistrationCode */ GetRegistrationCodeResult getRegistrationCode( GetRegistrationCodeRequest getRegistrationCodeRequest); /** *

* Gets information about the specified rule. *

* * @param getTopicRuleRequest * The input for the GetTopicRule operation. * @return Result of the GetTopicRule operation returned by the service. * @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. * @sample AWSIot.GetTopicRule */ GetTopicRuleResult getTopicRule(GetTopicRuleRequest getTopicRuleRequest); /** *

* 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 Result of the ListCACertificates operation returned by the * service. * @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. * @sample AWSIot.ListCACertificates */ ListCACertificatesResult listCACertificates( ListCACertificatesRequest listCACertificatesRequest); /** *

* 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 Result of the ListCertificates operation returned by the service. * @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. * @sample AWSIot.ListCertificates */ ListCertificatesResult listCertificates( ListCertificatesRequest listCertificatesRequest); /** *

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

* * @param listCertificatesByCARequest * The input to the ListCertificatesByCA operation. * @return Result of the ListCertificatesByCA operation returned by the * service. * @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. * @sample AWSIot.ListCertificatesByCA */ ListCertificatesByCAResult listCertificatesByCA( ListCertificatesByCARequest listCertificatesByCARequest); /** *

* Lists your policies. *

* * @param listPoliciesRequest * The input for the ListPolicies operation. * @return Result of the ListPolicies operation returned by the service. * @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. * @sample AWSIot.ListPolicies */ ListPoliciesResult listPolicies(ListPoliciesRequest listPoliciesRequest); /** *

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

* * @param listPolicyVersionsRequest * The input for the ListPolicyVersions operation. * @return Result of the ListPolicyVersions operation returned by the * service. * @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. * @sample AWSIot.ListPolicyVersions */ ListPolicyVersionsResult listPolicyVersions( ListPolicyVersionsRequest listPolicyVersionsRequest); /** *

* 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 Result of the ListPrincipalPolicies operation returned by the * service. * @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. * @sample AWSIot.ListPrincipalPolicies */ ListPrincipalPoliciesResult listPrincipalPolicies( ListPrincipalPoliciesRequest listPrincipalPoliciesRequest); /** *

* Lists the things associated with the specified principal. *

* * @param listPrincipalThingsRequest * The input for the ListPrincipalThings operation. * @return Result of the ListPrincipalThings operation returned by the * service. * @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. * @sample AWSIot.ListPrincipalThings */ ListPrincipalThingsResult listPrincipalThings( ListPrincipalThingsRequest listPrincipalThingsRequest); /** *

* Lists the principals associated with the specified thing. *

* * @param listThingPrincipalsRequest * The input for the ListThingPrincipal operation. * @return Result of the ListThingPrincipals operation returned by the * service. * @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. * @sample AWSIot.ListThingPrincipals */ ListThingPrincipalsResult listThingPrincipals( ListThingPrincipalsRequest listThingPrincipalsRequest); /** *

* 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 Result of the ListThings operation returned by the service. * @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. * @sample AWSIot.ListThings */ ListThingsResult listThings(ListThingsRequest listThingsRequest); /** *

* Lists the rules for the specific topic. *

* * @param listTopicRulesRequest * The input for the ListTopicRules operation. * @return Result of the ListTopicRules operation returned by the service. * @throws InternalException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @sample AWSIot.ListTopicRules */ ListTopicRulesResult listTopicRules( ListTopicRulesRequest listTopicRulesRequest); /** *

* 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 Result of the RegisterCACertificate operation returned by the * service. * @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. * @sample AWSIot.RegisterCACertificate */ RegisterCACertificateResult registerCACertificate( RegisterCACertificateRequest registerCACertificateRequest); /** *

* 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 Result of the RegisterCertificate operation returned by the * service. * @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. * @sample AWSIot.RegisterCertificate */ RegisterCertificateResult registerCertificate( RegisterCertificateRequest registerCertificateRequest); /** *

* 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. * @return Result of the RejectCertificateTransfer operation returned by the * service. * @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. * @sample AWSIot.RejectCertificateTransfer */ RejectCertificateTransferResult rejectCertificateTransfer( RejectCertificateTransferRequest rejectCertificateTransferRequest); /** *

* 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. * @return Result of the ReplaceTopicRule operation returned by the service. * @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. * @sample AWSIot.ReplaceTopicRule */ ReplaceTopicRuleResult replaceTopicRule( ReplaceTopicRuleRequest replaceTopicRuleRequest); /** *

* 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. * @return Result of the SetDefaultPolicyVersion operation returned by the * service. * @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. * @sample AWSIot.SetDefaultPolicyVersion */ SetDefaultPolicyVersionResult setDefaultPolicyVersion( SetDefaultPolicyVersionRequest setDefaultPolicyVersionRequest); /** *

* Sets the logging options. *

* * @param setLoggingOptionsRequest * The input for the SetLoggingOptions operation. * @return Result of the SetLoggingOptions operation returned by the * service. * @throws InternalException * An unexpected error has occurred. * @throws InvalidRequestException * The request is not valid. * @throws ServiceUnavailableException * The service is temporarily unavailable. * @sample AWSIot.SetLoggingOptions */ SetLoggingOptionsResult setLoggingOptions( SetLoggingOptionsRequest setLoggingOptionsRequest); /** *

* 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 Result of the TransferCertificate operation returned by the * service. * @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. * @sample AWSIot.TransferCertificate */ TransferCertificateResult transferCertificate( TransferCertificateRequest transferCertificateRequest); /** *

* Updates a registered CA certificate. *

* * @param updateCACertificateRequest * The input to the UpdateCACertificate operation. * @return Result of the UpdateCACertificate operation returned by the * service. * @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. * @sample AWSIot.UpdateCACertificate */ UpdateCACertificateResult updateCACertificate( UpdateCACertificateRequest updateCACertificateRequest); /** *

* 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. * @return Result of the UpdateCertificate operation returned by the * service. * @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. * @sample AWSIot.UpdateCertificate */ UpdateCertificateResult updateCertificate( UpdateCertificateRequest updateCertificateRequest); /** *

* Updates the data for a thing. *

* * @param updateThingRequest * The input for the UpdateThing operation. * @return Result of the UpdateThing operation returned by the service. * @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. * @sample AWSIot.UpdateThing */ UpdateThingResult updateThing(UpdateThingRequest updateThingRequest); /** * 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); }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy