Menu
AWS Greengrass
API Reference

CreateResourceDefinition

Creates a resource definition which contains a list of resources to be used in a group. You can create an initial version of the definition by providing a list of resources now, or use CreateResourceDefinitionVersion later.

URI: POST /greengrass/definition/resources

Produces: application/json

CLI:

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

cli-input-json format:

Copy
{ "Name": "string", "InitialVersion": { "Resources": [ { "Id": "string", "Name": "string", "ResourceDataContainer": { "LocalDeviceResourceData": { "SourcePath": "string", "GroupOwnerSetting": { "AutoAddGroupOwner": "boolean", "GroupOwner": "string" } }, *-- or --* "LocalVolumeResourceData": { "SourcePath": "string", "DestinationPath": "string", "GroupOwnerSetting": { "AutoAddGroupOwner": "boolean", "GroupOwner": "string" } }, *-- or --* "SageMakerMachineLearningModelResourceData": { "SageMakerJobArn": "string", "DestinationPath": "string" }, *-- or --* "S3MachineLearningModelResourceData": { "S3Uri": "string", "DestinationPath": "string" } } } ] }, "AmznClientToken": "string" }

Parameters:

CreateResourceDefinitionRequestBody

where used: body; required: true

Copy
{ "Name": "string", "InitialVersion": { "Resources": [ { "Id": "string", "Name": "string", "ResourceDataContainer": { "LocalDeviceResourceData": { "SourcePath": "string", "GroupOwnerSetting": { "AutoAddGroupOwner": true, "GroupOwner": "string" } }, *-- or --* "LocalVolumeResourceData": { "SourcePath": "string", "DestinationPath": "string", "GroupOwnerSetting": { "AutoAddGroupOwner": true, "GroupOwner": "string" } }, *-- or --* "SageMakerMachineLearningModelResourceData": { "SageMakerJobArn": "string", "DestinationPath": "string" }, *-- or --* "S3MachineLearningModelResourceData": { "S3Uri": "string", "DestinationPath": "string" } } } ] } }

schema:

Name

The name of the resource definition.

type: string

InitialVersion

Information about a resource definition version.

type: object

Resources

A list of resources.

type: array

items: Resource

Resource

Information about a resource.

type: object

required: ["Id", "ResourceDataContainer"]

Id

The resource ID.

type: string

Name

A descriptive resource name.

type: string

ResourceDataContainer

Should contain one of LocalDeviceResourceData, LocalVolumeResourceData, SageMakerMachineLearningModelResourceData or S3MachineLearningModelResourceData.

type: object

LocalDeviceResourceData

Attributes that define a local device resource.

type: object

SourcePath

The local source path of the resource.

type: string

GroupOwnerSetting

Group owner related settings for local resources.

type: object

AutoAddGroupOwner

If true, the auto added group owner is enabled.

type: boolean

GroupOwner

The name of the group owner.

type: string

LocalVolumeResourceData

Attributes that define a Local Volume Resource.

type: object

SourcePath

The local source path of the resource.

type: string

DestinationPath

The local destination path of the resource.

type: string

GroupOwnerSetting

Group owner related settings for local resources.

type: object

AutoAddGroupOwner

If true, the auto added group owner is enabled.

type: boolean

GroupOwner

The name of the group owner.

type: string

SageMakerMachineLearningModelResourceData

Attributes that define the AWS SageMaker Machine Learning Model Resource.

type: object

SageMakerJobArn

The ARN of an AWS SageMaker training job.

type: string

DestinationPath

Local destination path of the AWS SageMaker Machine Learning resource.

type: string

S3MachineLearningModelResourceData

Attributes that define the S3 Machine Learning Model Resource.

type: object

S3Uri

The URI of an S3 object.

type: string

DestinationPath

Local destination path of the S3 Machine Learning resource.

type: string

X-Amzn-Client-Token

A client token used to make idempotent requests. Provide a unique token to help prevent duplicate updates from being created due to internal retries.

where used: header; required: false

type: string

Responses:

200 (CreateResourceDefinitionResponse)

DefinitionInformation

Copy
{ "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 latest version of the definition.

type: string

LatestVersionArn

The ARN of the latest version of the definition.

type: string

400

invalid request

GeneralError

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

General error information.

type: object

required: ["Message"]

Message

A message containing 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