amazonka-iot-1.4.0: Amazon IoT SDK.

Copyright(c) 2013-2016 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Network.AWS.IoT.Types

Contents

Description

 

Synopsis

Service Configuration

ioT :: Service Source

API version '2015-05-28' of the Amazon IoT SDK configuration.

Errors

_SqlParseException :: AsError a => Getting (First ServiceError) a ServiceError Source

The Rule-SQL expression can't be parsed correctly.

_TransferConflictException :: AsError a => Getting (First ServiceError) a ServiceError Source

You can't transfer the certificate because authorization policies are still attached.

_CertificateStateException :: AsError a => Getting (First ServiceError) a ServiceError Source

The certificate operation is not allowed.

_MalformedPolicyException :: AsError a => Getting (First ServiceError) a ServiceError Source

The policy documentation is not valid.

_DeleteConflictException :: AsError a => Getting (First ServiceError) a ServiceError Source

You can't delete the resource because it is attached to one or more resources.

_TransferAlreadyCompletedException :: AsError a => Getting (First ServiceError) a ServiceError Source

You can't revert the certificate transfer because the transfer is already complete.

_InternalFailureException :: AsError a => Getting (First ServiceError) a ServiceError Source

An unexpected error has occurred.

_VersionsLimitExceededException :: AsError a => Getting (First ServiceError) a ServiceError Source

The number of policy versions exceeds the limit.

_ServiceUnavailableException :: AsError a => Getting (First ServiceError) a ServiceError Source

The service is temporarily unavailable.

_InternalException :: AsError a => Getting (First ServiceError) a ServiceError Source

An unexpected error has occurred.

_UnauthorizedException :: AsError a => Getting (First ServiceError) a ServiceError Source

You are not authorized to perform this operation.

_ResourceNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError Source

The specified resource does not exist.

_LimitExceededException :: AsError a => Getting (First ServiceError) a ServiceError Source

The number of attached entities exceeds the limit.

CertificateStatus

LogLevel

MessageFormat

Action

data Action Source

Describes the actions associated with a rule.

See: action smart constructor.

action :: Action Source

Creates a value of Action with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

aCloudwatchAlarm :: Lens' Action (Maybe CloudwatchAlarmAction) Source

Change the state of a CloudWatch alarm.

aSns :: Lens' Action (Maybe SNSAction) Source

Publish to an Amazon SNS topic.

aDynamoDB :: Lens' Action (Maybe DynamoDBAction) Source

Write to a DynamoDB table.

aFirehose :: Lens' Action (Maybe FirehoseAction) Source

Write to an Amazon Kinesis Firehose stream.

aLambda :: Lens' Action (Maybe LambdaAction) Source

Invoke a Lambda function.

aKinesis :: Lens' Action (Maybe KinesisAction) Source

Write data to an Amazon Kinesis stream.

aS3 :: Lens' Action (Maybe S3Action) Source

Write to an Amazon S3 bucket.

aElasticsearch :: Lens' Action (Maybe ElasticsearchAction) Source

Write data to an Amazon Elasticsearch Service; domain.

aRepublish :: Lens' Action (Maybe RepublishAction) Source

Publish to another MQTT topic.

aSqs :: Lens' Action (Maybe SqsAction) Source

Publish to an Amazon SQS queue.

AttributePayload

data AttributePayload Source

