Official Software SDKs
Generator Labs provides official SDKs for five popular programming languages. Each SDK is a full-featured client for the Generator Labs API v4.0 and covers all three API namespaces — RBL Monitoring, Contact Management, and Certificate Monitoring.
All SDKs share a consistent design and feature set:
- Automatic retry with exponential backoff
Retry-Afterheader support on HTTP 429 responses- Automatic pagination to fetch all results in a single call
- Webhook signature verification (HMAC-SHA256)
- Per-response rate limit information (IETF draft headers)
- Configurable timeouts, retries, and backoff multiplier
- Connection pooling
- MIT license
Authentication
Every SDK authenticates using your Account SID and Auth Token, which you can find in the portal under Account ➡️ API Credentials.
Available SDKs
| Language | Package | Minimum Version | GitHub |
|---|---|---|---|
| Go | github.com/generator-labs/go-sdk | Go 1.21+ | generator-labs/go-sdk |
| Node.js | generatorlabs (npm) | Node.js 18+ | generator-labs/node-sdk |
| PHP | generatorlabs/sdk (Packagist) | PHP 8.1+ | generator-labs/php-sdk |
| Python | generatorlabs (PyPI) | Python 3.8+ | generator-labs/python-sdk |
| Ruby | generatorlabs (RubyGems) | Ruby 3.0+ | generator-labs/ruby-sdk |
Rate Limit Information
Every API response includes rate limit details. Access them using the appropriate accessor for your language:
| Language | Remaining | Reset |
|---|---|---|
| Go | response.RateLimit.Remaining | response.RateLimit.Reset |
| Node.js | response.rateLimitInfo.remaining | response.rateLimitInfo.reset |
| PHP | $response->rate_limit->remaining | $response->rate_limit->reset |
| Python | response.rate_limit_info.remaining | response.rate_limit_info.reset |
| Ruby | response.rate_limit_info.remaining | response.rate_limit_info.reset |
Error Handling
Each SDK raises language-idiomatic errors that you can catch and handle:
| Language | Error Type | Pattern |
|---|---|---|
| Go | error | result, err := ... |
| Node.js | Exception | try / catch |
| PHP | GeneratorLabs\Exception | try / catch |
| Python | generatorlabs.Exception | try / except |
| Ruby | GeneratorLabs::Error | begin / rescue |