NAME
Paws::IoTThingsGraph - Perl Interface to AWS AWS IoT Things Graph
SYNOPSIS
use Paws;
my $obj = Paws->service('IoTThingsGraph');
my $res = $obj->Method(
Arg1 => $val1,
Arg2 => [ 'V1', 'V2' ],
# if Arg3 is an object, the HashRef will be used as arguments to the constructor
# of the arguments type
Arg3 => { Att1 => 'Val1' },
# if Arg4 is an array of objects, the HashRefs will be passed as arguments to
# the constructor of the arguments type
Arg4 => [ { Att1 => 'Val1' }, { Att1 => 'Val2' } ],
);
DESCRIPTION
AWS IoT Things Graph
AWS IoT Things Graph provides an integrated set of tools that enable developers to connect devices and services that use different standards, such as units of measure and communication protocols. AWS IoT Things Graph makes it possible to build IoT applications with little to no code by connecting devices and services and defining how they interact at an abstract level.
For more information about how AWS IoT Things Graph works, see the User Guide (https://docs.aws.amazon.com/thingsgraph/latest/ug/iot-tg-whatis.html).
For the AWS API documentation, see https://docs.aws.amazon.com/goto/WebAPI/iotthingsgraph-2018-09-06
METHODS
AssociateEntityToThing
Each argument is described in detail in: Paws::IoTThingsGraph::AssociateEntityToThing
Returns: a Paws::IoTThingsGraph::AssociateEntityToThingResponse instance
Associates a device with a concrete thing that is in the user's registry.
A thing can be associated with only one device at a time. If you associate a thing with a new device id, its previous association will be removed.
CreateFlowTemplate
- Definition => Paws::IoTThingsGraph::DefinitionDocument
- [CompatibleNamespaceVersion => Int]
Each argument is described in detail in: Paws::IoTThingsGraph::CreateFlowTemplate
Returns: a Paws::IoTThingsGraph::CreateFlowTemplateResponse instance
Creates a workflow template. Workflows can be created only in the user's namespace. (The public namespace contains only entities.) The workflow can contain only entities in the specified namespace. The workflow is validated against the entities in the latest version of the user's namespace unless another namespace version is specified in the request.
CreateSystemInstance
- Definition => Paws::IoTThingsGraph::DefinitionDocument
- Target => Str
- [FlowActionsRoleArn => Str]
- [GreengrassGroupName => Str]
- [MetricsConfiguration => Paws::IoTThingsGraph::MetricsConfiguration]
- [S3BucketName => Str]
- [Tags => ArrayRef[Paws::IoTThingsGraph::Tag]]
Each argument is described in detail in: Paws::IoTThingsGraph::CreateSystemInstance
Returns: a Paws::IoTThingsGraph::CreateSystemInstanceResponse instance
Creates a system instance.
This action validates the system instance, prepares the deployment-related resources. For Greengrass deployments, it updates the Greengrass group that is specified by the greengrassGroupName
parameter. It also adds a file to the S3 bucket specified by the s3BucketName
parameter. You need to call DeploySystemInstance
after running this action.
For Greengrass deployments, since this action modifies and adds resources to a Greengrass group and an S3 bucket on the caller's behalf, the calling identity must have write permissions to both the specified Greengrass group and S3 bucket. Otherwise, the call will fail with an authorization error.
For cloud deployments, this action requires a flowActionsRoleArn
value. This is an IAM role that has permissions to access AWS services, such as AWS Lambda and AWS IoT, that the flow uses when it executes.
If the definition document doesn't specify a version of the user's namespace, the latest version will be used by default.
CreateSystemTemplate
- Definition => Paws::IoTThingsGraph::DefinitionDocument
- [CompatibleNamespaceVersion => Int]
Each argument is described in detail in: Paws::IoTThingsGraph::CreateSystemTemplate
Returns: a Paws::IoTThingsGraph::CreateSystemTemplateResponse instance
Creates a system. The system is validated against the entities in the latest version of the user's namespace unless another namespace version is specified in the request.
DeleteFlowTemplate
Each argument is described in detail in: Paws::IoTThingsGraph::DeleteFlowTemplate
Returns: a Paws::IoTThingsGraph::DeleteFlowTemplateResponse instance
Deletes a workflow. Any new system or deployment that contains this workflow will fail to update or deploy. Existing deployments that contain the workflow will continue to run (since they use a snapshot of the workflow taken at the time of deployment).
DeleteNamespace
Each argument is described in detail in: Paws::IoTThingsGraph::DeleteNamespace
Returns: a Paws::IoTThingsGraph::DeleteNamespaceResponse instance
Deletes the specified namespace. This action deletes all of the entities in the namespace. Delete the systems and flows that use entities in the namespace before performing this action.
DeleteSystemInstance
Each argument is described in detail in: Paws::IoTThingsGraph::DeleteSystemInstance
Returns: a Paws::IoTThingsGraph::DeleteSystemInstanceResponse instance
Deletes a system instance. Only system instances that have never been deployed, or that have been undeployed can be deleted.
Users can create a new system instance that has the same ID as a deleted system instance.
DeleteSystemTemplate
Each argument is described in detail in: Paws::IoTThingsGraph::DeleteSystemTemplate
Returns: a Paws::IoTThingsGraph::DeleteSystemTemplateResponse instance
Deletes a system. New deployments can't contain the system after its deletion. Existing deployments that contain the system will continue to work because they use a snapshot of the system that is taken when it is deployed.
DeploySystemInstance
Each argument is described in detail in: Paws::IoTThingsGraph::DeploySystemInstance
Returns: a Paws::IoTThingsGraph::DeploySystemInstanceResponse instance
Greengrass and Cloud Deployments
Deploys the system instance to the target specified in CreateSystemInstance
.
Greengrass Deployments
If the system or any workflows and entities have been updated before this action is called, then the deployment will create a new Amazon Simple Storage Service resource file and then deploy it.
Since this action creates a Greengrass deployment on the caller's behalf, the calling identity must have write permissions to the specified Greengrass group. Otherwise, the call will fail with an authorization error.
For information about the artifacts that get added to your Greengrass core device when you use this API, see AWS IoT Things Graph and AWS IoT Greengrass (https://docs.aws.amazon.com/thingsgraph/latest/ug/iot-tg-greengrass.html).
DeprecateFlowTemplate
Each argument is described in detail in: Paws::IoTThingsGraph::DeprecateFlowTemplate
Returns: a Paws::IoTThingsGraph::DeprecateFlowTemplateResponse instance
Deprecates the specified workflow. This action marks the workflow for deletion. Deprecated flows can't be deployed, but existing deployments will continue to run.
DeprecateSystemTemplate
Each argument is described in detail in: Paws::IoTThingsGraph::DeprecateSystemTemplate
Returns: a Paws::IoTThingsGraph::DeprecateSystemTemplateResponse instance
Deprecates the specified system.
DescribeNamespace
Each argument is described in detail in: Paws::IoTThingsGraph::DescribeNamespace
Returns: a Paws::IoTThingsGraph::DescribeNamespaceResponse instance
Gets the latest version of the user's namespace and the public version that it is tracking.
DissociateEntityFromThing
Each argument is described in detail in: Paws::IoTThingsGraph::DissociateEntityFromThing
Returns: a Paws::IoTThingsGraph::DissociateEntityFromThingResponse instance
Dissociates a device entity from a concrete thing. The action takes only the type of the entity that you need to dissociate because only one entity of a particular type can be associated with a thing.
GetEntities
Each argument is described in detail in: Paws::IoTThingsGraph::GetEntities
Returns: a Paws::IoTThingsGraph::GetEntitiesResponse instance
Gets definitions of the specified entities. Uses the latest version of the user's namespace by default. This API returns the following TDM entities.
Properties
States
Events
Actions
Capabilities
Mappings
Devices
Device Models
Services
This action doesn't return definitions for systems, flows, and deployments.
GetFlowTemplate
Each argument is described in detail in: Paws::IoTThingsGraph::GetFlowTemplate
Returns: a Paws::IoTThingsGraph::GetFlowTemplateResponse instance
Gets the latest version of the DefinitionDocument
and FlowTemplateSummary
for the specified workflow.
GetFlowTemplateRevisions
Each argument is described in detail in: Paws::IoTThingsGraph::GetFlowTemplateRevisions
Returns: a Paws::IoTThingsGraph::GetFlowTemplateRevisionsResponse instance
Gets revisions of the specified workflow. Only the last 100 revisions are stored. If the workflow has been deprecated, this action will return revisions that occurred before the deprecation. This action won't work for workflows that have been deleted.
GetNamespaceDeletionStatus
Each argument is described in detail in: Paws::IoTThingsGraph::GetNamespaceDeletionStatus
Returns: a Paws::IoTThingsGraph::GetNamespaceDeletionStatusResponse instance
Gets the status of a namespace deletion task.
GetSystemInstance
Each argument is described in detail in: Paws::IoTThingsGraph::GetSystemInstance
Returns: a Paws::IoTThingsGraph::GetSystemInstanceResponse instance
Gets a system instance.
GetSystemTemplate
Each argument is described in detail in: Paws::IoTThingsGraph::GetSystemTemplate
Returns: a Paws::IoTThingsGraph::GetSystemTemplateResponse instance
Gets a system.
GetSystemTemplateRevisions
Each argument is described in detail in: Paws::IoTThingsGraph::GetSystemTemplateRevisions
Returns: a Paws::IoTThingsGraph::GetSystemTemplateRevisionsResponse instance
Gets revisions made to the specified system template. Only the previous 100 revisions are stored. If the system has been deprecated, this action will return the revisions that occurred before its deprecation. This action won't work with systems that have been deleted.
GetUploadStatus
Each argument is described in detail in: Paws::IoTThingsGraph::GetUploadStatus
Returns: a Paws::IoTThingsGraph::GetUploadStatusResponse instance
Gets the status of the specified upload.
ListFlowExecutionMessages
Each argument is described in detail in: Paws::IoTThingsGraph::ListFlowExecutionMessages
Returns: a Paws::IoTThingsGraph::ListFlowExecutionMessagesResponse instance
Returns a list of objects that contain information about events in a flow execution.
ListTagsForResource
Each argument is described in detail in: Paws::IoTThingsGraph::ListTagsForResource
Returns: a Paws::IoTThingsGraph::ListTagsForResourceResponse instance
Lists all tags on an AWS IoT Things Graph resource.
SearchEntities
- EntityTypes => ArrayRef[Str|Undef]
- [Filters => ArrayRef[Paws::IoTThingsGraph::EntityFilter]]
- [MaxResults => Int]
- [NamespaceVersion => Int]
- [NextToken => Str]
Each argument is described in detail in: Paws::IoTThingsGraph::SearchEntities
Returns: a Paws::IoTThingsGraph::SearchEntitiesResponse instance
Searches for entities of the specified type. You can search for entities in your namespace and the public namespace that you're tracking.
SearchFlowExecutions
- SystemInstanceId => Str
- [EndTime => Str]
- [FlowExecutionId => Str]
- [MaxResults => Int]
- [NextToken => Str]
- [StartTime => Str]
Each argument is described in detail in: Paws::IoTThingsGraph::SearchFlowExecutions
Returns: a Paws::IoTThingsGraph::SearchFlowExecutionsResponse instance
Searches for AWS IoT Things Graph workflow execution instances.
SearchFlowTemplates
- [Filters => ArrayRef[Paws::IoTThingsGraph::FlowTemplateFilter]]
- [MaxResults => Int]
- [NextToken => Str]
Each argument is described in detail in: Paws::IoTThingsGraph::SearchFlowTemplates
Returns: a Paws::IoTThingsGraph::SearchFlowTemplatesResponse instance
Searches for summary information about workflows.
SearchSystemInstances
- [Filters => ArrayRef[Paws::IoTThingsGraph::SystemInstanceFilter]]
- [MaxResults => Int]
- [NextToken => Str]
Each argument is described in detail in: Paws::IoTThingsGraph::SearchSystemInstances
Returns: a Paws::IoTThingsGraph::SearchSystemInstancesResponse instance
Searches for system instances in the user's account.
SearchSystemTemplates
- [Filters => ArrayRef[Paws::IoTThingsGraph::SystemTemplateFilter]]
- [MaxResults => Int]
- [NextToken => Str]
Each argument is described in detail in: Paws::IoTThingsGraph::SearchSystemTemplates
Returns: a Paws::IoTThingsGraph::SearchSystemTemplatesResponse instance
Searches for summary information about systems in the user's account. You can filter by the ID of a workflow to return only systems that use the specified workflow.
SearchThings
Each argument is described in detail in: Paws::IoTThingsGraph::SearchThings
Returns: a Paws::IoTThingsGraph::SearchThingsResponse instance
Searches for things associated with the specified entity. You can search by both device and device model.
For example, if two different devices, camera1 and camera2, implement the camera device model, the user can associate thing1 to camera1 and thing2 to camera2. SearchThings(camera2)
will return only thing2, but SearchThings(camera)
will return both thing1 and thing2.
This action searches for exact matches and doesn't perform partial text matching.
TagResource
- ResourceArn => Str
- Tags => ArrayRef[Paws::IoTThingsGraph::Tag]
Each argument is described in detail in: Paws::IoTThingsGraph::TagResource
Returns: a Paws::IoTThingsGraph::TagResourceResponse instance
Creates a tag for the specified resource.
UndeploySystemInstance
Each argument is described in detail in: Paws::IoTThingsGraph::UndeploySystemInstance
Returns: a Paws::IoTThingsGraph::UndeploySystemInstanceResponse instance
Removes a system instance from its target (Cloud or Greengrass).
UntagResource
Each argument is described in detail in: Paws::IoTThingsGraph::UntagResource
Returns: a Paws::IoTThingsGraph::UntagResourceResponse instance
Removes a tag from the specified resource.
UpdateFlowTemplate
- Definition => Paws::IoTThingsGraph::DefinitionDocument
- Id => Str
- [CompatibleNamespaceVersion => Int]
Each argument is described in detail in: Paws::IoTThingsGraph::UpdateFlowTemplate
Returns: a Paws::IoTThingsGraph::UpdateFlowTemplateResponse instance
Updates the specified workflow. All deployed systems and system instances that use the workflow will see the changes in the flow when it is redeployed. If you don't want this behavior, copy the workflow (creating a new workflow with a different ID), and update the copy. The workflow can contain only entities in the specified namespace.
UpdateSystemTemplate
- Definition => Paws::IoTThingsGraph::DefinitionDocument
- Id => Str
- [CompatibleNamespaceVersion => Int]
Each argument is described in detail in: Paws::IoTThingsGraph::UpdateSystemTemplate
Returns: a Paws::IoTThingsGraph::UpdateSystemTemplateResponse instance
Updates the specified system. You don't need to run this action after updating a workflow. Any deployment that uses the system will see the changes in the system when it is redeployed.
UploadEntityDefinitions
- [DeprecateExistingEntities => Bool]
- [Document => Paws::IoTThingsGraph::DefinitionDocument]
- [SyncWithPublicNamespace => Bool]
Each argument is described in detail in: Paws::IoTThingsGraph::UploadEntityDefinitions
Returns: a Paws::IoTThingsGraph::UploadEntityDefinitionsResponse instance
Asynchronously uploads one or more entity definitions to the user's namespace. The document
parameter is required if syncWithPublicNamespace
and deleteExistingEntites
are false. If the syncWithPublicNamespace
parameter is set to true
, the user's namespace will synchronize with the latest version of the public namespace. If deprecateExistingEntities
is set to true, all entities in the latest version will be deleted before the new DefinitionDocument
is uploaded.
When a user uploads entity definitions for the first time, the service creates a new namespace for the user. The new namespace tracks the public namespace. Currently users can have only one namespace. The namespace version increments whenever a user uploads entity definitions that are backwards-incompatible and whenever a user sets the syncWithPublicNamespace
parameter or the deprecateExistingEntities
parameter to true
.
The IDs for all of the entities should be in URN format. Each entity must be in the user's namespace. Users can't create entities in the public namespace, but entity definitions can refer to entities in the public namespace.
Valid entities are Device
, DeviceModel
, Service
, Capability
, State
, Action
, Event
, Property
, Mapping
, Enum
.
PAGINATORS
Paginator methods are helpers that repetively call methods that return partial results
GetAllFlowTemplateRevisions(sub { },Id => Str, [MaxResults => Int, NextToken => Str])
GetAllFlowTemplateRevisions(Id => Str, [MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- summaries, passing the object as the first parameter, and the string 'summaries' as the second parameter
If not, it will return a a Paws::IoTThingsGraph::GetFlowTemplateRevisionsResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
GetAllSystemTemplateRevisions(sub { },Id => Str, [MaxResults => Int, NextToken => Str])
GetAllSystemTemplateRevisions(Id => Str, [MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- summaries, passing the object as the first parameter, and the string 'summaries' as the second parameter
If not, it will return a a Paws::IoTThingsGraph::GetSystemTemplateRevisionsResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllFlowExecutionMessages(sub { },FlowExecutionId => Str, [MaxResults => Int, NextToken => Str])
ListAllFlowExecutionMessages(FlowExecutionId => Str, [MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- messages, passing the object as the first parameter, and the string 'messages' as the second parameter
If not, it will return a a Paws::IoTThingsGraph::ListFlowExecutionMessagesResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
ListAllTagsForResource(sub { },ResourceArn => Str, [MaxResults => Int, NextToken => Str])
ListAllTagsForResource(ResourceArn => Str, [MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- tags, passing the object as the first parameter, and the string 'tags' as the second parameter
If not, it will return a a Paws::IoTThingsGraph::ListTagsForResourceResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
SearchAllEntities(sub { },EntityTypes => ArrayRef[Str|Undef], [Filters => ArrayRef[Paws::IoTThingsGraph::EntityFilter], MaxResults => Int, NamespaceVersion => Int, NextToken => Str])
SearchAllEntities(EntityTypes => ArrayRef[Str|Undef], [Filters => ArrayRef[Paws::IoTThingsGraph::EntityFilter], MaxResults => Int, NamespaceVersion => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- descriptions, passing the object as the first parameter, and the string 'descriptions' as the second parameter
If not, it will return a a Paws::IoTThingsGraph::SearchEntitiesResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
SearchAllFlowExecutions(sub { },SystemInstanceId => Str, [EndTime => Str, FlowExecutionId => Str, MaxResults => Int, NextToken => Str, StartTime => Str])
SearchAllFlowExecutions(SystemInstanceId => Str, [EndTime => Str, FlowExecutionId => Str, MaxResults => Int, NextToken => Str, StartTime => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- summaries, passing the object as the first parameter, and the string 'summaries' as the second parameter
If not, it will return a a Paws::IoTThingsGraph::SearchFlowExecutionsResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
SearchAllFlowTemplates(sub { },[Filters => ArrayRef[Paws::IoTThingsGraph::FlowTemplateFilter], MaxResults => Int, NextToken => Str])
SearchAllFlowTemplates([Filters => ArrayRef[Paws::IoTThingsGraph::FlowTemplateFilter], MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- summaries, passing the object as the first parameter, and the string 'summaries' as the second parameter
If not, it will return a a Paws::IoTThingsGraph::SearchFlowTemplatesResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
SearchAllSystemInstances(sub { },[Filters => ArrayRef[Paws::IoTThingsGraph::SystemInstanceFilter], MaxResults => Int, NextToken => Str])
SearchAllSystemInstances([Filters => ArrayRef[Paws::IoTThingsGraph::SystemInstanceFilter], MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- summaries, passing the object as the first parameter, and the string 'summaries' as the second parameter
If not, it will return a a Paws::IoTThingsGraph::SearchSystemInstancesResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
SearchAllSystemTemplates(sub { },[Filters => ArrayRef[Paws::IoTThingsGraph::SystemTemplateFilter], MaxResults => Int, NextToken => Str])
SearchAllSystemTemplates([Filters => ArrayRef[Paws::IoTThingsGraph::SystemTemplateFilter], MaxResults => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- summaries, passing the object as the first parameter, and the string 'summaries' as the second parameter
If not, it will return a a Paws::IoTThingsGraph::SearchSystemTemplatesResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
SearchAllThings(sub { },EntityId => Str, [MaxResults => Int, NamespaceVersion => Int, NextToken => Str])
SearchAllThings(EntityId => Str, [MaxResults => Int, NamespaceVersion => Int, NextToken => Str])
If passed a sub as first parameter, it will call the sub for each element found in :
- things, passing the object as the first parameter, and the string 'things' as the second parameter
If not, it will return a a Paws::IoTThingsGraph::SearchThingsResponse instance with all the param
s; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.
SEE ALSO
This service class forms part of Paws
BUGS and CONTRIBUTIONS
The source code is located here: https://github.com/pplu/aws-sdk-perl
Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues