Skip to content
OAOpenAppPhysical Security as a Service
Login

SDKs

OpenApp ships SDKs for interacting with the public API from your own code: automation scripts, backend integrations, internal tooling, or third-party products built on top of OpenApp.

One wire contract, shared core where it matters

Section titled “One wire contract, shared core where it matters”

Every SDK targets the same HTTP API described by the canonical OpenAPI bundle (packages/api-spec/openapi.json in source). That keeps resources, operations, and models aligned across languages.

Transport and policy: The Python, Rust, and TypeScript packages build on the shared Rust implementation openapp-sdk-core (via PyO3, direct crate use, and the Node binding to the core C bridge). Authentication, retries, and error mapping stay consistent across those bindings.

The Go SDK is generated from the same OpenAPI document; outbound HTTP is implemented via openapp-sdk-core (CGO and the C bridge), consistent with the other bindings—see the Go SDK.

LanguageInstallDocumentation
Pythonpip install openapp-sdkPython SDK
Rustcargo add openapp-sdkRust SDK
TypeScript / Nodenpm install @tomers/openapp-sdkTypeScript SDK
Gogo get github.com/tomers/openapp-sdk/goGo SDK

Each language page lists package registries, source mirrors, and README links. Cross-language API topics (authentication, devices, errors, …) live under SDKs in the sidebar and include per-language examples.

Documentation: Authentication, API Keys, Auth (browser session), Organization context & pagination, Devices, Zones, Entities, EULA, Scripting, Integrations, LAN agent, Apartment Residents, Public Access, Organizations, Billing, Users, Me (current user), Status, Errors & retries (all languages), and the Python SDK reference (resources, errors, async) are the best starting points after the language overview above.

  • Interactive: API reference — browse operations and schemas in the browser.
  • Machine-readable: The docs site bundles the same bundle served as static JSON at /docs/api-spec/openapp-openapi.json (built from the repo file above). Use it for codegen, linting, or contract tests against the documented API.
  • Agents: Agent-relevant API index groups operations for automation and retrieval.

Additional languages (for example .NET, Ruby, PHP) are tracked in the multi-language SDK roadmap; capability and packaging will match this pattern when they ship.

If you need a language that is not listed yet, get in touch.

Bug reports and feature requests for the Python and Go SDKs (public sources) are triaged via tomers/openapp-sdk. Rust and Node: use GitHub issues for the SDK mirrors, the issue link on npm, or maintainer READMEs on those registries.

  • API reference — interactive documentation for the underlying HTTP contract.
  • Versioning & migration — how Python SDK versions evolve (other SDKs follow independent semver per artifact; see release notes per package).