Files
econet-exporter/contrib/econet-exporter.swagger.json
T
2026-07-16 16:32:44 -04:00

275 lines
6.8 KiB
JSON

{
"swagger": "2.0",
"info": {
"title": "econet/v1alpha1/econet.proto",
"version": "version not set"
},
"tags": [
{
"name": "EconetService"
}
],
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"paths": {
"/v1alpha1/devices": {
"get": {
"operationId": "EconetService_ListDevices",
"responses": {
"200": {
"description": "A successful response.",
"schema": {
"$ref": "#/definitions/v1alpha1ListDevicesResponse"
}
},
"default": {
"description": "An unexpected error response.",
"schema": {
"$ref": "#/definitions/rpcStatus"
}
}
},
"tags": [
"EconetService"
]
}
},
"/v1alpha1/devices/{serialNumber}": {
"get": {
"operationId": "EconetService_GetDevice",
"responses": {
"200": {
"description": "A successful response.",
"schema": {
"$ref": "#/definitions/v1alpha1GetDeviceResponse"
}
},
"default": {
"description": "An unexpected error response.",
"schema": {
"$ref": "#/definitions/rpcStatus"
}
}
},
"parameters": [
{
"name": "serialNumber",
"in": "path",
"required": true,
"type": "string"
}
],
"tags": [
"EconetService"
]
}
},
"/v1alpha1/devices/{serialNumber}/mode": {
"post": {
"operationId": "EconetService_SetMode",
"responses": {
"200": {
"description": "A successful response.",
"schema": {
"$ref": "#/definitions/v1alpha1SetModeResponse"
}
},
"default": {
"description": "An unexpected error response.",
"schema": {
"$ref": "#/definitions/rpcStatus"
}
}
},
"parameters": [
{
"name": "serialNumber",
"in": "path",
"required": true,
"type": "string"
},
{
"name": "body",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/EconetServiceSetModeBody"
}
}
],
"tags": [
"EconetService"
]
}
}
},
"definitions": {
"EconetServiceSetModeBody": {
"type": "object",
"properties": {
"mode": {
"$ref": "#/definitions/v1alpha1Mode"
}
}
},
"protobufAny": {
"type": "object",
"properties": {
"@type": {
"type": "string"
}
},
"additionalProperties": {}
},
"rpcStatus": {
"type": "object",
"properties": {
"code": {
"type": "integer",
"format": "int32"
},
"message": {
"type": "string"
},
"details": {
"type": "array",
"items": {
"type": "object",
"$ref": "#/definitions/protobufAny"
}
}
}
},
"v1alpha1Device": {
"type": "object",
"properties": {
"serialNumber": {
"type": "string"
},
"deviceId": {
"type": "string"
},
"friendlyName": {
"type": "string"
},
"type": {
"type": "string",
"title": "water_heater, thermostat, unknown"
},
"genericType": {
"type": "string",
"title": "e.g. heatpumpWaterHeater, gasWaterHeater"
},
"connected": {
"type": "boolean"
},
"wifiSignal": {
"type": "integer",
"format": "int32",
"title": "dB, MQTT-only"
},
"mode": {
"type": "string",
"title": "kebab-case, e.g. heat-pump, energy-saving"
},
"enabled": {
"type": "boolean"
},
"running": {
"type": "boolean"
},
"runningState": {
"type": "string"
},
"setpoint": {
"type": "integer",
"format": "int32",
"title": "degrees Fahrenheit"
},
"setpointMin": {
"type": "integer",
"format": "int32"
},
"setpointMax": {
"type": "integer",
"format": "int32"
},
"hotWaterAvailability": {
"type": "integer",
"format": "int32",
"title": "0/33/66/100, -1 unknown"
},
"alertCount": {
"type": "integer",
"format": "int32"
},
"away": {
"type": "boolean"
},
"lastUpdated": {
"type": "string",
"format": "date-time"
},
"supportedModes": {
"type": "array",
"items": {
"$ref": "#/definitions/v1alpha1Mode"
},
"title": "modes this device can be set to (may be empty)"
}
},
"description": "Device is the live state of a single Rheem EcoNet device\n(typically a water heater) as reported by the Rheem cloud."
},
"v1alpha1GetDeviceResponse": {
"type": "object",
"properties": {
"device": {
"$ref": "#/definitions/v1alpha1Device"
}
}
},
"v1alpha1ListDevicesResponse": {
"type": "object",
"properties": {
"devices": {
"type": "array",
"items": {
"type": "object",
"$ref": "#/definitions/v1alpha1Device"
}
}
}
},
"v1alpha1Mode": {
"type": "string",
"enum": [
"MODE_UNSPECIFIED",
"MODE_OFF",
"MODE_ELECTRIC",
"MODE_ENERGY_SAVING",
"MODE_HEAT_PUMP",
"MODE_HIGH_DEMAND",
"MODE_GAS",
"MODE_PERFORMANCE",
"MODE_VACATION",
"MODE_ELECTRIC_GAS"
],
"default": "MODE_UNSPECIFIED",
"description": "Mode is a settable operating mode for a water heater. The values mirror the\nkebab-case slugs reported in Device.mode. Not every device supports every\nmode; the supported set is device-specific (derived from the unit's reported\nmode list), so SetMode validates against the target device.\n\n - MODE_ELECTRIC_GAS: combined electric/gas backup mode (e.g. hybrid units)"
},
"v1alpha1SetModeResponse": {
"type": "object",
"properties": {
"device": {
"$ref": "#/definitions/v1alpha1Device",
"description": "Last-known device state. The mode change is applied asynchronously by the\nRheem cloud, so this reflects the requested mode only after a later poll."
}
}
}
}
}