SDK Reference
Official SDKs for 6 languages. All share the same 3-method pattern: init, identify, track.
JavaScript / Node.js
Package: @prodlytix/js | Works in browser and Node.js | TypeScript typings included
npm install @prodlytix/js
import plx from '@prodlytix/js';
plx.init('plx_live_yourApiKey');
plx.identify(userId, { plan: 'growth' });
plx.track('feature_used', { name: 'export' });
Python
Package: prodlytix | Python 3.8+ | Thread-safe, async flush
pip install prodlytix
import prodlytix
plx = prodlytix.Client('plx_live_yourApiKey')
plx.identify(user_id, {'plan': 'growth'})
plx.track(user_id, 'feature_used', {'name': 'export'})
Go
Module: github.com/prodlytix/go-sdk | Goroutine-safe | Zero CGO dependencies
go get github.com/prodlytix/go-sdk
import "github.com/prodlytix/go-sdk"
client := prodlytix.New("plx_live_yourApiKey")
client.Identify(userID, prodlytix.Traits{"plan": "growth"})
client.Track(userID, "feature_used", prodlytix.Properties{"name": "export"})
Ruby
Gem: prodlytix | Ruby 2.7+ | Thread-safe, Rails/Sinatra compatible
gem install prodlytix
require 'prodlytix'
plx = Prodlytix::Client.new(api_key: 'plx_live_yourApiKey')
plx.identify(user_id: user_id, traits: { plan: 'growth' })
plx.track(user_id: user_id, event: 'feature_used', properties: { name: 'export' })
iOS (Swift)
Package: Swift Package Manager | iOS 14+ | SwiftUI compatible
Package.swift
import Prodlytix
Prodlytix.configure(apiKey: "plx_live_yourApiKey")
Prodlytix.identify(userId: userId, traits: ["plan": "growth"])
Prodlytix.track(event: "feature_used", properties: ["name": "export"])
Android (Kotlin)
Package: io.prodlytix:android-sdk | Android 5+ | Kotlin and Java compatible
build.gradle
implementation 'io.prodlytix:android-sdk:1.2.0'
Prodlytix.init(context, "plx_live_yourApiKey")
Prodlytix.identify(userId, mapOf("plan" to "growth"))
Prodlytix.track("feature_used", mapOf("name" to "export"))