SDKs

Seven clients that behave like the same library.

Install, authenticate, make a call and verify a webhook — the four things every integrator does first, shown in whichever language they work in.

TypeScript

v4.2.0 · Node 20+, Bun, Deno, browsers via ESM

Install
npm install flintwake
Source on GitHub

Every client exposes the same resources, the same pagination helper and the same webhook verification function, so an example in one language reads correctly in all seven.

TypeScript · getting started
import { Flintwake } from "flintwake";

const fw = new Flintwake({
  apiKey: process.env.FLINTWAKE_API_KEY,
  environment: "production",
});

Guarantees

What we promise about the clients.

  • Same shape everywhere

    Resources, method names and pagination read identically in all seven languages, so an example written in one is correct in the others.

  • Generated, then reviewed

    Clients are generated from the same schema the reference reads, then hand-reviewed for idiomatic naming before release.

  • Semantic versioning

    Breaking changes get a major release and a migration note in the changelog. Deprecations carry a removal date, never a vague promise.

  • Typed all the way down

    Full type definitions, editor completion and compile-time checks on request and response shapes wherever the language supports it.

Versions

Current releases

Every official SDK with its current version, runtime support and install command.
LanguageVersionRuntimeInstall
TypeScriptv4.2.0Node 20+, Bun, Deno, browsers via ESMnpm install flintwake
Pythonv3.8.1CPython 3.10+, async and sync clientspip install flintwake
Gov2.4.0Go 1.22+, context-awarego get github.com/flintwake/flintwake-go
Rubyv3.1.2Ruby 3.2+, Rails 7 railtie includedgem install flintwake
PHPv3.4.1PHP 8.2+, PSR-18 compatiblecomposer require flintwake/flintwake
Javav2.2.0Java 17+, Kotlin friendlyimplementation 'com.flintwake:flintwake:2.2.0'
Rustv1.0.3Rust 1.78+, tokio runtimecargo add flintwake

Start with the quickstart, then pick a client.

The quickstart uses cURL so it works before you have chosen a language. Every SDK page picks up where it leaves off.