CreateComponentType - AWS IoT TwinMaker

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

CreateComponentType

创建组件类型。

请求语法

POST /workspaces/workspaceId/component-types/componentTypeId HTTP/1.1 Content-type: application/json { "componentTypeName": "string", "compositeComponentTypes": { "string" : { "componentTypeId": "string" } }, "description": "string", "extendsFrom": [ "string" ], "functions": { "string" : { "implementedBy": { "isNative": boolean, "lambda": { "arn": "string" } }, "requiredProperties": [ "string" ], "scope": "string" } }, "isSingleton": boolean, "propertyDefinitions": { "string" : { "configuration": { "string" : "string" }, "dataType": { "allowedValues": [ { "booleanValue": boolean, "doubleValue": number, "expression": "string", "integerValue": number, "listValue": [ "DataValue" ], "longValue": number, "mapValue": { "string" : "DataValue" }, "relationshipValue": { "targetComponentName": "string", "targetEntityId": "string" }, "stringValue": "string" } ], "nestedType": "DataType", "relationship": { "relationshipType": "string", "targetComponentTypeId": "string" }, "type": "string", "unitOfMeasure": "string" }, "defaultValue": { "booleanValue": boolean, "doubleValue": number, "expression": "string", "integerValue": number, "listValue": [ "DataValue" ], "longValue": number, "mapValue": { "string" : "DataValue" }, "relationshipValue": { "targetComponentName": "string", "targetEntityId": "string" }, "stringValue": "string" }, "displayName": "string", "isExternalId": boolean, "isRequiredInEntity": boolean, "isStoredExternally": boolean, "isTimeSeries": boolean } }, "propertyGroups": { "string" : { "groupType": "string", "propertyNames": [ "string" ] } }, "tags": { "string" : "string" } }

URI 请求参数

请求使用以下 URI 参数。

componentTypeId

组件类型的 ID。

长度限制:最小长度为 1。最大长度为 256。

模式:[a-zA-Z_\.\-0-9:]+

必需:是

workspaceId

包含组件类型的工作区 ID。

长度限制:长度下限为 1。长度上限为 128。

模式:[a-zA-Z_0-9][a-zA-Z_\-0-9]*[a-zA-Z0-9]+

必需:是

请求体

请求接受采用 JSON 格式的以下数据。

componentTypeName

组件类型的友好名称。

类型:字符串

长度约束:最小长度为 0。最大长度为 256。

模式:.*[^\u0000-\u001F\u007F]*.*

必需:否

compositeComponentTypes

这是一个将字符串映射到 componentTypecompositeComponentTypes 的对象。CompositeComponentTypecomponentTypeId 引用。

类型:字符串到 CompositeComponentTypeRequest 对象的映射

密钥长度限制:最小长度为 1。最大长度为 256。

密钥模式:[a-zA-Z_\-0-9]+

必需:否

description

组件类型的描述。

类型:字符串

长度约束:最小长度为 0。最大长度为 2048。

模式:.*

必需:否

extendsFrom

指定要扩展的父组件类型。

类型:字符串数组

长度限制:最小长度为 1。最大长度为 256。

模式:[a-zA-Z_\.\-0-9:]+

必需:否

functions

将字符串映射到组件类型中的函数的对象。映射中的每个字符串对于该对象都必须是唯一的。

类型:字符串到 FunctionRequest 对象的映射

密钥长度限制:最小长度为 1。最大长度为 256。

密钥模式:[a-zA-Z_\-0-9]+

必需:否

isSingleton

指定一个实体是否可以有多个此类型的组件的布尔值。

类型:布尔值

必需:否

propertyDefinitions

将字符串映射到组件类型中的属性定义的对象。映射中的每个字符串对于该对象都必须是唯一的。

类型:字符串到 PropertyDefinitionRequest 对象的映射

密钥长度限制:最小长度为 1。最大长度为 256。

密钥模式:[a-zA-Z_\-0-9]+

必需:否

propertyGroups

类型:字符串到 PropertyGroupRequest 对象的映射

密钥长度限制:最小长度为 1。最大长度为 256。

密钥模式:[a-zA-Z_\-0-9]+

必需:否

tags

可用于管理组件类型的元数据。

类型:字符串到字符串映射

映射条目:最低 0 项。最多 50 项。

密钥长度限制:最小长度为 1。长度上限为 128。

键模式:([\p{L}\p{Z}\p{N}_.:/=+\-@]*)

值长度限制:最小长度为 1。最大长度为 256。

价值模式:.*

必需:否

响应语法

HTTP/1.1 200 Content-type: application/json { "arn": "string", "creationDateTime": number, "state": "string" }

响应元素

如果此操作成功,则该服务将会发送回 HTTP 200 响应。

服务以 JSON 格式返回以下数据。

arn

组件类型的 ARN。

类型:字符串

长度约束:最小长度为 20。最大长度为 2048。

模式:arn:((aws)|(aws-cn)|(aws-us-gov)):iottwinmaker:[a-z0-9-]+:[0-9]{12}:[\/a-zA-Z0-9_\-\.:]+

creationDateTime

创建实体的日期和时间。

类型:时间戳

state

组件类型的当前状态。

类型:字符串

有效值:CREATING | UPDATING | DELETING | ACTIVE | ERROR

错误

有关所有操作的常见错误信息,请参阅常见错误

AccessDeniedException

访问被拒绝。

HTTP 状态代码:403

ConflictException

发生冲突。

HTTP 状态代码:409

InternalServerException

出现意外错误。

HTTP 状态代码:500

ServiceQuotaExceededException

已超出服务限额。

HTTP 状态代码:402

ThrottlingException

速率超过限制。

HTTP 状态代码:429

ValidationException

失败

HTTP 状态代码:400

另请参阅

有关在特定语言的 AWS SDK 中使用此 API 的更多信息,请参阅以下内容: