# General Nodes
# Node: EventListener
This node works as the inbound node for a flow. EventListener node is the key node which makes the runtime aware of its function provider i.e AWS Lambda, Azure function or KumoHub.
Event Listener node supports various event sources depending on selected cloud provider.
# Properties
Provider: Cloud provider, one of:AWS,Azure,NodeJS
# Provider: AWS
The following event sources are supported for AWS provider:
# Amazon DynamoDB
# Parameters:
Operation: DynamoDB operation that will call listener, one of: ALL (all operations), INSERT, MODIFY, REMOVE
# Amazon API Gateway
# Parameters:
Verb: One of http verbs: GET, POST, PUT, DELETE, PATCH, or * for anyURL: The http resource. It may include path parameters, for example/accounts/:accountId.
# WebSocket
# Parameters:
Route: One of: $connect, $disconnect, $default, customRoute Name: Custom Route name.
# Amazon Alexa
This event source has no properties.
# Amazon Lex
This event source has no properties.
# Amazon Cognito
# Parameters:
Trigger: Cognito trigger, one of:*: any triggerPreSignUp SignUpPreSignUp AdminCreateUserPostConfirmation ConfirmSignUpPostConfirmation ConfirmForgotPasswordAuthentication PreAuthenticationAuthentication PostAuthenticationAuthentication DefineAuthChallengeAuthentication CreateAuthChallengeAuthentication VerifyAuthChallengeResponseTokenGeneration HostedAuthTokenGeneration AuthenticationTokenGeneration NewPasswordChallengeTokenGeneration AuthenticateDeviceTokenGeneration RefreshTokensUserMigration AuthenticationUserMigration ForgotPasswordCustomMessage SignUpCustomMessage AdminCreateUserCustomMessage ResendCodeCustomMessage ForgotPasswordCustomMessage UpdateUserAttributeCustomMessage VerifyUserAttributeCustomMessage Authentication
# Application Load Balancer
# Parameters:
Verb: One of http verbs: GET, POST, PUT, DELETE, PATCH, or * for anyURL: The http resource. It may include path parameters, for example/accounts/:accountId.
# Amazon S3
Bucket Name: The name of the bucket to process events from. If this name is left empty then event is triggered for any bucket the flow is connected to.Operation: Bucket operation, one of:*: any triggers3:TestEvents3:ObjectCreated:*s3:ObjectCreated:Puts3:ObjectCreated:Posts3:ObjectCreated:Copys3:ObjectCreated:CompleteMultipartUploads3:ObjectRemoved:*s3:ObjectRemoved:Deletes3:ObjectRemoved:DeleteMarkerCreateds3:ObjectRestore:*s3:ObjectRestore:Posts3:ObjectRestore:Completeds3:ObjectRestore:Deletes3:ReducedRedundancyLostObjects3:Replication:*s3:Replication:OperationMissedThresholds3:Replication:OperationReplicatedAfterThresholds3:Replication:OperationNotTrackeds3:LifecycleExpiration:*s3:LifecycleExpiration:Deletes3:LifecycleExpiration:DeleteMarkerCreateds3:LifecycleTransitions3:IntelligentTierings3:ObjectTagging:*s3:ObjectTagging:Puts3:ObjectTagging:Deletes3:ObjectAcl:Put
Key Prefix: The prefix of file name to filter, optionalKey Suffix: The suffix of file name to filter, optional
# Amazon SNS
Topic Name: The name of the topic to process events from. If this name is left empty then event is processed without checking the topic name.
# Amazon SQS
# Parameters:
Queue Name: The name of the queue to process events from. If this name is left empty then event is processed without checking the queue name.
# Amazon Cloud Formation
This event source has no properties.
# Amazon CloudWatch Logs
This event source has no properties. The logs passed by AWS to the flows are zipped. It is left to flow logic to unzip data at the start of the flow before implementing logic.
# Amazon CloudWatch Events
# Parameters:
Reference: For the project having multiple cloud watch events this parameter uniquely identifies what event specific listener handles. In such a case event must comply with following matching rules:
{
"source": "SOURCE DESCRIPTION",
"detail": {
"type": ["kumologica-event"],
"reference": [REFERENCE HERE]
}
}
This parameter is not required for single cloud watch event listener, in this case every event will be handled by the listener and it is up to flow logic to process event.
# Amazon EventBridge Partner Event
# Parameters:
Detail Type: The value ofdetail-typeitem of the event. If value is not provided then Event Listener will accept any event that reached lambda. Ifdetail-typehas been provided then Event Listener will only accept event which detail-type exactly matches the value entered.
# Amazon CodeCommit
This event source has no properties.
# Amazon Config
This event source has no properties.
# Amazon IoT Events
This event source has no properties.
# Amazon Lambda
This event source accepts any format of the event. If flow contains multiple Event Listeners then most specific listeners will be checked and if none are matching event type then Amazon Lambda will be invoked if present. This event source is useful for building api gateway authorizers, lambda to lambda calls or any other use cases where event structure is different than the event sources predefined by Event Listener.
# Provider: Azure
The following event sources are supported for Azure provider:
# API Gateway
# Properties
Verb: One of http verbs: GET, POST, PUT, DELETE, PATCH, or * for anyURL: The http resource. It may include path parameters, for example/accounts/:accountId.
# Node: EventListener End
This node completes the flow logic that has been started by EventListener or Catch nodes. It is always last node in the flow composition.
It is good practice to use EventListener End node only in a flows initiated by EventListener or Catch nodes.
This node provides option for setting the HTTP status code, HTTP headers and HTTP response when the EventListener node is having API Gateway or Application load balancer as the event source.
# Properties
The properties are applicable for API Gateway and Application Load Balancer event sources. All of them will be returned to the client calling Kumologica service.
Response Type- either Http Response or Custom Response. In most cases Http Response is used.
# Http Response
Response used by most of predefined event types.
Status Code- Http status code.Headers- List of http headers (key, value pairs)Payload- Payload to return to the caller.
# Custom Response
Custom Response is needed when building lambda for api gateway authorizers or cognito triggers or any other use case that does not accept http response and require their own specific response format.
Message Type- Either Success or ErrorPayload- Payload to be returned.