SDKs
You can call the Bird API with any HTTP client, but the official SDKs handle authentication, region selection, retries, idempotency, and pagination for you, so you write against typed methods instead of raw requests.
The SDKs are generated from the same OpenAPI specification that drives the API reference, then wrapped in a hand-curated, idiomatic surface for each language. SDK concepts describes their shared behavior for retries, pagination, region inference, and webhook verification.
- TypeScript SDK: @messagebird/sdk on npm, for Node.js 20.3+ and the edge
- Python SDK: messagebird-sdk on PyPI, for Python 3.10+, sync and async
- Go SDK: github.com/messagebird/bird-sdk-go on pkg.go.dev, for Go 1.24+
- PHP SDK: messagebird/sdk on Packagist, for PHP 8.2+
- SDK concepts: the behavior every SDK shares
Realtime clients are hand-written WebSocket packages that receive events instead of wrapping the REST API. They do not use the shared REST SDK behavior model.
- Swift: BirdRealtime for Apple platforms and Linux
- Kotlin: com.messagebird:bird-realtime for Android and the server JVM
- Realtime for the browser: @messagebird/realtime
For the same API from a terminal or an agent loop, see the Bird CLI.