What are the Bunny SDKs?
The Bunny SDKs are client libraries that wrap the API. They provide:- Simple interface:
client.temporaryEmail.check(),client.ipClassify.check(),client.translate(), and more - Retries and backoff: Automatic retries on network errors and rate limits
- Typed errors: Exceptions for authentication, validation, rate limit, etc.
- Input validation: Client-side checks before calling the API
Benefits of using our SDKs
- Less boilerplate: No need to manage headers, JSON, or retry logic yourself
- Type safety: Full types in TypeScript, Python, Java, and Go
- Error handling: Typed exceptions (e.g.
RateLimitError,ValidationError) - Consistent options: Same base URL, timeout, retries across languages
Available SDKs
- Backend
Python
Official SDK for Python 3.8+, with httpx and pydantic.
TypeScript / Node.js
Official SDK for Node.js and TypeScript, ESM and CommonJS.
Java
Official SDK for Java 11+, Maven/Gradle, builder pattern.
Go
Official SDK for Go, stdlib net/http, context support.
PHP
Official SDK for PHP 8.1+, Composer, PSR-18 HTTP client.
Usage examples
FAQ
Where is the SDK source code?
Where is the SDK source code?
Each SDK lives in its own GitHub repo under the
bunny-build organization: sdk-python, sdk-typescript, sdk-java, sdk-go, sdk-php. You can install from the package manager or build from source.Do SDKs support retries and rate limits?
Do SDKs support retries and rate limits?
Yes. All SDKs retry on network errors and on 429/5xx responses with exponential backoff, and they parse rate limit headers. You can also set a callback for rate limit updates.
What if my language is not supported?
What if my language is not supported?
You can call the API directly with HTTP. See the API Reference for all 13 endpoints, headers, and request/response formats.

