The JSON-RPC interfaces provides many ways to interact with Hyperion. You can retrieve information about your server, your instances and take actions (such as setting a color as input or switching lights off).The JSON-API Commands Overview provides guidance which commands can be applied in general, to single or multiple instances via one request. In addition, the overview outlines if authorization is required before or while sending requests (HTTP/S).You also find, if a command can be used via WebSocket/TCPSocket and/or HTTP/s. Every endpoint also has a tagging which way of communication is supported (see Connect to Hyperion).In case you are interested subscribing to updates, you can request selected events via setSubscriptions. The JSON-API Commands Overview provides guidance which subscriptions are possible to select from.
JSON is a standardized message format (see JSON.org) and is supported by most programming languages. It is human readable which makes for easier debugging.
Hyperion-py is a 3rd-party Python library for communication with Hyperion-NG. It uses the API described here as the underlying communication mechanism and presents it in a user-friendly way. As a 3rd party library, it is not supported by the Hyperion development team.