NAME

Paws::IoT - Perl Interface to AWS AWS IoT

SYNOPSIS

use Paws;

my $obj = Paws->service('IoT');
my $res = $obj->Method(
  Arg1 => $val1,
  Arg2 => [ 'V1', 'V2' ],
  # if Arg3 is an object, the HashRef will be used as arguments to the constructor
  # of the arguments type
  Arg3 => { Att1 => 'Val1' },
  # if Arg4 is an array of objects, the HashRefs will be passed as arguments to
  # the constructor of the arguments type
  Arg4 => [ { Att1 => 'Val1'  }, { Att1 => 'Val2' } ],
);

DESCRIPTION

AWS IoT (Beta)

AWS IoT is in beta and is subject to change

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.

METHODS

AcceptCertificateTransfer(CertificateId => Str, [SetAsActive => Bool])

Each argument is described in detail in: Paws::IoT::AcceptCertificateTransfer

Returns: nothing

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.

AttachPrincipalPolicy(PolicyName => Str, Principal => Str)

Each argument is described in detail in: Paws::IoT::AttachPrincipalPolicy

Returns: nothing

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

AttachThingPrincipal(Principal => Str, ThingName => Str)

Each argument is described in detail in: Paws::IoT::AttachThingPrincipal

Returns: a Paws::IoT::AttachThingPrincipalResponse instance

Attaches the specified principal to the specified thing.

CancelCertificateTransfer(CertificateId => Str)

Each argument is described in detail in: Paws::IoT::CancelCertificateTransfer

Returns: nothing

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. Once the destination account has accepted the transfer, the transfer may no longer be cancelled.

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

CreateCertificateFromCsr(CertificateSigningRequest => Str, [SetAsActive => Bool])

Each argument is described in detail in: Paws::IoT::CreateCertificateFromCsr

Returns: a Paws::IoT::CreateCertificateFromCsrResponse instance

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

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

CreateKeysAndCertificate([SetAsActive => Bool])

Each argument is described in detail in: Paws::IoT::CreateKeysAndCertificate

Returns: a Paws::IoT::CreateKeysAndCertificateResponse instance

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. It is important to keep track of the private key.

CreatePolicy(PolicyDocument => Str, PolicyName => Str)

Each argument is described in detail in: Paws::IoT::CreatePolicy

Returns: a Paws::IoT::CreatePolicyResponse instance

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.

CreatePolicyVersion(PolicyDocument => Str, PolicyName => Str, [SetAsDefault => Bool])

Each argument is described in detail in: Paws::IoT::CreatePolicyVersion

Returns: a Paws::IoT::CreatePolicyVersionResponse instance

Creates a new version of the specified AWS IoT policy.

CreateThing(ThingName => Str, [AttributePayload => Paws::IoT::AttributePayload])

Each argument is described in detail in: Paws::IoT::CreateThing

Returns: a Paws::IoT::CreateThingResponse instance

Creates a thing in the thing registry.

CreateTopicRule(RuleName => Str, TopicRulePayload => Paws::IoT::TopicRulePayload)

Each argument is described in detail in: Paws::IoT::CreateTopicRule

Returns: nothing

Creates a rule.

DeleteCertificate(CertificateId => Str)

Each argument is described in detail in: Paws::IoT::DeleteCertificate

Returns: nothing

Deletes the specified certificate.

A certificate cannot be deleted if it has a policy attached to it. To delete a certificate, first detach all policies using the DetachPrincipalPolicy operation.

In addition, a certificate cannot be deleted if it is in ACTIVE status. To delete a certificate, first change the status to INACTIVE using the UpdateCertificate operation.

DeletePolicy(PolicyName => Str)

Each argument is described in detail in: Paws::IoT::DeletePolicy

Returns: nothing

Deletes the specified policy.

A policy cannot be deleted if:

- it has non-default versions

- it is attached to any certificate

To delete a policy:

- First delete all the non-default versions of the policy using the DeletePolicyVersion API.

- Detach it from any certificate using the DetachPrincipalPolicy API.

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

DeletePolicyVersion(PolicyName => Str, PolicyVersionId => Str)

Each argument is described in detail in: Paws::IoT::DeletePolicyVersion

Returns: nothing

Deletes the specified version of the specified policy. The default
version of the policy cannot be deleted.

To delete the default version use the DeletePolicy API or mark the policy as non-default and then delete it.

DeleteThing(ThingName => Str)

Each argument is described in detail in: Paws::IoT::DeleteThing

Returns: a Paws::IoT::DeleteThingResponse instance

Deletes the specified thing from the Thing Registry.

DeleteTopicRule(RuleName => Str)

Each argument is described in detail in: Paws::IoT::DeleteTopicRule

Returns: nothing

Deletes the specified rule.

DescribeCertificate(CertificateId => Str)

Each argument is described in detail in: Paws::IoT::DescribeCertificate

Returns: a Paws::IoT::DescribeCertificateResponse instance

Gets information about the specified certificate.

DescribeEndpoint()

Each argument is described in detail in: Paws::IoT::DescribeEndpoint

Returns: a Paws::IoT::DescribeEndpointResponse instance

Returns a unique URL specific to the AWS account making the call. The
URL points to the AWS IoT data plane endpoint. The customer-specific
endpoint should be provided to all data plane operations.

DescribeThing(ThingName => Str)

Each argument is described in detail in: Paws::IoT::DescribeThing

Returns: a Paws::IoT::DescribeThingResponse instance

Gets information about the specified thing.

DetachPrincipalPolicy(PolicyName => Str, Principal => Str)

