# GENERATED FILE - DO NOT EDIT (source: assets/js/types/evcc.ts, update: make openapi) components: schemas: State: description: Complete system state as returned by /api/state and pushed via websocket and MQTT. This structure mirrors the internal UI state and carries no compatibility promise. Fields may change or disappear between releases. type: object properties: telemetry: description: Telemetry is enabled. type: boolean experimental: description: Experimental UI features are enabled. type: boolean setupRequired: description: Initial setup is required. type: boolean startupCompleted: description: Startup has completed. type: boolean apiReady: description: HTTP API is ready to accept requests. type: boolean loadpoints: description: Charging locations. One entry per configured loadpoint. type: array items: $ref: "#/components/schemas/Loadpoint" forecast: $ref: "#/components/schemas/Forecast" description: Price, CO₂ and solar production forecasts. currency: $ref: "#/components/schemas/Currency" description: Configured currency for all monetary values. fatal: description: Fatal startup errors. type: array items: $ref: "#/components/schemas/FatalError" authProviders: $ref: "#/components/schemas/AuthProviders" description: Status of configured vehicle authentication providers, keyed by provider name. version: description: Running evcc version. type: string availableVersion: description: Latest available evcc version. type: string system: description: Operating system and architecture. type: string example: linux/amd64 timezone: description: Server time zone abbreviation and UTC offset. type: string example: CEST +02:00 battery: $ref: "#/components/schemas/Battery" description: Aggregated home battery state. batteryMode: $ref: "#/components/schemas/BatteryMode" description: Current operation mode of the home battery. grid: $ref: "#/components/schemas/Meter" description: Grid meter data. gridConfigured: description: A grid meter is configured. type: boolean pv: description: Solar generation meters. One entry per configured pv meter. type: array items: $ref: "#/components/schemas/Meter" pvPower: description: Total solar generation power in W. Sum of all pv meters. type: number pvEnergy: description: Total solar generation energy in kWh. type: number aux: description: Auxiliary consumption meters. Their power is treated as available for charging. type: array items: $ref: "#/components/schemas/Meter" auxPower: description: Total power of all auxiliary meters in W. type: number ext: description: Additional meters for monitoring purposes. type: array items: $ref: "#/components/schemas/Meter" consumers: description: Consumption meters of individual devices for monitoring purposes. type: array items: $ref: "#/components/schemas/Meter" homePower: description: Home consumption power in W. type: number residualPower: description: Configured grid operating point in W. Positive values maintain grid import. type: number gridExportLimit: description: Static grid export power limit in W used as optimizer constraint, 0 = disabled. An active HEMS curtailment takes precedence. type: number greenShareHome: description: Share of green energy in home consumption, between 0 and 1. type: number greenShareLoadpoints: description: Share of green energy used for charging, between 0 and 1. type: number tariffs: $ref: "#/components/schemas/GenericConfigStatus" description: Configured tariffs. Structure depends on configuration. tariffGrid: description: Current grid energy price per kWh in the configured currency. type: number tariffFeedIn: description: Current feed-in rate per kWh in the configured currency. type: number tariffCo2: description: Current grid CO₂ emissions in g/kWh. type: number tariffSolar: description: Current cost of solar generation per kWh in the configured currency. type: number tariffPriceHome: description: Current energy price of home consumption per kWh, taking the green energy share into account. type: number tariffPriceLoadpoints: description: Current energy price of charging per kWh, taking the green energy share into account. type: number tariffCo2Home: description: Current CO₂ emissions of home consumption in g/kWh, taking the green energy share into account. type: number tariffCo2Loadpoints: description: Current CO₂ emissions of charging in g/kWh, taking the green energy share into account. type: number tariffTemperature: description: Current outside temperature in °C. type: number mqtt: $ref: "#/components/schemas/MqttConfig" description: MQTT integration configuration. influx: $ref: "#/components/schemas/InfluxConfig" description: InfluxDB integration configuration. network: $ref: "#/components/schemas/Network" description: Network configuration. hems: $ref: "#/components/schemas/Hems" description: Home energy management system integration. shm: $ref: "#/components/schemas/ShmConfig" description: SMA Home Manager configuration. sponsor: $ref: "#/components/schemas/Sponsor" description: Sponsorship status. eebus: $ref: "#/components/schemas/Eebus" description: EEBus integration configuration and status. remote: $ref: "#/components/schemas/Remote" description: Remote access configuration and connection status. modbusproxy: description: Modbus proxy configuration. type: array nullable: true items: $ref: "#/components/schemas/ModbusProxy" messaging: $ref: "#/components/schemas/GenericConfigStatus" description: Messaging services configuration. Structure depends on configuration. messagingEvents: description: Configured notification messages per event type. nullable: true allOf: - $ref: "#/components/schemas/MessagingEvents" interval: description: Update interval of the control loop in seconds. type: number circuits: description: Load management circuits, keyed by circuit name. type: object additionalProperties: $ref: "#/components/schemas/Circuit" bufferSoc: description: Battery buffer SoC in %. Energy above this level may be used for charging in solar mode. type: number prioritySoc: description: Battery priority SoC in %. Home battery is charged first while below this level. type: number bufferStartSoc: description: Battery buffer start SoC in %. Solar charging starts automatically above this level. type: number batteryDischargeControl: description: Home battery discharge is prevented during fast charging and planned charging. type: boolean batteryGridDischarge: description: Home battery is allowed to discharge to the grid (experimental). type: boolean solarAdjusted: description: Solar forecast is adjusted to real production data (experimental). type: boolean batteryGridChargeLimit: description: Price or emission limit for charging the home battery from grid. type: number nullable: true batteryGridChargeActive: description: Home battery is currently charged from grid. type: boolean smartCostAvailable: description: A dynamic grid price or CO₂ forecast is configured. type: boolean smartCostType: $ref: "#/components/schemas/SmartCostType" description: Type of the smart charging limit, price based or emission based. smartFeedInPriorityAvailable: description: A feed-in tariff with forecast is configured. type: boolean historyUpdated: description: Time of the last energy history update. type: string format: date-time siteTitle: description: Configured site title. type: string deviceColors: description: Colors assigned to devices for consistent UI display. type: array items: $ref: "#/components/schemas/DeviceColorEntry" vehicles: description: Configured vehicles, keyed by vehicle name. type: object additionalProperties: $ref: "#/components/schemas/Vehicle" statistics: $ref: "#/components/schemas/Statistics" description: Charging statistics over different time periods. authDisabled: description: Authentication is disabled. type: boolean config: description: Path of the evcc configuration file. type: string database: description: Path of the evcc database. type: string ocpp: $ref: "#/components/schemas/Ocpp" description: OCPP server configuration and connected stations. ocppforwarder: $ref: "#/components/schemas/OcppForwarder" description: OCPP forwarder rules and upstream connection status. optimizer: description: Battery optimizer is enabled. type: boolean optimizerChargingStrategy: description: Selected battery optimizer charging strategy. type: string optimizerChargingStrategies: description: Available battery optimizer charging strategies. type: array items: type: string mcp: description: Built-in MCP server is enabled. type: boolean demoMode: description: Instance runs in demo mode. type: boolean required: - loadpoints - forecast - vehicles AuthProviders: description: Status of configured vehicle authentication providers, keyed by provider name. type: object additionalProperties: type: object properties: id: type: string authenticated: type: boolean required: - id - authenticated Battery: description: Home battery state. Aggregated across all battery meters. type: object properties: power: description: Current battery power in W. Positive means discharging, negative means charging. type: number capacity: description: Total battery capacity in kWh. type: number soc: description: Charge level in %. Weighted by capacity across all batteries. type: number energy: description: Total discharged energy in kWh. type: number returnEnergy: description: Total charged energy in kWh. type: number devices: description: Measurement data per battery meter. type: array items: $ref: "#/components/schemas/BatteryMeter" forecast: $ref: "#/components/schemas/BatteryForecast" description: Projected charge levels based on the solar and price forecast. required: - power - capacity - soc BatteryForecast: description: Projected home battery charge levels based on the solar and price forecast. type: object properties: highest: $ref: "#/components/schemas/BatteryForecastPoint" description: Projected highest charge level. lowest: $ref: "#/components/schemas/BatteryForecastPoint" description: Projected lowest charge level. BatteryForecastPoint: description: A projected home battery charge level at a point in time. type: object properties: soc: description: Projected charge level in %. type: number time: description: Time of the projected charge level. type: string format: date-time limit: description: The projection hits the upper or lower battery limit. type: boolean required: - soc - time BatteryMeter: description: Measurement data of a single home battery meter. type: object properties: name: description: Unique device name of the meter. type: string power: description: Current power in W. type: number title: description: Meter title for UI display. type: string icon: description: Meter icon name for UI display. type: string energy: description: Total energy in kWh. type: number returnEnergy: description: Total exported energy in kWh. type: number powers: description: Power per phase in W. type: array items: type: number currents: description: Current per phase in A. type: array items: type: number soc: description: Charge level in %. type: number controllable: description: Battery supports external control of its operation mode. type: boolean capacity: description: Battery capacity in kWh. Zero when not specified. type: number suggestion: $ref: "#/components/schemas/BatterySuggestion" description: Battery optimizer suggestion. required: - capacity - controllable - power - soc BatteryMode: description: Battery operation mode. type: string enum: - unknown - normal - hold - charge - holdcharge BatterySuggestion: description: Battery optimizer suggestion for a home battery. type: object properties: action: description: Suggested operation mode. type: string enum: - normal - hold - charge - holdcharge - discharge charge: description: Recommended charge power in W. type: number discharge: description: Recommended discharge power in W. type: number actionable: description: Suggestion differs from the current operating mode. type: boolean required: - action Certificate: description: A TLS certificate key pair. type: object properties: public: description: Public certificate in PEM format. type: string private: description: Private key in PEM format. Redacted. type: string required: - public - private ChargeMode: description: Charging mode. type: string enum: - off - now - minpv - pv ChargerStatusReason: description: Reason why the charger is waiting. type: string enum: - unknown - waitingforauthorization - disconnectrequired Circuit: description: A load management circuit limiting power and current of its assigned loadpoints. type: object properties: title: description: Circuit title for UI display. type: string icon: description: Circuit icon name for UI display. type: string parent: description: Name of the parent circuit. type: string power: description: Current power in W. type: number current: description: Current in A. type: number maxPower: description: Maximum allowed power in W. type: number maxCurrent: description: Maximum allowed current in A. type: number required: - power Currency: description: Currency in ISO 4217 format. type: string enum: - AUD - BGN - BRL - CAD - CHF - CNY - CZK - EUR - GBP - HUF - ILS - JPY - NZD - NOK - PLN - RON - USD - DKK - SEK - ZAR - TRY - MYR - THB - BYN - UAH - RUB - KZT DeviceColorEntry: description: Color assigned to a device for consistent UI display. type: object properties: title: description: Device title the color is assigned to. type: string color: description: Assigned color as CSS value. type: string required: - title - color Eebus: description: EEBus integration configuration and status. type: object properties: config: $ref: "#/components/schemas/EebusConfig" description: Static configuration. status: $ref: "#/components/schemas/EebusStatus" description: Runtime status. yamlSource: description: Source of the configuration, evcc.yaml file or database. type: string enum: - file - db EebusConfig: description: EEBus integration configuration. type: object properties: uri: description: URI the EEBus service listens on. type: string port: description: Port the EEBus service listens on. type: number shipid: description: SHIP id. type: string interfaces: description: Network interfaces the EEBus service uses. type: array items: type: string certificate: $ref: "#/components/schemas/Certificate" description: TLS certificate. required: - port - shipid EebusStatus: description: EEBus runtime status. type: object properties: ski: description: SKI (subject key identifier) used for pairing. type: string qr: description: QR code payload for pairing. type: string required: - ski EnergyByDay: description: Expected solar production energy of a day. type: object properties: energy: description: Expected production energy in kWh. type: number complete: description: Forecast data covers the whole day. type: boolean required: - energy - complete FatalError: description: A fatal startup error. type: object properties: error: description: Error message. type: string class: description: Device class the error originates from, like meter or charger. type: string device: description: Name of the device that caused the error. type: string required: - error Forecast: description: Price, CO₂ and solar production forecasts. type: object properties: grid: description: Grid price forecast. Price per kWh in the configured currency per time slot. type: array items: $ref: "#/components/schemas/ForecastSlot" co2: description: CO₂ emission forecast in g/kWh per time slot. type: array items: $ref: "#/components/schemas/ForecastSlot" solar: $ref: "#/components/schemas/SolarDetails" description: Solar production forecast. planner: description: Charging cost forecast used by the plan optimizer per time slot. type: array items: $ref: "#/components/schemas/ForecastSlot" feedin: description: Feed-in rate forecast. Rate per kWh in the configured currency per time slot. type: array items: $ref: "#/components/schemas/ForecastSlot" temperature: description: Temperature forecast in °C per time slot. type: array items: $ref: "#/components/schemas/ForecastSlot" ForecastSlot: description: A forecast time slot as [start, end, value] array. Start and end are unix seconds. Value unit depends on the forecast type. type: array items: type: number minItems: 3 maxItems: 3 GenericConfigStatus: description: Configuration and runtime status of an integration. Structure depends on configuration. type: object properties: config: description: Static configuration. status: description: Runtime status. yamlSource: description: Source of the configuration, evcc.yaml file or database. type: string enum: - file - db Hems: description: Home energy management system integration. type: object properties: config: $ref: "#/components/schemas/HemsConfig" description: Static configuration. status: $ref: "#/components/schemas/HemsStatus" description: Runtime status. yamlSource: description: Source of the configuration, evcc.yaml file or database. type: string enum: - file - db HemsConfig: description: Home energy management system configuration. type: object properties: configured: description: A home energy management system is configured. type: boolean required: - configured HemsStatus: description: Current external limits imposed by the home energy management system. type: object properties: dimmed: description: Consumption is currently limited. type: boolean curtailed: description: Allowed feed-in in %. Values below 100 mean production is curtailed. type: number maxConsumptionPower: description: Maximum allowed consumption power in W. type: number maxProductionPower: description: Maximum allowed production power in W. type: number InfluxConfig: description: InfluxDB integration configuration. type: object properties: url: description: InfluxDB server URL. type: string database: description: Database name (InfluxDB 1.x) or bucket (InfluxDB 2.x). type: string org: description: Organization (InfluxDB 2.x). type: string token: description: Access token (InfluxDB 2.x). Redacted. type: string user: description: Username (InfluxDB 1.x). type: string password: description: Password (InfluxDB 1.x). Redacted. type: string insecure: description: Skip TLS certificate verification. type: boolean required: - url - database - org Loadpoint: description: A charging location with a charger, an optional dedicated meter and an optional vehicle. type: object properties: name: description: Unique loadpoint identifier used in API routes and configuration. type: string batteryBoost: description: Battery boost is active. When enabled, home battery power is used for fast charging. type: boolean chargeCurrents: description: Charging current per phase in A. type: array items: type: number chargeDuration: description: Duration of the current charging session in seconds. type: number chargePower: description: Current charging power in W. type: number chargeRemainingDuration: description: Estimated remaining charging time in seconds. type: number chargeRemainingEnergy: description: Estimated remaining energy in kWh. type: number chargeTotalImport: description: Total energy imported by the charge meter in kWh. type: number chargeVoltages: description: Charging voltage per phase in V. type: array items: type: number chargedEnergy: description: Energy charged in the current charging session in kWh. type: number chargerFeatureAutodetectDisabled: description: The connected vehicle is not identified automatically by its status. type: boolean chargerFeatureAverage: description: Values are averaged. type: boolean chargerFeatureCacheable: description: Values are cached. type: boolean chargerFeatureClimaterDisabled: description: The climater state of the connected vehicle is ignored for charge control. type: boolean chargerFeatureCoarseCurrent: description: Charger only supports full ampere steps for current control. type: boolean chargerFeatureContinuous: description: Charger is a heating device where disabled means normal operation. type: boolean chargerFeatureHeating: description: Charger is a heating device. SoC values represent temperature in degrees. type: boolean chargerFeatureIntegratedDevice: description: Charger is an always-connected device without vehicles and charging sessions, like a heat pump. type: boolean chargerFeatureOffline: description: The connected vehicle only provides data while charging. type: boolean chargerFeatureRetryable: description: Vehicle API calls are retried on failure. type: boolean chargerFeatureStreaming: description: The connected vehicle pushes data updates instead of being polled. type: boolean chargerFeatureSwitchDevice: description: Charger is a switchable device without current control, like a heat pump or switch socket. type: boolean chargerFeatureWakeUpDisabled: description: No wake-up calls are sent to the connected vehicle. type: boolean chargerFeatureWelcomeCharge: description: The connected vehicle may need a short welcome charge to start communicating. type: boolean chargerIcon: description: Charger icon name for UI display. type: string nullable: true chargerPhases1p3p: description: Charger supports automatic switching between 1-phase and 3-phase charging. type: boolean chargerSinglePhase: description: Charger is physically connected with a single phase. type: boolean chargerStatusReason: description: Reason why the charger is waiting, like a pending authorization or a required disconnect. nullable: true allOf: - $ref: "#/components/schemas/ChargerStatusReason" charging: description: A vehicle is connected and charging. type: boolean connected: description: A vehicle is connected to the charger. type: boolean connectedDuration: description: Duration since the vehicle was connected, in seconds. type: number disabled: description: Loadpoint is disabled via configuration. type: boolean disableDelay: description: Delay before charging stops in solar mode, in seconds. type: number disableThreshold: description: Grid draw power above which charging stops in solar mode, in W. type: number effectiveLimitSoc: description: Currently applied SoC limit in %. type: number effectiveMaxCurrent: description: Currently applied maximum charging current in A. type: number effectiveMinCurrent: description: Currently applied minimum charging current in A. type: number effectiveMinSoc: description: Currently applied minimum SoC in %. type: number effectivePlanId: description: Id of the currently applied charging plan. Zero if no plan is active. type: number effectivePlanSoc: description: SoC goal in % of the currently applied charging plan. type: number effectivePlanTime: description: Target time of the currently applied charging plan. type: string nullable: true format: date-time effectivePlanStrategy: $ref: "#/components/schemas/PlanStrategy" description: Currently applied charging plan strategy. effectivePriority: description: Currently applied priority. type: number enableDelay: description: Delay before charging starts in solar mode, in seconds. type: number enableThreshold: description: Available surplus power above which charging starts in solar mode, in W. type: number enabled: description: Charger is currently allowed to charge. type: boolean limitEnergy: description: Session energy limit in kWh. Zero means no limit. type: number limitSoc: description: Session SoC limit in %. Zero means no limit. type: number maxCurrent: description: Maximum charging current in A. type: number minCurrent: description: Minimum charging current in A. type: number minSoc: description: Minimum SoC in %. Vehicle is fast-charged until this level is reached. type: number minSocNotReached: description: Vehicle SoC is below the configured minimum SoC. type: boolean mode: $ref: "#/components/schemas/ChargeMode" description: Charging behavior. offeredCurrent: description: Current offered to the vehicle in A. type: number phaseAction: $ref: "#/components/schemas/PhaseAction" description: Pending phase switching action in solar mode. phaseRemaining: description: Remaining time until the pending phase switching action executes, in seconds. type: number phasesActive: description: Number of phases expected to be used for charging. type: number phasesConfigured: description: Configured phase mode. 0 is automatic switching, 1 and 3 select a fixed phase count. type: number plan: description: Time slots of the current charging plan. type: array nullable: true items: $ref: "#/components/schemas/Rate" planActive: description: The current time slot is an active charging slot of the plan. type: boolean planEnergy: description: Energy goal of the charging plan in kWh. type: number planOverrun: description: Duration in seconds the charging plan is projected to miss its target time. type: number planStrategy: $ref: "#/components/schemas/PlanStrategy" description: Charging plan strategy. planProjectedEnd: description: Projected end of the charging plan. End of the last planned slot. type: string nullable: true format: date-time planProjectedStart: description: Projected start of the charging plan. Start of the earliest planned slot. type: string nullable: true format: date-time planTime: description: Target time of the charging plan. type: string nullable: true format: date-time priority: description: Priority for surplus distribution. Higher number means higher priority. type: number pvAction: $ref: "#/components/schemas/PvAction" description: Pending charge start or stop action in solar mode. pvRemaining: description: Remaining time until the pending charge start or stop action executes, in seconds. type: number last24hEnergy: description: Energy used in the last 24 hours in kWh. type: number last7dEnergy: description: Energy used in the last 7 days in kWh. type: number sessionCo2PerKWh: description: Average CO₂ emissions of the current charging session in g/kWh. type: number nullable: true sessionEnergy: description: Energy charged in the current charging session in kWh. type: number sessionPrice: description: Total cost of the current charging session in the configured currency. type: number nullable: true sessionPricePerKWh: description: Average energy price of the current charging session per kWh in the configured currency. type: number nullable: true sessionSolarPercentage: description: Share of solar energy in the current charging session in %. type: number smartCostActive: description: Fast charging with cheap or clean grid energy is currently active. type: boolean smartCostLimit: description: Price or emission limit for fast charging with grid energy. type: number nullable: true smartCostNextStart: description: Start of the next fast charging period with cheap or clean grid energy. type: string nullable: true format: date-time smartFeedInPriorityActive: description: Charging pause for prioritized feed-in is currently active. type: boolean smartFeedInPriorityLimit: description: Feed-in rate limit above which charging is paused. type: number nullable: true smartFeedInPriorityNextStart: description: Start of the next charging pause for prioritized feed-in. type: string nullable: true format: date-time suggestion: description: Charging suggestion from the battery optimizer. nullable: true allOf: - $ref: "#/components/schemas/LoadpointSuggestion" title: description: Loadpoint title for UI display. type: string todayEnergy: description: Energy used since midnight in kWh. type: number vehicleClimaterActive: description: Climater of the connected vehicle is active. type: boolean nullable: true vehicleDetectionActive: description: Automatic vehicle detection is running. type: boolean vehicleLimitSoc: description: SoC limit configured in the vehicle itself, in %. type: number vehicleName: description: Unique name of the connected vehicle. Empty for guest vehicles. type: string vehicleOdometer: description: Odometer reading of the connected vehicle in km. type: number vehicleRange: description: Range of the connected vehicle in km. type: number vehicleSoc: description: Charge level of the connected vehicle in %. Temperature in degrees for heating devices. type: number vehicleTitle: description: Title of the connected vehicle for UI display. type: string vehicleWelcomeActive: description: A short welcome charge is active to enable vehicle communication. type: boolean batteryBoostLimit: description: SoC limit for battery boost in %. type: number ui: $ref: "#/components/schemas/LoadpointUi" description: Display-only UI settings. required: - name - batteryBoost - chargeDuration - chargePower - chargedEnergy - chargerFeatureAutodetectDisabled - chargerFeatureAverage - chargerFeatureCacheable - chargerFeatureClimaterDisabled - chargerFeatureCoarseCurrent - chargerFeatureContinuous - chargerFeatureHeating - chargerFeatureIntegratedDevice - chargerFeatureOffline - chargerFeatureRetryable - chargerFeatureStreaming - chargerFeatureSwitchDevice - chargerFeatureWakeUpDisabled - chargerFeatureWelcomeCharge - chargerIcon - chargerPhases1p3p - chargerSinglePhase - charging - connected - connectedDuration - disableDelay - disableThreshold - effectiveLimitSoc - effectiveMaxCurrent - effectiveMinCurrent - effectiveMinSoc - effectivePlanId - effectivePlanSoc - effectivePlanTime - effectivePlanStrategy - effectivePriority - enableDelay - enableThreshold - enabled - limitEnergy - limitSoc - maxCurrent - minCurrent - minSoc - minSocNotReached - mode - offeredCurrent - phaseAction - phaseRemaining - phasesActive - phasesConfigured - plan - planActive - planEnergy - planOverrun - planStrategy - planProjectedEnd - planProjectedStart - planTime - priority - pvAction - pvRemaining - sessionCo2PerKWh - sessionEnergy - sessionPrice - sessionPricePerKWh - sessionSolarPercentage - smartCostActive - smartCostLimit - smartCostNextStart - smartFeedInPriorityActive - smartFeedInPriorityLimit - smartFeedInPriorityNextStart - title - vehicleClimaterActive - vehicleDetectionActive - vehicleLimitSoc - vehicleName - vehicleOdometer - vehicleRange - vehicleSoc - vehicleTitle - vehicleWelcomeActive - batteryBoostLimit LoadpointSuggestion: description: Battery optimizer suggestion for a loadpoint. type: object properties: action: description: Suggested charging action. type: string enum: - charge - stop charge: description: Recommended charge power in W. type: number discharge: description: Recommended discharge power in W. type: number actionable: description: Suggestion differs from the current operating mode. type: boolean required: - action LoadpointUi: description: Display-only UI settings of a loadpoint. type: object properties: minTemp: description: Lower bound of the temperature scale for heating devices, in degrees. type: number maxTemp: description: Upper bound of the temperature scale for heating devices, in degrees. type: number required: - minTemp - maxTemp MessagingEvent: description: A configured notification message. type: object properties: title: description: Message title template. type: string msg: description: Message body template. type: string disabled: description: Notifications for this event are disabled. type: boolean required: - title - msg - disabled MessagingEvents: description: Configured notification messages, keyed by event type. type: object properties: start: $ref: "#/components/schemas/MessagingEvent" stop: $ref: "#/components/schemas/MessagingEvent" connect: $ref: "#/components/schemas/MessagingEvent" disconnect: $ref: "#/components/schemas/MessagingEvent" soc: $ref: "#/components/schemas/MessagingEvent" guest: $ref: "#/components/schemas/MessagingEvent" asleep: $ref: "#/components/schemas/MessagingEvent" planoverrun: $ref: "#/components/schemas/MessagingEvent" suggestion: $ref: "#/components/schemas/MessagingEvent" required: - start - stop - connect - disconnect - soc - guest - asleep - planoverrun - suggestion additionalProperties: false Meter: description: Measurement data of a single meter. type: object properties: name: description: Unique device name of the meter. type: string power: description: Current power in W. type: number title: description: Meter title for UI display. type: string icon: description: Meter icon name for UI display. type: string energy: description: Total energy in kWh. type: number returnEnergy: description: Total exported energy in kWh. type: number powers: description: Power per phase in W. type: array items: type: number currents: description: Current per phase in A. type: array items: type: number required: - power ModbusBaudrate: description: Serial baud rate. type: number enum: - 1200 - 9600 - 19200 - 38400 - 57600 - 115200 ModbusComset: description: Serial communication parameters. type: string enum: - 8N1 - "8E1" - 8N2 ModbusProxy: description: A Modbus proxy forwarding requests to a physical device. type: object properties: port: description: Port the proxy listens on. type: number readonly: $ref: "#/components/schemas/ModbusProxyReadonly" description: How write requests are handled. settings: $ref: "#/components/schemas/ModbusProxySettings" description: Connection settings of the physical device. required: - port - readonly - settings ModbusProxyReadonly: description: How the Modbus proxy handles write requests. type: string enum: - "false" - "true" - deny ModbusProxySettings: description: Connection settings of a Modbus device. type: object properties: uri: description: Device address for TCP connections. type: string rtu: description: Use RTU protocol over TCP. type: boolean device: description: Serial device path. type: string baudrate: $ref: "#/components/schemas/ModbusBaudrate" description: Serial baud rate. comset: $ref: "#/components/schemas/ModbusComset" description: Serial communication parameters. MqttConfig: description: MQTT integration configuration. type: object properties: broker: description: Broker address. type: string topic: description: Root topic all values are published under. type: string user: description: Broker username. type: string password: description: Broker password. Redacted. type: string clientID: description: MQTT client id. type: string insecure: description: Skip TLS certificate verification. type: boolean caCert: description: CA certificate for TLS connections. type: string clientCert: description: Client certificate for TLS connections. type: string clientKey: description: Client key for TLS connections. type: string required: - broker - topic Network: description: Network configuration. type: object properties: schema: description: URL schema, http or https. type: string host: description: Hostname. type: string port: description: HTTP port. type: number externalUrl: description: Externally reachable URL. type: string internalUrl: description: URL in the local network. type: string required: - host - port Ocpp: description: OCPP server configuration and status. type: object properties: config: $ref: "#/components/schemas/OcppConfig" description: OCPP server configuration. status: $ref: "#/components/schemas/OcppStatus" description: OCPP server status. required: - config - status OcppConfig: description: OCPP server configuration. type: object properties: port: description: Port the OCPP server listens on. type: number required: - port OcppConnectionStatus: description: Connection status of an OCPP station. type: string enum: - unknown - configured - connected OcppForwarder: description: OCPP forwarder rules and upstream connection status. type: object properties: config: description: Static configuration. type: array items: $ref: "#/components/schemas/OcppForwarderRule" status: description: Runtime status. type: array items: $ref: "#/components/schemas/OcppForwarderSession" yamlSource: description: Source of the configuration, evcc.yaml file or database. type: string enum: - file - db OcppForwarderRule: description: A rule forwarding an OCPP station to an upstream backend. type: object properties: stationId: description: Station id to forward. type: string upstreamUrl: description: URL of the upstream OCPP backend. type: string password: description: Password for upstream authentication. Redacted. type: string upstreamStationId: description: Station id used towards the upstream backend. type: string username: description: Username for upstream authentication. type: string insecure: description: Skip TLS certificate verification. type: boolean caCert: description: CA certificate for TLS connections. type: string readOnly: description: Only forward read operations to the station. type: boolean required: - stationId - upstreamUrl OcppForwarderSession: description: Connection status of an OCPP forwarder rule. type: object properties: chargerId: description: Charger id. type: string upstreamUrl: description: URL of the upstream OCPP backend. type: string upstreamConnected: description: Connection to the upstream backend is established. type: boolean error: description: Last connection error. type: string required: - chargerId - upstreamUrl - upstreamConnected OcppStationStatus: description: Connection status of an OCPP station. type: object properties: id: description: Station id. type: string status: $ref: "#/components/schemas/OcppConnectionStatus" description: Connection status. required: - id - status OcppStatus: description: OCPP server status. type: object properties: externalUrl: description: Externally reachable URL of the OCPP server. type: string stations: description: Connection status per configured station. type: array items: $ref: "#/components/schemas/OcppStationStatus" required: - stations PhaseAction: description: Pending phase switching action in solar mode. type: string enum: - inactive - scale1p - scale3p PlanStrategy: description: Charging plan strategy. type: object properties: continuous: description: Force continuous charging without gaps. type: boolean precondition: description: Duration of uninterrupted charging directly before the target time, in seconds. type: number required: - continuous - precondition PvAction: description: Pending charge start or stop action in solar mode. type: string enum: - inactive - enable - disable Rate: description: A time slot with an associated price or emission value. type: object properties: start: description: Start of the time slot. type: string format: date-time end: description: End of the time slot. type: string format: date-time value: description: Price per kWh in the configured currency or emissions in g/kWh. type: number required: - start - end - value Remote: description: Remote access configuration and connection status. type: object properties: config: $ref: "#/components/schemas/RemoteConfig" description: Static configuration. status: $ref: "#/components/schemas/RemoteStatus" description: Runtime status. yamlSource: description: Source of the configuration, evcc.yaml file or database. type: string enum: - file - db RemoteConfig: description: Remote access configuration. type: object properties: enabled: description: Remote access is enabled. type: boolean required: - enabled RemoteStatus: description: Remote access connection status. type: object properties: connected: description: Connection to the remote access server is established. type: boolean url: description: Remote access URL. type: string loginBlocked: description: Remote login attempts are currently blocked by the rate limiter. type: boolean lastSeen: description: Last remote activity per client, keyed by username. RFC3339 timestamps. type: object additionalProperties: type: string error: description: Last connection error. type: string required: - connected - loginBlocked RepeatingPlan: description: A repeating charging plan. type: object properties: weekdays: description: Weekdays the plan is active. 0 is Sunday, 6 is Saturday. type: array items: type: number time: description: Target time in HH:MM format. type: string tz: description: Time zone of the target time, like Europe/Berlin. type: string soc: description: SoC goal in %. type: number active: description: Plan is active. type: boolean required: - weekdays - time - tz - soc - active ShmConfig: description: SMA Home Manager configuration. type: object properties: vendorId: description: SMA vendor id. type: string deviceId: description: SMA device id. type: string deviceSerial: description: SMA device serial. type: string required: - vendorId - deviceId SmartCostType: description: Type of the smart charging limit. type: string enum: - co2 - pricedynamic - priceforecast - pricestatic SolarDetails: description: Solar production forecast. type: object properties: scale: description: Correction factor applied to the forecast based on past production. type: number today: $ref: "#/components/schemas/EnergyByDay" description: Expected production today. tomorrow: $ref: "#/components/schemas/EnergyByDay" description: Expected production tomorrow. dayAfterTomorrow: $ref: "#/components/schemas/EnergyByDay" description: Expected production the day after tomorrow. timeseries: description: Expected production power over time. type: array items: $ref: "#/components/schemas/TimeseriesEntry" Sponsor: description: Sponsorship status. type: object properties: config: description: Static configuration. status: $ref: "#/components/schemas/SponsorStatus" description: Runtime status. yamlSource: description: Source of the configuration, evcc.yaml file or database. type: string enum: - file - db SponsorStatus: description: Sponsorship status. type: object properties: name: description: Name of the sponsor. type: string expiresAt: description: Expiry time of the sponsor token. type: string format: date-time expiresSoon: description: Sponsor token expires soon. type: boolean token: description: Sponsor token. Redacted. type: string StaticEnergyPlan: description: Charging plan with an energy goal. type: object properties: energy: description: Energy goal in kWh. type: number time: description: Target time. type: string format: date-time required: - energy - time StaticPlan: description: Charging plan with a fixed target time and a SoC or energy goal. anyOf: - $ref: "#/components/schemas/StaticSocPlan" - $ref: "#/components/schemas/StaticEnergyPlan" StaticSocPlan: description: Charging plan with a SoC goal. type: object properties: soc: description: SoC goal in %. type: number time: description: Target time. type: string format: date-time required: - soc - time Statistics: description: Charging statistics, keyed by time period. type: object properties: 30d: $ref: "#/components/schemas/StatisticsData" 365d: $ref: "#/components/schemas/StatisticsData" thisYear: $ref: "#/components/schemas/StatisticsData" total: $ref: "#/components/schemas/StatisticsData" required: - 30d - 365d - thisYear - total StatisticsData: description: Aggregated charging statistics for a time period. type: object properties: avgCo2: description: Average CO₂ emissions in g/kWh. type: number avgPrice: description: Average energy price per kWh in the configured currency. type: number chargedKWh: description: Total charged energy in kWh. type: number solarPercentage: description: Share of solar energy in %. type: number required: - avgCo2 - avgPrice - chargedKWh - solarPercentage TimeseriesEntry: description: A forecast value at a point in time as [ts, val] array. ts is unix seconds, val is power in W. type: array items: type: number minItems: 2 maxItems: 2 Vehicle: description: A configured vehicle. type: object properties: name: description: Unique vehicle name used in API routes and configuration. type: string mode: description: Charge mode applied when the vehicle connects. anyOf: - $ref: "#/components/schemas/ChargeMode" - type: string enum: - "" minSoc: description: Minimum SoC in %. Vehicle is fast-charged until this level is reached. type: number limitSoc: description: SoC limit in %. Charging stops when reached. type: number plan: $ref: "#/components/schemas/StaticPlan" description: Charging plan with a fixed target time and SoC or energy goal. repeatingPlans: description: Repeating charging plans. type: array nullable: true items: $ref: "#/components/schemas/RepeatingPlan" planStrategy: $ref: "#/components/schemas/PlanStrategy" description: Charging plan strategy. title: description: Vehicle title for UI display. type: string features: description: Feature flags of the vehicle implementation. type: array items: type: string capacity: description: Usable battery capacity in kWh. type: number icon: description: Vehicle icon name for UI display. type: string required: - repeatingPlans - planStrategy - title