The attribute payload, a JSON string containing up to three key-value pairs (for example, {\"attributes\":{\"string1\":\"string2\"}}).

See: attributePayload smart constructor.

attributePayload :: AttributePayload Source

Creates a value of AttributePayload with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

apAttributes :: Lens' AttributePayload (HashMap Text Text) Source

A JSON string containing up to three key-value pair in JSON format (for example, {\"attributes\":{\"string1\":\"string2\"}}).

Certificate

certificate :: Certificate Source

Creates a value of Certificate with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

cStatus :: Lens' Certificate (Maybe CertificateStatus) Source

The status of the certificate.

cCertificateARN :: Lens' Certificate (Maybe Text) Source

The ARN of the certificate.

cCertificateId :: Lens' Certificate (Maybe Text) Source

The ID of the certificate.

cCreationDate :: Lens' Certificate (Maybe UTCTime) Source

The date and time the certificate was created.

CertificateDescription

certificateDescription :: CertificateDescription Source

Creates a value of CertificateDescription with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

cdOwnedBy :: Lens' CertificateDescription (Maybe Text) Source

The ID of the AWS account that owns the certificate.

cdLastModifiedDate :: Lens' CertificateDescription (Maybe UTCTime) Source

The date and time the certificate was last modified.

cdCertificatePem :: Lens' CertificateDescription (Maybe Text) Source

The certificate data, in PEM format.

cdCreationDate :: Lens' CertificateDescription (Maybe UTCTime) Source

The date and time the certificate was created.

CloudwatchAlarmAction

cloudwatchAlarmAction Source

Creates a value of CloudwatchAlarmAction with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

caaRoleARN :: Lens' CloudwatchAlarmAction Text Source

The IAM role that allows access to the CloudWatch alarm.

caaAlarmName :: Lens' CloudwatchAlarmAction Text Source

The CloudWatch alarm name.

caaStateReason :: Lens' CloudwatchAlarmAction Text Source

The reason for the alarm change.

caaStateValue :: Lens' CloudwatchAlarmAction Text Source

The value of the alarm state. Acceptable values are: OK, ALARM, INSUFFICIENT_DATA.

CloudwatchMetricAction

cloudwatchMetricAction Source

Creates a value of CloudwatchMetricAction with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

cmaRoleARN :: Lens' CloudwatchMetricAction Text Source

The IAM role that allows access to the CloudWatch metric.

cmaMetricNamespace :: Lens' CloudwatchMetricAction Text Source

The CloudWatch metric namespace name.

cmaMetricName :: Lens' CloudwatchMetricAction Text Source

The CloudWatch metric name.

cmaMetricValue :: Lens' CloudwatchMetricAction Text Source

The CloudWatch metric value.

DynamoDBAction

data DynamoDBAction Source

Describes an action to write to a DynamoDB table.

The tableName, hashKeyField, and rangeKeyField values must match the values used when you created the table.

The hashKeyValue and rangeKeyvalue fields use a substitution template syntax. These templates provide data at runtime. The syntax is as follows: ${sql-expression}.

You can specify any valid expression in a WHERE or SELECT clause, including JSON properties, comparisons, calculations, and functions. For example, the following field uses the third level of the topic:

'"hashKeyValue": "${topic(3)}"'

The following field uses the timestamp:

'"rangeKeyValue": "${timestamp()}"'

See: dynamoDBAction smart constructor.

dynamoDBAction Source

Creates a value of DynamoDBAction with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

ddaPayloadField :: Lens' DynamoDBAction (Maybe Text) Source

The action payload. This name can be customized.

ddaTableName :: Lens' DynamoDBAction Text Source

The name of the DynamoDB table.

ddaRoleARN :: Lens' DynamoDBAction Text Source

The ARN of the IAM role that grants access to the DynamoDB table.

ElasticsearchAction

elasticsearchAction Source

Creates a value of ElasticsearchAction with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

eaRoleARN :: Lens' ElasticsearchAction Text Source

The IAM role ARN that has access to Elasticsearch.

eaEndpoint :: Lens' ElasticsearchAction Text Source

The endpoint of your Elasticsearch domain.

eaIndex :: Lens' ElasticsearchAction Text Source

The Elasticsearch index where you want to store your data.

eaType :: Lens' ElasticsearchAction Text Source

The type of document you are storing.

eaId :: Lens' ElasticsearchAction Text Source

The unique identifier for the document you are storing.

FirehoseAction

firehoseAction Source

Creates a value of FirehoseAction with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

faRoleARN :: Lens' FirehoseAction Text Source

The IAM role that grants access to the Amazon Kinesis Firehost stream.

KeyPair

keyPair :: KeyPair Source

Creates a value of KeyPair with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

kpPrivateKey :: Lens' KeyPair (Maybe Text) Source

The private key.

KinesisAction

kinesisAction Source

Creates a value of KinesisAction with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

kaRoleARN :: Lens' KinesisAction Text Source

The ARN of the IAM role that grants access to the Amazon Kinesis stream.

kaStreamName :: Lens' KinesisAction Text Source

The name of the Amazon Kinesis stream.

LambdaAction

lambdaAction Source

Creates a value of LambdaAction with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

laFunctionARN :: Lens' LambdaAction Text Source

The ARN of the Lambda function.

LoggingOptionsPayload

loggingOptionsPayload Source

Creates a value of LoggingOptionsPayload with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

lopRoleARN :: Lens' LoggingOptionsPayload Text Source

The ARN of the IAM role that grants access.

Policy

data Policy Source

Describes an AWS IoT policy.

See: policy smart constructor.

policy :: Policy Source

Creates a value of Policy with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

pPolicyName :: Lens' Policy (Maybe Text) Source

The policy name.

pPolicyARN :: Lens' Policy (Maybe Text) Source

The policy ARN.

PolicyVersion

policyVersion :: PolicyVersion Source

Creates a value of PolicyVersion with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

pvVersionId :: Lens' PolicyVersion (Maybe Text) Source

The policy version ID.

pvCreateDate :: Lens' PolicyVersion (Maybe UTCTime) Source

The date and time the policy was created.

pvIsDefaultVersion :: Lens' PolicyVersion (Maybe Bool) Source

Specifies whether the policy version is the default.

RepublishAction

republishAction Source

Creates a value of RepublishAction with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

raRoleARN :: Lens' RepublishAction Text Source

The ARN of the IAM role that grants access.

raTopic :: Lens' RepublishAction Text Source

The name of the MQTT topic.

S3Action

data S3Action Source

Describes an action to write data to an Amazon S3 bucket.

See: s3Action smart constructor.

s3Action Source

Creates a value of S3Action with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

sRoleARN :: Lens' S3Action Text Source

The ARN of the IAM role that grants access.

sBucketName :: Lens' S3Action Text Source

The Amazon S3 bucket.

sKey :: Lens' S3Action Text Source

The object key.

SNSAction

snsAction Source

Creates a value of SNSAction with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

snsaMessageFormat :: Lens' SNSAction (Maybe MessageFormat) Source

The message format of the message to publish. Optional. Accepted values are "JSON" and "RAW". The default value of the attribute is "RAW". SNS uses this setting to determine if the payload should be parsed and relevant platform-specific bits of the payload should be extracted. To read more about SNS message formats, see http://docs.aws.amazon.com/sns/latest/dg/json-formats.html refer to their official documentation.

snsaTargetARN :: Lens' SNSAction Text Source

The ARN of the SNS topic.

snsaRoleARN :: Lens' SNSAction Text Source

The ARN of the IAM role that grants access.

SqsAction

data SqsAction Source

Describes an action to publish data to an Amazon SQS queue.

See: sqsAction smart constructor.

sqsAction Source

Creates a value of SqsAction with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

saUseBase64 :: Lens' SqsAction (Maybe Bool) Source

Specifies whether to use Base64 encoding.

saRoleARN :: Lens' SqsAction Text Source

The ARN of the IAM role that grants access.

saQueueURL :: Lens' SqsAction Text Source

The URL of the Amazon SQS queue.

ThingAttribute

thingAttribute :: ThingAttribute Source

Creates a value of ThingAttribute with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

taThingName :: Lens' ThingAttribute (Maybe Text) Source

The name of the thing.

TopicRule

topicRule :: TopicRule Source

Creates a value of TopicRule with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

trCreatedAt :: Lens' TopicRule (Maybe UTCTime) Source

The date and time the rule was created.

trActions :: Lens' TopicRule [Action] Source

The actions associated with the rule.

trRuleDisabled :: Lens' TopicRule (Maybe Bool) Source

Specifies whether the rule is disabled.

trRuleName :: Lens' TopicRule (Maybe Text) Source

The name of the rule.

trSql :: Lens' TopicRule (Maybe Text) Source

The SQL statement used to query the topic. When using a SQL query with multiple lines, be sure to escape the newline characters.

trDescription :: Lens' TopicRule (Maybe Text) Source

The description of the rule.

TopicRuleListItem

topicRuleListItem :: TopicRuleListItem Source

Creates a value of TopicRuleListItem with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

trliCreatedAt :: Lens' TopicRuleListItem (Maybe UTCTime) Source

The date and time the rule was created.

trliRuleDisabled :: Lens' TopicRuleListItem (Maybe Bool) Source

Specifies whether the rule is disabled.

trliTopicPattern :: Lens' TopicRuleListItem (Maybe Text) Source

The pattern for the topic names that apply.

TopicRulePayload

topicRulePayload Source

Creates a value of TopicRulePayload with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

trpRuleDisabled :: Lens' TopicRulePayload (Maybe Bool) Source

Specifies whether the rule is disabled.

trpDescription :: Lens' TopicRulePayload (Maybe Text) Source

The description of the rule.

trpSql :: Lens' TopicRulePayload Text Source

The SQL statement used to query the topic. For more information, see AWS IoT SQL Reference in the AWS IoT Developer Guide.

trpActions :: Lens' TopicRulePayload [Action] Source

The actions associated with the rule.