All the major OAuth providers. One profile API.Explore the quickstart
Documentation navigation

SDKs and installation

Schema-generated libraries for nine backend targets and five browser/mobile targets.

On this page

Find your language repository

Use the SDK repository catalog, which is generated from the target manifest. Each language has a public repository under the AnyOAuth GitHub organization. Follow its README or select a versioned GitHub release. Repositories contain source, models, native tests, an MIT license and generation provenance. GitHub hosts all source archives; the AnyOAuth website does not host SDK downloads. Source releases do not imply publication to a package registry. The catalog lists verified registry packages and version-pinned installation commands; Python and Ruby 0.1.0 are published. Other registry packages are awaiting publication. Go and Swift use the versioned GitHub tags directly.

Registry packages and GitHub v0.1.0 releases contain the initial SDK contract. Newer clean-callback and login-session helpers in the current integration guides require a subsequent SDK release; they are not included in those 0.1.0 packages.

Backend libraries

Node.js/TypeScript, Python, Go, PHP, Java, Ruby, .NET, Rust and Elixir implement the confidential exchange, profile, provider-status and revocation operations, plus local authorization and callback helpers. They use the same public wire contract.

Browser and mobile libraries

Browser TypeScript, Expo, Swift, Kotlin and Flutter/Dart create transactions, construct authorization URLs and validate callbacks. A confidential backend redeems the code.

Create transaction
import { AnyOAuth } from "@anyoauth/node";

const client = new AnyOAuth({
clientId: process.env.ANYOAUTH_CLIENT_ID ?? "YOUR_CLIENT_ID",
clientSecret: process.env.ANYOAUTH_CLIENT_SECRET ?? "YOUR_CLIENT_SECRET",
baseUrl: process.env.ANYOAUTH_API_ORIGIN ?? "https://api.anyoauth.com",
});

const transaction = await client.createTransaction();

@anyoauth/node on GitHubConfidential backend SDK

Expo crypto

Install your Expo SDK’s compatible expo-crypto package with npx expo install expo-crypto. Use the native entry @anyoauth/expo/native and provide that crypto module to the client. It does not require Web Crypto in Hermes and does not fall back to insecure randomness.

Verify the package

GitHub releases publish SHA-256 checksums. Each repository’s README explains its local build and conformance commands. Test adapters use dummy credentials and local fixtures; do not put production credentials in a test log or fixture.