CreateDeviceDefinition - Amazon IoT Greengrass
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China.

Amazon IoT Greengrass Version 1 no longer receives feature updates, and will receive only security patches and bug fixes until June 30, 2023. For more information, see the Amazon IoT Greengrass V1 maintenance policy. We strongly recommend that you migrate to Amazon IoT Greengrass Version 2, which adds significant new features and support for additional platforms.

CreateDeviceDefinition

Creates a client device definition. You can provide the initial version of the device definition now or use CreateDeviceDefinitionVersion later.

URI: POST /greengrass/definition/devices

Produces: application/json

CLI:

aws greengrass create-device-definition \ [--name <value>] \ [--initial-version <value>] \ [--tags <value>] \ [--amzn-client-token <value>] \ [--cli-input-json <value>] \ [--generate-cli-skeleton]

cli-input-json format:

{ "Name": "string", "InitialVersion": { "Devices": [ { "Id": "string", "ThingArn": "string", "CertificateArn": "string", "SyncShadow": "boolean" } ] }, "tags": { "additionalProperty0": "string", "additionalProperty1": "string", "additionalProperty2": "string" }, "AmznClientToken": "string" }

Parameters:

CreateDeviceDefinitionRequestBody

Information required to create a device definition.

where used: body; required: true

{ "Name": "string", "InitialVersion": { "Devices": [ { "Id": "string", "ThingArn": "string", "CertificateArn": "string", "SyncShadow": true } ] }, "tags": { "additionalProperty0": "string", "additionalProperty1": "string", "additionalProperty2": "string" } }

schema:

Name

The name of the device definition.

type: string

InitialVersion

Information about a device definition version.

type: object

Devices

A list of client devices in the definition version.

type: array

items: Device

Device

Information about a client device.

type: object

required: ["Id", "ThingArn", "CertificateArn"]

Id

A descriptive or arbitrary ID for the client 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 client device.

type: string

CertificateArn

The ARN of the certificate associated with the client device.

type: string

SyncShadow

If true, the client device's local shadow is synced with the cloud automatically.

type: boolean

tags

The resource tags.

type: object

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

X-Amzn-Client-Token

A client token used to correlate requests and responses.

where used: header; required: false

type: string

Responses:

200 (CreateDeviceDefinitionResponse)

DefinitionInformation

{ "Name": "string", "Id": "string", "Arn": "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

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

400

Invalid request.

GeneralError

{ "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