AWS IoT Greengrass Version 1 entered the extended life phase on June 30, 2023. For more information, see the AWS IoT Greengrass V1 maintenance policy. After this date, AWS IoT Greengrass V1 won't release updates that provide features, enhancements, bug fixes, or security patches. Devices that run on AWS IoT Greengrass V1 won't be disrupted and will continue to operate and to connect to the cloud. We strongly recommend that you migrate to AWS IoT Greengrass Version 2, which adds significant new features and support for additional platforms.
/greengrass/definition/devices/DeviceDefinitionId/versions
POST
POST
/greengrass/definition/devices/
DeviceDefinitionId
/versions
Operation ID: CreateDeviceDefinitionVersion
Creates a version of a device definition that has already been defined.
Produces: application/json
Body Parameters
- CreateDeviceDefinitionVersionRequestBody
-
where used: body; required: true
{ "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
- 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
Header Parameters
- X-Amzn-Client-Token
-
A client token used to correlate requests and responses.
where used: header; required: false
type: string
Path Parameters
- DeviceDefinitionId
-
The ID of the device definition.
where used: path; required: true
type: string
CLI
aws greengrass create-device-definition-version \ --device-definition-id <value> \ [--devices <value>] \ [--amzn-client-token <value>] \ [--cli-input-json <value>] \ [--generate-cli-skeleton]
cli-input-json format:
{
"DeviceDefinitionId": "string",
"Devices": [
{
"Id": "string",
"ThingArn": "string",
"CertificateArn": "string",
"SyncShadow": "boolean"
}
],
"AmznClientToken": "string"
}
Responses
- 200 (CreateDeviceDefinitionVersionResponse)
-
{ "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
- 400
-
Invalid request.
{ "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
- ErrorDetail
-
Details about the error.
type: object
- DetailedErrorCode
-
A detailed error code.
type: string
- DetailedErrorMessage
-
A detailed error message.
type: string
GET
GET
/greengrass/definition/devices/
DeviceDefinitionId
/versions
Operation ID: ListDeviceDefinitionVersions
Lists the versions of a device definition.
Produces: application/json
Path Parameters
- DeviceDefinitionId
-
The ID of the device definition.
where used: path; required: true
type: string
Query Parameters
- NextToken
-
The token for the next set of results, or
null
if there are no more results.where used: query; required: false
type: string
- MaxResults
-
The maximum number of results to be returned per request.
where used: query; required: false
type: integer
CLI
aws greengrass list-device-definition-versions \ --device-definition-id <value> \ [--next-token <value>] \ [--max-results <value>] \ [--cli-input-json <value>] \ [--generate-cli-skeleton]
cli-input-json format:
{
"DeviceDefinitionId": "string",
"NextToken": "string",
"MaxResults": "integer"
}
Responses
- 200 (ListDeviceDefinitionVersionsResponse)
-
{ "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
- 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
- 400
-
Invalid request.
{ "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
- ErrorDetail
-
Details about the error.
type: object
- DetailedErrorCode
-
A detailed error code.
type: string
- DetailedErrorMessage
-
A detailed error message.
type: string