Cozify OneAPI (3.0)
The OpenAPI specification for the Cozify ONE platform.
Cozify Graph is the primary, unified API surface. Instead of per-resource REST endpoints, a single pair of endpoints dispatches a polymorphic set of typed messages, each selected by its type discriminator:
PUT /graph/command— change state.POST /graph/query— read state.
Commands that start long-running work return an operation you can track to completion, and server-side changes are delivered live as push messages over the SignalR hub stream. The classic per-provider REST endpoints (Hub, Hubs, DeviceRegister) are deprecated in favor of Graph.
If you are new to Cozify Services, there are some terms you might not be familiar with.
- resource — A manageable item available through the platform. Hubs, Devices and Sites are examples of resources; resource groups, subscriptions and tags are too.
- resource group — A container that holds related resources for a platform solution. You decide which resources belong to a group based on what makes the most sense for your organization.
- resource provider — A service that supplies platform resources. For example, the canonical site resource provider is
Cozify.Sites, which supplies the structural management of site (a.k.a. building) resources.Cozify.DeviceRegisteris another common resource provider.
In addition to the REST endpoints described here, the API is available over a persistent SignalR connection at the /hub/v1 endpoint. See Microsoft's guide to SignalR streaming for how to consume it from a .NET / JavaScript / Java client.
The Graph command/query API is exposed as hub methods that carry the same envelopes as the REST endpoints:
Command(CommandRequest)returnsCommandResponse— the equivalent ofPUT /graph/command.Query(QueryRequest)returnsQueryResponse— the equivalent ofPOST /graph/query.
Note: Cozify supports Transport Layer Security (TLS) 1.2 or later only.