Introduction
Welcome to the Conviso Go SDK documentation! This library provides a simple and powerful way to integrate your Go application with Codematic's Customer Data Platform.
What is the Go SDK?
The Conviso Go SDK is a robust library that allows you to:
- Identify users and track their attributes
- Track events to understand user behavior
- Send transactional emails (template-based or raw HTML)
- Send push notifications to your users
- Dual-write for migration scenarios
- Handle high throughput with built-in concurrency limiting
- Type-safe with native Go structs
Key Features
Simple API
The SDK provides an intuitive API that makes it easy to get started:
import "github.com/codematic/opencdp-go/cdp"
client := cdp.NewClient(cdp.CDPConfig{
CDPAPIKey: "your-api-key",
})
defer client.Close()
err := client.Identify(context.Background(), "user123", map[string]interface{}{
"email": "[email protected]",
"firstName": "John",
"lastName": "Doe",
})
err := client.Track(context.Background(), "user123", "purchase_completed", map[string]interface{}{
"amount": 99.99,
})
Production-Ready
- Connection pooling for optimal performance
- Automatic concurrency limiting to prevent overwhelming your infrastructure
- Comprehensive error handling with detailed error messages
- Dual-write support for seamless migration from Customer.io
Go Idiomatic
Built with Go best practices in mind, using contexts and strongly typed configuration:
config := cdp.CDPConfig{
CDPAPIKey: "your-api-key",
Timeout: 10000,
MaxConcurrentRequests: 20,
Debug: true,
}
Getting Started
Ready to integrate the Conviso Go SDK? Head over to the Installation Guide to get started!
Resources
- GitHub Repository: codematic/opencdp-go
- License: MIT