Open Spanner
SDKs

SDKs

Use Open Spanner from trusted backend services.

Official SDKs expose the application-facing REST surface. Create an API key in the dashboard, keep it server-side, and reuse one configured client per service.

LanguagePackageGuide
Gogithub.com/ssubedir/open-spanner/sdk/goGo
TypeScript@ssubedir/open-spannerTypeScript
Pythonopen-spannerPython
C#OpenSpannerC#

Every SDK also includes a gRPC ingestion client with single-event, bulk, and client-streaming writes. Unary writes support opt-in retry policies with backoff, jitter, and server-provided RetryInfo; uncertain client streams should be recovered through bulk ingestion with the original event idempotency keys.

The SDK surface includes:

  • health and readiness;
  • meter lifecycle operations;
  • single and bulk usage ingestion;
  • usage search, dimensions, breakdowns, and direct CSV export;
  • entitlement checks and atomic quota consumption;
  • entitlement decision audit reads; and
  • subject plan progress and current entitlement-state reads.

Control-plane operations remain in the dashboard and full REST API. This includes users, workspace invitations, API keys, plan definitions and assignments, alert configuration, queued exports, reconciliation repairs, and system operations.

The generated SDK contract is openapi/sdk-openapi.json. The full API contract is broader; see API Reference.

Runnable projects are available under examples/rest and examples/stream in the repository.