Skip to main content
Docs: ApiGear Core

ApiGear over NATS

NATS is a high-performance messaging system for cloud and edge applications. ApiGear generates client and service adapter code that exposes your ObjectAPI interfaces over NATS, so an interface's operations, signals, and properties flow between any NATS-connected peers.

This page describes the wire protocol: how an interface maps onto NATS subjects and payloads. It is the same across every template that supports NATS, so a service generated for one language interoperates with a client generated for another. For the language-specific generated classes and usage, see the per-template pages linked below.

How it works

  • A service adapter wraps your local implementation, subscribes to operation and property-change subjects, and publishes signals and property values.
  • A client implements the same interface but publishes/subscribes over NATS instead of running the logic locally, acting as a remote proxy.
  • Operations use NATS's native request/reply mechanism. NATS also adds connectivity messaging (service.available, init, init.resp) so clients can discover a service and synchronise initial state.

In this section

Implemented by

The NATS transport is generated by these templates: