File Coverage

blib/lib/Paws/IoT.pm
Criterion Covered Total %
statement 3 3 100.0
branch n/a
condition n/a
subroutine 1 1 100.0
pod n/a
total 4 4 100.0


line stmt bran cond sub pod time code
1             package Paws::IoT;
2 1     1   11049 use Moose;
  1         7  
  1         16  
3             sub service { 'iot' }
4             sub version { '2015-05-28' }
5             sub flattened_arrays { 0 }
6             has max_attempts => (is => 'ro', isa => 'Int', default => 5);
7             has retry => (is => 'ro', isa => 'HashRef', default => sub {
8             { base => 'rand', type => 'exponential', growth_factor => 2 }
9             });
10             has retriables => (is => 'ro', isa => 'ArrayRef', default => sub { [
11             ] });
12              
13             with 'Paws::API::Caller', 'Paws::API::EndpointResolver', 'Paws::Net::V4Signature', 'Paws::Net::RestJsonCaller', 'Paws::Net::RestJsonResponse';
14              
15            
16             sub AcceptCertificateTransfer {
17             my $self = shift;
18             my $call_object = $self->new_with_coercions('Paws::IoT::AcceptCertificateTransfer', @_);
19             return $self->caller->do_call($self, $call_object);
20             }
21             sub AttachPrincipalPolicy {
22             my $self = shift;
23             my $call_object = $self->new_with_coercions('Paws::IoT::AttachPrincipalPolicy', @_);
24             return $self->caller->do_call($self, $call_object);
25             }
26             sub AttachThingPrincipal {
27             my $self = shift;
28             my $call_object = $self->new_with_coercions('Paws::IoT::AttachThingPrincipal', @_);
29             return $self->caller->do_call($self, $call_object);
30             }
31             sub CancelCertificateTransfer {
32             my $self = shift;
33             my $call_object = $self->new_with_coercions('Paws::IoT::CancelCertificateTransfer', @_);
34             return $self->caller->do_call($self, $call_object);
35             }
36             sub CreateCertificateFromCsr {
37             my $self = shift;
38             my $call_object = $self->new_with_coercions('Paws::IoT::CreateCertificateFromCsr', @_);
39             return $self->caller->do_call($self, $call_object);
40             }
41             sub CreateKeysAndCertificate {
42             my $self = shift;
43             my $call_object = $self->new_with_coercions('Paws::IoT::CreateKeysAndCertificate', @_);
44             return $self->caller->do_call($self, $call_object);
45             }
46             sub CreatePolicy {
47             my $self = shift;
48             my $call_object = $self->new_with_coercions('Paws::IoT::CreatePolicy', @_);
49             return $self->caller->do_call($self, $call_object);
50             }
51             sub CreatePolicyVersion {
52             my $self = shift;
53             my $call_object = $self->new_with_coercions('Paws::IoT::CreatePolicyVersion', @_);
54             return $self->caller->do_call($self, $call_object);
55             }
56             sub CreateThing {
57             my $self = shift;
58             my $call_object = $self->new_with_coercions('Paws::IoT::CreateThing', @_);
59             return $self->caller->do_call($self, $call_object);
60             }
61             sub CreateThingType {
62             my $self = shift;
63             my $call_object = $self->new_with_coercions('Paws::IoT::CreateThingType', @_);
64             return $self->caller->do_call($self, $call_object);
65             }
66             sub CreateTopicRule {
67             my $self = shift;
68             my $call_object = $self->new_with_coercions('Paws::IoT::CreateTopicRule', @_);
69             return $self->caller->do_call($self, $call_object);
70             }
71             sub DeleteCACertificate {
72             my $self = shift;
73             my $call_object = $self->new_with_coercions('Paws::IoT::DeleteCACertificate', @_);
74             return $self->caller->do_call($self, $call_object);
75             }
76             sub DeleteCertificate {
77             my $self = shift;
78             my $call_object = $self->new_with_coercions('Paws::IoT::DeleteCertificate', @_);
79             return $self->caller->do_call($self, $call_object);
80             }
81             sub DeletePolicy {
82             my $self = shift;
83             my $call_object = $self->new_with_coercions('Paws::IoT::DeletePolicy', @_);
84             return $self->caller->do_call($self, $call_object);
85             }
86             sub DeletePolicyVersion {
87             my $self = shift;
88             my $call_object = $self->new_with_coercions('Paws::IoT::DeletePolicyVersion', @_);
89             return $self->caller->do_call($self, $call_object);
90             }
91             sub DeleteRegistrationCode {
92             my $self = shift;
93             my $call_object = $self->new_with_coercions('Paws::IoT::DeleteRegistrationCode', @_);
94             return $self->caller->do_call($self, $call_object);
95             }
96             sub DeleteThing {
97             my $self = shift;
98             my $call_object = $self->new_with_coercions('Paws::IoT::DeleteThing', @_);
99             return $self->caller->do_call($self, $call_object);
100             }
101             sub DeleteThingType {
102             my $self = shift;
103             my $call_object = $self->new_with_coercions('Paws::IoT::DeleteThingType', @_);
104             return $self->caller->do_call($self, $call_object);
105             }
106             sub DeleteTopicRule {
107             my $self = shift;
108             my $call_object = $self->new_with_coercions('Paws::IoT::DeleteTopicRule', @_);
109             return $self->caller->do_call($self, $call_object);
110             }
111             sub DeprecateThingType {
112             my $self = shift;
113             my $call_object = $self->new_with_coercions('Paws::IoT::DeprecateThingType', @_);
114             return $self->caller->do_call($self, $call_object);
115             }
116             sub DescribeCACertificate {
117             my $self = shift;
118             my $call_object = $self->new_with_coercions('Paws::IoT::DescribeCACertificate', @_);
119             return $self->caller->do_call($self, $call_object);
120             }
121             sub DescribeCertificate {
122             my $self = shift;
123             my $call_object = $self->new_with_coercions('Paws::IoT::DescribeCertificate', @_);
124             return $self->caller->do_call($self, $call_object);
125             }
126             sub DescribeEndpoint {
127             my $self = shift;
128             my $call_object = $self->new_with_coercions('Paws::IoT::DescribeEndpoint', @_);
129             return $self->caller->do_call($self, $call_object);
130             }
131             sub DescribeThing {
132             my $self = shift;
133             my $call_object = $self->new_with_coercions('Paws::IoT::DescribeThing', @_);
134             return $self->caller->do_call($self, $call_object);
135             }
136             sub DescribeThingType {
137             my $self = shift;
138             my $call_object = $self->new_with_coercions('Paws::IoT::DescribeThingType', @_);
139             return $self->caller->do_call($self, $call_object);
140             }
141             sub DetachPrincipalPolicy {
142             my $self = shift;
143             my $call_object = $self->new_with_coercions('Paws::IoT::DetachPrincipalPolicy', @_);
144             return $self->caller->do_call($self, $call_object);
145             }
146             sub DetachThingPrincipal {
147             my $self = shift;
148             my $call_object = $self->new_with_coercions('Paws::IoT::DetachThingPrincipal', @_);
149             return $self->caller->do_call($self, $call_object);
150             }
151             sub DisableTopicRule {
152             my $self = shift;
153             my $call_object = $self->new_with_coercions('Paws::IoT::DisableTopicRule', @_);
154             return $self->caller->do_call($self, $call_object);
155             }
156             sub EnableTopicRule {
157             my $self = shift;
158             my $call_object = $self->new_with_coercions('Paws::IoT::EnableTopicRule', @_);
159             return $self->caller->do_call($self, $call_object);
160             }
161             sub GetLoggingOptions {
162             my $self = shift;
163             my $call_object = $self->new_with_coercions('Paws::IoT::GetLoggingOptions', @_);
164             return $self->caller->do_call($self, $call_object);
165             }
166             sub GetPolicy {
167             my $self = shift;
168             my $call_object = $self->new_with_coercions('Paws::IoT::GetPolicy', @_);
169             return $self->caller->do_call($self, $call_object);
170             }
171             sub GetPolicyVersion {
172             my $self = shift;
173             my $call_object = $self->new_with_coercions('Paws::IoT::GetPolicyVersion', @_);
174             return $self->caller->do_call($self, $call_object);
175             }
176             sub GetRegistrationCode {
177             my $self = shift;
178             my $call_object = $self->new_with_coercions('Paws::IoT::GetRegistrationCode', @_);
179             return $self->caller->do_call($self, $call_object);
180             }
181             sub GetTopicRule {
182             my $self = shift;
183             my $call_object = $self->new_with_coercions('Paws::IoT::GetTopicRule', @_);
184             return $self->caller->do_call($self, $call_object);
185             }
186             sub ListCACertificates {
187             my $self = shift;
188             my $call_object = $self->new_with_coercions('Paws::IoT::ListCACertificates', @_);
189             return $self->caller->do_call($self, $call_object);
190             }
191             sub ListCertificates {
192             my $self = shift;
193             my $call_object = $self->new_with_coercions('Paws::IoT::ListCertificates', @_);
194             return $self->caller->do_call($self, $call_object);
195             }
196             sub ListCertificatesByCA {
197             my $self = shift;
198             my $call_object = $self->new_with_coercions('Paws::IoT::ListCertificatesByCA', @_);
199             return $self->caller->do_call($self, $call_object);
200             }
201             sub ListOutgoingCertificates {
202             my $self = shift;
203             my $call_object = $self->new_with_coercions('Paws::IoT::ListOutgoingCertificates', @_);
204             return $self->caller->do_call($self, $call_object);
205             }
206             sub ListPolicies {
207             my $self = shift;
208             my $call_object = $self->new_with_coercions('Paws::IoT::ListPolicies', @_);
209             return $self->caller->do_call($self, $call_object);
210             }
211             sub ListPolicyPrincipals {
212             my $self = shift;
213             my $call_object = $self->new_with_coercions('Paws::IoT::ListPolicyPrincipals', @_);
214             return $self->caller->do_call($self, $call_object);
215             }
216             sub ListPolicyVersions {
217             my $self = shift;
218             my $call_object = $self->new_with_coercions('Paws::IoT::ListPolicyVersions', @_);
219             return $self->caller->do_call($self, $call_object);
220             }
221             sub ListPrincipalPolicies {
222             my $self = shift;
223             my $call_object = $self->new_with_coercions('Paws::IoT::ListPrincipalPolicies', @_);
224             return $self->caller->do_call($self, $call_object);
225             }
226             sub ListPrincipalThings {
227             my $self = shift;
228             my $call_object = $self->new_with_coercions('Paws::IoT::ListPrincipalThings', @_);
229             return $self->caller->do_call($self, $call_object);
230             }
231             sub ListThingPrincipals {
232             my $self = shift;
233             my $call_object = $self->new_with_coercions('Paws::IoT::ListThingPrincipals', @_);
234             return $self->caller->do_call($self, $call_object);
235             }
236             sub ListThings {
237             my $self = shift;
238             my $call_object = $self->new_with_coercions('Paws::IoT::ListThings', @_);
239             return $self->caller->do_call($self, $call_object);
240             }
241             sub ListThingTypes {
242             my $self = shift;
243             my $call_object = $self->new_with_coercions('Paws::IoT::ListThingTypes', @_);
244             return $self->caller->do_call($self, $call_object);
245             }
246             sub ListTopicRules {
247             my $self = shift;
248             my $call_object = $self->new_with_coercions('Paws::IoT::ListTopicRules', @_);
249             return $self->caller->do_call($self, $call_object);
250             }
251             sub RegisterCACertificate {
252             my $self = shift;
253             my $call_object = $self->new_with_coercions('Paws::IoT::RegisterCACertificate', @_);
254             return $self->caller->do_call($self, $call_object);
255             }
256             sub RegisterCertificate {
257             my $self = shift;
258             my $call_object = $self->new_with_coercions('Paws::IoT::RegisterCertificate', @_);
259             return $self->caller->do_call($self, $call_object);
260             }
261             sub RejectCertificateTransfer {
262             my $self = shift;
263             my $call_object = $self->new_with_coercions('Paws::IoT::RejectCertificateTransfer', @_);
264             return $self->caller->do_call($self, $call_object);
265             }
266             sub ReplaceTopicRule {
267             my $self = shift;
268             my $call_object = $self->new_with_coercions('Paws::IoT::ReplaceTopicRule', @_);
269             return $self->caller->do_call($self, $call_object);
270             }
271             sub SetDefaultPolicyVersion {
272             my $self = shift;
273             my $call_object = $self->new_with_coercions('Paws::IoT::SetDefaultPolicyVersion', @_);
274             return $self->caller->do_call($self, $call_object);
275             }
276             sub SetLoggingOptions {
277             my $self = shift;
278             my $call_object = $self->new_with_coercions('Paws::IoT::SetLoggingOptions', @_);
279             return $self->caller->do_call($self, $call_object);
280             }
281             sub TransferCertificate {
282             my $self = shift;
283             my $call_object = $self->new_with_coercions('Paws::IoT::TransferCertificate', @_);
284             return $self->caller->do_call($self, $call_object);
285             }
286             sub UpdateCACertificate {
287             my $self = shift;
288             my $call_object = $self->new_with_coercions('Paws::IoT::UpdateCACertificate', @_);
289             return $self->caller->do_call($self, $call_object);
290             }
291             sub UpdateCertificate {
292             my $self = shift;
293             my $call_object = $self->new_with_coercions('Paws::IoT::UpdateCertificate', @_);
294             return $self->caller->do_call($self, $call_object);
295             }
296             sub UpdateThing {
297             my $self = shift;
298             my $call_object = $self->new_with_coercions('Paws::IoT::UpdateThing', @_);
299             return $self->caller->do_call($self, $call_object);
300             }
301            
302              
303              
304             sub operations { qw/AcceptCertificateTransfer AttachPrincipalPolicy AttachThingPrincipal CancelCertificateTransfer CreateCertificateFromCsr CreateKeysAndCertificate CreatePolicy CreatePolicyVersion CreateThing CreateThingType CreateTopicRule DeleteCACertificate DeleteCertificate DeletePolicy DeletePolicyVersion DeleteRegistrationCode DeleteThing DeleteThingType DeleteTopicRule DeprecateThingType DescribeCACertificate DescribeCertificate DescribeEndpoint DescribeThing DescribeThingType DetachPrincipalPolicy DetachThingPrincipal DisableTopicRule EnableTopicRule GetLoggingOptions GetPolicy GetPolicyVersion GetRegistrationCode GetTopicRule ListCACertificates ListCertificates ListCertificatesByCA ListOutgoingCertificates ListPolicies ListPolicyPrincipals ListPolicyVersions ListPrincipalPolicies ListPrincipalThings ListThingPrincipals ListThings ListThingTypes ListTopicRules RegisterCACertificate RegisterCertificate RejectCertificateTransfer ReplaceTopicRule SetDefaultPolicyVersion SetLoggingOptions TransferCertificate UpdateCACertificate UpdateCertificate UpdateThing / }
305              
306             1;
307              
308             ### main pod documentation begin ###
309              
310             =head1 NAME
311              
312             Paws::IoT - Perl Interface to AWS AWS IoT
313              
314             =head1 SYNOPSIS
315              
316             use Paws;
317              
318             my $obj = Paws->service('IoT');
319             my $res = $obj->Method(
320             Arg1 => $val1,
321             Arg2 => [ 'V1', 'V2' ],
322             # if Arg3 is an object, the HashRef will be used as arguments to the constructor
323             # of the arguments type
324             Arg3 => { Att1 => 'Val1' },
325             # if Arg4 is an array of objects, the HashRefs will be passed as arguments to
326             # the constructor of the arguments type
327             Arg4 => [ { Att1 => 'Val1' }, { Att1 => 'Val2' } ],
328             );
329              
330             =head1 DESCRIPTION
331              
332             AWS IoT
333              
334             AWS IoT provides secure, bi-directional communication between
335             Internet-connected things (such as sensors, actuators, embedded
336             devices, or smart appliances) and the AWS cloud. You can discover your
337             custom IoT-Data endpoint to communicate with, configure rules for data
338             processing and integration with other services, organize resources
339             associated with each thing (Thing Registry), configure logging, and
340             create and manage policies and credentials to authenticate things.
341              
342             For more information about how AWS IoT works, see the Developer Guide.
343              
344             =head1 METHODS
345              
346             =head2 AcceptCertificateTransfer(CertificateId => Str, [SetAsActive => Bool])
347              
348             Each argument is described in detail in: L<Paws::IoT::AcceptCertificateTransfer>
349              
350             Returns: nothing
351              
352             Accepts a pending certificate transfer. The default state of the
353             certificate is INACTIVE.
354              
355             To check for pending certificate transfers, call ListCertificates to
356             enumerate your certificates.
357              
358              
359             =head2 AttachPrincipalPolicy(PolicyName => Str, Principal => Str)
360              
361             Each argument is described in detail in: L<Paws::IoT::AttachPrincipalPolicy>
362              
363             Returns: nothing
364              
365             Attaches the specified policy to the specified principal (certificate
366             or other credential).
367              
368              
369             =head2 AttachThingPrincipal(Principal => Str, ThingName => Str)
370              
371             Each argument is described in detail in: L<Paws::IoT::AttachThingPrincipal>
372              
373             Returns: a L<Paws::IoT::AttachThingPrincipalResponse> instance
374              
375             Attaches the specified principal to the specified thing.
376              
377              
378             =head2 CancelCertificateTransfer(CertificateId => Str)
379              
380             Each argument is described in detail in: L<Paws::IoT::CancelCertificateTransfer>
381              
382             Returns: nothing
383              
384             Cancels a pending transfer for the specified certificate.
385              
386             B<Note> Only the transfer source account can use this operation to
387             cancel a transfer. (Transfer destinations can use
388             RejectCertificateTransfer instead.) After transfer, AWS IoT returns the
389             certificate to the source account in the INACTIVE state. After the
390             destination account has accepted the transfer, the transfer cannot be
391             cancelled.
392              
393             After a certificate transfer is cancelled, the status of the
394             certificate changes from PENDING_TRANSFER to INACTIVE.
395              
396              
397             =head2 CreateCertificateFromCsr(CertificateSigningRequest => Str, [SetAsActive => Bool])
398              
399             Each argument is described in detail in: L<Paws::IoT::CreateCertificateFromCsr>
400              
401             Returns: a L<Paws::IoT::CreateCertificateFromCsrResponse> instance
402              
403             Creates an X.509 certificate using the specified certificate signing
404             request.
405              
406             B<Note:> The CSR must include a public key that is either an RSA key
407             with a length of at least 2048 bits or an ECC key from NIST P-256 or
408             NIST P-384 curves.
409              
410             B<Note:> Reusing the same certificate signing request (CSR) results in
411             a distinct certificate.
412              
413             You can create multiple certificates in a batch by creating a
414             directory, copying multiple .csr files into that directory, and then
415             specifying that directory on the command line. The following commands
416             show how to create a batch of certificates given a batch of CSRs.
417              
418             Assuming a set of CSRs are located inside of the directory
419             my-csr-directory:
420              
421             On Linux and OS X, the command is:
422              
423             $ ls my-csr-directory/ | xargs -I {} aws iot
424             create-certificate-from-csr --certificate-signing-request
425             file://my-csr-directory/{}
426              
427             This command lists all of the CSRs in my-csr-directory and pipes each
428             CSR file name to the aws iot create-certificate-from-csr AWS CLI
429             command to create a certificate for the corresponding CSR.
430              
431             The aws iot create-certificate-from-csr part of the command can also be
432             run in parallel to speed up the certificate creation process:
433              
434             $ ls my-csr-directory/ | xargs -P 10 -I {} aws iot
435             create-certificate-from-csr --certificate-signing-request
436             file://my-csr-directory/{}
437              
438             On Windows PowerShell, the command to create certificates for all CSRs
439             in my-csr-directory is:
440              
441             E<gt> ls -Name my-csr-directory | %{aws iot create-certificate-from-csr
442             --certificate-signing-request file://my-csr-directory/$_}
443              
444             On a Windows command prompt, the command to create certificates for all
445             CSRs in my-csr-directory is:
446              
447             E<gt> forfiles /p my-csr-directory /c "cmd /c aws iot
448             create-certificate-from-csr --certificate-signing-request file://@path"
449              
450              
451             =head2 CreateKeysAndCertificate([SetAsActive => Bool])
452              
453             Each argument is described in detail in: L<Paws::IoT::CreateKeysAndCertificate>
454              
455             Returns: a L<Paws::IoT::CreateKeysAndCertificateResponse> instance
456              
457             Creates a 2048-bit RSA key pair and issues an X.509 certificate using
458             the issued public key.
459              
460             B<Note> This is the only time AWS IoT issues the private key for this
461             certificate, so it is important to keep it in a secure location.
462              
463              
464             =head2 CreatePolicy(PolicyDocument => Str, PolicyName => Str)
465              
466             Each argument is described in detail in: L<Paws::IoT::CreatePolicy>
467              
468             Returns: a L<Paws::IoT::CreatePolicyResponse> instance
469              
470             Creates an AWS IoT policy.
471              
472             The created policy is the default version for the policy. This
473             operation creates a policy version with a version identifier of B<1>
474             and sets B<1> as the policy's default version.
475              
476              
477             =head2 CreatePolicyVersion(PolicyDocument => Str, PolicyName => Str, [SetAsDefault => Bool])
478              
479             Each argument is described in detail in: L<Paws::IoT::CreatePolicyVersion>
480              
481             Returns: a L<Paws::IoT::CreatePolicyVersionResponse> instance
482              
483             Creates a new version of the specified AWS IoT policy. To update a
484             policy, create a new policy version. A managed policy can have up to
485             five versions. If the policy has five versions, you must use
486             DeletePolicyVersion to delete an existing version before you create a
487             new one.
488              
489             Optionally, you can set the new version as the policy's default
490             version. The default version is the operative version (that is, the
491             version that is in effect for the certificates to which the policy is
492             attached).
493              
494              
495             =head2 CreateThing(ThingName => Str, [AttributePayload => L<Paws::IoT::AttributePayload>, ThingTypeName => Str])
496              
497             Each argument is described in detail in: L<Paws::IoT::CreateThing>
498              
499             Returns: a L<Paws::IoT::CreateThingResponse> instance
500              
501             Creates a thing record in the thing registry.
502              
503              
504             =head2 CreateThingType(ThingTypeName => Str, [ThingTypeProperties => L<Paws::IoT::ThingTypeProperties>])
505              
506             Each argument is described in detail in: L<Paws::IoT::CreateThingType>
507              
508             Returns: a L<Paws::IoT::CreateThingTypeResponse> instance
509              
510             Creates a new thing type.
511              
512              
513             =head2 CreateTopicRule(RuleName => Str, TopicRulePayload => L<Paws::IoT::TopicRulePayload>)
514              
515             Each argument is described in detail in: L<Paws::IoT::CreateTopicRule>
516              
517             Returns: nothing
518              
519             Creates a rule. Creating rules is an administrator-level action. Any
520             user who has permission to create rules will be able to access data
521             processed by the rule.
522              
523              
524             =head2 DeleteCACertificate(CertificateId => Str)
525              
526             Each argument is described in detail in: L<Paws::IoT::DeleteCACertificate>
527              
528             Returns: a L<Paws::IoT::DeleteCACertificateResponse> instance
529              
530             Deletes a registered CA certificate.
531              
532              
533             =head2 DeleteCertificate(CertificateId => Str)
534              
535             Each argument is described in detail in: L<Paws::IoT::DeleteCertificate>
536              
537             Returns: nothing
538              
539             Deletes the specified certificate.
540              
541             A certificate cannot be deleted if it has a policy attached to it or if
542             its status is set to ACTIVE. To delete a certificate, first use the
543             DetachPrincipalPolicy API to detach all policies. Next, use the
544             UpdateCertificate API to set the certificate to the INACTIVE status.
545              
546              
547             =head2 DeletePolicy(PolicyName => Str)
548              
549             Each argument is described in detail in: L<Paws::IoT::DeletePolicy>
550              
551             Returns: nothing
552              
553             Deletes the specified policy.
554              
555             A policy cannot be deleted if it has non-default versions or it is
556             attached to any certificate.
557              
558             To delete a policy, use the DeletePolicyVersion API to delete all
559             non-default versions of the policy; use the DetachPrincipalPolicy API
560             to detach the policy from any certificate; and then use the
561             DeletePolicy API to delete the policy.
562              
563             When a policy is deleted using DeletePolicy, its default version is
564             deleted with it.
565              
566              
567             =head2 DeletePolicyVersion(PolicyName => Str, PolicyVersionId => Str)
568              
569             Each argument is described in detail in: L<Paws::IoT::DeletePolicyVersion>
570              
571             Returns: nothing
572              
573             Deletes the specified version of the specified policy. You cannot
574             delete the default version of a policy using this API. To delete the
575             default version of a policy, use DeletePolicy. To find out which
576             version of a policy is marked as the default version, use
577             ListPolicyVersions.
578              
579              
580             =head2 DeleteRegistrationCode()
581              
582             Each argument is described in detail in: L<Paws::IoT::DeleteRegistrationCode>
583              
584             Returns: a L<Paws::IoT::DeleteRegistrationCodeResponse> instance
585              
586             Deletes a CA certificate registration code.
587              
588              
589             =head2 DeleteThing(ThingName => Str, [ExpectedVersion => Int])
590              
591             Each argument is described in detail in: L<Paws::IoT::DeleteThing>
592              
593             Returns: a L<Paws::IoT::DeleteThingResponse> instance
594              
595             Deletes the specified thing.
596              
597              
598             =head2 DeleteThingType(ThingTypeName => Str)
599              
600             Each argument is described in detail in: L<Paws::IoT::DeleteThingType>
601              
602             Returns: a L<Paws::IoT::DeleteThingTypeResponse> instance
603              
604             Deletes the specified thing type . You cannot delete a thing type if it
605             has things associated with it. To delete a thing type, first mark it as
606             deprecated by calling DeprecateThingType, then remove any associated
607             things by calling UpdateThing to change the thing type on any
608             associated thing, and finally use DeleteThingType to delete the thing
609             type.
610              
611              
612             =head2 DeleteTopicRule(RuleName => Str)
613              
614             Each argument is described in detail in: L<Paws::IoT::DeleteTopicRule>
615              
616             Returns: nothing
617              
618             Deletes the specified rule.
619              
620              
621             =head2 DeprecateThingType(ThingTypeName => Str, [UndoDeprecate => Bool])
622              
623             Each argument is described in detail in: L<Paws::IoT::DeprecateThingType>
624              
625             Returns: a L<Paws::IoT::DeprecateThingTypeResponse> instance
626              
627             Deprecates a thing type. You can not associate new things with
628             deprecated thing type.
629              
630              
631             =head2 DescribeCACertificate(CertificateId => Str)
632              
633             Each argument is described in detail in: L<Paws::IoT::DescribeCACertificate>
634              
635             Returns: a L<Paws::IoT::DescribeCACertificateResponse> instance
636              
637             Describes a registered CA certificate.
638              
639              
640             =head2 DescribeCertificate(CertificateId => Str)
641              
642             Each argument is described in detail in: L<Paws::IoT::DescribeCertificate>
643              
644             Returns: a L<Paws::IoT::DescribeCertificateResponse> instance
645              
646             Gets information about the specified certificate.
647              
648              
649             =head2 DescribeEndpoint()
650              
651             Each argument is described in detail in: L<Paws::IoT::DescribeEndpoint>
652              
653             Returns: a L<Paws::IoT::DescribeEndpointResponse> instance
654              
655             Returns a unique endpoint specific to the AWS account making the call.
656              
657              
658             =head2 DescribeThing(ThingName => Str)
659              
660             Each argument is described in detail in: L<Paws::IoT::DescribeThing>
661              
662             Returns: a L<Paws::IoT::DescribeThingResponse> instance
663              
664             Gets information about the specified thing.
665              
666              
667             =head2 DescribeThingType(ThingTypeName => Str)
668              
669             Each argument is described in detail in: L<Paws::IoT::DescribeThingType>
670              
671             Returns: a L<Paws::IoT::DescribeThingTypeResponse> instance
672              
673             Gets information about the specified thing type.
674              
675              
676             =head2 DetachPrincipalPolicy(PolicyName => Str, Principal => Str)
677              
678             Each argument is described in detail in: L<Paws::IoT::DetachPrincipalPolicy>
679              
680             Returns: nothing
681              
682             Removes the specified policy from the specified certificate.
683              
684              
685             =head2 DetachThingPrincipal(Principal => Str, ThingName => Str)
686              
687             Each argument is described in detail in: L<Paws::IoT::DetachThingPrincipal>
688              
689             Returns: a L<Paws::IoT::DetachThingPrincipalResponse> instance
690              
691             Detaches the specified principal from the specified thing.
692              
693              
694             =head2 DisableTopicRule(RuleName => Str)
695              
696             Each argument is described in detail in: L<Paws::IoT::DisableTopicRule>
697              
698             Returns: nothing
699              
700             Disables the specified rule.
701              
702              
703             =head2 EnableTopicRule(RuleName => Str)
704              
705             Each argument is described in detail in: L<Paws::IoT::EnableTopicRule>
706              
707             Returns: nothing
708              
709             Enables the specified rule.
710              
711              
712             =head2 GetLoggingOptions()
713              
714             Each argument is described in detail in: L<Paws::IoT::GetLoggingOptions>
715              
716             Returns: a L<Paws::IoT::GetLoggingOptionsResponse> instance
717              
718             Gets the logging options.
719              
720              
721             =head2 GetPolicy(PolicyName => Str)
722              
723             Each argument is described in detail in: L<Paws::IoT::GetPolicy>
724              
725             Returns: a L<Paws::IoT::GetPolicyResponse> instance
726              
727             Gets information about the specified policy with the policy document of
728             the default version.
729              
730              
731             =head2 GetPolicyVersion(PolicyName => Str, PolicyVersionId => Str)
732              
733             Each argument is described in detail in: L<Paws::IoT::GetPolicyVersion>
734              
735             Returns: a L<Paws::IoT::GetPolicyVersionResponse> instance
736              
737             Gets information about the specified policy version.
738              
739              
740             =head2 GetRegistrationCode()
741              
742             Each argument is described in detail in: L<Paws::IoT::GetRegistrationCode>
743              
744             Returns: a L<Paws::IoT::GetRegistrationCodeResponse> instance
745              
746             Gets a registration code used to register a CA certificate with AWS
747             IoT.
748              
749              
750             =head2 GetTopicRule(RuleName => Str)
751              
752             Each argument is described in detail in: L<Paws::IoT::GetTopicRule>
753              
754             Returns: a L<Paws::IoT::GetTopicRuleResponse> instance
755              
756             Gets information about the specified rule.
757              
758              
759             =head2 ListCACertificates([AscendingOrder => Bool, Marker => Str, PageSize => Int])
760              
761             Each argument is described in detail in: L<Paws::IoT::ListCACertificates>
762              
763             Returns: a L<Paws::IoT::ListCACertificatesResponse> instance
764              
765             Lists the CA certificates registered for your AWS account.
766              
767             The results are paginated with a default page size of 25. You can use
768             the returned marker to retrieve additional results.
769              
770              
771             =head2 ListCertificates([AscendingOrder => Bool, Marker => Str, PageSize => Int])
772              
773             Each argument is described in detail in: L<Paws::IoT::ListCertificates>
774              
775             Returns: a L<Paws::IoT::ListCertificatesResponse> instance
776              
777             Lists the certificates registered in your AWS account.
778              
779             The results are paginated with a default page size of 25. You can use
780             the returned marker to retrieve additional results.
781              
782              
783             =head2 ListCertificatesByCA(CaCertificateId => Str, [AscendingOrder => Bool, Marker => Str, PageSize => Int])
784              
785             Each argument is described in detail in: L<Paws::IoT::ListCertificatesByCA>
786              
787             Returns: a L<Paws::IoT::ListCertificatesByCAResponse> instance
788              
789             List the device certificates signed by the specified CA certificate.
790              
791              
792             =head2 ListOutgoingCertificates([AscendingOrder => Bool, Marker => Str, PageSize => Int])
793              
794             Each argument is described in detail in: L<Paws::IoT::ListOutgoingCertificates>
795              
796             Returns: a L<Paws::IoT::ListOutgoingCertificatesResponse> instance
797              
798             Lists certificates that are being transfered but not yet accepted.
799              
800              
801             =head2 ListPolicies([AscendingOrder => Bool, Marker => Str, PageSize => Int])
802              
803             Each argument is described in detail in: L<Paws::IoT::ListPolicies>
804              
805             Returns: a L<Paws::IoT::ListPoliciesResponse> instance
806              
807             Lists your policies.
808              
809              
810             =head2 ListPolicyPrincipals(PolicyName => Str, [AscendingOrder => Bool, Marker => Str, PageSize => Int])
811              
812             Each argument is described in detail in: L<Paws::IoT::ListPolicyPrincipals>
813              
814             Returns: a L<Paws::IoT::ListPolicyPrincipalsResponse> instance
815              
816             Lists the principals associated with the specified policy.
817              
818              
819             =head2 ListPolicyVersions(PolicyName => Str)
820              
821             Each argument is described in detail in: L<Paws::IoT::ListPolicyVersions>
822              
823             Returns: a L<Paws::IoT::ListPolicyVersionsResponse> instance
824              
825             Lists the versions of the specified policy and identifies the default
826             version.
827              
828              
829             =head2 ListPrincipalPolicies(Principal => Str, [AscendingOrder => Bool, Marker => Str, PageSize => Int])
830              
831             Each argument is described in detail in: L<Paws::IoT::ListPrincipalPolicies>
832              
833             Returns: a L<Paws::IoT::ListPrincipalPoliciesResponse> instance
834              
835             Lists the policies attached to the specified principal. If you use an
836             Cognito identity, the ID must be in AmazonCognito Identity format.
837              
838              
839             =head2 ListPrincipalThings(Principal => Str, [MaxResults => Int, NextToken => Str])
840              
841             Each argument is described in detail in: L<Paws::IoT::ListPrincipalThings>
842              
843             Returns: a L<Paws::IoT::ListPrincipalThingsResponse> instance
844              
845             Lists the things associated with the specified principal.
846              
847              
848             =head2 ListThingPrincipals(ThingName => Str)
849              
850             Each argument is described in detail in: L<Paws::IoT::ListThingPrincipals>
851              
852             Returns: a L<Paws::IoT::ListThingPrincipalsResponse> instance
853              
854             Lists the principals associated with the specified thing.
855              
856              
857             =head2 ListThings([AttributeName => Str, AttributeValue => Str, MaxResults => Int, NextToken => Str, ThingTypeName => Str])
858              
859             Each argument is described in detail in: L<Paws::IoT::ListThings>
860              
861             Returns: a L<Paws::IoT::ListThingsResponse> instance
862              
863             Lists your things. Use the B<attributeName> and B<attributeValue>
864             parameters to filter your things. For example, calling C<ListThings>
865             with attributeName=Color and attributeValue=Red retrieves all things in
866             the registry that contain an attribute B<Color> with the value B<Red>.
867              
868              
869             =head2 ListThingTypes([MaxResults => Int, NextToken => Str, ThingTypeName => Str])
870              
871             Each argument is described in detail in: L<Paws::IoT::ListThingTypes>
872              
873             Returns: a L<Paws::IoT::ListThingTypesResponse> instance
874              
875             Lists the existing thing types.
876              
877              
878             =head2 ListTopicRules([MaxResults => Int, NextToken => Str, RuleDisabled => Bool, Topic => Str])
879              
880             Each argument is described in detail in: L<Paws::IoT::ListTopicRules>
881              
882             Returns: a L<Paws::IoT::ListTopicRulesResponse> instance
883              
884             Lists the rules for the specific topic.
885              
886              
887             =head2 RegisterCACertificate(CaCertificate => Str, VerificationCertificate => Str, [AllowAutoRegistration => Bool, SetAsActive => Bool])
888              
889             Each argument is described in detail in: L<Paws::IoT::RegisterCACertificate>
890              
891             Returns: a L<Paws::IoT::RegisterCACertificateResponse> instance
892              
893             Registers a CA certificate with AWS IoT. This CA certificate can then
894             be used to sign device certificates, which can be then registered with
895             AWS IoT. You can register up to 10 CA certificates per AWS account that
896             have the same subject field. This enables you to have up to 10
897             certificate authorities sign your device certificates. If you have more
898             than one CA certificate registered, make sure you pass the CA
899             certificate when you register your device certificates with the
900             RegisterCertificate API.
901              
902              
903             =head2 RegisterCertificate(CertificatePem => Str, [CaCertificatePem => Str, SetAsActive => Bool, Status => Str])
904              
905             Each argument is described in detail in: L<Paws::IoT::RegisterCertificate>
906              
907             Returns: a L<Paws::IoT::RegisterCertificateResponse> instance
908              
909             Registers a device certificate with AWS IoT. If you have more than one
910             CA certificate that has the same subject field, you must specify the CA
911             certificate that was used to sign the device certificate being
912             registered.
913              
914              
915             =head2 RejectCertificateTransfer(CertificateId => Str, [RejectReason => Str])
916              
917             Each argument is described in detail in: L<Paws::IoT::RejectCertificateTransfer>
918              
919             Returns: nothing
920              
921             Rejects a pending certificate transfer. After AWS IoT rejects a
922             certificate transfer, the certificate status changes from
923             B<PENDING_TRANSFER> to B<INACTIVE>.
924              
925             To check for pending certificate transfers, call ListCertificates to
926             enumerate your certificates.
927              
928             This operation can only be called by the transfer destination. After it
929             is called, the certificate will be returned to the source's account in
930             the INACTIVE state.
931              
932              
933             =head2 ReplaceTopicRule(RuleName => Str, TopicRulePayload => L<Paws::IoT::TopicRulePayload>)
934              
935             Each argument is described in detail in: L<Paws::IoT::ReplaceTopicRule>
936              
937             Returns: nothing
938              
939             Replaces the specified rule. You must specify all parameters for the
940             new rule. Creating rules is an administrator-level action. Any user who
941             has permission to create rules will be able to access data processed by
942             the rule.
943              
944              
945             =head2 SetDefaultPolicyVersion(PolicyName => Str, PolicyVersionId => Str)
946              
947             Each argument is described in detail in: L<Paws::IoT::SetDefaultPolicyVersion>
948              
949             Returns: nothing
950              
951             Sets the specified version of the specified policy as the policy's
952             default (operative) version. This action affects all certificates to
953             which the policy is attached. To list the principals the policy is
954             attached to, use the ListPrincipalPolicy API.
955              
956              
957             =head2 SetLoggingOptions(LoggingOptionsPayload => L<Paws::IoT::LoggingOptionsPayload>)
958              
959             Each argument is described in detail in: L<Paws::IoT::SetLoggingOptions>
960              
961             Returns: nothing
962              
963             Sets the logging options.
964              
965              
966             =head2 TransferCertificate(CertificateId => Str, TargetAwsAccount => Str, [TransferMessage => Str])
967              
968             Each argument is described in detail in: L<Paws::IoT::TransferCertificate>
969              
970             Returns: a L<Paws::IoT::TransferCertificateResponse> instance
971              
972             Transfers the specified certificate to the specified AWS account.
973              
974             You can cancel the transfer until it is acknowledged by the recipient.
975              
976             No notification is sent to the transfer destination's account. It is up
977             to the caller to notify the transfer target.
978              
979             The certificate being transferred must not be in the ACTIVE state. You
980             can use the UpdateCertificate API to deactivate it.
981              
982             The certificate must not have any policies attached to it. You can use
983             the DetachPrincipalPolicy API to detach them.
984              
985              
986             =head2 UpdateCACertificate(CertificateId => Str, [NewAutoRegistrationStatus => Str, NewStatus => Str])
987              
988             Each argument is described in detail in: L<Paws::IoT::UpdateCACertificate>
989              
990             Returns: nothing
991              
992             Updates a registered CA certificate.
993              
994              
995             =head2 UpdateCertificate(CertificateId => Str, NewStatus => Str)
996              
997             Each argument is described in detail in: L<Paws::IoT::UpdateCertificate>
998              
999             Returns: nothing
1000              
1001             Updates the status of the specified certificate. This operation is
1002             idempotent.
1003              
1004             Moving a certificate from the ACTIVE state (including REVOKED) will not
1005             disconnect currently connected devices, but these devices will be
1006             unable to reconnect.
1007              
1008             The ACTIVE state is required to authenticate devices connecting to AWS
1009             IoT using a certificate.
1010              
1011              
1012             =head2 UpdateThing(ThingName => Str, [AttributePayload => L<Paws::IoT::AttributePayload>, ExpectedVersion => Int, RemoveThingType => Bool, ThingTypeName => Str])
1013              
1014             Each argument is described in detail in: L<Paws::IoT::UpdateThing>
1015              
1016             Returns: a L<Paws::IoT::UpdateThingResponse> instance
1017              
1018             Updates the data for a thing.
1019              
1020              
1021              
1022              
1023             =head1 PAGINATORS
1024              
1025             Paginator methods are helpers that repetively call methods that return partial results
1026              
1027              
1028              
1029              
1030             =head1 SEE ALSO
1031              
1032             This service class forms part of L<Paws>
1033              
1034             =head1 BUGS and CONTRIBUTIONS
1035              
1036             The source code is located here: https://github.com/pplu/aws-sdk-perl
1037              
1038             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
1039              
1040             =cut
1041