Each argument is described in detail in: Paws::IoT::DetachPrincipalPolicy

Returns: nothing

Removes the specified policy from the specified certificate.

DetachThingPrincipal(Principal => Str, ThingName => Str)

Each argument is described in detail in: Paws::IoT::DetachThingPrincipal

Returns: a Paws::IoT::DetachThingPrincipalResponse instance

Detaches the specified principal from the specified thing.

GetLoggingOptions()

Each argument is described in detail in: Paws::IoT::GetLoggingOptions

Returns: a Paws::IoT::GetLoggingOptionsResponse instance

Gets the logging options.

GetPolicy(PolicyName => Str)

Each argument is described in detail in: Paws::IoT::GetPolicy

Returns: a Paws::IoT::GetPolicyResponse instance

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

GetPolicyVersion(PolicyName => Str, PolicyVersionId => Str)

Each argument is described in detail in: Paws::IoT::GetPolicyVersion

Returns: a Paws::IoT::GetPolicyVersionResponse instance

Gets information about the specified policy version.

GetTopicRule(RuleName => Str)

Each argument is described in detail in: Paws::IoT::GetTopicRule

Returns: a Paws::IoT::GetTopicRuleResponse instance

Gets information about the specified rule.

ListCertificates([AscendingOrder => Bool, Marker => Str, PageSize => Int])

Each argument is described in detail in: Paws::IoT::ListCertificates

Returns: a Paws::IoT::ListCertificatesResponse instance

Lists your certificates.

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

ListPolicies([AscendingOrder => Bool, Marker => Str, PageSize => Int])

Each argument is described in detail in: Paws::IoT::ListPolicies

Returns: a Paws::IoT::ListPoliciesResponse instance

Lists your policies.

ListPolicyVersions(PolicyName => Str)

Each argument is described in detail in: Paws::IoT::ListPolicyVersions

Returns: a Paws::IoT::ListPolicyVersionsResponse instance

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

ListPrincipalPolicies(Principal => Str, [AscendingOrder => Bool, Marker => Str, PageSize => Int])

Each argument is described in detail in: Paws::IoT::ListPrincipalPolicies

Returns: a Paws::IoT::ListPrincipalPoliciesResponse instance

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

ListPrincipalThings(Principal => Str, [MaxResults => Int, NextToken => Str])

Each argument is described in detail in: Paws::IoT::ListPrincipalThings

Returns: a Paws::IoT::ListPrincipalThingsResponse instance

Lists the things associated with the specified principal.

ListThingPrincipals(ThingName => Str)

Each argument is described in detail in: Paws::IoT::ListThingPrincipals

Returns: a Paws::IoT::ListThingPrincipalsResponse instance

Lists the principals associated with the specified thing.

ListThings([AttributeName => Str, AttributeValue => Str, MaxResults => Int, NextToken => Str])

Each argument is described in detail in: Paws::IoT::ListThings

Returns: a Paws::IoT::ListThingsResponse instance

Lists your things. You can pass an AttributeName and/or AttributeValue
to filter your things. For example: "ListThings where
AttributeName=Color and AttributeValue=Red"

ListTopicRules([MaxResults => Int, NextToken => Str, RuleDisabled => Bool, Topic => Str])

Each argument is described in detail in: Paws::IoT::ListTopicRules

Returns: a Paws::IoT::ListTopicRulesResponse instance

Lists the rules for the specific topic.

RejectCertificateTransfer(CertificateId => Str)

Each argument is described in detail in: Paws::IoT::RejectCertificateTransfer

Returns: nothing

Rejects a pending certificate transfer. After AWS IoT rejects a
certificate transfer, the certificate status changes from
B<PENDING_TRANFER> to B<INACTIVE>.

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

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

ReplaceTopicRule(RuleName => Str, TopicRulePayload => Paws::IoT::TopicRulePayload)

Each argument is described in detail in: Paws::IoT::ReplaceTopicRule

Returns: nothing

Replaces the specified rule. You must specify all parameters for the
new rule.

SetDefaultPolicyVersion(PolicyName => Str, PolicyVersionId => Str)

Each argument is described in detail in: Paws::IoT::SetDefaultPolicyVersion

Returns: nothing

Sets the specified policy version as the default for the specified
policy.

SetLoggingOptions([LoggingOptionsPayload => Paws::IoT::LoggingOptionsPayload])

Each argument is described in detail in: Paws::IoT::SetLoggingOptions

Returns: nothing

Sets the logging options.

TransferCertificate(CertificateId => Str, TargetAwsAccount => Str)

Each argument is described in detail in: Paws::IoT::TransferCertificate

Returns: a Paws::IoT::TransferCertificateResponse instance

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. It can be deactivated using the UpdateCertificate API.

The certificate must not have any policies attached to it. These can be detached using the DetachPrincipalPolicy API.

UpdateCertificate(CertificateId => Str, NewStatus => Str)

Each argument is described in detail in: Paws::IoT::UpdateCertificate

Returns: nothing

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

Moving a cert from the ACTIVE state (including REVOKED) will NOT disconnect currently-connected devices, although these devices will be unable to reconnect.

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

UpdateThing(AttributePayload => Paws::IoT::AttributePayload, ThingName => Str)

Each argument is described in detail in: Paws::IoT::UpdateThing

Returns: a Paws::IoT::UpdateThingResponse instance

Updates the data for a thing.

SEE ALSO

This service class forms part of Paws

BUGS and CONTRIBUTIONS

The source code is located here: https://github.com/pplu/aws-sdk-perl

Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues