Skip to content

Clients

The Sybilion API is plain HTTP/JSON. Pick the client that fits your stack:

ClientInstallBest for
Using curlalready on your machineShell scripts, prototypes, CI checks, debugging.
Python SDKpip install sybilionPython apps; comes with wait_forecast and pagination iterators.
Go SDKgo get go.sybilion.dev/sybilion@latestGo services; ergonomic WaitForecast and error-unwrap helpers.
R SDKinstall.packages("sybilion")R workflows; wait_forecast, pagination iterators, and R6 client.
Java SDKdev.sybilion:sybilion on Maven CentralJVM services; forecasts().waitUntilSettled and callback-based pagination.

All clients hit the same endpoints with the same Bearer token. Feature pages in the Features section show every use case in all five, side by side, so you can compare and switch tracks at any time.

Auth & base URL

  • Pass your Bearer token (an API key sk_ops_… or a dashboard session token) into the client constructor or as the Authorization: Bearer … header.
  • The default API origin is https://api.sybilion.dev. Override per-process with the SYBILION_API_BASE_URL environment variable, or per-call via the constructor's base_url (Python / R) / Options.BaseURL (Go) / Options.baseUrl() (Java) / by substituting the URL (curl).

See Authentication for token types and where to get them.

Picking a client

  • Just exploring or scripting? Using curl is enough — auth, pagination, polling, and artifact downloads in plain shell.
  • Production Python? Python SDK — typed models, validation errors as exceptions, polling helpers.
  • Production Go? Go SDK — context-aware polling, custom HTTP client injection, generated models.
  • R workflows? R SDK — R6 client with wait_forecast, pagination iterators, and CRAN distribution.
  • JVM / Java? Java SDKOptions.builder() pattern, forecasts().waitUntilSettled, callback-based pagination.

You can use multiple clients in the same project — for example, curl in CI smoke tests and the SDK in your service code.

Versioning

All SDKs use SemVer independently of the API server version. Pin to a tag for production builds. The wire contract itself is OpenAPI-versioned; breaking changes appear as new operations or new schema versions, not silent edits to existing ones.

Package pages

ClientPackage
Python SDKsybilion on PyPI
Go SDKgo.sybilion.dev/sybilion on pkg.go.dev
R SDKsybilion on CRAN
Java SDKdev.sybilion:sybilion on Maven Central

Need a client for another language? Generate one from the public OpenAPI spec at https://api.sybilion.dev/openapi.yaml with openapi-generator.

See also

[email protected] · Slack · Discord (links in Community page & header icons)