How to
How to set up Activity Sync for Kinesis: from Pendula to an AWS S3 bucket
Activity Sync provides a range of information about the performance of messages as they pass through your Pendula tenant. This information can be streamed to external systems for analytics and reporting by connecting to the activity sync stream.
This guide walks through:
- Creating an Amazon Kinesis data stream and connecting it to an S3 bucket using Firehose.
- Setting up credentials and permissions in AWS.
- Creating and configuring a connection in the Pendula interface to stream data with Activity Sync.
Prerequisites
You will need:
For AWS setup:
- Administrator access to your AWS account.
- Amazon Kinesis integration enabled in your Pendula tenant.
Step 1: Create the Kinesis data stream in AWS
- Log into your AWS account using an Administrator role.
- Open the AWS Management Console.
- Search for Kinesis and select Kinesis – Work with Real-Time Streaming Data.
- Click Create data stream.
- Enter a Data stream name.
Note: This name will be used in Pendula’s connection setup. - Click Create data stream.
- Once the stream is created, copy the ARN for reference in the next step.
Step 2: Set up IAM permissions
- In AWS Console, go to IAM.
- Click Policies, then Create policy.
- Select the JSON tab and paste the following:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "PendulaAccess", "Effect": "Allow", "Action": [ "kinesis:GetRecords", "kinesis:GetShardIterator", "kinesis:ListShards", "kinesis:PutRecord", "kinesis:PutRecords" ], "Resource": "Paste ARN Here" } ] }
- Replace
"Paste ARN Here"
with the ARN of your stream (created in the previous step). - Click Next.
- Enter a Policy name and optional description.
- Click Create policy.
Step 3: Create an IAM user and credentials
- Go to IAM Users, then click Create user.
- Enter a User name, click Next.
- Select Attach policies directly and choose the policy created in the previous step.
- Click Next, then Create user.
- Select the new user, then click Create access key.
- Choose Third-party service as the use case.
- Confirm, add a description, and click Create access key.
- Copy and save the access key ID and secret access key.
These credentials will be used in Pendula to create a connection.
Step 4: Create an S3 bucket to receive records
- Go to S3 in AWS.
- Click Create bucket.
- Enter a Bucket name and adjust settings as needed.
- Click Create bucket.
Step 5: Create the Firehose delivery stream
- Search for and select Amazon Data Firehose.
- Click Create Firehose stream.
- Set the source to Amazon Kinesis Data Streams.
- Set the destination to Amazon S3.
- Choose your stream and S3 bucket from the Browse menus.
- Click Create Firehose stream.
Step 6: Set up the Pendula connection and Activity Sync
- Log into your Pendula tenant and go to the Integrations Hub.
- Click Amazon Kinesis to add or configure a connection.
- Enter:
- Name
- Description (optional)
- AWS access key ID and Secret access key
- Under Stream data with Activity Sync:
- Toggle ON to enable Activity Sync
- Enter the raw Stream name (Not the entire ARN, just e.g.
my-stream-name
) - Select the Region from the dropdown
- Click Configure to customise event types to stream (optional):
- All events are selected by default
- Version is set to
v1.0
- Click Save connection or Update connection.
A toast will confirm the connection (including Activity Sync) is active.
Only use the stream name — do not enter the full ARN.
Step 7: Confirm data is arriving
- Trigger a message or flow from your Pendula tenant.
- Check your S3 bucket for new records.
Firehose buffering can cause delays of several minutes before data appears in S3.
If no data appears after 30 minutes, check CloudWatch metrics or log a Pendula support ticket.