Third-party API adapters for Kiln's integration runtime.
Official IntegrationAdapter implementations that connect Kiln to third-party APIs. Each adapter wraps a provider's official SDK, receives resolved credentials at runtime, and returns structured results — no OAuth flows, no credential storage, no token refresh.
Consumer (kiln-gateway)
→ IntegrationRegistry.register(adapter)
→ IntegrationExecutor.execute(operation, input)
→ CredentialResolver.resolve(tenantId, credentialKey)
→ adapter.execute(operation, credential, input)
→ official SDK call
→ IntegrationResult { data }
| Package | npm | SDK | Operations |
|---|---|---|---|
| @kilnai/integration-google-calendar | @googleapis/calendar |
check_availability, list_events, create_event, update_event, cancel_event | |
| @kilnai/integration-stripe | stripe |
create_payment_link, list_payment_links, get_payment_link | |
| @kilnai/integration-google-sheets | @googleapis/sheets |
read_range, append_rows, update_range | |
| @kilnai/integration-shared | — | HTTP client, auth headers, error types |
Adapters are installed in your kiln-gateway deployment, not by end-users:
bun add @kilnai/integration-google-calendar
bun add @kilnai/integration-stripe
bun add @kilnai/integration-google-sheetsRequires @kilnai/core ^2.1.0 as a peer dependency.
Register adapters before starting the gateway:
import { IntegrationRegistry } from "@kilnai/core";
import { adapter as googleCalendar } from "@kilnai/integration-google-calendar";
import { adapter as stripe } from "@kilnai/integration-stripe";
import { adapter as googleSheets } from "@kilnai/integration-google-sheets";
IntegrationRegistry.register(googleCalendar);
IntegrationRegistry.register(stripe);
IntegrationRegistry.register(googleSheets);Then configure integration tools per tenant via the admin API. The gateway's IntegrationExecutor handles credential resolution and adapter dispatch automatically.
git clone https://github.com/sequelcore/kiln-integrations.git
cd kiln-integrations
bun install
bun run typecheck
bun run testThe repository uses the published @kilnai/core 2.x package for local development. When testing unreleased Kiln core changes, temporarily link a local core build and restore the published dependency before committing.
See CONTRIBUTING.md for the full guide on adding adapters.
Integration adapters use official SDKs — never raw fetch. This is intentional and the opposite of Kiln engine's convention:
| Context | Approach | Reason |
|---|---|---|
| Kiln engine | Raw fetch |
1-3 simple calls to stable endpoints |
| Integration adapters | Official SDKs | Wrapping a complex API surface is the product |
