Confluent Cloud
Datafly Signal publishes first-party events to Confluent Cloud topics over the standard Kafka wire protocol with SASL/PLAIN authentication.
Prerequisites
Before configuring Confluent Cloud in Signal, you need a Confluent Cloud account with a Kafka cluster, a topic, and an API key pair.
Create a Confluent Cloud Account
- Sign up at confluent.io/confluent-cloud.
- Complete the onboarding wizard.
Create a Kafka Cluster
- In the Confluent Cloud console, go to Environments and select your environment (or create a new one).
- Click Add cluster.
- Choose a cluster type:
- Basic — multi-tenant, pay-as-you-go (suitable for development and low-volume production).
- Standard — single-tenant, higher throughput limits.
- Dedicated — fully isolated, custom configurations.
- Select a Cloud provider (AWS, GCP, or Azure) and Region.
- Click Launch cluster.
- Note the Bootstrap server address from the cluster settings (e.g.
pkc-abc123.us-east-1.aws.confluent.cloud:9092).
Create a Topic
- In your cluster, go to Topics > Create topic.
- Enter a Topic name (e.g.
datafly-events). - Set the number of Partitions (6 is a good default for moderate throughput).
- Configure Retention settings (default 7 days).
- Click Create with defaults or customise further.
Generate an API Key Pair
- In your cluster, go to API Keys (under Cluster settings or Data integration).
- Click Create key.
- Choose Global access or specify a service account.
- Click Create.
- Copy the API Key and API Secret immediately — the secret is only shown once.
Store the API secret securely. If you lose it, you must create a new key pair.
Configuration
| Field | Type | Required | Description |
|---|---|---|---|
bootstrap_servers | string | Yes | The Confluent Cloud bootstrap server address (e.g. pkc-abc123.us-east-1.aws.confluent.cloud:9092). |
topic | string | Yes | The Kafka topic to produce messages to. |
security_protocol | select | Yes | Set to SASL_SSL for Confluent Cloud. |
sasl_mechanism | select | Yes | Set to PLAIN. |
sasl_username | string | Yes | The Confluent Cloud API key. |
sasl_password | secret | Yes | The Confluent Cloud API secret. |
Signal Setup
Quick Setup
- Navigate to Integrations in the sidebar.
- Open the Integration Library tab.
- Find Confluent Cloud or filter by Streaming.
- Click Install, select a variant if available, and fill in the required fields.
- Click Install Integration to create the integration with a ready-to-use default blueprint.
API Setup
curl -X POST http://localhost:8084/v1/admin/integration-catalog/confluent_cloud/install \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Confluent Cloud",
"variant": "default",
"config": {
"bootstrap_servers": "pkc-abc123.us-east-1.aws.confluent.cloud:9092",
"topic": "datafly-events",
"security_protocol": "SASL_SSL",
"sasl_mechanism": "PLAIN",
"sasl_username": "YOUR_API_KEY",
"sasl_password": "YOUR_API_SECRET"
},
"delivery_mode": "server_side"
}'Schema
Each event is produced as one Kafka message — same wire format as the Apache Kafka integration:
- Key —
anonymous_id(oruser_idif set). - Value — JSON document of the canonical event envelope.
- Headers —
content-type,event_type,event_name.
Consent
Confluent Cloud is a first-party destination under your control. The default blueprint forwards all events. Apply consent filtering in pipeline transforms or downstream stream processors (ksqlDB, Kafka Streams) on context.consent if needed.
Testing
- Enable the integration in Signal and trigger a test event on your website.
- In the Confluent Cloud console, go to your cluster > Topics > your topic.
- Click Messages to view recently produced messages.
- Inspect the message value to verify the event data.
- In Signal, check the Live Events view to confirm delivery status shows as successful.
Troubleshooting
| Problem | Solution |
|---|---|
| Events not appearing in the topic | Verify the bootstrap server address and topic name are correct. |
| Authentication failure | The API key or secret is incorrect. Verify the credentials. Generate a new key pair if needed. |
TopicAuthorizationException | The API key lacks produce permission on the topic. Create a new key with appropriate ACLs or use a global access key. |
UnknownTopicOrPartition | The topic does not exist. Verify the topic name in the Confluent Cloud console. |
| Connection timeout | Ensure Signal can reach the bootstrap server on port 9092. Check any firewall or network policies. |
MessageSizeTooLarge | Individual messages exceed the topic’s max message size (default 1 MB). Check event payload size. |
| API key expired or revoked | Generate a new API key pair in the Confluent Cloud console. |
Visit Confluent Cloud documentation for full API reference, Schema Registry setup, and connector configuration.