

This is the new *CloudFormation Template Reference Guide*. Please update your bookmarks and links. For help getting started with CloudFormation, see the [AWS CloudFormation User Guide](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html).

# Managed integrations for AWS IoT Device Management
<a name="AWS_IoTManagedIntegrations"></a>

**Resource types**
+ [AWS::IoTManagedIntegrations::CredentialLocker](aws-resource-iotmanagedintegrations-credentiallocker.md)
+ [AWS::IoTManagedIntegrations::ManagedThing](aws-resource-iotmanagedintegrations-managedthing.md)
+ [AWS::IoTManagedIntegrations::ProvisioningProfile](aws-resource-iotmanagedintegrations-provisioningprofile.md)

# AWS::IoTManagedIntegrations::CredentialLocker
<a name="aws-resource-iotmanagedintegrations-credentiallocker"></a>

Create a credential locker.

**Note**  
This operation will not trigger the creation of all the manufacturing resources.

## Syntax
<a name="aws-resource-iotmanagedintegrations-credentiallocker-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-iotmanagedintegrations-credentiallocker-syntax.json"></a>

```
{
  "Type" : "AWS::IoTManagedIntegrations::CredentialLocker",
  "Properties" : {
      "[Name](#cfn-iotmanagedintegrations-credentiallocker-name)" : String,
      "[Tags](#cfn-iotmanagedintegrations-credentiallocker-tags)" : {Key: Value, ...}
    }
}
```

### YAML
<a name="aws-resource-iotmanagedintegrations-credentiallocker-syntax.yaml"></a>

```
Type: AWS::IoTManagedIntegrations::CredentialLocker
Properties:
  [Name](#cfn-iotmanagedintegrations-credentiallocker-name): String
  [Tags](#cfn-iotmanagedintegrations-credentiallocker-tags): 
    Key: Value
```

## Properties
<a name="aws-resource-iotmanagedintegrations-credentiallocker-properties"></a>

`Name`  <a name="cfn-iotmanagedintegrations-credentiallocker-name"></a>
The name of the credential locker.  
*Required*: No  
*Type*: String  
*Pattern*: `^[A-Za-z0-9-_ ]+$`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Tags`  <a name="cfn-iotmanagedintegrations-credentiallocker-tags"></a>
A set of key/value pairs that are used to manage the credential locker.  
*Required*: No  
*Type*: Object of String  
*Pattern*: `.+`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

## Return values
<a name="aws-resource-iotmanagedintegrations-credentiallocker-return-values"></a>

### Ref
<a name="aws-resource-iotmanagedintegrations-credentiallocker-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the name of the credential locker.

### Fn::GetAtt
<a name="aws-resource-iotmanagedintegrations-credentiallocker-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-iotmanagedintegrations-credentiallocker-return-values-fn--getatt-fn--getatt"></a>

`Arn`  <a name="Arn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the credential locker.

`CreatedAt`  <a name="CreatedAt-fn::getatt"></a>
The timestamp value of when the credential locker requset occurred.

`Id`  <a name="Id-fn::getatt"></a>
The identifier of the credential locker.

`Identifier`  <a name="Identifier-fn::getatt"></a>
The identifier of the credential locker.

# AWS::IoTManagedIntegrations::ManagedThing
<a name="aws-resource-iotmanagedintegrations-managedthing"></a>

Creates a managed thing. A managed thing contains the device identifier, protocol supported, and capabilities of the device in a protocol-specific format.

## Syntax
<a name="aws-resource-iotmanagedintegrations-managedthing-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-iotmanagedintegrations-managedthing-syntax.json"></a>

```
{
  "Type" : "AWS::IoTManagedIntegrations::ManagedThing",
  "Properties" : {
      "[AuthenticationMaterial](#cfn-iotmanagedintegrations-managedthing-authenticationmaterial)" : String,
      "[AuthenticationMaterialType](#cfn-iotmanagedintegrations-managedthing-authenticationmaterialtype)" : String,
      "[Brand](#cfn-iotmanagedintegrations-managedthing-brand)" : String,
      "[CapabilityReport](#cfn-iotmanagedintegrations-managedthing-capabilityreport)" : CapabilityReport,
      "[Classification](#cfn-iotmanagedintegrations-managedthing-classification)" : String,
      "[CredentialLockerId](#cfn-iotmanagedintegrations-managedthing-credentiallockerid)" : String,
      "[MetaData](#cfn-iotmanagedintegrations-managedthing-metadata)" : {Key: Value, ...},
      "[Model](#cfn-iotmanagedintegrations-managedthing-model)" : String,
      "[Name](#cfn-iotmanagedintegrations-managedthing-name)" : String,
      "[Owner](#cfn-iotmanagedintegrations-managedthing-owner)" : String,
      "[Role](#cfn-iotmanagedintegrations-managedthing-role)" : String,
      "[SerialNumber](#cfn-iotmanagedintegrations-managedthing-serialnumber)" : String,
      "[Tags](#cfn-iotmanagedintegrations-managedthing-tags)" : {Key: Value, ...}
    }
}
```

### YAML
<a name="aws-resource-iotmanagedintegrations-managedthing-syntax.yaml"></a>

```
Type: AWS::IoTManagedIntegrations::ManagedThing
Properties:
  [AuthenticationMaterial](#cfn-iotmanagedintegrations-managedthing-authenticationmaterial): String
  [AuthenticationMaterialType](#cfn-iotmanagedintegrations-managedthing-authenticationmaterialtype): String
  [Brand](#cfn-iotmanagedintegrations-managedthing-brand): String
  [CapabilityReport](#cfn-iotmanagedintegrations-managedthing-capabilityreport): 
    CapabilityReport
  [Classification](#cfn-iotmanagedintegrations-managedthing-classification): String
  [CredentialLockerId](#cfn-iotmanagedintegrations-managedthing-credentiallockerid): String
  [MetaData](#cfn-iotmanagedintegrations-managedthing-metadata): 
    Key: Value
  [Model](#cfn-iotmanagedintegrations-managedthing-model): String
  [Name](#cfn-iotmanagedintegrations-managedthing-name): String
  [Owner](#cfn-iotmanagedintegrations-managedthing-owner): String
  [Role](#cfn-iotmanagedintegrations-managedthing-role): String
  [SerialNumber](#cfn-iotmanagedintegrations-managedthing-serialnumber): String
  [Tags](#cfn-iotmanagedintegrations-managedthing-tags): 
    Key: Value
```

## Properties
<a name="aws-resource-iotmanagedintegrations-managedthing-properties"></a>

`AuthenticationMaterial`  <a name="cfn-iotmanagedintegrations-managedthing-authenticationmaterial"></a>
The authentication material defining the device connectivity setup requests. The authentication materials used are the device bar code.  
*Required*: No  
*Type*: String  
*Pattern*: `^[0-9A-Za-z!#$%&()*\+\-;<=>?@^_`{|}~\/: ]+$`  
*Minimum*: `1`  
*Maximum*: `512`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`AuthenticationMaterialType`  <a name="cfn-iotmanagedintegrations-managedthing-authenticationmaterialtype"></a>
The type of authentication material used for device connectivity setup requests.  
*Required*: No  
*Type*: String  
*Allowed values*: `WIFI_SETUP_QR_BAR_CODE | ZWAVE_QR_BAR_CODE | ZIGBEE_QR_BAR_CODE`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Brand`  <a name="cfn-iotmanagedintegrations-managedthing-brand"></a>
The brand of the device.  
*Required*: No  
*Type*: String  
*Pattern*: `^[A-Za-z0-9-_ ]+$`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`CapabilityReport`  <a name="cfn-iotmanagedintegrations-managedthing-capabilityreport"></a>
A report of the capabilities for the managed thing.  
*Required*: No  
*Type*: [CapabilityReport](aws-properties-iotmanagedintegrations-managedthing-capabilityreport.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Classification`  <a name="cfn-iotmanagedintegrations-managedthing-classification"></a>
The classification of the managed thing such as light bulb or thermostat.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`CredentialLockerId`  <a name="cfn-iotmanagedintegrations-managedthing-credentiallockerid"></a>
The identifier of the credential locker for the managed thing.  
*Required*: No  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9]*$`  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`MetaData`  <a name="cfn-iotmanagedintegrations-managedthing-metadata"></a>
The metadata for the managed thing.  
The `managedThing metadata` parameter is used for associating attributes with a `managedThing` that can be used for grouping over-the-air (OTA) tasks. Name value pairs in `metadata `can be used in the `OtaTargetQueryString` parameter for the `CreateOtaTask` API operation.
*Required*: No  
*Type*: Object of String  
*Pattern*: `[a-zA-Z0-9_.,@/:#-]+`  
*Maximum*: `800`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Model`  <a name="cfn-iotmanagedintegrations-managedthing-model"></a>
The model of the device.  
*Required*: No  
*Type*: String  
*Pattern*: `^[A-Za-z0-9-_ ]+$`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-iotmanagedintegrations-managedthing-name"></a>
The name of the managed thing representing the physical device.  
*Required*: No  
*Type*: String  
*Pattern*: `^[A-Za-z]+$`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Owner`  <a name="cfn-iotmanagedintegrations-managedthing-owner"></a>
Owner of the device, usually an indication of whom the device belongs to. This value should not contain personal identifiable information.  
*Required*: No  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9_.,@-]+$`  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Role`  <a name="cfn-iotmanagedintegrations-managedthing-role"></a>
The type of device used. This will be the hub controller, cloud device, or IoT device.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `CONTROLLER | DEVICE`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`SerialNumber`  <a name="cfn-iotmanagedintegrations-managedthing-serialnumber"></a>
The serial number of the device.  
*Required*: No  
*Type*: String  
*Pattern*: `^[A-Za-z0-9-_ ]+$`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Tags`  <a name="cfn-iotmanagedintegrations-managedthing-tags"></a>
A set of key/value pairs that are used to manage the managed thing.  
*Required*: No  
*Type*: Object of String  
*Pattern*: `.+`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

## Return values
<a name="aws-resource-iotmanagedintegrations-managedthing-return-values"></a>

### Ref
<a name="aws-resource-iotmanagedintegrations-managedthing-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the managed thing name.

### Fn::GetAtt
<a name="aws-resource-iotmanagedintegrations-managedthing-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-iotmanagedintegrations-managedthing-return-values-fn--getatt-fn--getatt"></a>

`Arn`  <a name="Arn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the managed thing.

`CreatedAt`  <a name="CreatedAt-fn::getatt"></a>
The timestamp value of when the device creation request occurred.

`Id`  <a name="Id-fn::getatt"></a>
The id of the managed thing.

`Identifier`  <a name="Identifier-fn::getatt"></a>
The id of the managed thing.

`ProvisioningStatus`  <a name="ProvisioningStatus-fn::getatt"></a>
The provisioning status of the device in the provisioning workflow for onboarding to IoT managed integrations.

`UniversalProductCode`  <a name="UniversalProductCode-fn::getatt"></a>
The universal product code (UPC) of the device model. The UPC is typically used in the United States of America and Canada.

`UpdatedAt`  <a name="UpdatedAt-fn::getatt"></a>
The timestamp value of when the managed thing was last updated at.

# AWS::IoTManagedIntegrations::ManagedThing CapabilityReport
<a name="aws-properties-iotmanagedintegrations-managedthing-capabilityreport"></a>

A report of the capabilities for the managed thing.

## Syntax
<a name="aws-properties-iotmanagedintegrations-managedthing-capabilityreport-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-iotmanagedintegrations-managedthing-capabilityreport-syntax.json"></a>

```
{
  "[Endpoints](#cfn-iotmanagedintegrations-managedthing-capabilityreport-endpoints)" : [ CapabilityReportEndpoint, ... ],
  "[NodeId](#cfn-iotmanagedintegrations-managedthing-capabilityreport-nodeid)" : String,
  "[Version](#cfn-iotmanagedintegrations-managedthing-capabilityreport-version)" : String
}
```

### YAML
<a name="aws-properties-iotmanagedintegrations-managedthing-capabilityreport-syntax.yaml"></a>

```
  [Endpoints](#cfn-iotmanagedintegrations-managedthing-capabilityreport-endpoints): 
    - CapabilityReportEndpoint
  [NodeId](#cfn-iotmanagedintegrations-managedthing-capabilityreport-nodeid): String
  [Version](#cfn-iotmanagedintegrations-managedthing-capabilityreport-version): String
```

## Properties
<a name="aws-properties-iotmanagedintegrations-managedthing-capabilityreport-properties"></a>

`Endpoints`  <a name="cfn-iotmanagedintegrations-managedthing-capabilityreport-endpoints"></a>
The endpoints used in the capability report.  
*Required*: Yes  
*Type*: Array of [CapabilityReportEndpoint](aws-properties-iotmanagedintegrations-managedthing-capabilityreportendpoint.md)  
*Minimum*: `0`  
*Maximum*: `50`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`NodeId`  <a name="cfn-iotmanagedintegrations-managedthing-capabilityreport-nodeid"></a>
The numeric identifier of the node.  
*Required*: No  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9=_.,@\+\-/]+$`  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Version`  <a name="cfn-iotmanagedintegrations-managedthing-capabilityreport-version"></a>
The version of the capability report.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^1\.0\.0$`  
*Minimum*: `1`  
*Maximum*: `10`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::IoTManagedIntegrations::ManagedThing CapabilityReportCapability
<a name="aws-properties-iotmanagedintegrations-managedthing-capabilityreportcapability"></a>

The capability used in capability report.

## Syntax
<a name="aws-properties-iotmanagedintegrations-managedthing-capabilityreportcapability-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-iotmanagedintegrations-managedthing-capabilityreportcapability-syntax.json"></a>

```
{
  "[Actions](#cfn-iotmanagedintegrations-managedthing-capabilityreportcapability-actions)" : [ String, ... ],
  "[Events](#cfn-iotmanagedintegrations-managedthing-capabilityreportcapability-events)" : [ String, ... ],
  "[Id](#cfn-iotmanagedintegrations-managedthing-capabilityreportcapability-id)" : String,
  "[Name](#cfn-iotmanagedintegrations-managedthing-capabilityreportcapability-name)" : String,
  "[Properties](#cfn-iotmanagedintegrations-managedthing-capabilityreportcapability-properties)" : [ String, ... ],
  "[Version](#cfn-iotmanagedintegrations-managedthing-capabilityreportcapability-version)" : String
}
```

### YAML
<a name="aws-properties-iotmanagedintegrations-managedthing-capabilityreportcapability-syntax.yaml"></a>

```
  [Actions](#cfn-iotmanagedintegrations-managedthing-capabilityreportcapability-actions): 
    - String
  [Events](#cfn-iotmanagedintegrations-managedthing-capabilityreportcapability-events): 
    - String
  [Id](#cfn-iotmanagedintegrations-managedthing-capabilityreportcapability-id): String
  [Name](#cfn-iotmanagedintegrations-managedthing-capabilityreportcapability-name): String
  [Properties](#cfn-iotmanagedintegrations-managedthing-capabilityreportcapability-properties): 
    - String
  [Version](#cfn-iotmanagedintegrations-managedthing-capabilityreportcapability-version): String
```

## Properties
<a name="aws-properties-iotmanagedintegrations-managedthing-capabilityreportcapability-properties"></a>

`Actions`  <a name="cfn-iotmanagedintegrations-managedthing-capabilityreportcapability-actions"></a>
The capability actions used in the capability report.  
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `1 | 0`  
*Maximum*: `128 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Events`  <a name="cfn-iotmanagedintegrations-managedthing-capabilityreportcapability-events"></a>
The capability events used in the capability report.  
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `1 | 0`  
*Maximum*: `128 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Id`  <a name="cfn-iotmanagedintegrations-managedthing-capabilityreportcapability-id"></a>
The id of the schema version.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9.\/]+(@(\d+\.\d+|\$latest))?$`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-iotmanagedintegrations-managedthing-capabilityreportcapability-name"></a>
The name of the capability.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[/a-zA-Z0-9\._ ]+$`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Properties`  <a name="cfn-iotmanagedintegrations-managedthing-capabilityreportcapability-properties"></a>
The capability properties used in the capability report.  
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `1 | 0`  
*Maximum*: `128 | 100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Version`  <a name="cfn-iotmanagedintegrations-managedthing-capabilityreportcapability-version"></a>
The version of the capability.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(0|[1-9][0-9]*)$`  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::IoTManagedIntegrations::ManagedThing CapabilityReportEndpoint
<a name="aws-properties-iotmanagedintegrations-managedthing-capabilityreportendpoint"></a>

The endpoints used in the capability report.

## Syntax
<a name="aws-properties-iotmanagedintegrations-managedthing-capabilityreportendpoint-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-iotmanagedintegrations-managedthing-capabilityreportendpoint-syntax.json"></a>

```
{
  "[Capabilities](#cfn-iotmanagedintegrations-managedthing-capabilityreportendpoint-capabilities)" : [ CapabilityReportCapability, ... ],
  "[DeviceTypes](#cfn-iotmanagedintegrations-managedthing-capabilityreportendpoint-devicetypes)" : [ String, ... ],
  "[Id](#cfn-iotmanagedintegrations-managedthing-capabilityreportendpoint-id)" : String
}
```

### YAML
<a name="aws-properties-iotmanagedintegrations-managedthing-capabilityreportendpoint-syntax.yaml"></a>

```
  [Capabilities](#cfn-iotmanagedintegrations-managedthing-capabilityreportendpoint-capabilities): 
    - CapabilityReportCapability
  [DeviceTypes](#cfn-iotmanagedintegrations-managedthing-capabilityreportendpoint-devicetypes): 
    - String
  [Id](#cfn-iotmanagedintegrations-managedthing-capabilityreportendpoint-id): String
```

## Properties
<a name="aws-properties-iotmanagedintegrations-managedthing-capabilityreportendpoint-properties"></a>

`Capabilities`  <a name="cfn-iotmanagedintegrations-managedthing-capabilityreportendpoint-capabilities"></a>
The capabilities used in the capability report.  
*Required*: Yes  
*Type*: Array of [CapabilityReportCapability](aws-properties-iotmanagedintegrations-managedthing-capabilityreportcapability.md)  
*Minimum*: `0`  
*Maximum*: `50`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DeviceTypes`  <a name="cfn-iotmanagedintegrations-managedthing-capabilityreportendpoint-devicetypes"></a>
The type of device.  
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `0`  
*Maximum*: `256 | 50`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Id`  <a name="cfn-iotmanagedintegrations-managedthing-capabilityreportendpoint-id"></a>
The id of the endpoint used in the capability report.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[0-9a-zA-Z]+$`  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::IoTManagedIntegrations::ProvisioningProfile
<a name="aws-resource-iotmanagedintegrations-provisioningprofile"></a>

Create a provisioning profile for a device to execute the provisioning flows using a provisioning template. The provisioning template is a document that defines the set of resources and policies applied to a device during the provisioning process.

## Syntax
<a name="aws-resource-iotmanagedintegrations-provisioningprofile-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-iotmanagedintegrations-provisioningprofile-syntax.json"></a>

```
{
  "Type" : "AWS::IoTManagedIntegrations::ProvisioningProfile",
  "Properties" : {
      "[CaCertificate](#cfn-iotmanagedintegrations-provisioningprofile-cacertificate)" : String,
      "[Name](#cfn-iotmanagedintegrations-provisioningprofile-name)" : String,
      "[ProvisioningType](#cfn-iotmanagedintegrations-provisioningprofile-provisioningtype)" : String,
      "[Tags](#cfn-iotmanagedintegrations-provisioningprofile-tags)" : {Key: Value, ...}
    }
}
```

### YAML
<a name="aws-resource-iotmanagedintegrations-provisioningprofile-syntax.yaml"></a>

```
Type: AWS::IoTManagedIntegrations::ProvisioningProfile
Properties:
  [CaCertificate](#cfn-iotmanagedintegrations-provisioningprofile-cacertificate): String
  [Name](#cfn-iotmanagedintegrations-provisioningprofile-name): String
  [ProvisioningType](#cfn-iotmanagedintegrations-provisioningprofile-provisioningtype): String
  [Tags](#cfn-iotmanagedintegrations-provisioningprofile-tags): 
    Key: Value
```

## Properties
<a name="aws-resource-iotmanagedintegrations-provisioningprofile-properties"></a>

`CaCertificate`  <a name="cfn-iotmanagedintegrations-provisioningprofile-cacertificate"></a>
The id of the certificate authority (CA) certificate.  
*Required*: No  
*Type*: String  
*Pattern*: `^-----BEGIN CERTIFICATE-----.*(.|\ )*-----END CERTIFICATE-----\n?$`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Name`  <a name="cfn-iotmanagedintegrations-provisioningprofile-name"></a>
The name of the provisioning template.  
*Required*: No  
*Type*: String  
*Pattern*: `^[0-9A-Za-z_-]+$`  
*Minimum*: `1`  
*Maximum*: `36`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ProvisioningType`  <a name="cfn-iotmanagedintegrations-provisioningprofile-provisioningtype"></a>
The type of provisioning workflow the device uses for onboarding to IoT managed integrations.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `FLEET_PROVISIONING | JITR`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Tags`  <a name="cfn-iotmanagedintegrations-provisioningprofile-tags"></a>
A set of key/value pairs that are used to manage the provisioning profile.  
*Required*: No  
*Type*: Object of String  
*Pattern*: `.+`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

## Return values
<a name="aws-resource-iotmanagedintegrations-provisioningprofile-return-values"></a>

### Ref
<a name="aws-resource-iotmanagedintegrations-provisioningprofile-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the provisioning profile template name

### Fn::GetAtt
<a name="aws-resource-iotmanagedintegrations-provisioningprofile-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-iotmanagedintegrations-provisioningprofile-return-values-fn--getatt-fn--getatt"></a>

`Arn`  <a name="Arn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the provisioning template used in the provisioning profile.

`ClaimCertificate`  <a name="ClaimCertificate-fn::getatt"></a>
The id of the claim certificate.

`Id`  <a name="Id-fn::getatt"></a>
The provisioning profile id.

`Identifier`  <a name="Identifier-fn::getatt"></a>
The provisioning template the device uses for the provisioning process.