SDKs

View as markdown

Official Synthient client libraries wrap the HTTP API with typed responses, batch lookups, feed downloads, and real-time streams, so you can integrate without hand-writing requests.

Packages

LanguageInstallRequiresReference
Nodenpm install @synthient/synthientNode.js 22.12npm
Pythonpip install synthientPython 3.11PyPI
Javacom.synthient:synthient-java:1.0.0Java 21Javadoc
C#dotnet add package Synthient.Client.NET 8NuGet
PHPcomposer require synthient/synthient-php64-bit PHP 8.3Packagist
Gogo get github.com/synthient/synthient-goGo 1.26pkg.go.dev
Rustcargo add synthientRust 1.85 (1.88 without the MSRV-aware resolver), Tokiodocs.rs
Rubybundle add synthientRuby 3.3RubyDoc

What every SDK covers

Each SDK exposes the same surface in its language's idioms, and each language page documents every type and method with examples.

  • Lookups: one IP address, a batch of up to 1000, or a domain, plus the account and health endpoints.
  • Feeds: the proxy, anonymizer, torrent, JA4T, and four Helios feeds, each with a real-time stream and hourly and daily Parquet exports.
  • Errors: a typed API error carrying the status code, problem details, request ID, and Retry-After.
  • Retries: account and feed requests retry on 500, 502, 503, and 504, on transport failures, and on rate limits that carry Retry-After. Billed lookups and the health check retry only on rate limits that carry Retry-After, so a lookup is never charged twice.
  • Response metadata: a hook that sees every API response, including request IDs and rate limit headers.
  • gRPC schema: a fetcher for the protobuf schema of the gRPC API, in every SDK except PHP.

The CLI covers the same surfaces from the terminal.