Skip to main content
Speed up integration with our SDKs: Our official libraries make it easy to call the Bunny API from your favorite language, with retries, rate limit handling, and typed errors.

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

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

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.
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.
You can call the API directly with HTTP. See the API Reference for all 13 endpoints, headers, and request/response formats.