Keycloak Admin and Account REST APIs TypeScript client: keycloak-api

v3.7.1

Unofficial, fully typed TypeScript client for the Keycloak Admin and Account REST APIs, generated from its OpenAPI spec and published to npm as keycloak-api.

Not affiliated with or endorsed by Keycloak.

Installation
npm install keycloak-api
Authentication

Keycloak is self-hosted, so pass the baseUrl of your server and an access token as token, or a function that returns a fresh token before every request.

Examples
import { KeycloakAdminApi } from "keycloak-api";

const admin = new KeycloakAdminApi({
  baseUrl: "https://keycloak.example.com",
  token: process.env.KEYCLOAK_TOKEN ?? null,
});

const realms = await admin.request("GET /admin/realms");
const realm = await admin.request("GET /admin/realms/{realm}", {
  pathParams: { realm: "master" },
});
import { KeycloakAccountApi } from "keycloak-api";

const account = new KeycloakAccountApi({
  baseUrl: "https://keycloak.example.com",
  realm: "master",
  token: process.env.KEYCLOAK_TOKEN ?? null,
});

const me = await account.request("GET /account/");
const admin = new KeycloakAdminApi({
  baseUrl: "https://keycloak.example.com",
  token: () => tokenStore.getAccessToken(),
});