CARVIEW |
CreateComponentType
Creates a component type.
Request Syntax
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 Request Parameters
The request uses the following URI parameters.
- componentTypeId
-
The ID of the component type.
Length Constraints: Minimum length of 1. Maximum length of 256.
Pattern:
[a-zA-Z_\.\-0-9:]+
Required: Yes
- workspaceId
-
The ID of the workspace that contains the component type.
Length Constraints: Minimum length of 1. Maximum length of 128.
Pattern:
[a-zA-Z_0-9][a-zA-Z_\-0-9]*[a-zA-Z0-9]+
Required: Yes
Request Body
The request accepts the following data in JSON format.
- componentTypeName
-
A friendly name for the component type.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 256.
Pattern:
.*[^\u0000-\u001F\u007F]*.*
Required: No
- compositeComponentTypes
-
This is an object that maps strings to
compositeComponentTypes
of thecomponentType
.CompositeComponentType
is referenced bycomponentTypeId
.Type: String to CompositeComponentTypeRequest object map
Key Length Constraints: Minimum length of 1. Maximum length of 256.
Key Pattern:
[a-zA-Z_\-0-9]+
Required: No
- description
-
The description of the component type.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 2048.
Pattern:
.*
Required: No
- extendsFrom
-
Specifies the parent component type to extend.
Type: Array of strings
Length Constraints: Minimum length of 1. Maximum length of 256.
Pattern:
[a-zA-Z_\.\-0-9:]+
Required: No
- functions
-
An object that maps strings to the functions in the component type. Each string in the mapping must be unique to this object.
Type: String to FunctionRequest object map
Key Length Constraints: Minimum length of 1. Maximum length of 256.
Key Pattern:
[a-zA-Z_\-0-9]+
Required: No
- isSingleton
-
A Boolean value that specifies whether an entity can have more than one component of this type.
Type: Boolean
Required: No
- propertyDefinitions
-
An object that maps strings to the property definitions in the component type. Each string in the mapping must be unique to this object.
Type: String to PropertyDefinitionRequest object map
Key Length Constraints: Minimum length of 1. Maximum length of 256.
Key Pattern:
[a-zA-Z_\-0-9]+
Required: No
- propertyGroups
-
Type: String to PropertyGroupRequest object map
Key Length Constraints: Minimum length of 1. Maximum length of 256.
Key Pattern:
[a-zA-Z_\-0-9]+
Required: No
- tags
-
Metadata that you can use to manage the component type.
Type: String to string map
Map Entries: Minimum number of 0 items. Maximum number of 50 items.
Key Length Constraints: Minimum length of 1. Maximum length of 128.
Key Pattern:
([\p{L}\p{Z}\p{N}_.:/=+\-@]*)
Value Length Constraints: Minimum length of 1. Maximum length of 256.
Value Pattern:
.*
Required: No
Response Syntax
HTTP/1.1 200
Content-type: application/json
{
"arn": "string",
"creationDateTime": number,
"state": "string"
}
Response Elements
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in JSON format by the service.
- arn
-
The ARN of the component type.
Type: String
Length Constraints: Minimum length of 20. Maximum length of 2048.
Pattern:
arn:((aws)|(aws-cn)|(aws-us-gov)):iottwinmaker:[a-z0-9-]+:[0-9]{12}:[\/a-zA-Z0-9_\-\.:]+
- creationDateTime
-
The date and time when the entity was created.
Type: Timestamp
- state
-
The current state of the component type.
Type: String
Valid Values:
CREATING | UPDATING | DELETING | ACTIVE | ERROR
Errors
For information about the errors that are common to all actions, see Common Errors.
- AccessDeniedException
-
Access is denied.
HTTP Status Code: 403
- ConflictException
-
A conflict occurred.
HTTP Status Code: 409
- InternalServerException
-
An unexpected error has occurred.
HTTP Status Code: 500
- ServiceQuotaExceededException
-
The service quota was exceeded.
HTTP Status Code: 402
- ThrottlingException
-
The rate exceeds the limit.
HTTP Status Code: 429
- ValidationException
-
Failed
HTTP Status Code: 400
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
Thanks for letting us know we're doing a good job!
If you've got a moment, please tell us what we did right so we can do more of it.
Thanks for letting us know this page needs work. We're sorry we let you down.
If you've got a moment, please tell us how we can make the documentation better.