

End of support notice: On October 7th, 2026, AWS will discontinue support for AWS IoT Greengrass Version 1. After October 7th, 2026, you will no longer be able to access the AWS IoT Greengrass V1 resources. For more information, please visit [Migrate from AWS IoT Greengrass Version 1](https://docs.aws.amazon.com/greengrass/v2/developerguide/migrate-from-v1.html).

# Definitions
<a name="api-definitions"></a>

**Topics**
+ [AssociateRoleToGroupRequest](definitions-associateroletogrouprequest.md)
+ [AssociateServiceRoleToAccountRequest](definitions-associateserviceroletoaccountrequest.md)
+ [AssociateServiceRoleToAccountResponse](definitions-associateserviceroletoaccountresponse.md)
+ [BulkDeployment](definitions-bulkdeployment.md)
+ [BulkDeploymentMetrics](definitions-bulkdeploymentmetrics.md)
+ [BulkDeploymentResult](definitions-bulkdeploymentresult.md)
+ [BulkDeploymentResults](definitions-bulkdeploymentresults.md)
+ [BulkDeploymentStatus](definitions-bulkdeploymentstatus.md)
+ [BulkDeployments](definitions-bulkdeployments.md)
+ [ConnectivityInfo](definitions-connectivityinfo.md)
+ [Connector](definitions-connector.md)
+ [ConnectorDefinitionVersion](definitions-connectordefinitionversion.md)
+ [Core](definitions-core.md)
+ [CoreDefinitionVersion](definitions-coredefinitionversion.md)
+ [CreateDeploymentRequest](definitions-createdeploymentrequest.md)
+ [CreateDeploymentResponse](definitions-createdeploymentresponse.md)
+ [CreateGroupCertificateAuthorityResponse](definitions-creategroupcertificateauthorityresponse.md)
+ [CreateSoftwareUpdateJobRequest](definitions-createsoftwareupdatejobrequest.md)
+ [CreateSoftwareUpdateJobResponse](definitions-createsoftwareupdatejobresponse.md)
+ [DefinitionInformation](definitions-definitioninformation.md)
+ [Deployment](definitions-deployment.md)
+ [DeploymentType](definitions-deploymenttype.md)
+ [Deployments](definitions-deployments.md)
+ [Device](definitions-device.md)
+ [DeviceDefinitionVersion](definitions-devicedefinitionversion.md)
+ [DisassociateRoleFromGroupResponse](definitions-disassociaterolefromgroupresponse.md)
+ [DisassociateServiceRoleFromAccountResponse](definitions-disassociateservicerolefromaccountresponse.md)
+ [Empty Schema](definitions-empty.md)
+ [ErrorDetail](definitions-errordetail.md)
+ [ErrorDetails](definitions-errordetails.md)
+ [Function](definitions-function.md)
+ [FunctionConfiguration](definitions-functionconfiguration.md)
+ [FunctionConfigurationEnvironment](definitions-functionconfigurationenvironment.md)
+ [FunctionDefaultConfig](definitions-functiondefaultconfig.md)
+ [FunctionDefaultExecutionConfig](definitions-functiondefaultexecutionconfig.md)
+ [FunctionDefinitionVersion](definitions-functiondefinitionversion.md)
+ [FunctionExecutionConfig](definitions-functionexecutionconfig.md)
+ [FunctionIsolationMode](definitions-functionisolationmode.md)
+ [FunctionRunAsConfig](definitions-functionrunasconfig.md)
+ [GeneralError](definitions-generalerror.md)
+ [GetAssociatedRoleResponse](definitions-getassociatedroleresponse.md)
+ [GetBulkDeploymentStatusResponse](definitions-getbulkdeploymentstatusresponse.md)
+ [GetConnectivityInfoResponse](definitions-getconnectivityinforesponse.md)
+ [GetConnectorDefinitionVersionResponse](definitions-getconnectordefinitionversionresponse.md)
+ [GetCoreDefinitionVersionResponse](definitions-getcoredefinitionversionresponse.md)
+ [GetDeploymentStatusResponse](definitions-getdeploymentstatusresponse.md)
+ [GetDeviceDefinitionVersionResponse](definitions-getdevicedefinitionversionresponse.md)
+ [GetFunctionDefinitionVersionResponse](definitions-getfunctiondefinitionversionresponse.md)
+ [GetGroupCertificateAuthorityResponse](definitions-getgroupcertificateauthorityresponse.md)
+ [GetGroupVersionResponse](definitions-getgroupversionresponse.md)
+ [GetLoggerDefinitionVersionResponse](definitions-getloggerdefinitionversionresponse.md)
+ [GetResourceDefinitionVersionResponse](definitions-getresourcedefinitionversionresponse.md)
+ [GetServiceRoleForAccountResponse](definitions-getserviceroleforaccountresponse.md)
+ [GetSubscriptionDefinitionVersionResponse](definitions-getsubscriptiondefinitionversionresponse.md)
+ [GetThingRuntimeConfigurationResponse](definitions-getthingruntimeconfigurationresponse.md)
+ [Group](definitions-associateroletogroupresponse.md)
+ [Group Certificate Authority Properties](definitions-groupcertificateauthorityproperties.md)
+ [GroupCertificateConfiguration](definitions-groupcertificateconfiguration.md)
+ [GroupInformation](definitions-groupinformation.md)
+ [GroupOwnerSetting](definitions-groupownersetting.md)
+ [GroupVersion](definitions-groupversion.md)
+ [IDList](definitions-idlist.md)
+ [ListBulkDeploymentDetailedReportsResponse](definitions-listbulkdeploymentdetailedreportsresponse.md)
+ [ListBulkDeploymentsResponse](definitions-listbulkdeploymentsresponse.md)
+ [ListDefinitionsResponse](definitions-listdefinitionsresponse.md)
+ [ListDeploymentsRequest](definitions-listdeploymentsrequest.md)
+ [ListDeploymentsResponse](definitions-listdeploymentsresponse.md)
+ [ListGroupCertificateAuthoritiesResponse](definitions-listgroupcertificateauthoritiesresponse.md)
+ [ListGroupsResponse](definitions-listgroupsresponse.md)
+ [ListVersionsResponse](definitions-listversionsresponse.md)
+ [LocalDeviceResourceData](definitions-localdeviceresourcedata.md)
+ [LocalVolumeResourceData](definitions-localvolumeresourcedata.md)
+ [Logger](definitions-logger.md)
+ [LoggerComponent](definitions-loggercomponent.md)
+ [LoggerDefinitionVersion](definitions-loggerdefinitionversion.md)
+ [LoggerLevel](definitions-loggerlevel.md)
+ [LoggerType](definitions-loggertype.md)
+ [Permission](definitions-permission.md)
+ [ResetDeploymentsRequest](definitions-resetdeploymentsrequest.md)
+ [ResetDeploymentsResponse](definitions-resetdeploymentsresponse.md)
+ [Resource](definitions-resource.md)
+ [ResourceAccessPolicy](definitions-resourceaccesspolicy.md)
+ [ResourceDataContainer](definitions-resourcedatacontainer.md)
+ [ResourceDefinitionVersion](definitions-resourcedefinitionversion.md)
+ [ResourceDownloadOwnerSetting](definitions-resourcedownloadownersetting.md)
+ [RuntimeConfiguration](definitions-runtimeconfiguration.md)
+ [RuntimeConfigurationUpdate](definitions-runtimeconfigurationupdate.md)
+ [S3MachineLearningModelResourceData](definitions-s3machinelearningmodelresourcedata.md)
+ [S3UrlSignerRole](definitions-s3urlsignerrole.md)
+ [SageMakerMachineLearningModelResourceData](definitions-sagemakermachinelearningmodelresourcedata.md)
+ [SecretsManagerSecretResourceData](definitions-secretsmanagersecretresourcedata.md)
+ [SoftwareToUpdate](definitions-softwaretoupdate.md)
+ [StartBulkDeploymentRequest](definitions-startbulkdeploymentrequest.md)
+ [StartBulkDeploymentResponse](definitions-startbulkdeploymentresponse.md)
+ [Subscription](definitions-subscription.md)
+ [SubscriptionDefinitionVersion](definitions-subscriptiondefinitionversion.md)
+ [TelemetryConfiguration](definitions-telemetryconfiguration.md)
+ [TelemetryConfigurationUpdate](definitions-telemetryconfigurationupdate.md)
+ [UpdateAgentLogLevel](definitions-updateagentloglevel.md)
+ [UpdateConnectivityInfoRequest](definitions-updateconnectivityinforequest.md)
+ [UpdateConnectivityInfoResponse](definitions-updateconnectivityinforesponse.md)
+ [UpdateTargets](definitions-updatetargets.md)
+ [UpdateTargetsArchitecture](definitions-updatetargetsarchitecture.md)
+ [UpdateTargetsOperatingSystem](definitions-updatetargetsoperatingsystem.md)
+ [VersionInformation](definitions-versioninformation.md)
+ [Versions](definitions-versions.md)
+ [tags](definitions-tags.md)
+ [updateGroupCertificateConfigurationRequest](definitions-updategroupcertificateconfigurationrequest.md)

# AssociateRoleToGroupRequest
<a name="definitions-associateroletogrouprequest"></a>

```
{
"RoleArn": "string"
}
```

AssociateRoleToGroupRequest  
type: object  
required: ["RoleArn"]

RoleArn  
The ARN of the role to associate with this group.  
type: string

# AssociateServiceRoleToAccountRequest
<a name="definitions-associateserviceroletoaccountrequest"></a>

```
{
"RoleArn": "string"
}
```

AssociateServiceRoleToAccountRequest  
type: object  
required: ["RoleArn"]

RoleArn  
The ARN of the service role to associate with your account.  
type: string

# AssociateServiceRoleToAccountResponse
<a name="definitions-associateserviceroletoaccountresponse"></a>

```
{
"AssociatedAt": "string"
}
```

AssociateServiceRoleToAccountResponse  
type: object

AssociatedAt  
The time when the service role was associated with the account.  
type: string

# BulkDeployment
<a name="definitions-bulkdeployment"></a>

```
{
"BulkDeploymentId": "string",
"BulkDeploymentArn": "string",
"CreatedAt": "string"
}
```

BulkDeployment  
Information about a bulk deployment. You cannot start a new bulk deployment while another one is still running or in a non-terminal state.  
type: object

BulkDeploymentId  
The ID of the bulk deployment.  
type: string

BulkDeploymentArn  
The ARN of the bulk deployment.  
type: string

CreatedAt  
The time, in ISO format, when the deployment was created.  
type: string

# BulkDeploymentMetrics
<a name="definitions-bulkdeploymentmetrics"></a>

```
{
"RecordsProcessed": 0,
"InvalidInputRecords": 0,
"RetryAttempts": 0
}
```

BulkDeploymentMetrics  
Relevant metrics on input records processed during bulk deployment.  
type: object

RecordsProcessed  
The total number of group records from the input file that have been processed or attempted so far.  
type: integer

InvalidInputRecords  
The total number of records that returned a non-retryable error. For example, this can occur if a group record from the input file uses an invalid format or specifies a nonexistent group version, or if the execution role doesn't grant permission to deploy a group or group version.  
type: integer

RetryAttempts  
The total number of deployment attempts that returned a retryable error. For example, a retry is triggered if the attempt to deploy a group returns a throttling error. `StartBulkDeployment` retries a group deployment up to five times.  
type: integer

# BulkDeploymentResult
<a name="definitions-bulkdeploymentresult"></a>

```
{
"DeploymentId": "string",
"DeploymentArn": "string",
"GroupArn": "string",
"DeploymentType": "NewDeployment|Redeployment|ResetDeployment|ForceResetDeployment",
"CreatedAt": "string",
"DeploymentStatus": "string",
"ErrorMessage": "string",
"ErrorDetails": [
  {
    "DetailedErrorCode": "string",
    "DetailedErrorMessage": "string"
  }
]
}
```

BulkDeploymentResult  
Information about an individual group deployment in a bulk deployment operation.  
type: object

DeploymentId  
The ID of the group deployment.  
type: string

DeploymentArn  
The ARN of the group deployment.  
type: string

GroupArn  
The ARN of the Greengrass group.  
type: string

DeploymentType  
The type of deployment. When used for `CreateDeployment`, only `NewDeployment` and `Redeployment` are valid.   
type: string  
enum: ["NewDeployment", "Redeployment", "ResetDeployment", "ForceResetDeployment"]

CreatedAt  
The time, in ISO format, when the deployment was created.  
type: string

DeploymentStatus  
The current status of the group deployment: `Building`, `InProgress`, `Success`, or `Failure`.   
type: string

ErrorMessage  
The error message for a failed deployment.  
type: string

ErrorDetails  
A list of error details.  
type: array  
items: [ErrorDetail](definitions-errordetail.md)

ErrorDetail  
Details about the error.  
type: object

DetailedErrorCode  
A detailed error code.  
type: string

DetailedErrorMessage  
A detailed error message.  
type: string

# BulkDeploymentResults
<a name="definitions-bulkdeploymentresults"></a>

```
[
{
  "DeploymentId": "string",
  "DeploymentArn": "string",
  "GroupArn": "string",
  "DeploymentType": "NewDeployment|Redeployment|ResetDeployment|ForceResetDeployment",
  "CreatedAt": "string",
  "DeploymentStatus": "string",
  "ErrorMessage": "string",
  "ErrorDetails": [
    {
      "DetailedErrorCode": "string",
      "DetailedErrorMessage": "string"
    }
  ]
}
]
```

  
type: array  
items: [BulkDeploymentResult](definitions-bulkdeploymentresult.md)

BulkDeploymentResult  
Information about an individual group deployment in a bulk deployment operation.  
type: object

DeploymentId  
The ID of the group deployment.  
type: string

DeploymentArn  
The ARN of the group deployment.  
type: string

GroupArn  
The ARN of the Greengrass group.  
type: string

DeploymentType  
The type of deployment. When used for `CreateDeployment`, only `NewDeployment` and `Redeployment` are valid.   
type: string  
enum: ["NewDeployment", "Redeployment", "ResetDeployment", "ForceResetDeployment"]

CreatedAt  
The time, in ISO format, when the deployment was created.  
type: string

DeploymentStatus  
The current status of the group deployment: `Building`, `InProgress`, `Success`, or `Failure`.   
type: string

ErrorMessage  
The error message for a failed deployment.  
type: string

ErrorDetails  
A list of error details.  
type: array  
items: [ErrorDetail](definitions-errordetail.md)

ErrorDetail  
Details about the error.  
type: object

DetailedErrorCode  
A detailed error code.  
type: string

DetailedErrorMessage  
A detailed error message.  
type: string

# BulkDeploymentStatus
<a name="definitions-bulkdeploymentstatus"></a>

```
{
}
```

  
The current status of the bulk deployment.  
type: string  
enum: ["Initializing", "Running", "Completed", "Stopping", "Stopped", "Failed"]

# BulkDeployments
<a name="definitions-bulkdeployments"></a>

```
[
{
  "BulkDeploymentId": "string",
  "BulkDeploymentArn": "string",
  "CreatedAt": "string"
}
]
```

  
type: array  
items: [BulkDeployment](definitions-bulkdeployment.md)

BulkDeployment  
Information about a bulk deployment. You cannot start a new bulk deployment while another one is still running or in a non-terminal state.  
type: object

BulkDeploymentId  
The ID of the bulk deployment.  
type: string

BulkDeploymentArn  
The ARN of the bulk deployment.  
type: string

CreatedAt  
The time, in ISO format, when the deployment was created.  
type: string

# ConnectivityInfo
<a name="definitions-connectivityinfo"></a>

```
{
"Id": "string",
"HostAddress": "string",
"PortNumber": 0x01,
"Metadata": "string"
}
```

  
Information about a Greengrass core's connectivity.  
required: ["Id", "HostAddress"]

Id  
The ID of the connectivity information.  
type: string

HostAddress  
The endpoint for the Greengrass core. Can be an IP address or DNS address.  
type: string

PortNumber  
The port of the Greengrass core, usually 8883.  
type: integer  
format: int32

Metadata  
Metadata for this endpoint.  
type: string

# Connector
<a name="definitions-connector"></a>

```
{
"Id": "string",
"ConnectorArn": "string",
"Parameters": {
  "additionalProperty0": "string",
  "additionalProperty1": "string",
  "additionalProperty2": "string"
}
}
```

Connector  
Information about a connector. Connectors run on the Greengrass core and contain built-in integration with local infrastructure, device protocols, AWS, and other cloud services.  
type: object  
required: ["Id", "ConnectorArn"]

Id  
A descriptive or arbitrary ID for the connector. This value must be unique within the connector definition version. Maximum length is 128 characters with the pattern [a-zA-Z0-9:\$1-]\$1.  
type: string

ConnectorArn  
The ARN of the connector.  
type: string

Parameters  
The parameters or configuration used by the connector.  
type: object  
additionalProperties: An object with properties of type `string` that represent the connector configuration.

# ConnectorDefinitionVersion
<a name="definitions-connectordefinitionversion"></a>

```
{
"Connectors": [
  {
    "Id": "string",
    "ConnectorArn": "string",
    "Parameters": {
      "additionalProperty0": "string",
      "additionalProperty1": "string",
      "additionalProperty2": "string"
    }
  }
]
}
```

ConnectorDefinitionVersion  
Information about the connector definition version, which is a container for connectors.  
type: object

Connectors  
A list of references to connectors in this version, with their corresponding configuration settings.  
type: array  
items: [Connector](definitions-connector.md)

Connector  
Information about a connector. Connectors run on the Greengrass core and contain built-in integration with local infrastructure, device protocols, AWS, and other cloud services.  
type: object  
required: ["Id", "ConnectorArn"]

Id  
A descriptive or arbitrary ID for the connector. This value must be unique within the connector definition version. Maximum length is 128 characters with the pattern [a-zA-Z0-9:\$1-]\$1.  
type: string

ConnectorArn  
The ARN of the connector.  
type: string

Parameters  
The parameters or configuration used by the connector.  
type: object  
additionalProperties: An object with properties of type `string` that represent the connector configuration.

# Core
<a name="definitions-core"></a>

```
{
"Id": "string",
"ThingArn": "string",
"CertificateArn": "string",
"SyncShadow": true
}
```

Core  
Information about a core.  
type: object  
required: ["Id", "ThingArn", "CertificateArn"]

Id  
A descriptive or arbitrary ID for the core. This value must be unique within the core definition version. Maximum length is 128 characters with the pattern `[a‑zA‑Z0‑9:_‑]+`.  
type: string

ThingArn  
The ARN of the thing that is the core.  
type: string

CertificateArn  
The ARN of the certificate associated with the core.  
type: string

SyncShadow  
If true, the core's local shadow is synced with the cloud automatically.  
type: boolean

# CoreDefinitionVersion
<a name="definitions-coredefinitionversion"></a>

```
{
"Cores": [
  {
    "Id": "string",
    "ThingArn": "string",
    "CertificateArn": "string",
    "SyncShadow": true
  }
]
}
```

CoreDefinitionVersion  
Information about a core definition version.  
type: object

Cores  
A list of cores in the core definition version.  
type: array  
items: [Core](definitions-core.md)

Core  
Information about a core.  
type: object  
required: ["Id", "ThingArn", "CertificateArn"]

Id  
A descriptive or arbitrary ID for the core. This value must be unique within the core definition version. Maximum length is 128 characters with the pattern `[a‑zA‑Z0‑9:_‑]+`.  
type: string

ThingArn  
The ARN of the thing that is the core.  
type: string

CertificateArn  
The ARN of the certificate associated with the core.  
type: string

SyncShadow  
If true, the core's local shadow is synced with the cloud automatically.  
type: boolean

# CreateDeploymentRequest
<a name="definitions-createdeploymentrequest"></a>

```
{
"DeploymentType": "NewDeployment|Redeployment|ResetDeployment|ForceResetDeployment",
"DeploymentId": "string",
"GroupVersionId": "string"
}
```

CreateDeploymentRequest  
Information about a deployment.  
type: object  
required: ["DeploymentType"]

DeploymentType  
The type of deployment. When used for `CreateDeployment`, only `NewDeployment` and `Redeployment` are valid.   
type: string  
enum: ["NewDeployment", "Redeployment", "ResetDeployment", "ForceResetDeployment"]

DeploymentId  
The ID of the previous deployment you want to redeploy.  
type: string

GroupVersionId  
The ID of the group version to be deployed.  
type: string

# CreateDeploymentResponse
<a name="definitions-createdeploymentresponse"></a>

```
{
"DeploymentArn": "string",
"DeploymentId": "string"
}
```

CreateDeploymentResponse  
type: object

DeploymentArn  
The ARN of the deployment.  
type: string

DeploymentId  
The ID of the deployment.  
type: string

# CreateGroupCertificateAuthorityResponse
<a name="definitions-creategroupcertificateauthorityresponse"></a>

```
{
"GroupCertificateAuthorityArn": "string"
}
```

CreateGroupCertificateAuthorityResponse  
type: object

GroupCertificateAuthorityArn  
The ARN of the group certificate authority.  
type: string

# CreateSoftwareUpdateJobRequest
<a name="definitions-createsoftwareupdatejobrequest"></a>

```
{
"UpdateTargetsArchitecture": "armv6l|armv7l|x86_64|aarch64",
"UpdateTargets": [
  "string"
],
"SoftwareToUpdate": "core|ota_agent",
"S3UrlSignerRole": "string",
"UpdateAgentLogLevel": "NONE|TRACE|DEBUG|VERBOSE|INFO|WARN|ERROR|FATAL",
"UpdateTargetsOperatingSystem": "ubuntu|raspbian|amazon_linux|openwrt"
}
```

CreateSoftwareUpdateJobRequest  
Request for the CreateSoftwareUpdateJob API.  
type: object  
required: ["UpdateTargetsArchitecture", "UpdateTargets", "SoftwareToUpdate", "S3UrlSignerRole", "UpdateTargetsOperatingSystem"]

UpdateTargetsArchitecture  
The architecture of the cores that are the targets of an update.  
type: string  
enum: ["armv6l", "armv7l", "x86\$164", "aarch64"]

UpdateTargets  
The ARNs of the targets (IoT things or IoT thing groups) that this update is applied to.  
type: array  


SoftwareToUpdate  
The piece of software on the Greengrass core that will be updated.  
type: string  
enum: ["core", "ota\$1agent"]

S3UrlSignerRole  
The IAM role that Greengrass uses to create presigned URLs that point to the update artifact.  
type: string

UpdateAgentLogLevel  
The minimum level of log statements that should be logged by the OTA agent during an update.  
type: string  
enum: ["NONE", "TRACE", "DEBUG", "VERBOSE", "INFO", "WARN", "ERROR", "FATAL"]

UpdateTargetsOperatingSystem  
The operating system of the cores that are the targets of an update.  
type: string  
enum: ["ubuntu", "raspbian", "amazon\$1linux", "openwrt"]

# CreateSoftwareUpdateJobResponse
<a name="definitions-createsoftwareupdatejobresponse"></a>

```
{
"IotJobId": "string",
"IotJobArn": "string",
"PlatformSoftwareVersion": "string"
}
```

CreateSoftwareUpdateJobResponse  
type: object

IotJobId  
The IoT job ID that corresponds to this update.  
type: string

IotJobArn  
The IoT job ARN that corresponds to this update.  
type: string

PlatformSoftwareVersion  
The software version installed on the device or devices after the update.  
type: string

# DefinitionInformation
<a name="definitions-definitioninformation"></a>

```
{
"Name": "string",
"Id": "string",
"Arn": "string",
"tags": {
  "additionalProperty0": "string",
  "additionalProperty1": "string",
  "additionalProperty2": "string"
},
"LastUpdatedTimestamp": "string",
"CreationTimestamp": "string",
"LatestVersion": "string",
"LatestVersionArn": "string"
}
```

DefinitionInformation  
Information about a definition.  
type: object

Name  
The name of the definition.  
type: string

Id  
The ID of the definition.  
type: string

Arn  
The ARN of the definition.  
type: string

tags  
The resource tags.  
type: object  
additionalProperties: The key-value pair for the resource tag. Type: string

LastUpdatedTimestamp  
The time, in milliseconds since the epoch, when the definition was last updated.  
type: string

CreationTimestamp  
The time, in milliseconds since the epoch, when the definition was created.  
type: string

LatestVersion  
The ID of the latest version associated with the definition.  
type: string

LatestVersionArn  
The ARN of the latest version associated with the definition.  
type: string

# Deployment
<a name="definitions-deployment"></a>

```
{
"GroupArn": "string",
"DeploymentId": "string",
"DeploymentArn": "string",
"DeploymentType": "NewDeployment|Redeployment|ResetDeployment|ForceResetDeployment",
"CreatedAt": "string"
}
```

Deployment  
Information about a deployment.  
type: object

GroupArn  
The ARN of the group for this deployment.  
type: string

DeploymentId  
The ID of the deployment.  
type: string

DeploymentArn  
The ARN of the deployment.  
type: string

DeploymentType  
The type of deployment. When used for `CreateDeployment`, only `NewDeployment` and `Redeployment` are valid.   
type: string  
enum: ["NewDeployment", "Redeployment", "ResetDeployment", "ForceResetDeployment"]

CreatedAt  
The time, in milliseconds since the epoch, when the deployment was created.  
type: string

# DeploymentType
<a name="definitions-deploymenttype"></a>

```
{
}
```

  
The type of deployment. When used for `CreateDeployment`, only `NewDeployment` and `Redeployment` are valid.   
type: string  
enum: ["NewDeployment", "Redeployment", "ResetDeployment", "ForceResetDeployment"]

# Deployments
<a name="definitions-deployments"></a>

```
[
{
  "GroupArn": "string",
  "DeploymentId": "string",
  "DeploymentArn": "string",
  "DeploymentType": "NewDeployment|Redeployment|ResetDeployment|ForceResetDeployment",
  "CreatedAt": "string"
}
]
```

  
type: array  
items: [Deployment](definitions-deployment.md)

Deployment  
Information about a deployment.  
type: object

GroupArn  
The ARN of the group for this deployment.  
type: string

DeploymentId  
The ID of the deployment.  
type: string

DeploymentArn  
The ARN of the deployment.  
type: string

DeploymentType  
The type of deployment. When used for `CreateDeployment`, only `NewDeployment` and `Redeployment` are valid.   
type: string  
enum: ["NewDeployment", "Redeployment", "ResetDeployment", "ForceResetDeployment"]

CreatedAt  
The time, in milliseconds since the epoch, when the deployment was created.  
type: string

# Device
<a name="definitions-device"></a>

```
{
"Id": "string",
"ThingArn": "string",
"CertificateArn": "string",
"SyncShadow": true
}
```

Device  
Information about a device.  
type: object  
required: ["Id", "ThingArn", "CertificateArn"]

Id  
A descriptive or arbitrary ID for the device. This value must be unique within the device definition version. Maximum length is 128 characters with the pattern `[a‑zA‑Z0‑9:_‑]+`.  
type: string

ThingArn  
The thing ARN of the device.  
type: string

CertificateArn  
The ARN of the certificate associated with the device.  
type: string

SyncShadow  
If true, the device's local shadow is synced with the cloud automatically.  
type: boolean

# DeviceDefinitionVersion
<a name="definitions-devicedefinitionversion"></a>

```
{
"Devices": [
  {
    "Id": "string",
    "ThingArn": "string",
    "CertificateArn": "string",
    "SyncShadow": true
  }
]
}
```

DeviceDefinitionVersion  
Information about a device definition version.  
type: object

Devices  
A list of devices in the definition version.  
type: array  
items: [Device](definitions-device.md)

Device  
Information about a device.  
type: object  
required: ["Id", "ThingArn", "CertificateArn"]

Id  
A descriptive or arbitrary ID for the device. This value must be unique within the device definition version. Maximum length is 128 characters with the pattern `[a‑zA‑Z0‑9:_‑]+`.  
type: string

ThingArn  
The thing ARN of the device.  
type: string

CertificateArn  
The ARN of the certificate associated with the device.  
type: string

SyncShadow  
If true, the device's local shadow is synced with the cloud automatically.  
type: boolean

# DisassociateRoleFromGroupResponse
<a name="definitions-disassociaterolefromgroupresponse"></a>

```
{
"DisassociatedAt": "string"
}
```

DisassociateRoleFromGroupResponse  
type: object

DisassociatedAt  
The time, in milliseconds since the epoch, when the role was disassociated from the group.  
type: string

# DisassociateServiceRoleFromAccountResponse
<a name="definitions-disassociateservicerolefromaccountresponse"></a>

```
{
"DisassociatedAt": "string"
}
```

DisassociateServiceRoleFromAccountResponse  
type: object

DisassociatedAt  
The time when the service role was disassociated from the account.  
type: string

# Empty Schema
<a name="definitions-empty"></a>

```
{
}
```

Empty Schema  
Empty  
type: object

# ErrorDetail
<a name="definitions-errordetail"></a>

```
{
"DetailedErrorCode": "string",
"DetailedErrorMessage": "string"
}
```

ErrorDetail  
Details about the error.  
type: object

DetailedErrorCode  
A detailed error code.  
type: string

DetailedErrorMessage  
A detailed error message.  
type: string

# ErrorDetails
<a name="definitions-errordetails"></a>

```
[
{
  "DetailedErrorCode": "string",
  "DetailedErrorMessage": "string"
}
]
```

ErrorDetails  
A list of error details.  
type: array  
items: [ErrorDetail](definitions-errordetail.md)

ErrorDetail  
Details about the error.  
type: object

DetailedErrorCode  
A detailed error code.  
type: string

DetailedErrorMessage  
A detailed error message.  
type: string

# Function
<a name="definitions-function"></a>

```
{
"Id": "string",
"FunctionArn": "string",
"FunctionConfiguration": {
  "Pinned": true,
  "Executable": "string",
  "ExecArgs": "string",
  "MemorySize": 0,
  "Timeout": 0,
  "EncodingType": "binary|json",
  "Environment": {
    "Variables": {
      "additionalProperty0": "string",
      "additionalProperty1": "string",
      "additionalProperty2": "string"
    },
    "ResourceAccessPolicies": [
      {
        "ResourceId": "string",
        "Permission": "ro|rw"
      }
    ],
    "AccessSysfs": true,
    "Execution": {
      "IsolationMode": "GreengrassContainer|NoContainer",
      "RunAs": {
        "Uid": 1001,
        "Gid": 1002
      }
    }
  },
  "FunctionRuntimeOverride": "string"
}
}
```

  
Information about a Lambda function.  
type: object  
required: ["Id"]

Id  
A descriptive or arbitrary ID for the function. This value must be unique within the function definition version. Maximum length is 128 characters with the pattern `[a‑zA‑Z0‑9:_‑]+`.  
type: string

FunctionArn  
The ARN of the alias (recommended) or version of the target Lambda function.  
type: string

FunctionConfiguration  
The configuration of the Lambda function.  
type: object

Pinned  
True if the function is pinned. Pinned means the function is long-lived and starts when the core starts.  
type: boolean

Executable  
The name of the function executable.  
type: string

ExecArgs  
The execution arguments.  
type: string

MemorySize  
The memory size, in KB, required by the function. This setting does not apply and should be cleared when you run the Lambda function without containerization.  
type: integer

Timeout  
The allowed function execution time, after which Lambda should terminate the function. This timeout still applies to pinned Lambda functions for each request.  
type: integer

EncodingType  
The expected encoding type of the input payload for the function. The default is `json`.  
type: string  
enum: ["binary", "json"]

Environment  
The environment configuration of the function.  
type: object

Variables  
Environment variables for the Lambda function's configuration.  
type: object  
additionalProperties: An object with properties of type `string` that represent the environment variables.

ResourceAccessPolicies  
A list of the resources, with their permissions, to which the Lambda function is granted access. A Lambda function can have at most 10 resources. ResourceAccessPolicies applies only when you run the Lambda function in a Greengrass container.  
type: array  
items: [ResourceAccessPolicy](definitions-resourceaccesspolicy.md)

ResourceAccessPolicy  
A policy used by the function to access a resource.  
type: object  
required: ["ResourceId"]

ResourceId  
The ID of the resource. (This ID is assigned to the resource when you create the resource definiton.)  
type: string

Permission  
The type of permission a function has to access a resource.  
type: string  
enum: ["ro", "rw"]

AccessSysfs  
If true, the Lambda function is allowed to access the host's /sys folder. Use this when the Lambda function needs to read device information from /sys. This setting applies only when you run the Lambda function in a Greengrass container.  
type: boolean

Execution  
Configuration information that specifies how a Lambda function runs.   
type: object

IsolationMode  
Specifies whether the Lambda function runs in a Greengrass container (default) or without containerization. Unless your scenario requires that you run without containerization, we recommend that you run in a Greengrass container. Omit this value to run the Lambda function with the default containerization for the group.  
type: string  
enum: ["GreengrassContainer", "NoContainer"]

RunAs  
Specifies the user and group whose permissions are used when running the Lambda function. You can specify one or both values to override the default values. To minimize the risk of unintended changes or malicious attacks, we recommend that you avoid running as root unless absolutely necessary. To run as root, you must update config.json in `greengrass-root/config` to set `allowFunctionsToRunAsRoot` to `yes`.   
type: object

Uid  
The user ID whose permissions are used to run a Lambda function.  
type: integer

Gid  
The group ID whose permissions are used to run a Lambda function.  
type: integer

FunctionRuntimeOverride  
The Lambda runtime supported by Greengrass which is to be used instead of the one specified in the Lambda function.  
type: string

# FunctionConfiguration
<a name="definitions-functionconfiguration"></a>

```
{
"Pinned": true,
"Executable": "string",
"ExecArgs": "string",
"MemorySize": 0,
"Timeout": 0,
"EncodingType": "binary|json",
"Environment": {
  "Variables": {
    "additionalProperty0": "string",
    "additionalProperty1": "string",
    "additionalProperty2": "string"
  },
  "ResourceAccessPolicies": [
    {
      "ResourceId": "string",
      "Permission": "ro|rw"
    }
  ],
  "AccessSysfs": true,
  "Execution": {
    "IsolationMode": "GreengrassContainer|NoContainer",
    "RunAs": {
      "Uid": 1001,
      "Gid": 1002
    }
  }
},
"FunctionRuntimeOverride": "string"
}
```

  
The configuration of the Lambda function.  
type: object

Pinned  
True if the function is pinned. Pinned means the function is long-lived and starts when the core starts.  
type: boolean

Executable  
The name of the function executable.  
type: string

ExecArgs  
The execution arguments.  
type: string

MemorySize  
The memory size, in KB, required by the function. This setting does not apply and should be cleared when you run the Lambda function without containerization.  
type: integer

Timeout  
The allowed function execution time, after which Lambda should terminate the function. This timeout still applies to pinned Lambda functions for each request.  
type: integer

EncodingType  
The expected encoding type of the input payload for the function. The default is `json`.  
type: string  
enum: ["binary", "json"]

Environment  
The environment configuration of the function.  
type: object

Variables  
Environment variables for the Lambda function's configuration.  
type: object  
additionalProperties: An object with properties of type `string` that represent the environment variables.

ResourceAccessPolicies  
A list of the resources, with their permissions, to which the Lambda function is granted access. A Lambda function can have at most 10 resources. ResourceAccessPolicies applies only when you run the Lambda function in a Greengrass container.  
type: array  
items: [ResourceAccessPolicy](definitions-resourceaccesspolicy.md)

ResourceAccessPolicy  
A policy used by the function to access a resource.  
type: object  
required: ["ResourceId"]

ResourceId  
The ID of the resource. (This ID is assigned to the resource when you create the resource definiton.)  
type: string

Permission  
The type of permission a function has to access a resource.  
type: string  
enum: ["ro", "rw"]

AccessSysfs  
If true, the Lambda function is allowed to access the host's /sys folder. Use this when the Lambda function needs to read device information from /sys. This setting applies only when you run the Lambda function in a Greengrass container.  
type: boolean

Execution  
Configuration information that specifies how a Lambda function runs.   
type: object

IsolationMode  
Specifies whether the Lambda function runs in a Greengrass container (default) or without containerization. Unless your scenario requires that you run without containerization, we recommend that you run in a Greengrass container. Omit this value to run the Lambda function with the default containerization for the group.  
type: string  
enum: ["GreengrassContainer", "NoContainer"]

RunAs  
Specifies the user and group whose permissions are used when running the Lambda function. You can specify one or both values to override the default values. To minimize the risk of unintended changes or malicious attacks, we recommend that you avoid running as root unless absolutely necessary. To run as root, you must update config.json in `greengrass-root/config` to set `allowFunctionsToRunAsRoot` to `yes`.   
type: object

Uid  
The user ID whose permissions are used to run a Lambda function.  
type: integer

Gid  
The group ID whose permissions are used to run a Lambda function.  
type: integer

FunctionRuntimeOverride  
The Lambda runtime supported by Greengrass which is to be used instead of the one specified in the Lambda function.  
type: string

# FunctionConfigurationEnvironment
<a name="definitions-functionconfigurationenvironment"></a>

```
{
"Variables": {
  "additionalProperty0": "string",
  "additionalProperty1": "string",
  "additionalProperty2": "string"
},
"ResourceAccessPolicies": [
  {
    "ResourceId": "string",
    "Permission": "ro|rw"
  }
],
"AccessSysfs": true,
"Execution": {
  "IsolationMode": "GreengrassContainer|NoContainer",
  "RunAs": {
    "Uid": 1001,
    "Gid": 1002
  }
}
}
```

  
The environment configuration of the function.  
type: object

Variables  
Environment variables for the Lambda function's configuration.  
type: object  
additionalProperties: An object with properties of type `string` that represent the environment variables.

ResourceAccessPolicies  
A list of the resources, with their permissions, to which the Lambda function is granted access. A Lambda function can have at most 10 resources. ResourceAccessPolicies applies only when you run the Lambda function in a Greengrass container.  
type: array  
items: [ResourceAccessPolicy](definitions-resourceaccesspolicy.md)

ResourceAccessPolicy  
A policy used by the function to access a resource.  
type: object  
required: ["ResourceId"]

ResourceId  
The ID of the resource. (This ID is assigned to the resource when you create the resource definiton.)  
type: string

Permission  
The type of permission a function has to access a resource.  
type: string  
enum: ["ro", "rw"]

AccessSysfs  
If true, the Lambda function is allowed to access the host's /sys folder. Use this when the Lambda function needs to read device information from /sys. This setting applies only when you run the Lambda function in a Greengrass container.  
type: boolean

Execution  
Configuration information that specifies how a Lambda function runs.   
type: object

IsolationMode  
Specifies whether the Lambda function runs in a Greengrass container (default) or without containerization. Unless your scenario requires that you run without containerization, we recommend that you run in a Greengrass container. Omit this value to run the Lambda function with the default containerization for the group.  
type: string  
enum: ["GreengrassContainer", "NoContainer"]

RunAs  
Specifies the user and group whose permissions are used when running the Lambda function. You can specify one or both values to override the default values. To minimize the risk of unintended changes or malicious attacks, we recommend that you avoid running as root unless absolutely necessary. To run as root, you must update config.json in `greengrass-root/config` to set `allowFunctionsToRunAsRoot` to `yes`.   
type: object

Uid  
The user ID whose permissions are used to run a Lambda function.  
type: integer

Gid  
The group ID whose permissions are used to run a Lambda function.  
type: integer

# FunctionDefaultConfig
<a name="definitions-functiondefaultconfig"></a>

```
{
"Execution": {
  "IsolationMode": "GreengrassContainer|NoContainer",
  "RunAs": {
    "Uid": 1001,
    "Gid": 1002
  }
}
}
```

FunctionDefaultConfig  
The default configuration that applies to all Lambda functions in the group. Individual Lambda functions can override these settings.  
type: object

Execution  
Configuration information that specifies how a Lambda function runs.

# FunctionDefaultExecutionConfig
<a name="definitions-functiondefaultexecutionconfig"></a>

```
{
"IsolationMode": "GreengrassContainer|NoContainer",
"RunAs": {
  "Uid": 1001,
  "Gid": 1002
}
}
```

FunctionExecutionConfig  
Configuration information that specifies how a Lambda function runs.   
type: object

IsolationMode  
Specifies whether the Lambda function runs in a Greengrass container (default) or without containerization. Unless your scenario requires that you run without containerization, we recommend that you run in a Greengrass container. Omit this value to run the Lambda function with the default containerization for the group.  
type: string  
enum: ["GreengrassContainer", "NoContainer"]

RunAs  
Specifies the user and group whose permissions are used when running the Lambda function. You can specify one or both values to override the default values. To minimize the risk of unintended changes or malicious attacks, we recommend that you avoid running as root unless absolutely necessary. To run as root, you must update config.json in `greengrass-root/config` to set `allowFunctionsToRunAsRoot` to `yes`.   
type: object

Uid  
The user ID whose permissions are used to run a Lambda function.  
type: integer

Gid  
The group ID whose permissions are used to run a Lambda function.  
type: integer

# FunctionDefinitionVersion
<a name="definitions-functiondefinitionversion"></a>

```
{
"DefaultConfig": {
  "Execution": {
    "IsolationMode": "GreengrassContainer|NoContainer",
    "RunAs": {
      "Uid": 1001,
      "Gid": 1002
    }
  }
},
"Functions": [
  {
    "Id": "string",
    "FunctionArn": "string",
    "FunctionConfiguration": {
      "Pinned": true,
      "Executable": "string",
      "ExecArgs": "string",
      "MemorySize": 0,
      "Timeout": 0,
      "EncodingType": "binary|json",
      "Environment": {
        "Variables": {
          "additionalProperty0": "string",
          "additionalProperty1": "string",
          "additionalProperty2": "string"
        },
        "ResourceAccessPolicies": [
          {
            "ResourceId": "string",
            "Permission": "ro|rw"
          }
        ],
        "AccessSysfs": true,
        "Execution": {
          "IsolationMode": "GreengrassContainer|NoContainer",
          "RunAs": {
            "Uid": 1001,
            "Gid": 1002
          }
        }
      },
      "FunctionRuntimeOverride": "string"
    }
  }
]
}
```

FunctionDefinitionVersion  
Information about a function definition version.  
type: object

DefaultConfig  
The default configuration that applies to all Lambda functions in the group. Individual Lambda functions can override these settings.  
type: object

Execution  
Configuration information that specifies how a Lambda function runs.

Functions  
A list of Lambda functions in this function definition version.  
type: array  
items: [Function](definitions-function.md)

  
Information about a Lambda function.  
type: object  
required: ["Id"]

Id  
A descriptive or arbitrary ID for the function. This value must be unique within the function definition version. Maximum length is 128 characters with the pattern `[a‑zA‑Z0‑9:_‑]+`.  
type: string

FunctionArn  
The ARN of the alias (recommended) or version of the target Lambda function.  
type: string

FunctionConfiguration  
The configuration of the Lambda function.  
type: object

Pinned  
True if the function is pinned. Pinned means the function is long-lived and starts when the core starts.  
type: boolean

Executable  
The name of the function executable.  
type: string

ExecArgs  
The execution arguments.  
type: string

MemorySize  
The memory size, in KB, required by the function. This setting does not apply and should be cleared when you run the Lambda function without containerization.  
type: integer

Timeout  
The allowed function execution time, after which Lambda should terminate the function. This timeout still applies to pinned Lambda functions for each request.  
type: integer

EncodingType  
The expected encoding type of the input payload for the function. The default is `json`.  
type: string  
enum: ["binary", "json"]

Environment  
The environment configuration of the function.  
type: object

Variables  
Environment variables for the Lambda function's configuration.  
type: object  
additionalProperties: An object with properties of type `string` that represent the environment variables.

ResourceAccessPolicies  
A list of the resources, with their permissions, to which the Lambda function is granted access. A Lambda function can have at most 10 resources. ResourceAccessPolicies applies only when you run the Lambda function in a Greengrass container.  
type: array  
items: [ResourceAccessPolicy](definitions-resourceaccesspolicy.md)

ResourceAccessPolicy  
A policy used by the function to access a resource.  
type: object  
required: ["ResourceId"]

ResourceId  
The ID of the resource. (This ID is assigned to the resource when you create the resource definiton.)  
type: string

Permission  
The type of permission a function has to access a resource.  
type: string  
enum: ["ro", "rw"]

AccessSysfs  
If true, the Lambda function is allowed to access the host's /sys folder. Use this when the Lambda function needs to read device information from /sys. This setting applies only when you run the Lambda function in a Greengrass container.  
type: boolean

Execution  
Configuration information that specifies how a Lambda function runs.   
type: object

IsolationMode  
Specifies whether the Lambda function runs in a Greengrass container (default) or without containerization. Unless your scenario requires that you run without containerization, we recommend that you run in a Greengrass container. Omit this value to run the Lambda function with the default containerization for the group.  
type: string  
enum: ["GreengrassContainer", "NoContainer"]

RunAs  
Specifies the user and group whose permissions are used when running the Lambda function. You can specify one or both values to override the default values. To minimize the risk of unintended changes or malicious attacks, we recommend that you avoid running as root unless absolutely necessary. To run as root, you must update config.json in `greengrass-root/config` to set `allowFunctionsToRunAsRoot` to `yes`.   
type: object

Uid  
The user ID whose permissions are used to run a Lambda function.  
type: integer

Gid  
The group ID whose permissions are used to run a Lambda function.  
type: integer

FunctionRuntimeOverride  
The Lambda runtime supported by Greengrass which is to be used instead of the one specified in the Lambda function.  
type: string

# FunctionExecutionConfig
<a name="definitions-functionexecutionconfig"></a>

```
{
"IsolationMode": "GreengrassContainer|NoContainer",
"RunAs": {
  "Uid": 1001,
  "Gid": 1002
}
}
```

FunctionExecutionConfig  
Configuration information that specifies how a Lambda function runs.   
type: object

IsolationMode  
Specifies whether the Lambda function runs in a Greengrass container (default) or without containerization. Unless your scenario requires that you run without containerization, we recommend that you run in a Greengrass container. Omit this value to run the Lambda function with the default containerization for the group.  
type: string  
enum: ["GreengrassContainer", "NoContainer"]

RunAs  
Specifies the user and group whose permissions are used when running the Lambda function. You can specify one or both values to override the default values. To minimize the risk of unintended changes or malicious attacks, we recommend that you avoid running as root unless absolutely necessary. To run as root, you must update config.json in `greengrass-root/config` to set `allowFunctionsToRunAsRoot` to `yes`.   
type: object

Uid  
The user ID whose permissions are used to run a Lambda function.  
type: integer

Gid  
The group ID whose permissions are used to run a Lambda function.  
type: integer

# FunctionIsolationMode
<a name="definitions-functionisolationmode"></a>

```
{
}
```

FunctionIsolationMode  
Specifies whether the Lambda function runs in a Greengrass container (default) or without containerization. Unless your scenario requires that you run without containerization, we recommend that you run in a Greengrass container. Omit this value to run the Lambda function with the default containerization for the group.  
type: string  
enum: ["GreengrassContainer", "NoContainer"]

# FunctionRunAsConfig
<a name="definitions-functionrunasconfig"></a>

```
{
"Uid": 1001,
"Gid": 1002
}
```

FunctionRunAsConfig  
Specifies the user and group whose permissions are used when running the Lambda function. You can specify one or both values to override the default values. To minimize the risk of unintended changes or malicious attacks, we recommend that you avoid running as root unless absolutely necessary. To run as root, you must update config.json in `greengrass-root/config` to set `allowFunctionsToRunAsRoot` to `yes`.   
type: object

Uid  
The user ID whose permissions are used to run a Lambda function.  
type: integer

Gid  
The group ID whose permissions are used to run a Lambda function.  
type: integer

# GeneralError
<a name="definitions-generalerror"></a>

```
{
"Message": "string",
"ErrorDetails": [
  {
    "DetailedErrorCode": "string",
    "DetailedErrorMessage": "string"
  }
]
}
```

GeneralError  
General error information.  
type: object  
required: ["Message"]

Message  
A message that contains information about the error.  
type: string

ErrorDetails  
A list of error details.  
type: array  
items: [ErrorDetail](definitions-errordetail.md)

ErrorDetail  
Details about the error.  
type: object

DetailedErrorCode  
A detailed error code.  
type: string

DetailedErrorMessage  
A detailed error message.  
type: string

# GetAssociatedRoleResponse
<a name="definitions-getassociatedroleresponse"></a>

```
{
"AssociatedAt": "string",
"RoleArn": "string"
}
```

GetAssociatedRoleResponse  
type: object

AssociatedAt  
The time when the role was associated with the group.  
type: string

RoleArn  
The ARN of the role that is associated with the group.  
type: string

# GetBulkDeploymentStatusResponse
<a name="definitions-getbulkdeploymentstatusresponse"></a>

```
{
"BulkDeploymentStatus": "Initializing|Running|Completed|Stopping|Stopped|Failed",
"BulkDeploymentMetrics": {
  "RecordsProcessed": 0,
  "InvalidInputRecords": 0,
  "RetryAttempts": 0
},
"tags": {
  "additionalProperty0": "string",
  "additionalProperty1": "string",
  "additionalProperty2": "string"
},
"CreatedAt": "string",
"ErrorMessage": "string",
"ErrorDetails": [
  {
    "DetailedErrorCode": "string",
    "DetailedErrorMessage": "string"
  }
]
}
```

GetBulkDeploymentStatusResponse  
Information about the status of a bulk deployment at the time of the request.  
type: object

BulkDeploymentStatus  
The current status of the bulk deployment.  
type: string  
enum: ["Initializing", "Running", "Completed", "Stopping", "Stopped", "Failed"]

BulkDeploymentMetrics  
Relevant metrics on input records processed during bulk deployment.  
type: object

RecordsProcessed  
The total number of group records from the input file that have been processed or attempted so far.  
type: integer

InvalidInputRecords  
The total number of records that returned a non-retryable error. For example, this can occur if a group record from the input file uses an invalid format or specifies a nonexistent group version, or if the execution role doesn't grant permission to deploy a group or group version.  
type: integer

RetryAttempts  
The total number of deployment attempts that returned a retryable error. For example, a retry is triggered if the attempt to deploy a group returns a throttling error. `StartBulkDeployment` retries a group deployment up to five times.  
type: integer

tags  
The resource tags.  
type: object  
additionalProperties: The key-value pair for the resource tag. Type: string

CreatedAt  
The time, in ISO format, when the deployment was created.  
type: string

ErrorMessage  
Error message  
type: string

ErrorDetails  
A list of error details.  
type: array  
items: [ErrorDetail](definitions-errordetail.md)

ErrorDetail  
Details about the error.  
type: object

DetailedErrorCode  
A detailed error code.  
type: string

DetailedErrorMessage  
A detailed error message.  
type: string

# GetConnectivityInfoResponse
<a name="definitions-getconnectivityinforesponse"></a>

```
{
"message": "string",
"ConnectivityInfo": [
  {
    "Id": "string",
    "HostAddress": "string",
    "PortNumber": 0x01,
    "Metadata": "string"
  }
]
}
```

  
Information about a Greengrass core's connectivity.

message  
A message about the connectivity info request.  
type: string

ConnectivityInfo  
Connectivity info list.  
type: array  
items: [ConnectivityInfo](definitions-connectivityinfo.md)

  
Information about a Greengrass core's connectivity.  
required: ["Id", "HostAddress"]

Id  
The ID of the connectivity information.  
type: string

HostAddress  
The endpoint for the Greengrass core. Can be an IP address or DNS address.  
type: string

PortNumber  
The port of the Greengrass core, usually 8883.  
type: integer  
format: int32

Metadata  
Metadata for this endpoint.  
type: string

# GetConnectorDefinitionVersionResponse
<a name="definitions-getconnectordefinitionversionresponse"></a>

```
{
"Arn": "string",
"Id": "string",
"Version": "string",
"CreationTimestamp": "string",
"Definition": {
  "Connectors": [
    {
      "Id": "string",
      "ConnectorArn": "string",
      "Parameters": {
        "additionalProperty0": "string",
        "additionalProperty1": "string",
        "additionalProperty2": "string"
      }
    }
  ]
},
"NextToken": "string"
}
```

GetConnectorDefinitionVersionResponse  
Information about a connector definition version.  
type: object

Arn  
The ARN of the connector definition version.  
type: string

Id  
The ID of the connector definition version.  
type: string

Version  
The version of the connector definition version.  
type: string

CreationTimestamp  
The time, in milliseconds since the epoch, when the connector definition version was created.  
type: string

Definition  
Information about the connector definition version, which is a container for connectors.  
type: object

Connectors  
A list of references to connectors in this version, with their corresponding configuration settings.  
type: array  
items: [Connector](definitions-connector.md)

Connector  
Information about a connector. Connectors run on the Greengrass core and contain built-in integration with local infrastructure, device protocols, AWS, and other cloud services.  
type: object  
required: ["Id", "ConnectorArn"]

Id  
A descriptive or arbitrary ID for the connector. This value must be unique within the connector definition version. Maximum length is 128 characters with the pattern [a-zA-Z0-9:\$1-]\$1.  
type: string

ConnectorArn  
The ARN of the connector.  
type: string

Parameters  
The parameters or configuration used by the connector.  
type: object  
additionalProperties: An object with properties of type `string` that represent the connector configuration.

NextToken  
The token for the next set of results, or `null` if there are no more results.  
type: string

# GetCoreDefinitionVersionResponse
<a name="definitions-getcoredefinitionversionresponse"></a>

```
{
"Arn": "string",
"Id": "string",
"Version": "string",
"CreationTimestamp": "string",
"Definition": {
  "Cores": [
    {
      "Id": "string",
      "ThingArn": "string",
      "CertificateArn": "string",
      "SyncShadow": true
    }
  ]
},
"NextToken": "string"
}
```

GetCoreDefinitionVersionResponse  
type: object

Arn  
The ARN of the core definition version.  
type: string

Id  
The ID of the core definition version.  
type: string

Version  
The version of the core definition version.  
type: string

CreationTimestamp  
The time, in milliseconds since the epoch, when the core definition version was created.  
type: string

Definition  
Information about a core definition version.  
type: object

Cores  
A list of cores in the core definition version.  
type: array  
items: [Core](definitions-core.md)

Core  
Information about a core.  
type: object  
required: ["Id", "ThingArn", "CertificateArn"]

Id  
A descriptive or arbitrary ID for the core. This value must be unique within the core definition version. Maximum length is 128 characters with the pattern `[a‑zA‑Z0‑9:_‑]+`.  
type: string

ThingArn  
The ARN of the thing that is the core.  
type: string

CertificateArn  
The ARN of the certificate associated with the core.  
type: string

SyncShadow  
If true, the core's local shadow is synced with the cloud automatically.  
type: boolean

NextToken  
The token for the next set of results, or `null` if there are no more results.  
type: string

# GetDeploymentStatusResponse
<a name="definitions-getdeploymentstatusresponse"></a>

```
{
"DeploymentStatus": "string",
"DeploymentType": "NewDeployment|Redeployment|ResetDeployment|ForceResetDeployment",
"UpdatedAt": "string",
"ErrorMessage": "string",
"ErrorDetails": [
  {
    "DetailedErrorCode": "string",
    "DetailedErrorMessage": "string"
  }
]
}
```

GetDeploymentStatusResponse  
Information about the status of a deployment for a group.  
type: object

DeploymentStatus  
The status of the deployment: `Building`, `InProgress`, `Success`, or `Failure`.   
type: string

DeploymentType  
The type of deployment. When used for `CreateDeployment`, only `NewDeployment` and `Redeployment` are valid.   
type: string  
enum: ["NewDeployment", "Redeployment", "ResetDeployment", "ForceResetDeployment"]

UpdatedAt  
The time, in milliseconds since the epoch, when the deployment status was updated.  
type: string

ErrorMessage  
Error message  
type: string

ErrorDetails  
A list of error details.  
type: array  
items: [ErrorDetail](definitions-errordetail.md)

ErrorDetail  
Details about the error.  
type: object

DetailedErrorCode  
A detailed error code.  
type: string

DetailedErrorMessage  
A detailed error message.  
type: string

# GetDeviceDefinitionVersionResponse
<a name="definitions-getdevicedefinitionversionresponse"></a>

```
{
"Arn": "string",
"Id": "string",
"Version": "string",
"CreationTimestamp": "string",
"Definition": {
  "Devices": [
    {
      "Id": "string",
      "ThingArn": "string",
      "CertificateArn": "string",
      "SyncShadow": true
    }
  ]
},
"NextToken": "string"
}
```

GetDeviceDefinitionVersionResponse  
type: object

Arn  
The ARN of the device definition version.  
type: string

Id  
The ID of the device definition version.  
type: string

Version  
The version of the device definition version.  
type: string

CreationTimestamp  
The time, in milliseconds since the epoch, when the device definition version was created.  
type: string

Definition  
Information about a device definition version.  
type: object

Devices  
A list of devices in the definition version.  
type: array  
items: [Device](definitions-device.md)

Device  
Information about a device.  
type: object  
required: ["Id", "ThingArn", "CertificateArn"]

Id  
A descriptive or arbitrary ID for the device. This value must be unique within the device definition version. Maximum length is 128 characters with the pattern `[a‑zA‑Z0‑9:_‑]+`.  
type: string

ThingArn  
The thing ARN of the device.  
type: string

CertificateArn  
The ARN of the certificate associated with the device.  
type: string

SyncShadow  
If true, the device's local shadow is synced with the cloud automatically.  
type: boolean

NextToken  
The token for the next set of results, or `null` if there are no more results.  
type: string

# GetFunctionDefinitionVersionResponse
<a name="definitions-getfunctiondefinitionversionresponse"></a>

```
{
"Arn": "string",
"Id": "string",
"Version": "string",
"CreationTimestamp": "string",
"Definition": {
  "DefaultConfig": {
    "Execution": {
      "IsolationMode": "GreengrassContainer|NoContainer",
      "RunAs": {
        "Uid": 1001,
        "Gid": 1002
      }
    }
  },
  "Functions": [
    {
      "Id": "string",
      "FunctionArn": "string",
      "FunctionConfiguration": {
        "Pinned": true,
        "Executable": "string",
        "ExecArgs": "string",
        "MemorySize": 0,
        "Timeout": 0,
        "EncodingType": "binary|json",
        "Environment": {
          "Variables": {
            "additionalProperty0": "string",
            "additionalProperty1": "string",
            "additionalProperty2": "string"
          },
          "ResourceAccessPolicies": [
            {
              "ResourceId": "string",
              "Permission": "ro|rw"
            }
          ],
          "AccessSysfs": true,
          "Execution": {
            "IsolationMode": "GreengrassContainer|NoContainer",
            "RunAs": {
              "Uid": 1001,
              "Gid": 1002
            }
          }
        },
        "FunctionRuntimeOverride": "string"
      }
    }
  ]
},
"NextToken": "string"
}
```

GetFunctionDefinitionVersionResponse  
Information about a function definition version.  
type: object

Arn  
The ARN of the function definition version.  
type: string

Id  
The ID of the function definition version.  
type: string

Version  
The version of the function definition version.  
type: string

CreationTimestamp  
The time, in milliseconds since the epoch, when the function definition version was created.  
type: string

Definition  
Information about a function definition version.  
type: object

DefaultConfig  
The default configuration that applies to all Lambda functions in the group. Individual Lambda functions can override these settings.  
type: object

Execution  
Configuration information that specifies how a Lambda function runs.

Functions  
A list of Lambda functions in this function definition version.  
type: array  
items: [Function](definitions-function.md)

  
Information about a Lambda function.  
type: object  
required: ["Id"]

Id  
A descriptive or arbitrary ID for the function. This value must be unique within the function definition version. Maximum length is 128 characters with the pattern `[a‑zA‑Z0‑9:_‑]+`.  
type: string

FunctionArn  
The ARN of the alias (recommended) or version of the target Lambda function.  
type: string

FunctionConfiguration  
The configuration of the Lambda function.  
type: object

Pinned  
True if the function is pinned. Pinned means the function is long-lived and starts when the core starts.  
type: boolean

Executable  
The name of the function executable.  
type: string

ExecArgs  
The execution arguments.  
type: string

MemorySize  
The memory size, in KB, required by the function. This setting does not apply and should be cleared when you run the Lambda function without containerization.  
type: integer

Timeout  
The allowed function execution time, after which Lambda should terminate the function. This timeout still applies to pinned Lambda functions for each request.  
type: integer

EncodingType  
The expected encoding type of the input payload for the function. The default is `json`.  
type: string  
enum: ["binary", "json"]

Environment  
The environment configuration of the function.  
type: object

Variables  
Environment variables for the Lambda function's configuration.  
type: object  
additionalProperties: An object with properties of type `string` that represent the environment variables.

ResourceAccessPolicies  
A list of the resources, with their permissions, to which the Lambda function is granted access. A Lambda function can have at most 10 resources. ResourceAccessPolicies applies only when you run the Lambda function in a Greengrass container.  
type: array  
items: [ResourceAccessPolicy](definitions-resourceaccesspolicy.md)

ResourceAccessPolicy  
A policy used by the function to access a resource.  
type: object  
required: ["ResourceId"]

ResourceId  
The ID of the resource. (This ID is assigned to the resource when you create the resource definiton.)  
type: string

Permission  
The type of permission a function has to access a resource.  
type: string  
enum: ["ro", "rw"]

AccessSysfs  
If true, the Lambda function is allowed to access the host's /sys folder. Use this when the Lambda function needs to read device information from /sys. This setting applies only when you run the Lambda function in a Greengrass container.  
type: boolean

Execution  
Configuration information that specifies how a Lambda function runs.   
type: object

IsolationMode  
Specifies whether the Lambda function runs in a Greengrass container (default) or without containerization. Unless your scenario requires that you run without containerization, we recommend that you run in a Greengrass container. Omit this value to run the Lambda function with the default containerization for the group.  
type: string  
enum: ["GreengrassContainer", "NoContainer"]

RunAs  
Specifies the user and group whose permissions are used when running the Lambda function. You can specify one or both values to override the default values. To minimize the risk of unintended changes or malicious attacks, we recommend that you avoid running as root unless absolutely necessary. To run as root, you must update config.json in `greengrass-root/config` to set `allowFunctionsToRunAsRoot` to `yes`.   
type: object

Uid  
The user ID whose permissions are used to run a Lambda function.  
type: integer

Gid  
The group ID whose permissions are used to run a Lambda function.  
type: integer

FunctionRuntimeOverride  
The Lambda runtime supported by Greengrass which is to be used instead of the one specified in the Lambda function.  
type: string

NextToken  
The token for the next set of results, or `null` if there are no more results.  
type: string

# GetGroupCertificateAuthorityResponse
<a name="definitions-getgroupcertificateauthorityresponse"></a>

```
{
"PemEncodedCertificate": "string",
"GroupCertificateAuthorityArn": "string",
"GroupCertificateAuthorityId": "string"
}
```

GetGroupCertificateAuthorityResponse  
Information about a certificate authority for a group.  
type: object

PemEncodedCertificate  
The PEM encoded certificate for the group.  
type: string

GroupCertificateAuthorityArn  
The ARN of the certificate authority for the group.  
type: string

GroupCertificateAuthorityId  
The ID of the certificate authority for the group.  
type: string

# GetGroupVersionResponse
<a name="definitions-getgroupversionresponse"></a>

```
{
"Arn": "string",
"Id": "string",
"Version": "string",
"CreationTimestamp": "string",
"Definition": {
  "CoreDefinitionVersionArn": "string",
  "DeviceDefinitionVersionArn": "string",
  "FunctionDefinitionVersionArn": "string",
  "SubscriptionDefinitionVersionArn": "string",
  "LoggerDefinitionVersionArn": "string",
  "ResourceDefinitionVersionArn": "string",
  "ConnectorDefinitionVersionArn": "string"
}
}
```

GetGroupVersionResponse  
Information about a group version.  
type: object

Arn  
The ARN of the group version.  
type: string

Id  
The ID of the group that the version is associated with.  
type: string

Version  
The ID of the group version.  
type: string

CreationTimestamp  
The time, in milliseconds since the epoch, when the group version was created.  
type: string

Definition  
Information about a group version.  
type: object

CoreDefinitionVersionArn  
The ARN of the core definition version for this group.  
type: string

DeviceDefinitionVersionArn  
The ARN of the client device definition version for this group.  
type: string

FunctionDefinitionVersionArn  
The ARN of the function definition version for this group.  
type: string

SubscriptionDefinitionVersionArn  
The ARN of the subscription definition version for this group.  
type: string

LoggerDefinitionVersionArn  
The ARN of the logger definition version for this group.  
type: string

ResourceDefinitionVersionArn  
The ARN of the resource definition version for this group.  
type: string

ConnectorDefinitionVersionArn  
The ARN of the connector definition version for this group.  
type: string

# GetLoggerDefinitionVersionResponse
<a name="definitions-getloggerdefinitionversionresponse"></a>

```
{
"Arn": "string",
"Id": "string",
"Version": "string",
"CreationTimestamp": "string",
"Definition": {
  "Loggers": [
    {
      "Id": "string",
      "Type": "FileSystem|AWSCloudWatch",
      "Component": "GreengrassSystem|Lambda",
      "Level": "DEBUG|INFO|WARN|ERROR|FATAL",
      "Space": 0
    }
  ]
}
}
```

GetLoggerDefinitionVersionResponse  
Information about a logger definition version.  
type: object

Arn  
The ARN of the logger definition version.  
type: string

Id  
The ID of the logger definition version.  
type: string

Version  
The version of the logger definition version.  
type: string

CreationTimestamp  
The time, in milliseconds since the epoch, when the logger definition version was created.  
type: string

Definition  
Information about a logger definition version.  
type: object

Loggers  
A list of loggers.  
type: array  
items: [Logger](definitions-logger.md)

Logger  
Information about a logger  
type: object  
required: ["Id", "Type", "Component", "Level"]

Id  
A descriptive or arbitrary ID for the logger. This value must be unique within the logger definition version. Maximum length is 128 characters with the pattern `[a‑zA‑Z0‑9:_‑]+`.  
type: string

Type  
type: string  
enum: ["FileSystem", "AWSCloudWatch"]

Component  
type: string  
enum: ["GreengrassSystem", "Lambda"]

Level  
type: string  
enum: ["DEBUG", "INFO", "WARN", "ERROR", "FATAL"]

Space  
The amount of file space, in KB, to use if the local file system is used for logging purposes.  
type: integer

# GetResourceDefinitionVersionResponse
<a name="definitions-getresourcedefinitionversionresponse"></a>

```
{
"Arn": "string",
"Id": "string",
"Version": "string",
"CreationTimestamp": "string",
"Definition": {
  "Resources": [
    {
      "Id": "string",
      "Name": "string",
      "ResourceDataContainer": {
        "*-- NOTE:": "choose one of the following --*",
        "LocalDeviceResourceData": {
          "SourcePath": "string",
          "GroupOwnerSetting": {
            "AutoAddGroupOwner": true,
            "GroupOwner": "string"
          }
        },
        "LocalVolumeResourceData": {
          "SourcePath": "string",
          "DestinationPath": "string",
          "GroupOwnerSetting": {
            "AutoAddGroupOwner": true,
            "GroupOwner": "string"
          }
        },
        "SageMakerMachineLearningModelResourceData": {
          "SageMakerJobArn": "string",
          "DestinationPath": "string",
          "OwnerSetting": {
            "GroupOwner": "string",
            "GroupPermission": "ro|rw"
          }
        },
        "S3MachineLearningModelResourceData": {
          "S3Uri": "string",
          "DestinationPath": "string",
          "OwnerSetting": {
            "GroupOwner": "string",
            "GroupPermission": "ro|rw"
          }
        },
        "SecretsManagerSecretResourceData": {
          "ARN": "string",
          "AdditionalStagingLabelsToDownload": [
            "string"
          ]
        }
      }
    }
  ]
}
}
```

GetResourceDefinitionVersionResponse  
Information about a resource definition version.  
type: object

Arn  
The ARN of the resource definition version.  
type: string

Id  
The ID of the resource definition version.  
type: string

Version  
The version of the resource definition version.  
type: string

CreationTimestamp  
The time, in milliseconds since the epoch, when the resource definition version was created.  
type: string

Definition  
Information about a resource definition version.  
type: object

Resources  
A list of resources.  
type: array  
items: [Resource](definitions-resource.md)

Resource  
Information about a resource.  
type: object  
required: ["Id", "Name", "ResourceDataContainer"]

Id  
The resource ID, used to refer to a resource in the Lambda function configuration. Maximum length is 128 characters with the pattern `[a‑zA‑Z0‑9:_‑]+`. This must be unique within a Greengrass group.  
type: string

Name  
The descriptive resource name, which is displayed on the AWS IoT Greengrass console. Maximum length is 128 characters with the pattern `[a‑zA‑Z0‑9:_‑]+`. This must be unique within a Greengrass group.  
type: string

ResourceDataContainer  
A container for resource data. The container takes only one of the following supported resource data types: `LocalDeviceResourceData`, `LocalVolumeResourceData`, `SageMakerMachineLearningModelResourceData`, `S3MachineLearningModelResourceData`, `SecretsManagerSecretResourceData`.   
type: object  
NOTE: oneOf

LocalDeviceResourceData  
Attributes that define a local device resource.  
type: object

SourcePath  
The local absolute path of the device resource. The source path for a device resource can refer only to a character device or block device under `/dev`.  
type: string

GroupOwnerSetting  
Group owner related settings for local resources.  
type: object

AutoAddGroupOwner  
If true, AWS IoT Greengrass adds the specified Linux OS group owner of the resource to the Lambda process privileges. The Lambda process then has the file access permissions of the added Linux group.  
type: boolean

GroupOwner  
The name of the Linux OS group whose privileges are added to the Lambda process. This field is optional.  
type: string

LocalVolumeResourceData  
Attributes that define a local volume resource.  
type: object

SourcePath  
The local absolute path of the volume resource on the host. The source path for a volume resource type cannot start with `/sys`.  
type: string

DestinationPath  
The absolute local path of the resource inside the Lambda environment.  
type: string

GroupOwnerSetting  
Group owner related settings for local resources.  
type: object

AutoAddGroupOwner  
If true, AWS IoT Greengrass adds the specified Linux OS group owner of the resource to the Lambda process privileges. The Lambda process then has the file access permissions of the added Linux group.  
type: boolean

GroupOwner  
The name of the Linux OS group whose privileges are added to the Lambda process. This field is optional.  
type: string

SageMakerMachineLearningModelResourceData  
Attributes that define an Amazon SageMaker machine learning resource.  
type: object

SageMakerJobArn  
The ARN of the Amazon SageMaker training job that represents the source model.  
type: string

DestinationPath  
The absolute local path of the resource inside the Lambda environment.  
type: string

OwnerSetting  
The owner setting for the downloaded machine learning resource.  
type: object  
required: ["GroupOwner", "GroupPermission"]

GroupOwner  
The group owner of the resource. This is the group ID (GID) of an existing Linux OS group on the system. The group's permissions are added to the Lambda process.  
type: string

GroupPermission  
The permissions that the group owner has to the resource. Valid values are `rw` (read-write) or `ro` (read-only).  
type: string  
enum: ["ro", "rw"]

S3MachineLearningModelResourceData  
Attributes that define an Amazon S3 machine learning resource.  
type: object

S3Uri  
The URI of the source model in an S3 bucket. The model package must be in tar.gz or .zip format.  
type: string

DestinationPath  
The absolute local path of the resource inside the Lambda environment.  
type: string

OwnerSetting  
The owner setting for the downloaded machine learning resource.  
type: object  
required: ["GroupOwner", "GroupPermission"]

GroupOwner  
The group owner of the resource. This is the group ID (GID) of an existing Linux OS group on the system. The group's permissions are added to the Lambda process.  
type: string

GroupPermission  
The permissions that the group owner has to the resource. Valid values are `rw` (read-write) or `ro` (read-only).  
type: string  
enum: ["ro", "rw"]

SecretsManagerSecretResourceData  
Attributes that define a secret resource, which references a secret from AWS Secrets Manager. AWS IoT Greengrass stores a local, encrypted copy of the secret on the Greengrass core, where it can be securely accessed by connectors and Lambda functions.  
type: object

ARN  
The ARN of the Secrets Manager secret to make available on the core. The value of the secret's latest version (represented by the `AWSCURRENT` staging label) is included by default.  
type: string

AdditionalStagingLabelsToDownload  
Optional. The staging labels in addition to `AWSCURRENT` whose values you want to make available on the core.  
type: array  


# GetServiceRoleForAccountResponse
<a name="definitions-getserviceroleforaccountresponse"></a>

```
{
"AssociatedAt": "string",
"RoleArn": "string"
}
```

GetServiceRoleForAccountResponse  
type: object

AssociatedAt  
The time when the service role was associated with the account.  
type: string

RoleArn  
The ARN of the role associated with the account.  
type: string

# GetSubscriptionDefinitionVersionResponse
<a name="definitions-getsubscriptiondefinitionversionresponse"></a>

```
{
"Arn": "string",
"Id": "string",
"Version": "string",
"CreationTimestamp": "string",
"Definition": {
  "Subscriptions": [
    {
      "Id": "string",
      "Source": "string",
      "Subject": "string",
      "Target": "string"
    }
  ]
},
"NextToken": "string"
}
```

GetSubscriptionDefinitionVersionResponse  
Information about a subscription definition version.  
type: object

Arn  
The ARN of the subscription definition version.  
type: string

Id  
The ID of the subscription definition version.  
type: string

Version  
The version of the subscription definition version.  
type: string

CreationTimestamp  
The time, in milliseconds since the epoch, when the subscription definition version was created.  
type: string

Definition  
Information about a subscription definition version.  
type: object

Subscriptions  
A list of subscriptions.  
type: array  
items: [Subscription](definitions-subscription.md)

Subscription  
Information about a subscription.  
type: object  
required: ["Id", "Source", "Subject", "Target"]

Id  
A descriptive or arbitrary ID for the subscription. This value must be unique within the subscription definition version. Maximum length is 128 characters with the pattern `[a‑zA‑Z0‑9:_‑]+`.  
type: string

Source  
The source of the subscription. Can be a thing ARN, the ARN of a Lambda function alias (recommended) or version, a connector ARN, 'cloud' (which represents AWS IoT), or 'GGShadowService'. If you specify a Lambda function, this ARN should match the ARN used to add the function to the Greengrass group.  
type: string

Subject  
The MQTT topic used to route the message.  
type: string

Target  
Where the message is sent. Can be a thing ARN, the ARN of a Lambda function alias (recommended) or version, a connector ARN, 'cloud' (which represents AWS IoT), or 'GGShadowService'. If you specify a Lambda function, this ARN should match the ARN used to add the function to the Greengrass group.  
type: string

NextToken  
The token for the next set of results, or `null` if there are no more results.  
type: string

# GetThingRuntimeConfigurationResponse
<a name="definitions-getthingruntimeconfigurationresponse"></a>

```
{
  "RuntimeConfiguration": {
    "TelemetryConfiguration": {
      "Telemetry": "On|Off",
      "ConfigurationSyncStatus": "InSync|OutOfSync"
    }
  }
}
```

GetThingRuntimeConfigurationResponse  
The runtime configuration for a thing.  
type: object

RuntimeConfiguration  
Runtime configuration for a thing.  
type: object  
items: [TelemetryConfiguration](definitions-telemetryconfiguration.md)

TelemetryConfiguration  
The configuration settings to run telemetry.  
type: object  
required: ["Telemetry"]

Telemetry  
The configuration setting to turn on or turn off telemetry.  
type: string  
enum: ["On", "Off"]

ConfigurationSyncStatus  
The synchronization status of the device-reported configuration with the desired configuration.  
type: string  
enum: ["InSync", "OutOfSync"]

# Group
<a name="definitions-associateroletogroupresponse"></a>

```
{
"AssociatedAt": "string"
}
```

Group  
type: object

AssociatedAt  
The time, in milliseconds since the epoch, when the role ARN was associated with the group.  
type: string

# Group Certificate Authority Properties
<a name="definitions-groupcertificateauthorityproperties"></a>

```
{
"GroupCertificateAuthorityId": "string",
"GroupCertificateAuthorityArn": "string"
}
```

Group Certificate Authority Properties  
Information about a certificate authority for a group.  
type: object

GroupCertificateAuthorityId  
The ID of the certificate authority for the group.  
type: string

GroupCertificateAuthorityArn  
The ARN of the certificate authority for the group.  
type: string

# GroupCertificateConfiguration
<a name="definitions-groupcertificateconfiguration"></a>

```
{
"GroupId": "string",
"CertificateAuthorityExpiryInMilliseconds": "string",
"CertificateExpiryInMilliseconds": "string"
}
```

GroupCertificateConfiguration  
Information about a group certificate configuration.  
type: object

GroupId  
The ID of the group certificate configuration.  
type: string

CertificateAuthorityExpiryInMilliseconds  
The amount of time, in milliseconds, before the certificate authority expires.  
type: string

CertificateExpiryInMilliseconds  
The amount of time, in milliseconds, before the certificate expires.  
type: string

# GroupInformation
<a name="definitions-groupinformation"></a>

```
{
"Name": "string",
"Id": "string",
"Arn": "string",
"LastUpdatedTimestamp": "string",
"CreationTimestamp": "string",
"LatestVersion": "string",
"LatestVersionArn": "string"
}
```

GroupInformation  
Information about a group.  
type: object

Name  
The name of the group.  
type: string

Id  
The ID of the group.  
type: string

Arn  
The ARN of the group.  
type: string

LastUpdatedTimestamp  
The time, in milliseconds since the epoch, when the group was last updated.  
type: string

CreationTimestamp  
The time, in milliseconds since the epoch, when the group was created.  
type: string

LatestVersion  
The ID of the latest version associated with the group.  
type: string

LatestVersionArn  
The ARN of the latest version associated with the group.  
type: string

# GroupOwnerSetting
<a name="definitions-groupownersetting"></a>

```
{
"AutoAddGroupOwner": true,
"GroupOwner": "string"
}
```

GroupOwnerSetting  
Group owner related settings for local resources.  
type: object

AutoAddGroupOwner  
If true, AWS IoT Greengrass adds the specified Linux OS group owner of the resource to the Lambda process privileges. The Lambda process then has the file access permissions of the added Linux group.  
type: boolean

GroupOwner  
The name of the Linux OS group whose privileges are added to the Lambda process. This field is optional.  
type: string

# GroupVersion
<a name="definitions-groupversion"></a>

```
{
"CoreDefinitionVersionArn": "string",
"DeviceDefinitionVersionArn": "string",
"FunctionDefinitionVersionArn": "string",
"SubscriptionDefinitionVersionArn": "string",
"LoggerDefinitionVersionArn": "string",
"ResourceDefinitionVersionArn": "string",
"ConnectorDefinitionVersionArn": "string"
}
```

GroupVersion  
Information about a group version.  
type: object

CoreDefinitionVersionArn  
The ARN of the core definition version for this group.  
type: string

DeviceDefinitionVersionArn  
The ARN of the client device definition version for this group.  
type: string

FunctionDefinitionVersionArn  
The ARN of the function definition version for this group.  
type: string

SubscriptionDefinitionVersionArn  
The ARN of the subscription definition version for this group.  
type: string

LoggerDefinitionVersionArn  
The ARN of the logger definition version for this group.  
type: string

ResourceDefinitionVersionArn  
The ARN of the resource definition version for this group.  
type: string

ConnectorDefinitionVersionArn  
The ARN of the connector definition version for this group.  
type: string

# IDList
<a name="definitions-idlist"></a>

```
{
"Ids": [
  "string"
]
}
```

IDList  
type: object

Ids  
A list of IDs.  
type: array  


# ListBulkDeploymentDetailedReportsResponse
<a name="definitions-listbulkdeploymentdetailedreportsresponse"></a>

```
{
"Deployments": [
  {
    "DeploymentId": "string",
    "DeploymentArn": "string",
    "GroupArn": "string",
    "DeploymentType": "NewDeployment|Redeployment|ResetDeployment|ForceResetDeployment",
    "CreatedAt": "string",
    "DeploymentStatus": "string",
    "ErrorMessage": "string",
    "ErrorDetails": [
      {
        "DetailedErrorCode": "string",
        "DetailedErrorMessage": "string"
      }
    ]
  }
],
"NextToken": "string"
}
```

ListBulkDeploymentDetailedReportsResponse  
type: object

Deployments  
type: array  
items: [BulkDeploymentResult](definitions-bulkdeploymentresult.md)

BulkDeploymentResult  
Information about an individual group deployment in a bulk deployment operation.  
type: object

DeploymentId  
The ID of the group deployment.  
type: string

DeploymentArn  
The ARN of the group deployment.  
type: string

GroupArn  
The ARN of the Greengrass group.  
type: string

DeploymentType  
The type of deployment. When used for `CreateDeployment`, only `NewDeployment` and `Redeployment` are valid.   
type: string  
enum: ["NewDeployment", "Redeployment", "ResetDeployment", "ForceResetDeployment"]

CreatedAt  
The time, in ISO format, when the deployment was created.  
type: string

DeploymentStatus  
The current status of the group deployment: `Building`, `InProgress`, `Success`, or `Failure`.   
type: string

ErrorMessage  
The error message for a failed deployment.  
type: string

ErrorDetails  
A list of error details.  
type: array  
items: [ErrorDetail](definitions-errordetail.md)

ErrorDetail  
Details about the error.  
type: object

DetailedErrorCode  
A detailed error code.  
type: string

DetailedErrorMessage  
A detailed error message.  
type: string

NextToken  
The token for the next set of results, or `null` if there are no more results.  
in: query  
type: string

# ListBulkDeploymentsResponse
<a name="definitions-listbulkdeploymentsresponse"></a>

```
{
"BulkDeployments": [
  {
    "BulkDeploymentId": "string",
    "BulkDeploymentArn": "string",
    "CreatedAt": "string"
  }
],
"NextToken": "string"
}
```

ListBulkDeploymentsResponse  
type: object

BulkDeployments  
type: array  
items: [BulkDeployment](definitions-bulkdeployment.md)

BulkDeployment  
Information about a bulk deployment. You cannot start a new bulk deployment while another one is still running or in a non-terminal state.  
type: object

BulkDeploymentId  
The ID of the bulk deployment.  
type: string

BulkDeploymentArn  
The ARN of the bulk deployment.  
type: string

CreatedAt  
The time, in ISO format, when the deployment was created.  
type: string

NextToken  
The token for the next set of results, or `null` if there are no more results.  
in: query  
type: string

# ListDefinitionsResponse
<a name="definitions-listdefinitionsresponse"></a>

```
{
"Definitions": [
  {
    "Name": "string",
    "Id": "string",
    "Arn": "string",
    "tags": {
      "additionalProperty0": "string",
      "additionalProperty1": "string",
      "additionalProperty2": "string"
    },
    "LastUpdatedTimestamp": "string",
    "CreationTimestamp": "string",
    "LatestVersion": "string",
    "LatestVersionArn": "string"
  }
],
"NextToken": "string"
}
```

ListDefinitionsResponse  
A list of definitions.  
type: object

Definitions  
Information about a definition.  
type: array  
items: [DefinitionInformation](definitions-definitioninformation.md)

DefinitionInformation  
Information about a definition.  
type: object

Name  
The name of the definition.  
type: string

Id  
The ID of the definition.  
type: string

Arn  
The ARN of the definition.  
type: string

tags  
The resource tags.  
type: object  
additionalProperties: The key-value pair for the resource tag. Type: string

LastUpdatedTimestamp  
The time, in milliseconds since the epoch, when the definition was last updated.  
type: string

CreationTimestamp  
The time, in milliseconds since the epoch, when the definition was created.  
type: string

LatestVersion  
The ID of the latest version associated with the definition.  
type: string

LatestVersionArn  
The ARN of the latest version associated with the definition.  
type: string

NextToken  
The token for the next set of results, or `null` if there are no more results.  
type: string

# ListDeploymentsRequest
<a name="definitions-listdeploymentsrequest"></a>

```
{
"MaxResults": 0,
"NextToken": "string"
}
```

ListDeploymentsRequest  
type: object

MaxResults  
The maximum number of results to be returned per request.  
in: query  
type: integer  
min: 1  
max: 250

NextToken  
The token to retrieve the next set of results.  
in: query  
type: string

# ListDeploymentsResponse
<a name="definitions-listdeploymentsresponse"></a>

```
{
"Deployments": [
  {
    "GroupArn": "string",
    "DeploymentId": "string",
    "DeploymentArn": "string",
    "DeploymentType": "NewDeployment|Redeployment|ResetDeployment|ForceResetDeployment",
    "CreatedAt": "string"
  }
],
"NextToken": "string"
}
```

ListDeploymentsResponse  
type: object

Deployments  
type: array  
items: [Deployment](definitions-deployment.md)

Deployment  
Information about a deployment.  
type: object

GroupArn  
The ARN of the group for this deployment.  
type: string

DeploymentId  
The ID of the deployment.  
type: string

DeploymentArn  
The ARN of the deployment.  
type: string

DeploymentType  
The type of deployment. When used for `CreateDeployment`, only `NewDeployment` and `Redeployment` are valid.   
type: string  
enum: ["NewDeployment", "Redeployment", "ResetDeployment", "ForceResetDeployment"]

CreatedAt  
The time, in milliseconds since the epoch, when the deployment was created.  
type: string

NextToken  
The token for the next set of results, or `null` if there are no more results.  
in: query  
type: string

# ListGroupCertificateAuthoritiesResponse
<a name="definitions-listgroupcertificateauthoritiesresponse"></a>

```
{
"GroupCertificateAuthorities": [
  {
    "GroupCertificateAuthorityId": "string",
    "GroupCertificateAuthorityArn": "string"
  }
]
}
```

ListGroupCertificateAuthoritiesResponse  
type: object

GroupCertificateAuthorities  
A list of certificate authorities associated with the group.  
type: array  
items: [GroupCertificateAuthorityProperties](definitions-groupcertificateauthorityproperties.md)

Group Certificate Authority Properties  
Information about a certificate authority for a group.  
type: object

GroupCertificateAuthorityId  
The ID of the certificate authority for the group.  
type: string

GroupCertificateAuthorityArn  
The ARN of the certificate authority for the group.  
type: string

# ListGroupsResponse
<a name="definitions-listgroupsresponse"></a>

```
{
"Groups": [
  {
    "Name": "string",
    "Id": "string",
    "Arn": "string",
    "LastUpdatedTimestamp": "string",
    "CreationTimestamp": "string",
    "LatestVersion": "string",
    "LatestVersionArn": "string"
  }
],
"NextToken": "string"
}
```

ListGroupsResponse  
type: object

Groups  
Information about a group.  
type: array  
items: [GroupInformation](definitions-groupinformation.md)

GroupInformation  
Information about a group.  
type: object

Name  
The name of the group.  
type: string

Id  
The ID of the group.  
type: string

Arn  
The ARN of the group.  
type: string

LastUpdatedTimestamp  
The time, in milliseconds since the epoch, when the group was last updated.  
type: string

CreationTimestamp  
The time, in milliseconds since the epoch, when the group was created.  
type: string

LatestVersion  
The ID of the latest version associated with the group.  
type: string

LatestVersionArn  
The ARN of the latest version associated with the group.  
type: string

NextToken  
The token for the next set of results, or `null` if there are no more results.  
type: string

# ListVersionsResponse
<a name="definitions-listversionsresponse"></a>

```
{
"Versions": [
  {
    "Arn": "string",
    "Id": "string",
    "Version": "string",
    "CreationTimestamp": "string"
  }
],
"NextToken": "string"
}
```

ListVersionsResponse  
A list of versions.  
type: object

Versions  
Information about a version.  
type: array  
items: [VersionInformation](definitions-versioninformation.md)

VersionInformation  
Information about a version.  
type: object

Arn  
The ARN of the version.  
type: string

Id  
The ID of the parent definition that the version is associated with.  
type: string

Version  
The ID of the version.  
type: string

CreationTimestamp  
The time, in milliseconds since the epoch, when the version was created.  
type: string

NextToken  
The token for the next set of results, or `null` if there are no more results.  
type: string

# LocalDeviceResourceData
<a name="definitions-localdeviceresourcedata"></a>

```
{
"SourcePath": "string",
"GroupOwnerSetting": {
  "AutoAddGroupOwner": true,
  "GroupOwner": "string"
}
}
```

LocalDeviceResourceData  
Attributes that define a local device resource.  
type: object

SourcePath  
The local absolute path of the device resource. The source path for a device resource can refer only to a character device or block device under `/dev`.  
type: string

GroupOwnerSetting  
Group owner related settings for local resources.  
type: object

AutoAddGroupOwner  
If true, AWS IoT Greengrass adds the specified Linux OS group owner of the resource to the Lambda process privileges. The Lambda process then has the file access permissions of the added Linux group.  
type: boolean

GroupOwner  
The name of the Linux OS group whose privileges are added to the Lambda process. This field is optional.  
type: string

# LocalVolumeResourceData
<a name="definitions-localvolumeresourcedata"></a>

```
{
"SourcePath": "string",
"DestinationPath": "string",
"GroupOwnerSetting": {
  "AutoAddGroupOwner": true,
  "GroupOwner": "string"
}
}
```

LocalVolumeResourceData  
Attributes that define a local volume resource.  
type: object

SourcePath  
The local absolute path of the volume resource on the host. The source path for a volume resource type cannot start with `/sys`.  
type: string

DestinationPath  
The absolute local path of the resource inside the Lambda environment.  
type: string

GroupOwnerSetting  
Group owner related settings for local resources.  
type: object

AutoAddGroupOwner  
If true, AWS IoT Greengrass adds the specified Linux OS group owner of the resource to the Lambda process privileges. The Lambda process then has the file access permissions of the added Linux group.  
type: boolean

GroupOwner  
The name of the Linux OS group whose privileges are added to the Lambda process. This field is optional.  
type: string

# Logger
<a name="definitions-logger"></a>

```
{
"Id": "string",
"Type": "FileSystem|AWSCloudWatch",
"Component": "GreengrassSystem|Lambda",
"Level": "DEBUG|INFO|WARN|ERROR|FATAL",
"Space": 0
}
```

Logger  
Information about a logger  
type: object  
required: ["Id", "Type", "Component", "Level"]

Id  
A descriptive or arbitrary ID for the logger. This value must be unique within the logger definition version. Maximum length is 128 characters with the pattern `[a‑zA‑Z0‑9:_‑]+`.  
type: string

Type  
type: string  
enum: ["FileSystem", "AWSCloudWatch"]

Component  
type: string  
enum: ["GreengrassSystem", "Lambda"]

Level  
type: string  
enum: ["DEBUG", "INFO", "WARN", "ERROR", "FATAL"]

Space  
The amount of file space, in KB, to use if the local file system is used for logging purposes.  
type: integer

# LoggerComponent
<a name="definitions-loggercomponent"></a>

```
{
}
```

  
type: string  
enum: ["GreengrassSystem", "Lambda"]

# LoggerDefinitionVersion
<a name="definitions-loggerdefinitionversion"></a>

```
{
"Loggers": [
  {
    "Id": "string",
    "Type": "FileSystem|AWSCloudWatch",
    "Component": "GreengrassSystem|Lambda",
    "Level": "DEBUG|INFO|WARN|ERROR|FATAL",
    "Space": 0
  }
]
}
```

LoggerDefinitionVersion  
Information about a logger definition version.  
type: object

Loggers  
A list of loggers.  
type: array  
items: [Logger](definitions-logger.md)

Logger  
Information about a logger  
type: object  
required: ["Id", "Type", "Component", "Level"]

Id  
A descriptive or arbitrary ID for the logger. This value must be unique within the logger definition version. Maximum length is 128 characters with the pattern `[a‑zA‑Z0‑9:_‑]+`.  
type: string

Type  
type: string  
enum: ["FileSystem", "AWSCloudWatch"]

Component  
type: string  
enum: ["GreengrassSystem", "Lambda"]

Level  
type: string  
enum: ["DEBUG", "INFO", "WARN", "ERROR", "FATAL"]

Space  
The amount of file space, in KB, to use if the local file system is used for logging purposes.  
type: integer

# LoggerLevel
<a name="definitions-loggerlevel"></a>

```
{
}
```

  
type: string  
enum: ["DEBUG", "INFO", "WARN", "ERROR", "FATAL"]

# LoggerType
<a name="definitions-loggertype"></a>

```
{
}
```

  
type: string  
enum: ["FileSystem", "AWSCloudWatch"]

# Permission
<a name="definitions-permission"></a>

```
{
}
```

  
The type of permission a function has to access a resource.  
type: string  
enum: ["ro", "rw"]

# ResetDeploymentsRequest
<a name="definitions-resetdeploymentsrequest"></a>

```
{
"Force": true
}
```

ResetDeploymentsRequest  
Information about a group reset request.  
type: object

Force  
If true, performs a best-effort only core reset.  
type: boolean

# ResetDeploymentsResponse
<a name="definitions-resetdeploymentsresponse"></a>

```
{
"DeploymentArn": "string",
"DeploymentId": "string"
}
```

ResetDeploymentsResponse  
type: object

DeploymentArn  
The ARN of the deployment.  
type: string

DeploymentId  
The ID of the deployment.  
type: string

# Resource
<a name="definitions-resource"></a>

```
{
"Id": "string",
"Name": "string",
"ResourceDataContainer": {
  "*-- NOTE:": "choose one of the following --*",
  "LocalDeviceResourceData": {
    "SourcePath": "string",
    "GroupOwnerSetting": {
      "AutoAddGroupOwner": true,
      "GroupOwner": "string"
    }
  },
  "LocalVolumeResourceData": {
    "SourcePath": "string",
    "DestinationPath": "string",
    "GroupOwnerSetting": {
      "AutoAddGroupOwner": true,
      "GroupOwner": "string"
    }
  },
  "SageMakerMachineLearningModelResourceData": {
    "SageMakerJobArn": "string",
    "DestinationPath": "string",
    "OwnerSetting": {
      "GroupOwner": "string",
      "GroupPermission": "ro|rw"
    }
  },
  "S3MachineLearningModelResourceData": {
    "S3Uri": "string",
    "DestinationPath": "string",
    "OwnerSetting": {
      "GroupOwner": "string",
      "GroupPermission": "ro|rw"
    }
  },
  "SecretsManagerSecretResourceData": {
    "ARN": "string",
    "AdditionalStagingLabelsToDownload": [
      "string"
    ]
  }
}
}
```

Resource  
Information about a resource.  
type: object  
required: ["Id", "Name", "ResourceDataContainer"]

Id  
The resource ID, used to refer to a resource in the Lambda function configuration. Maximum length is 128 characters with the pattern `[a‑zA‑Z0‑9:_‑]+`. This must be unique within a Greengrass group.  
type: string

Name  
The descriptive resource name, which is displayed on the AWS IoT Greengrass console. Maximum length is 128 characters with the pattern `[a‑zA‑Z0‑9:_‑]+`. This must be unique within a Greengrass group.  
type: string

ResourceDataContainer  
A container for resource data. The container takes only one of the following supported resource data types: `LocalDeviceResourceData`, `LocalVolumeResourceData`, `SageMakerMachineLearningModelResourceData`, `S3MachineLearningModelResourceData`, `SecretsManagerSecretResourceData`.   
type: object  
NOTE: oneOf

LocalDeviceResourceData  
Attributes that define a local device resource.  
type: object

SourcePath  
The local absolute path of the device resource. The source path for a device resource can refer only to a character device or block device under `/dev`.  
type: string

GroupOwnerSetting  
Group owner related settings for local resources.  
type: object

AutoAddGroupOwner  
If true, AWS IoT Greengrass adds the specified Linux OS group owner of the resource to the Lambda process privileges. The Lambda process then has the file access permissions of the added Linux group.  
type: boolean

GroupOwner  
The name of the Linux OS group whose privileges are added to the Lambda process. This field is optional.  
type: string

LocalVolumeResourceData  
Attributes that define a local volume resource.  
type: object

SourcePath  
The local absolute path of the volume resource on the host. The source path for a volume resource type cannot start with `/sys`.  
type: string

DestinationPath  
The absolute local path of the resource inside the Lambda environment.  
type: string

GroupOwnerSetting  
Group owner related settings for local resources.  
type: object

AutoAddGroupOwner  
If true, AWS IoT Greengrass adds the specified Linux OS group owner of the resource to the Lambda process privileges. The Lambda process then has the file access permissions of the added Linux group.  
type: boolean

GroupOwner  
The name of the Linux OS group whose privileges are added to the Lambda process. This field is optional.  
type: string

SageMakerMachineLearningModelResourceData  
Attributes that define an Amazon SageMaker machine learning resource.  
type: object

SageMakerJobArn  
The ARN of the Amazon SageMaker training job that represents the source model.  
type: string

DestinationPath  
The absolute local path of the resource inside the Lambda environment.  
type: string

OwnerSetting  
The owner setting for the downloaded machine learning resource.  
type: object  
required: ["GroupOwner", "GroupPermission"]

GroupOwner  
The group owner of the resource. This is the group ID (GID) of an existing Linux OS group on the system. The group's permissions are added to the Lambda process.  
type: string

GroupPermission  
The permissions that the group owner has to the resource. Valid values are `rw` (read-write) or `ro` (read-only).  
type: string  
enum: ["ro", "rw"]

S3MachineLearningModelResourceData  
Attributes that define an Amazon S3 machine learning resource.  
type: object

S3Uri  
The URI of the source model in an S3 bucket. The model package must be in tar.gz or .zip format.  
type: string

DestinationPath  
The absolute local path of the resource inside the Lambda environment.  
type: string

OwnerSetting  
The owner setting for the downloaded machine learning resource.  
type: object  
required: ["GroupOwner", "GroupPermission"]

GroupOwner  
The group owner of the resource. This is the group ID (GID) of an existing Linux OS group on the system. The group's permissions are added to the Lambda process.  
type: string

GroupPermission  
The permissions that the group owner has to the resource. Valid values are `rw` (read-write) or `ro` (read-only).  
type: string  
enum: ["ro", "rw"]

SecretsManagerSecretResourceData  
Attributes that define a secret resource, which references a secret from AWS Secrets Manager. AWS IoT Greengrass stores a local, encrypted copy of the secret on the Greengrass core, where it can be securely accessed by connectors and Lambda functions.  
type: object

ARN  
The ARN of the Secrets Manager secret to make available on the core. The value of the secret's latest version (represented by the `AWSCURRENT` staging label) is included by default.  
type: string

AdditionalStagingLabelsToDownload  
Optional. The staging labels in addition to `AWSCURRENT` whose values you want to make available on the core.  
type: array  


# ResourceAccessPolicy
<a name="definitions-resourceaccesspolicy"></a>

```
{
"ResourceId": "string",
"Permission": "ro|rw"
}
```

ResourceAccessPolicy  
A policy used by the function to access a resource.  
type: object  
required: ["ResourceId"]

ResourceId  
The ID of the resource. (This ID is assigned to the resource when you create the resource definiton.)  
type: string

Permission  
The type of permission a function has to access a resource.  
type: string  
enum: ["ro", "rw"]

# ResourceDataContainer
<a name="definitions-resourcedatacontainer"></a>

```
{
"*-- NOTE:": "choose one of the following --*",
"LocalDeviceResourceData": {
  "SourcePath": "string",
  "GroupOwnerSetting": {
    "AutoAddGroupOwner": true,
    "GroupOwner": "string"
  }
},
"LocalVolumeResourceData": {
  "SourcePath": "string",
  "DestinationPath": "string",
  "GroupOwnerSetting": {
    "AutoAddGroupOwner": true,
    "GroupOwner": "string"
  }
},
"SageMakerMachineLearningModelResourceData": {
  "SageMakerJobArn": "string",
  "DestinationPath": "string",
  "OwnerSetting": {
    "GroupOwner": "string",
    "GroupPermission": "ro|rw"
  }
},
"S3MachineLearningModelResourceData": {
  "S3Uri": "string",
  "DestinationPath": "string",
  "OwnerSetting": {
    "GroupOwner": "string",
    "GroupPermission": "ro|rw"
  }
},
"SecretsManagerSecretResourceData": {
  "ARN": "string",
  "AdditionalStagingLabelsToDownload": [
    "string"
  ]
}
}
```

  
A container for resource data. The container takes only one of the following supported resource data types: `LocalDeviceResourceData`, `LocalVolumeResourceData`, `SageMakerMachineLearningModelResourceData`, `S3MachineLearningModelResourceData`, `SecretsManagerSecretResourceData`.   
type: object  
NOTE: oneOf

LocalDeviceResourceData  
Attributes that define a local device resource.  
type: object

SourcePath  
The local absolute path of the device resource. The source path for a device resource can refer only to a character device or block device under `/dev`.  
type: string

GroupOwnerSetting  
Group owner related settings for local resources.  
type: object

AutoAddGroupOwner  
If true, AWS IoT Greengrass adds the specified Linux OS group owner of the resource to the Lambda process privileges. The Lambda process then has the file access permissions of the added Linux group.  
type: boolean

GroupOwner  
The name of the Linux OS group whose privileges are added to the Lambda process. This field is optional.  
type: string

LocalVolumeResourceData  
Attributes that define a local volume resource.  
type: object

SourcePath  
The local absolute path of the volume resource on the host. The source path for a volume resource type cannot start with `/sys`.  
type: string

DestinationPath  
The absolute local path of the resource inside the Lambda environment.  
type: string

GroupOwnerSetting  
Group owner related settings for local resources.  
type: object

AutoAddGroupOwner  
If true, AWS IoT Greengrass adds the specified Linux OS group owner of the resource to the Lambda process privileges. The Lambda process then has the file access permissions of the added Linux group.  
type: boolean

GroupOwner  
The name of the Linux OS group whose privileges are added to the Lambda process. This field is optional.  
type: string

SageMakerMachineLearningModelResourceData  
Attributes that define an Amazon SageMaker machine learning resource.  
type: object

SageMakerJobArn  
The ARN of the Amazon SageMaker training job that represents the source model.  
type: string

DestinationPath  
The absolute local path of the resource inside the Lambda environment.  
type: string

OwnerSetting  
The owner setting for the downloaded machine learning resource.  
type: object  
required: ["GroupOwner", "GroupPermission"]

GroupOwner  
The group owner of the resource. This is the group ID (GID) of an existing Linux OS group on the system. The group's permissions are added to the Lambda process.  
type: string

GroupPermission  
The permissions that the group owner has to the resource. Valid values are `rw` (read-write) or `ro` (read-only).  
type: string  
enum: ["ro", "rw"]

S3MachineLearningModelResourceData  
Attributes that define an Amazon S3 machine learning resource.  
type: object

S3Uri  
The URI of the source model in an S3 bucket. The model package must be in tar.gz or .zip format.  
type: string

DestinationPath  
The absolute local path of the resource inside the Lambda environment.  
type: string

OwnerSetting  
The owner setting for the downloaded machine learning resource.  
type: object  
required: ["GroupOwner", "GroupPermission"]

GroupOwner  
The group owner of the resource. This is the group ID (GID) of an existing Linux OS group on the system. The group's permissions are added to the Lambda process.  
type: string

GroupPermission  
The permissions that the group owner has to the resource. Valid values are `rw` (read-write) or `ro` (read-only).  
type: string  
enum: ["ro", "rw"]

SecretsManagerSecretResourceData  
Attributes that define a secret resource, which references a secret from AWS Secrets Manager. AWS IoT Greengrass stores a local, encrypted copy of the secret on the Greengrass core, where it can be securely accessed by connectors and Lambda functions.  
type: object

ARN  
The ARN of the Secrets Manager secret to make available on the core. The value of the secret's latest version (represented by the `AWSCURRENT` staging label) is included by default.  
type: string

AdditionalStagingLabelsToDownload  
Optional. The staging labels in addition to `AWSCURRENT` whose values you want to make available on the core.  
type: array  


# ResourceDefinitionVersion
<a name="definitions-resourcedefinitionversion"></a>

```
{
"Resources": [
  {
    "Id": "string",
    "Name": "string",
    "ResourceDataContainer": {
      "*-- NOTE:": "choose one of the following --*",
      "LocalDeviceResourceData": {
        "SourcePath": "string",
        "GroupOwnerSetting": {
          "AutoAddGroupOwner": true,
          "GroupOwner": "string"
        }
      },
      "LocalVolumeResourceData": {
        "SourcePath": "string",
        "DestinationPath": "string",
        "GroupOwnerSetting": {
          "AutoAddGroupOwner": true,
          "GroupOwner": "string"
        }
      },
      "SageMakerMachineLearningModelResourceData": {
        "SageMakerJobArn": "string",
        "DestinationPath": "string",
        "OwnerSetting": {
          "GroupOwner": "string",
          "GroupPermission": "ro|rw"
        }
      },
      "S3MachineLearningModelResourceData": {
        "S3Uri": "string",
        "DestinationPath": "string",
        "OwnerSetting": {
          "GroupOwner": "string",
          "GroupPermission": "ro|rw"
        }
      },
      "SecretsManagerSecretResourceData": {
        "ARN": "string",
        "AdditionalStagingLabelsToDownload": [
          "string"
        ]
      }
    }
  }
]
}
```

ResourceDefinitionVersion  
Information about a resource definition version.  
type: object

Resources  
A list of resources.  
type: array  
items: [Resource](definitions-resource.md)

Resource  
Information about a resource.  
type: object  
required: ["Id", "Name", "ResourceDataContainer"]

Id  
The resource ID, used to refer to a resource in the Lambda function configuration. Maximum length is 128 characters with the pattern `[a‑zA‑Z0‑9:_‑]+`. This must be unique within a Greengrass group.  
type: string

Name  
The descriptive resource name, which is displayed on the AWS IoT Greengrass console. Maximum length is 128 characters with the pattern `[a‑zA‑Z0‑9:_‑]+`. This must be unique within a Greengrass group.  
type: string

ResourceDataContainer  
A container for resource data. The container takes only one of the following supported resource data types: `LocalDeviceResourceData`, `LocalVolumeResourceData`, `SageMakerMachineLearningModelResourceData`, `S3MachineLearningModelResourceData`, `SecretsManagerSecretResourceData`.   
type: object  
NOTE: oneOf

LocalDeviceResourceData  
Attributes that define a local device resource.  
type: object

SourcePath  
The local absolute path of the device resource. The source path for a device resource can refer only to a character device or block device under `/dev`.  
type: string

GroupOwnerSetting  
Group owner related settings for local resources.  
type: object

AutoAddGroupOwner  
If true, AWS IoT Greengrass adds the specified Linux OS group owner of the resource to the Lambda process privileges. The Lambda process then has the file access permissions of the added Linux group.  
type: boolean

GroupOwner  
The name of the Linux OS group whose privileges are added to the Lambda process. This field is optional.  
type: string

LocalVolumeResourceData  
Attributes that define a local volume resource.  
type: object

SourcePath  
The local absolute path of the volume resource on the host. The source path for a volume resource type cannot start with `/sys`.  
type: string

DestinationPath  
The absolute local path of the resource inside the Lambda environment.  
type: string

GroupOwnerSetting  
Group owner related settings for local resources.  
type: object

AutoAddGroupOwner  
If true, AWS IoT Greengrass adds the specified Linux OS group owner of the resource to the Lambda process privileges. The Lambda process then has the file access permissions of the added Linux group.  
type: boolean

GroupOwner  
The name of the Linux OS group whose privileges are added to the Lambda process. This field is optional.  
type: string

SageMakerMachineLearningModelResourceData  
Attributes that define an Amazon SageMaker machine learning resource.  
type: object

SageMakerJobArn  
The ARN of the Amazon SageMaker training job that represents the source model.  
type: string

DestinationPath  
The absolute local path of the resource inside the Lambda environment.  
type: string

OwnerSetting  
The owner setting for the downloaded machine learning resource.  
type: object  
required: ["GroupOwner", "GroupPermission"]

GroupOwner  
The group owner of the resource. This is the group ID (GID) of an existing Linux OS group on the system. The group's permissions are added to the Lambda process.  
type: string

GroupPermission  
The permissions that the group owner has to the resource. Valid values are `rw` (read-write) or `ro` (read-only).  
type: string  
enum: ["ro", "rw"]

S3MachineLearningModelResourceData  
Attributes that define an Amazon S3 machine learning resource.  
type: object

S3Uri  
The URI of the source model in an S3 bucket. The model package must be in tar.gz or .zip format.  
type: string

DestinationPath  
The absolute local path of the resource inside the Lambda environment.  
type: string

OwnerSetting  
The owner setting for the downloaded machine learning resource.  
type: object  
required: ["GroupOwner", "GroupPermission"]

GroupOwner  
The group owner of the resource. This is the group ID (GID) of an existing Linux OS group on the system. The group's permissions are added to the Lambda process.  
type: string

GroupPermission  
The permissions that the group owner has to the resource. Valid values are `rw` (read-write) or `ro` (read-only).  
type: string  
enum: ["ro", "rw"]

SecretsManagerSecretResourceData  
Attributes that define a secret resource, which references a secret from AWS Secrets Manager. AWS IoT Greengrass stores a local, encrypted copy of the secret on the Greengrass core, where it can be securely accessed by connectors and Lambda functions.  
type: object

ARN  
The ARN of the Secrets Manager secret to make available on the core. The value of the secret's latest version (represented by the `AWSCURRENT` staging label) is included by default.  
type: string

AdditionalStagingLabelsToDownload  
Optional. The staging labels in addition to `AWSCURRENT` whose values you want to make available on the core.  
type: array  


# ResourceDownloadOwnerSetting
<a name="definitions-resourcedownloadownersetting"></a>

```
{
"GroupOwner": "string",
"GroupPermission": "ro|rw"
}
```

ResourceDownloadOwnerSetting  
The owner setting for the downloaded machine learning resource.  
type: object  
required: ["GroupOwner", "GroupPermission"]

GroupOwner  
The group owner of the resource. This is the group ID (GID) of an existing Linux OS group on the system. The group's permissions are added to the Lambda process.  
type: string

GroupPermission  
The permissions that the group owner has to the resource. Valid values are `rw` (read-write) or `ro` (read-only).  
type: string  
enum: ["ro", "rw"]

# RuntimeConfiguration
<a name="definitions-runtimeconfiguration"></a>

```
{
  "TelemetryConfiguration": {
    "Telemetry": "On|Off",
    "ConfigurationSyncStatus": "InSync|OutOfSync"
  }
}
```

RuntimeConfiguration  
Runtime configuration for a thing.  
type: object  
items: [TelemetryConfiguration](definitions-telemetryconfiguration.md)

TelemetryConfiguration  
The configuration settings to run telemetry.  
type: object  
required: ["Telemetry"]

Telemetry  
The configuration setting to turn on or turn off telemetry.  
type: string  
enum: ["On", "Off"]

ConfigurationSyncStatus  
The synchronization status of the device-reported configuration with the desired configuration.  
type: string  
enum: ["InSync", "OutOfSync"]

# RuntimeConfigurationUpdate
<a name="definitions-runtimeconfigurationupdate"></a>

```
{
  "TelemetryConfiguration": {
    "Telemetry": "On|Off"
  }
}
```

RuntimeConfigurationUpdate  
Runtime configuration for a thing.  
type: object

[TelemetryConfiguration](definitions-telemetryconfigurationupdate.md)  
The configuration settings to run telemetry.  
type: object  
required: ["Telemetry"]

Telemetry  
The configuration setting to turn on or turn off telemetry.  
type: string  
enum: ["On", "Off"]

# S3MachineLearningModelResourceData
<a name="definitions-s3machinelearningmodelresourcedata"></a>

```
{
"S3Uri": "string",
"DestinationPath": "string",
"OwnerSetting": {
  "GroupOwner": "string",
  "GroupPermission": "ro|rw"
}
}
```

S3MachineLearningModelResourceData  
Attributes that define an Amazon S3 machine learning resource.  
type: object

S3Uri  
The URI of the source model in an S3 bucket. The model package must be in tar.gz or .zip format.  
type: string

DestinationPath  
The absolute local path of the resource inside the Lambda environment.  
type: string

OwnerSetting  
The owner setting for the downloaded machine learning resource.  
type: object  
required: ["GroupOwner", "GroupPermission"]

GroupOwner  
The group owner of the resource. This is the group ID (GID) of an existing Linux OS group on the system. The group's permissions are added to the Lambda process.  
type: string

GroupPermission  
The permissions that the group owner has to the resource. Valid values are `rw` (read-write) or `ro` (read-only).  
type: string  
enum: ["ro", "rw"]

# S3UrlSignerRole
<a name="definitions-s3urlsignerrole"></a>

```
{
}
```

  
The IAM role that Greengrass uses to create presigned URLs that point to the update artifact.  
type: string

# SageMakerMachineLearningModelResourceData
<a name="definitions-sagemakermachinelearningmodelresourcedata"></a>

```
{
"SageMakerJobArn": "string",
"DestinationPath": "string",
"OwnerSetting": {
  "GroupOwner": "string",
  "GroupPermission": "ro|rw"
}
}
```

SageMakerMachineLearningModelResourceData  
Attributes that define an Amazon SageMaker machine learning resource.  
type: object

SageMakerJobArn  
The ARN of the Amazon SageMaker training job that represents the source model.  
type: string

DestinationPath  
The absolute local path of the resource inside the Lambda environment.  
type: string

OwnerSetting  
The owner setting for the downloaded machine learning resource.  
type: object  
required: ["GroupOwner", "GroupPermission"]

GroupOwner  
The group owner of the resource. This is the group ID (GID) of an existing Linux OS group on the system. The group's permissions are added to the Lambda process.  
type: string

GroupPermission  
The permissions that the group owner has to the resource. Valid values are `rw` (read-write) or `ro` (read-only).  
type: string  
enum: ["ro", "rw"]

# SecretsManagerSecretResourceData
<a name="definitions-secretsmanagersecretresourcedata"></a>

```
{
"ARN": "string",
"AdditionalStagingLabelsToDownload": [
  "string"
]
}
```

SecretsManagerSecretResourceData  
Attributes that define a secret resource, which references a secret from AWS Secrets Manager. AWS IoT Greengrass stores a local, encrypted copy of the secret on the Greengrass core, where it can be securely accessed by connectors and Lambda functions.  
type: object

ARN  
The ARN of the Secrets Manager secret to make available on the core. The value of the secret's latest version (represented by the `AWSCURRENT` staging label) is included by default.  
type: string

AdditionalStagingLabelsToDownload  
Optional. The staging labels in addition to `AWSCURRENT` whose values you want to make available on the core.  
type: array  


# SoftwareToUpdate
<a name="definitions-softwaretoupdate"></a>

```
{
}
```

  
The piece of software on the Greengrass core that will be updated.  
type: string  
enum: ["core", "ota\$1agent"]

# StartBulkDeploymentRequest
<a name="definitions-startbulkdeploymentrequest"></a>

```
{
"InputFileUri": "string",
"ExecutionRoleArn": "string",
"tags": {
  "additionalProperty0": "string",
  "additionalProperty1": "string",
  "additionalProperty2": "string"
}
}
```

StartBulkDeploymentRequest  
Information about a bulk deployment. You cannot start a new bulk deployment while another one is still running or in a non-terminal state.  
type: object  
required: ["InputFileUri", "ExecutionRoleArn"]

InputFileUri  
The URI of the input file in the S3 bucket. The execution role must have `getObject` permissions on this bucket to access the input file. The input file is a JSON-serialized, line-delimited file with UTF-8 encoding that provides a list of group and version IDs and the deployment type. This file must be less than 100 MB. Currently, AWS IoT Greengrass supports only `NewDeployment` deployment types.   

```
{"GroupId":"groupId1", "GroupVersionId":"groupVersionId1", "DeploymentType":"NewDeployment"}
{"GroupId":"groupId2", "GroupVersionId":"groupVersionId2", "DeploymentType":"NewDeployment"}
{"GroupId":"groupId3", "GroupVersionId":"groupVersionId3", "DeploymentType":"NewDeployment"}
...
```
For more information, including the input file format, see [Create Bulk Deployments For Groups](https://docs.aws.amazon.com/greengrass/latest/developerguide/bulk-deploy-cli.html).  
type: string

ExecutionRoleArn  
The ARN of the execution role to associate with the bulk deployment operation. This IAM role must allow the `greengrass:CreateDeployment` action for all group versions that are listed in the input file. This IAM role must have access to the S3 bucket that contains the input file.  
type: string

tags  
The resource tags.  
type: object  
additionalProperties: The key-value pair for the resource tag. Type: string

# StartBulkDeploymentResponse
<a name="definitions-startbulkdeploymentresponse"></a>

```
{
"BulkDeploymentId": "string",
"BulkDeploymentArn": "string"
}
```

StartBulkDeploymentResponse  
type: object

BulkDeploymentId  
The ID of the bulk deployment.  
type: string

BulkDeploymentArn  
The ARN of the bulk deployment.  
type: string

# Subscription
<a name="definitions-subscription"></a>

```
{
"Id": "string",
"Source": "string",
"Subject": "string",
"Target": "string"
}
```

Subscription  
Information about a subscription.  
type: object  
required: ["Id", "Source", "Subject", "Target"]

Id  
A descriptive or arbitrary ID for the subscription. This value must be unique within the subscription definition version. Maximum length is 128 characters with the pattern `[a‑zA‑Z0‑9:_‑]+`.  
type: string

Source  
The source of the subscription. Can be a thing ARN, the ARN of a Lambda function alias (recommended) or version, a connector ARN, 'cloud' (which represents AWS IoT), or 'GGShadowService'. If you specify a Lambda function, this ARN should match the ARN used to add the function to the Greengrass group.  
type: string

Subject  
The MQTT topic used to route the message.  
type: string

Target  
Where the message is sent. Can be a thing ARN, the ARN of a Lambda function alias (recommended) or version, a connector ARN, 'cloud' (which represents AWS IoT), or 'GGShadowService'. If you specify a Lambda function, this ARN should match the ARN used to add the function to the Greengrass group.  
type: string

# SubscriptionDefinitionVersion
<a name="definitions-subscriptiondefinitionversion"></a>

```
{
"Subscriptions": [
  {
    "Id": "string",
    "Source": "string",
    "Subject": "string",
    "Target": "string"
  }
]
}
```

SubscriptionDefinitionVersion  
Information about a subscription definition version.  
type: object

Subscriptions  
A list of subscriptions.  
type: array  
items: [Subscription](definitions-subscription.md)

Subscription  
Information about a subscription.  
type: object  
required: ["Id", "Source", "Subject", "Target"]

Id  
A descriptive or arbitrary ID for the subscription. This value must be unique within the subscription definition version. Maximum length is 128 characters with the pattern `[a‑zA‑Z0‑9:_‑]+`.  
type: string

Source  
The source of the subscription. Can be a thing ARN, the ARN of a Lambda function alias (recommended) or version, a connector ARN, 'cloud' (which represents AWS IoT), or 'GGShadowService'. If you specify a Lambda function, this ARN should match the ARN used to add the function to the Greengrass group.  
type: string

Subject  
The MQTT topic used to route the message.  
type: string

Target  
Where the message is sent. Can be a thing ARN, the ARN of a Lambda function alias (recommended) or version, a connector ARN, 'cloud' (which represents AWS IoT), or 'GGShadowService'. If you specify a Lambda function, this ARN should match the ARN used to add the function to the Greengrass group.  
type: string

# TelemetryConfiguration
<a name="definitions-telemetryconfiguration"></a>

```
{
  "Telemetry": "On|Off",
  "ConfigurationSyncStatus": "InSync|OutOfSync"
}
```

TelemetryConfiguration  
The configuration settings to run telemetry.  
type: object  
required: ["Telemetry"]

Telemetry  
The configuration setting to turn on or turn off telemetry.  
type: string  
enum: ["On", "Off"]

ConfigurationSyncStatus  
The synchronization status of the device-reported configuration with the desired configuration.  
type: string  
enum: ["InSync", "OutOfSync"]

# TelemetryConfigurationUpdate
<a name="definitions-telemetryconfigurationupdate"></a>

```
{
  "Telemetry": "On|Off"
}
```

TelemetryConfigurationUpdate  
The configuration settings to run telemetry.  
type: object  
required: ["Telemetry"]

Telemetry  
The configuration setting to turn on or turn off telemetry.  
type: string  
enum: ["On", "Off"]

# UpdateAgentLogLevel
<a name="definitions-updateagentloglevel"></a>

```
{
}
```

  
The minimum level of log statements that should be logged by the OTA agent during an update.  
type: string  
enum: ["NONE", "TRACE", "DEBUG", "VERBOSE", "INFO", "WARN", "ERROR", "FATAL"]

# UpdateConnectivityInfoRequest
<a name="definitions-updateconnectivityinforequest"></a>

```
{
"ConnectivityInfo": [
  {
    "Id": "string",
    "HostAddress": "string",
    "PortNumber": 0x01,
    "Metadata": "string"
  }
]
}
```

  
Information required to update a Greengrass core's connectivity.

ConnectivityInfo  
A list of connectivity info.  
type: array  
items: [ConnectivityInfo](definitions-connectivityinfo.md)

  
Information about a Greengrass core's connectivity.  
required: ["Id", "HostAddress"]

Id  
The ID of the connectivity information.  
type: string

HostAddress  
The endpoint for the Greengrass core. Can be an IP address or DNS address.  
type: string

PortNumber  
The port of the Greengrass core, usually 8883.  
type: integer  
format: int32

Metadata  
Metadata for this endpoint.  
type: string

# UpdateConnectivityInfoResponse
<a name="definitions-updateconnectivityinforesponse"></a>

```
{
"message": "string",
"Version": "string"
}
```

message  
A message about the connectivity info update request.  
type: string

Version  
The new version of the connectivity info.  
type: string

# UpdateTargets
<a name="definitions-updatetargets"></a>

```
{
}
```

  
The ARNs of the targets (IoT things or IoT thing groups) that this update is applied to.  
type: array  


# UpdateTargetsArchitecture
<a name="definitions-updatetargetsarchitecture"></a>

```
{
}
```

  
The architecture of the cores that are the targets of an update.  
type: string  
enum: ["armv6l", "armv7l", "x86\$164", "aarch64"]

# UpdateTargetsOperatingSystem
<a name="definitions-updatetargetsoperatingsystem"></a>

```
{
}
```

  
The operating system of the cores that are the targets of an update.  
type: string  
enum: ["ubuntu", "raspbian", "amazon\$1linux", "openwrt"]

# VersionInformation
<a name="definitions-versioninformation"></a>

```
{
"Arn": "string",
"Id": "string",
"Version": "string",
"CreationTimestamp": "string"
}
```

VersionInformation  
Information about a version.  
type: object

Arn  
The ARN of the version.  
type: string

Id  
The ID of the parent definition that the version is associated with.  
type: string

Version  
The ID of the version.  
type: string

CreationTimestamp  
The time, in milliseconds since the epoch, when the version was created.  
type: string

# Versions
<a name="definitions-versions"></a>

```
{
"Versions": [
  {
    "Arn": "string",
    "Id": "string",
    "Version": "string",
    "CreationTimestamp": "string"
  }
]
}
```

Versions  
type: object

Versions  
A list of versions.  
type: array  
items: [VersionInformation](definitions-versioninformation.md)

VersionInformation  
Information about a version.  
type: object

Arn  
The ARN of the version.  
type: string

Id  
The ID of the parent definition that the version is associated with.  
type: string

Version  
The ID of the version.  
type: string

CreationTimestamp  
The time, in milliseconds since the epoch, when the version was created.  
type: string

# tags
<a name="definitions-tags"></a>

```
{
"additionalProperty0": "string",
"additionalProperty1": "string",
"additionalProperty2": "string"
}
```

  
The resource tags.  
type: object  
additionalProperties: The key-value pair for the resource tag. Type: string

# updateGroupCertificateConfigurationRequest
<a name="definitions-updategroupcertificateconfigurationrequest"></a>

```
{
"CertificateExpiryInMilliseconds": "string"
}
```

updateGroupCertificateConfigurationRequest  
type: object  
required: ["CertificateExpiryInMilliseconds"]

CertificateExpiryInMilliseconds  
The amount of time, in milliseconds, before the certificate expires.  
type: string