# AWS Iot

> AWS IoT API skill. Use when working with AWS IoT for accept-certificate-transfer, billing-groups, thing-groups. Covers 255 endpoints.

- Skill: `lap-platform/aws-iot` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add lap-platform/aws-iot`
- Raw SKILL.md: https://api.skillmd.com/api/skills/lap-platform/aws-iot/raw
- Safety review: pending (external: skill-scanner PASS, skillspector WARNING)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: DevOps & Infra
- Author: Lap-Platform (https://skillmd.com/u/lap-platform)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/lap-platform/aws-iot

---


# AWS IoT
API version: 2015-05-28

## Auth
AWS SigV4

## Base URL
Not specified.

## Setup
1. Configure auth: AWS SigV4
2. GET /audit/configuration -- verify access
3. POST /jobs/{jobId}/targets -- create first targets

## Endpoints

255 endpoints across 69 groups. See references/api-spec.lap for full details.

### accept-certificate-transfer
| Method | Path | Description |
|--------|------|-------------|
| PATCH | /accept-certificate-transfer/{certificateId} | 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. Requires permission to access the AcceptCertificateTransfer action. |

### billing-groups
| Method | Path | Description |
|--------|------|-------------|
| PUT | /billing-groups/addThingToBillingGroup | Adds a thing to a billing group. Requires permission to access the AddThingToBillingGroup action. |
| POST | /billing-groups/{billingGroupName} | Creates a billing group. Requires permission to access the CreateBillingGroup action. |
| DELETE | /billing-groups/{billingGroupName} | Deletes the billing group. Requires permission to access the DeleteBillingGroup action. |
| GET | /billing-groups/{billingGroupName} | Returns information about a billing group. Requires permission to access the DescribeBillingGroup action. |
| GET | /billing-groups | Lists the billing groups you have created. Requires permission to access the ListBillingGroups action. |
| GET | /billing-groups/{billingGroupName}/things | Lists the things you have added to the given billing group. Requires permission to access the ListThingsInBillingGroup action. |
| PUT | /billing-groups/removeThingFromBillingGroup | Removes the given thing from the billing group. Requires permission to access the RemoveThingFromBillingGroup action.  This call is asynchronous. It might take several seconds for the detachment to propagate. |
| PATCH | /billing-groups/{billingGroupName} | Updates information about the billing group. Requires permission to access the UpdateBillingGroup action. |

### thing-groups
| Method | Path | Description |
|--------|------|-------------|
| PUT | /thing-groups/addThingToThingGroup | Adds a thing to a thing group. Requires permission to access the AddThingToThingGroup action. |
| POST | /thing-groups/{thingGroupName} | Create a thing group.  This is a control plane operation. See Authorization for information about authorizing control plane actions. If the ThingGroup that you create has the exact same attributes as an existing ThingGroup, you will get a 200 success response.   Requires permission to access the CreateThingGroup action. |
| DELETE | /thing-groups/{thingGroupName} | Deletes a thing group. Requires permission to access the DeleteThingGroup action. |
| GET | /thing-groups/{thingGroupName} | Describe a thing group. Requires permission to access the DescribeThingGroup action. |
| GET | /thing-groups | List the thing groups in your account. Requires permission to access the ListThingGroups action. |
| GET | /thing-groups/{thingGroupName}/things | Lists the things in the specified group. Requires permission to access the ListThingsInThingGroup action. |
| PUT | /thing-groups/removeThingFromThingGroup | Remove the specified thing from the specified group. You must specify either a thingGroupArn or a thingGroupName to identify the thing group and either a thingArn or a thingName to identify the thing to remove from the thing group.  Requires permission to access the RemoveThingFromThingGroup action. |
| PATCH | /thing-groups/{thingGroupName} | Update a thing group. Requires permission to access the UpdateThingGroup action. |
| PUT | /thing-groups/updateThingGroupsForThing | Updates the groups to which the thing belongs. Requires permission to access the UpdateThingGroupsForThing action. |

### jobs
| Method | Path | Description |
|--------|------|-------------|
| POST | /jobs/{jobId}/targets | Associates a group with a continuous job. The following criteria must be met:    The job must have been created with the targetSelection field set to "CONTINUOUS".   The job status must currently be "IN_PROGRESS".   The total number of targets associated with a job must not exceed 100.   Requires permission to access the AssociateTargetsWithJob action. |
| PUT | /jobs/{jobId}/cancel | Cancels a job. Requires permission to access the CancelJob action. |
| PUT | /jobs/{jobId} | Creates a job. Requires permission to access the CreateJob action. |
| DELETE | /jobs/{jobId} | Deletes a job and its related job executions. Deleting a job may take time, depending on the number of job executions created for the job and various other factors. While the job is being deleted, the status of the job will be shown as "DELETION_IN_PROGRESS". Attempting to delete or cancel a job whose status is already "DELETION_IN_PROGRESS" will result in an error. Only 10 jobs may have status "DELETION_IN_PROGRESS" at the same time, or a LimitExceededException will occur. Requires permission to access the DeleteJob action. |
| GET | /jobs/{jobId} | Describes a job. Requires permission to access the DescribeJob action. |
| GET | /jobs/{jobId}/job-document | Gets a job document. Requires permission to access the GetJobDocument action. |
| GET | /jobs/{jobId}/things | Lists the job executions for a job. Requires permission to access the ListJobExecutionsForJob action. |
| GET | /jobs | Lists jobs. Requires permission to access the ListJobs action. |
| PATCH | /jobs/{jobId} | Updates supported fields of the specified job. Requires permission to access the UpdateJob action. |

### target-policies
| Method | Path | Description |
|--------|------|-------------|
| PUT | /target-policies/{policyName} | Attaches the specified policy to the specified principal (certificate or other credential). Requires permission to access the AttachPolicy action. |
| POST | /target-policies/{policyName} | Detaches a policy from the specified target.  Because of the distributed nature of Amazon Web Services, it can take up to five minutes after a policy is detached before it's ready to be deleted.  Requires permission to access the DetachPolicy action. |

### principal-policies
| Method | Path | Description |
|--------|------|-------------|
| PUT | /principal-policies/{policyName} | Attaches the specified policy to the specified principal (certificate or other credential).  Note: This action is deprecated and works as expected for backward compatibility, but we won't add enhancements. Use AttachPolicy instead. Requires permission to access the AttachPrincipalPolicy action. |
| DELETE | /principal-policies/{policyName} | Removes the specified policy from the specified certificate.  Note: This action is deprecated and works as expected for backward compatibility, but we won't add enhancements. Use DetachPolicy instead. Requires permission to access the DetachPrincipalPolicy action. |
| GET | /principal-policies | Lists the policies attached to the specified principal. If you use an Cognito identity, the ID must be in AmazonCognito Identity format.  Note: This action is deprecated and works as expected for backward compatibility, but we won't add enhancements. Use ListAttachedPolicies instead. Requires permission to access the ListPrincipalPolicies action. |

### security-profiles
| Method | Path | Description |
|--------|------|-------------|
| PUT | /security-profiles/{securityProfileName}/targets | Associates a Device Defender security profile with a thing group or this account. Each thing group or account can have up to five security profiles associated with it. Requires permission to access the AttachSecurityProfile action. |
| POST | /security-profiles/{securityProfileName} | Creates a Device Defender security profile. Requires permission to access the CreateSecurityProfile action. |
| DELETE | /security-profiles/{securityProfileName} | Deletes a Device Defender security profile. Requires permission to access the DeleteSecurityProfile action. |
| GET | /security-profiles/{securityProfileName} | Gets information about a Device Defender security profile. Requires permission to access the DescribeSecurityProfile action. |
| DELETE | /security-profiles/{securityProfileName}/targets | Disassociates a Device Defender security profile from a thing group or from this account. Requires permission to access the DetachSecurityProfile action. |
| GET | /security-profiles | Lists the Device Defender security profiles you've created. You can filter security profiles by dimension or custom metric. Requires permission to access the ListSecurityProfiles action.   dimensionName and metricName cannot be used in the same request. |
| GET | /security-profiles/{securityProfileName}/targets | Lists the targets (thing groups) associated with a given Device Defender security profile. Requires permission to access the ListTargetsForSecurityProfile action. |
| PATCH | /security-profiles/{securityProfileName} | Updates a Device Defender security profile. Requires permission to access the UpdateSecurityProfile action. |

### things
| Method | Path | Description |
|--------|------|-------------|
| PUT | /things/{thingName}/principals | Attaches the specified principal to the specified thing. A principal can be X.509 certificates, Amazon Cognito identities or federated identities. Requires permission to access the AttachThingPrincipal action. |
| PUT | /things/{thingName}/jobs/{jobId}/cancel | Cancels the execution of a job for a given thing. Requires permission to access the CancelJobExecution action. |
| POST | /things/{thingName} | Creates a thing record in the registry. If this call is made multiple times using the same thing name and configuration, the call will succeed. If this call is made with the same thing name but different configuration a ResourceAlreadyExistsException is thrown.  This is a control plane operation. See Authorization for information about authorizing control plane actions.  Requires permission to access the CreateThing action. |
| DELETE | /things/{thingName}/jobs/{jobId}/executionNumber/{executionNumber} | Deletes a job execution. Requires permission to access the DeleteJobExecution action. |
| DELETE | /things/{thingName} | Deletes the specified thing. Returns successfully with no error if the deletion is successful or you specify a thing that doesn't exist. Requires permission to access the DeleteThing action. |
| GET | /things/{thingName}/jobs/{jobId} | Describes a job execution. Requires permission to access the DescribeJobExecution action. |
| GET | /things/{thingName} | Gets information about the specified thing. Requires permission to access the DescribeThing action. |
| DELETE | /things/{thingName}/principals | Detaches the specified principal from the specified thing. A principal can be X.509 certificates, IAM users, groups, and roles, Amazon Cognito identities or federated identities.  This call is asynchronous. It might take several seconds for the detachment to propagate.  Requires permission to access the DetachThingPrincipal action. |
| GET | /things/{thingName}/jobs | Lists the job executions for the specified thing. Requires permission to access the ListJobExecutionsForThing action. |
| GET | /things/{thingName}/thing-groups | List the thing groups to which the specified thing belongs. Requires permission to access the ListThingGroupsForThing action. |
| GET | /things/{thingName}/principals | Lists the principals associated with the specified thing. A principal can be X.509 certificates, IAM users, groups, and roles, Amazon Cognito identities or federated identities. Requires permission to access the ListThingPrincipals action. |
| GET | /things | Lists your things. Use the attributeName and attributeValue parameters to filter your things. For example, calling ListThings with attributeName=Color and attributeValue=Red retrieves all things in the registry that contain an attribute Color with the value Red. For more information, see List Things from the Amazon Web Services IoT Core Developer Guide. Requires permission to access the ListThings action.  You will not be charged for calling this API if an Access denied error is returned. You will also not be charged if no attributes or pagination token was provided in request and no pagination token and no results were returned. |
| POST | /things | Provisions a thing in the device registry. RegisterThing calls other IoT control plane APIs. These calls might exceed your account level  IoT Throttling Limits and cause throttle errors. Please contact Amazon Web Services Customer Support to raise your throttling limits if necessary. Requires permission to access the RegisterThing action. |
| PATCH | /things/{thingName} | Updates the data for a thing. Requires permission to access the UpdateThing action. |

### audit
| Method | Path | Description |
|--------|------|-------------|
| PUT | /audit/mitigationactions/tasks/{taskId}/cancel | Cancels a mitigation action task that is in progress. If the task is not in progress, an InvalidRequestException occurs. Requires permission to access the CancelAuditMitigationActionsTask action. |
| PUT | /audit/tasks/{taskId}/cancel | Cancels an audit that is in progress. The audit can be either scheduled or on demand. If the audit isn't in progress, an "InvalidRequestException" occurs. Requires permission to access the CancelAuditTask action. |
| POST | /audit/suppressions/create | Creates a Device Defender audit suppression.  Requires permission to access the CreateAuditSuppression action. |
| POST | /audit/scheduledaudits/{scheduledAuditName} | Creates a scheduled audit that is run at a specified time interval. Requires permission to access the CreateScheduledAudit action. |
| DELETE | /audit/configuration | Restores the default settings for Device Defender audits for this account. Any configuration data you entered is deleted and all audit checks are reset to disabled.  Requires permission to access the DeleteAccountAuditConfiguration action. |
| POST | /audit/suppressions/delete | Deletes a Device Defender audit suppression.  Requires permission to access the DeleteAuditSuppression action. |
| DELETE | /audit/scheduledaudits/{scheduledAuditName} | Deletes a scheduled audit. Requires permission to access the DeleteScheduledAudit action. |
| GET | /audit/configuration | Gets information about the Device Defender audit settings for this account. Settings include how audit notifications are sent and which audit checks are enabled or disabled. Requires permission to access the DescribeAccountAuditConfiguration action. |
| GET | /audit/findings/{findingId} | Gets information about a single audit finding. Properties include the reason for noncompliance, the severity of the issue, and the start time when the audit that returned the finding. Requires permission to access the DescribeAuditFinding action. |
| GET | /audit/mitigationactions/tasks/{taskId} | Gets information about an audit mitigation task that is used to apply mitigation actions to a set of audit findings. Properties include the actions being applied, the audit checks to which they're being applied, the task status, and aggregated task statistics. |
| POST | /audit/suppressions/describe | Gets information about a Device Defender audit suppression. |
| GET | /audit/tasks/{taskId} | Gets information about a Device Defender audit. Requires permission to access the DescribeAuditTask action. |
| GET | /audit/scheduledaudits/{scheduledAuditName} | Gets information about a scheduled audit. Requires permission to access the DescribeScheduledAudit action. |
| POST | /audit/findings | Lists the findings (results) of a Device Defender audit or of the audits performed during a specified time period. (Findings are retained for 90 days.) Requires permission to access the ListAuditFindings action. |
| GET | /audit/mitigationactions/executions | Gets the status of audit mitigation action tasks that were executed. Requires permission to access the ListAuditMitigationActionsExecutions action. |
| GET | /audit/mitigationactions/tasks | Gets a list of audit mitigation action tasks that match the specified filters. Requires permission to access the ListAuditMitigationActionsTasks action. |
| POST | /audit/suppressions/list | Lists your Device Defender audit listings.  Requires permission to access the ListAuditSuppressions action. |
| GET | /audit/tasks | Lists the Device Defender audits that have been performed during a given time period. Requires permission to access the ListAuditTasks action. |
| GET | /audit/relatedResources | The related resources of an Audit finding. The following resources can be returned from calling this API:   DEVICE_CERTIFICATE   CA_CERTIFICATE   IOT_POLICY   COGNITO_IDENTITY_POOL   CLIENT_ID   ACCOUNT_SETTINGS   ROLE_ALIAS   IAM_ROLE   ISSUER_CERTIFICATE    This API is similar to DescribeAuditFinding's RelatedResources but provides pagination and is not limited to 10 resources. When calling DescribeAuditFinding for the intermediate CA revoked for active device certificates check, RelatedResources will not be populated. You must use this API, ListRelatedResourcesForAuditFinding, to list the certificates. |
| GET | /audit/scheduledaudits | Lists all of your scheduled audits. Requires permission to access the ListScheduledAudits action. |
| POST | /audit/mitigationactions/tasks/{taskId} | Starts a task that applies a set of mitigation actions to the specified target. Requires permission to access the StartAuditMitigationActionsTask action. |
| POST | /audit/tasks | Starts an on-demand Device Defender audit. Requires permission to access the StartOnDemandAuditTask action. |
| PATCH | /audit/configuration | Configures or reconfigures the Device Defender audit settings for this account. Settings include how audit notifications are sent and which audit checks are enabled or disabled. Requires permission to access the UpdateAccountAuditConfiguration action. |
| PATCH | /audit/suppressions/update | Updates a Device Defender audit suppression. |
| PATCH | /audit/scheduledaudits/{scheduledAuditName} | Updates a scheduled audit, including which checks are performed and how often the audit takes place. Requires permission to access the UpdateScheduledAudit action. |

### cancel-certificate-transfer
| Method | Path | Description |
|--------|------|-------------|
| PATCH | /cancel-certificate-transfer/{certificateId} | 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, 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. Requires permission to access the CancelCertificateTransfer action. |

### detect
| Method | Path | Description |
|--------|------|-------------|
| PUT | /detect/mitigationactions/tasks/{taskId}/cancel | Cancels a Device Defender ML Detect mitigation action.  Requires permission to access the CancelDetectMitigationActionsTask action. |
| GET | /detect/mitigationactions/tasks/{taskId} | Gets information about a Device Defender ML Detect mitigation action.  Requires permission to access the DescribeDetectMitigationActionsTask action. |
| GET | /detect/mitigationactions/executions | Lists mitigation actions executions for a Device Defender ML Detect Security Profile.  Requires permission to access the ListDetectMitigationActionsExecutions action. |
| GET | /detect/mitigationactions/tasks | List of Device Defender ML Detect mitigation actions tasks.  Requires permission to access the ListDetectMitigationActionsTasks action. |
| PUT | /detect/mitigationactions/tasks/{taskId} | Starts a Device Defender ML Detect mitigation actions task.  Requires permission to access the StartDetectMitigationActionsTask action. |

### default-authorizer
| Method | Path | Description |
|--------|------|-------------|
| DELETE | /default-authorizer | Clears the default authorizer. Requires permission to access the ClearDefaultAuthorizer action. |
| GET | /default-authorizer | Describes the default authorizer. Requires permission to access the DescribeDefaultAuthorizer action. |
| POST | /default-authorizer | Sets the default authorizer. This will be used if a websocket connection is made without specifying an authorizer. Requires permission to access the SetDefaultAuthorizer action. |

### confirmdestination
| Method | Path | Description |
|--------|------|-------------|
| GET | /confirmdestination/{confirmationToken+} | Confirms a topic rule destination. When you create a rule requiring a destination, IoT sends a confirmation message to the endpoint or base address you specify. The message includes a token which you pass back when calling ConfirmTopicRuleDestination to confirm that you own or have access to the endpoint. Requires permission to access the ConfirmTopicRuleDestination action. |

### authorizer
| Method | Path | Description |
|--------|------|-------------|
| POST | /authorizer/{authorizerName} | Creates an authorizer. Requires permission to access the CreateAuthorizer action. |
| DELETE | /authorizer/{authorizerName} | Deletes an authorizer. Requires permission to access the DeleteAuthorizer action. |
| GET | /authorizer/{authorizerName} | Describes an authorizer. Requires permission to access the DescribeAuthorizer action. |
| POST | /authorizer/{authorizerName}/test | Tests a custom authorization behavior by invoking a specified custom authorizer. Use this to test and debug the custom authorization behavior of devices that connect to the IoT device gateway. Requires permission to access the TestInvokeAuthorizer action. |
| PUT | /authorizer/{authorizerName} | Updates an authorizer. Requires permission to access the UpdateAuthorizer action. |

### certificates
| Method | Path | Description |
|--------|------|-------------|
| POST | /certificates | Creates an X.509 certificate using the specified certificate signing request.  Requires permission to access the CreateCertificateFromCsr action.   The CSR must include a public key that is either an RSA key with a length of at least 2048 bits or an ECC key from NIST P-256, NIST P-384, or NIST P-521 curves. For supported certificates, consult  Certificate signing algorithms supported by IoT.    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. In the following commands, we assume that 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 Amazon Web Services CLI command to create a certificate for the corresponding CSR.  You can also run the aws iot create-certificate-from-csr part of the command 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:  &gt; 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:  &gt; forfiles /p my-csr-directory /c "cmd /c aws iot create-certificate-from-csr --certificate-signing-request file://@path" |
| DELETE | /certificates/{certificateId} | Deletes the specified certificate. A certificate cannot be deleted if it has a policy or IoT thing attached to it or if its status is set to ACTIVE. To delete a certificate, first use the DetachPolicy action to detach all policies. Next, use the UpdateCertificate action to set the certificate to the INACTIVE status. Requires permission to access the DeleteCertificate action. |
| GET | /certificates/{certificateId} | Gets information about the specified certificate. Requires permission to access the DescribeCertificate action. |
| GET | /certificates | Lists the certificates registered in your Amazon Web Services account. The results are paginated with a default page size of 25. You can use the returned marker to retrieve additional results. Requires permission to access the ListCertificates action. |
| PUT | /certificates/{certificateId} | Updates the status of the specified certificate. This operation is idempotent. Requires permission to access the UpdateCertificate action. Certificates must be in the ACTIVE state to authenticate devices that use a certificate to connect to IoT. Within a few minutes of updating a certificate from the ACTIVE state to any other state, IoT disconnects all devices that used that certificate to connect. Devices cannot use a certificate that is not in the ACTIVE state to reconnect. |

### certificate-providers
| Method | Path | Description |
|--------|------|-------------|
| POST | /certificate-providers/{certificateProviderName} | Creates an Amazon Web Services IoT Core certificate provider. You can use Amazon Web Services IoT Core certificate provider to customize how to sign a certificate signing request (CSR) in IoT fleet provisioning. For more information, see Customizing certificate signing using Amazon Web Services IoT Core certificate provider from Amazon Web Services IoT Core Developer Guide. Requires permission to access the CreateCertificateProvider action.  After you create a certificate provider, the behavior of  CreateCertificateFromCsr API for fleet provisioning will change and all API calls to CreateCertificateFromCsr will invoke the certificate provider to create the certificates. It can take up to a few minutes for this behavior to change after a certificate provider is created. |
| DELETE | /certificate-providers/{certificateProviderName} | Deletes a certificate provider. Requires permission to access the DeleteCertificateProvider action.  If you delete the certificate provider resource, the behavior of CreateCertificateFromCsr will resume, and IoT will create certificates signed by IoT from a certificate signing request (CSR). |
| GET | /certificate-providers/{certificateProviderName} | Describes a certificate provider. Requires permission to access the DescribeCertificateProvider action. |
| GET | /certificate-providers/ | Lists all your certificate providers in your Amazon Web Services account. Requires permission to access the ListCertificateProviders action. |
| PUT | /certificate-providers/{certificateProviderName} | Updates a certificate provider. Requires permission to access the UpdateCertificateProvider action. |

### custom-metric
| Method | Path | Description |
|--------|------|-------------|
| POST | /custom-metric/{metricName} | Use this API to define a Custom Metric published by your devices to Device Defender.  Requires permission to access the CreateCustomMetric action. |
| DELETE | /custom-metric/{metricName} | Deletes a Device Defender detect custom metric.  Requires permission to access the DeleteCustomMetric action.  Before you can delete a custom metric, you must first remove the custom metric from all security profiles it's a part of. The security profile associated with the custom metric can be found using the ListSecurityProfiles API with metricName set to your custom metric name. |
| GET | /custom-metric/{metricName} | Gets information about a Device Defender detect custom metric.  Requires permission to access the DescribeCustomMetric action. |
| PATCH | /custom-metric/{metricName} | Updates a Device Defender detect custom metric.  Requires permission to access the UpdateCustomMetric action. |

### dimensions
| Method | Path | Description |
|--------|------|-------------|
| POST | /dimensions/{name} | Create a dimension that you can use to limit the scope of a metric used in a security profile for IoT Device Defender. For example, using a TOPIC_FILTER dimension, you can narrow down the scope of the metric only to MQTT topics whose name match the pattern specified in the dimension. Requires permission to access the CreateDimension action. |
| DELETE | /dimensions/{name} | Removes the specified dimension from your Amazon Web Services accounts. Requires permission to access the DeleteDimension action. |
| GET | /dimensions/{name} | Provides details about a dimension that is defined in your Amazon Web Services accounts. Requires permission to access the DescribeDimension action. |
| GET | /dimensions | List the set of dimensions that are defined for your Amazon Web Services accounts. Requires permission to access the ListDimensions action. |
| PATCH | /dimensions/{name} | Updates the definition for a dimension. You cannot change the type of a dimension after it is created (you can delete it and recreate it). Requires permission to access the UpdateDimension action. |

### domainConfigurations
| Method | Path | Description |
|--------|------|-------------|
| POST | /domainConfigurations/{domainConfigurationName} | Creates a domain configuration. Requires permission to access the CreateDomainConfiguration action. |
| DELETE | /domainConfigurations/{domainConfigurationName} | Deletes the specified domain configuration. Requires permission to access the DeleteDomainConfiguration action. |
| GET | /domainConfigurations/{domainConfigurationName} | Gets summary information about a domain configuration. Requires permission to access the DescribeDomainConfiguration action. |
| GET | /domainConfigurations | Gets a list of domain configurations for the user. This list is sorted alphabetically by domain configuration name. Requires permission to access the ListDomainConfigurations action. |
| PUT | /domainConfigurations/{domainConfigurationName} | Updates values stored in the domain configuration. Domain configurations for default endpoints can't be updated. Requires permission to access the UpdateDomainConfiguration action. |

### dynamic-thing-groups
| Method | Path | Description |
|--------|------|-------------|
| POST | /dynamic-thing-groups/{thingGroupName} | Creates a dynamic thing group. Requires permission to access the CreateDynamicThingGroup action. |
| DELETE | /dynamic-thing-groups/{thingGroupName} | Deletes a dynamic thing group. Requires permission to access the DeleteDynamicThingGroup action. |
| PATCH | /dynamic-thing-groups/{thingGroupName} | Updates a dynamic thing group. Requires permission to access the UpdateDynamicThingGroup action. |

### fleet-metric
| Method | Path | Description |
|--------|------|-------------|
| PUT | /fleet-metric/{metricName} | Creates a fleet metric. Requires permission to access the CreateFleetMetric action. |
| DELETE | /fleet-metric/{metricName} | Deletes the specified fleet metric. Returns successfully with no error if the deletion is successful or you specify a fleet metric that doesn't exist. Requires permission to access the DeleteFleetMetric action. |
| GET | /fleet-metric/{metricName} | Gets information about the specified fleet metric. Requires permission to access the DescribeFleetMetric action. |
| PATCH | /fleet-metric/{metricName} | Updates the data for a fleet metric. Requires permission to access the UpdateFleetMetric action. |

### job-templates
| Method | Path | Description |
|--------|------|-------------|
| PUT | /job-templates/{jobTemplateId} | Creates a job template. Requires permission to access the CreateJobTemplate action. |
| DELETE | /job-templates/{jobTemplateId} | Deletes the specified job template. |
| GET | /job-templates/{jobTemplateId} | Returns information about a job template. |
| GET | /job-templates | Returns a list of job templates. Requires permission to access the ListJobTemplates action. |

### keys-and-certificate
| Method | Path | Description |
|--------|------|-------------|
| POST | /keys-and-certificate | Creates a 2048-bit RSA key pair and issues an X.509 certificate using the issued public key. You can also call CreateKeysAndCertificate over MQTT from a device, for more information, see Provisioning MQTT API.  Note This is the only time IoT issues the private key for this certificate, so it is important to keep it in a secure location. Requires permission to access the CreateKeysAndCertificate action. |

### mitigationactions
| Method | Path | Description |
|--------|------|-------------|
| POST | /mitigationactions/actions/{actionName} | Defines an action that can be applied to audit findings by using StartAuditMitigationActionsTask. Only certain types of mitigation actions can be applied to specific check names. For more information, see Mitigation actions. Each mitigation action can apply only one type of change. Requires permission to access the CreateMitigationAction action. |
| DELETE | /mitigationactions/actions/{actionName} | Deletes a defined mitigation action from your Amazon Web Services accounts. Requires permission to access the DeleteMitigationAction action. |
| GET | /mitigationactions/actions/{actionName} | Gets information about a mitigation action. Requires permission to access the DescribeMitigationAction action. |
| GET | /mitigationactions/actions | Gets a list of all mitigation actions that match the specified filter criteria. Requires permission to access the ListMitigationActions action. |
| PATCH | /mitigationactions/actions/{actionName} | Updates the definition for the specified mitigation action. Requires permission to access the UpdateMitigationAction action. |

### otaUpdates
| Method | Path | Description |
|--------|------|-------------|
| POST | /otaUpdates/{otaUpdateId} | Creates an IoT OTA update on a target group of things or groups. Requires permission to access the CreateOTAUpdate action. |
| DELETE | /otaUpdates/{otaUpdateId} | Delete an OTA update. Requires permission to access the DeleteOTAUpdate action. |
| GET | /otaUpdates/{otaUpdateId} | Gets an OTA update. Requires permission to access the GetOTAUpdate action. |
| GET | /otaUpdates | Lists OTA updates. Requires permission to access the ListOTAUpdates action. |

### packages
| Method | Path | Description |
|--------|------|-------------|
| PUT | /packages/{packageName} | Creates an IoT software package that can be deployed to your fleet. Requires permission to access the CreatePackage and GetIndexingConfiguration actions. |
| PUT | /packages/{packageName}/versions/{versionName} | Creates a new version for an existing IoT software package. Requires permission to access the CreatePackageVersion and GetIndexingConfiguration actions. |
| DELETE | /packages/{packageName} | Deletes a specific version from a software package.  Note: All package versions must be deleted before deleting the software package. Requires permission to access the DeletePackageVersion action. |
| DELETE | /packages/{packageName}/versions/{versionName} | Deletes a specific version from a software package.  Note: If a package version is designated as default, you must remove the designation from the software package using the UpdatePackage action. |
| GET | /packages/{packageName} | Gets information about the specified software package. Requires permission to access the GetPackage action. |
| GET | /packages/{packageName}/versions/{versionName} | Gets information about the specified package version.  Requires permission to access the GetPackageVersion action. |
| GET | /packages/{packageName}/versions | Lists the software package versions associated to the account. Requires permission to access the ListPackageVersions action. |
| GET | /packages | Lists the software packages associated to the account. Requires permission to access the ListPackages action. |
| PATCH | /packages/{packageName} | Updates the supported fields for a specific software package. Requires permission to access the UpdatePackage and GetIndexingConfiguration actions. |
| PATCH | /packages/{packageName}/versions/{versionName} | Updates the supported fields for a specific package version. Requires permission to access the UpdatePackageVersion and GetIndexingConfiguration actions. |

### policies
| Method | Path | Description |
|--------|------|-------------|
| POST | /policies/{policyName} | Creates an 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. Requires permission to access the CreatePolicy action. |
| POST | /policies/{policyName}/version | Creates a new version of the specified 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). Requires permission to access the CreatePolicyVersion action. |
| DELETE | /policies/{policyName} | 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 action to delete all non-default versions of the policy; use the DetachPolicy action to detach the policy from any certificate; and then use the DeletePolicy action to delete the policy. When a policy is deleted using DeletePolicy, its default version is deleted with it.  Because of the distributed nature of Amazon Web Services, it can take up to five minutes after a policy is detached before it's ready to be deleted.  Requires permission to access the DeletePolicy action. |
| DELETE | /policies/{policyName}/version/{policyVersionId} | Deletes the specified version of the specified policy. You cannot delete the default version of a policy using this action. 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. Requires permission to access the DeletePolicyVersion action. |
| GET | /policies/{policyName} | Gets information about the specified policy with the policy document of the default version. Requires permission to access the GetPolicy action. |
| GET | /policies/{policyName}/version/{policyVersionId} | Gets information about the specified policy version. Requires permission to access the GetPolicyVersion action. |
| GET | /policies | Lists your policies. Requires permission to access the ListPolicies action. |
| GET | /policies/{policyName}/version | Lists the versions of the specified policy and identifies the default version. Requires permission to access the ListPolicyVersions action. |
| PATCH | /policies/{policyName}/version/{policyVersionId} | 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 ListPrincipalPolicies action. Requires permission to access the SetDefaultPolicyVersion action. |

### provisioning-templates
| Method | Path | Description |
|--------|------|-------------|
| POST | /provisioning-templates/{templateName}/provisioning-claim | Creates a provisioning claim. Requires permission to access the CreateProvisio

…(truncated)
