OpenADR 3 API client library. Spec-driven HTTP client built on Martian with the OpenAPI spec as the single source of truth.
Functions return raw HTTP responses by default. Use the coerced helpers (programs, events, vens, etc.) to get namespaced Clojure entities.
OpenADR 3 API client library. Spec-driven HTTP client built on Martian with the OpenAPI spec as the single source of truth. Functions return raw HTTP responses by default. Use the coerced helpers (programs, events, vens, etc.) to get namespaced Clojure entities.
Two-layer data model for OpenADR 3 entities.
Raw layer: camelCase keys, string values — direct from the API JSON. Coerced layer: namespaced keywords, ZonedDateTimes, Durations, tick intervals.
Every coerced entity preserves the original raw data as :openadr/raw metadata.
Coercion of ValuesMap payloads is extensible via the coerce-payload multimethod,
dispatching on the payload :type string.
Schemas live in dedicated namespaces: openadr3.entities.schema — coerced entity schemas (the public contract) openadr3.entities.schema.raw — raw API schemas (boundary validation)
Two-layer data model for OpenADR 3 entities. Raw layer: camelCase keys, string values — direct from the API JSON. Coerced layer: namespaced keywords, ZonedDateTimes, Durations, tick intervals. Every coerced entity preserves the original raw data as :openadr/raw metadata. Coercion of ValuesMap payloads is extensible via the `coerce-payload` multimethod, dispatching on the payload :type string. Schemas live in dedicated namespaces: openadr3.entities.schema — coerced entity schemas (the public contract) openadr3.entities.schema.raw — raw API schemas (boundary validation)
Malli schemas for coerced OpenADR 3 entities.
These describe the Clojure-native shape produced by openadr3.entities coercion:
namespaced keywords, ZonedDateTimes, Durations, and tick intervals.
Malli schemas for coerced OpenADR 3 entities. These describe the Clojure-native shape produced by `openadr3.entities` coercion: namespaced keywords, ZonedDateTimes, Durations, and tick intervals.
Malli schemas for the raw OpenADR 3 API response shape.
These mirror the JSON exactly: camelCase keys, string values.
Most consumers should use openadr3.entities.schema (the coerced schemas)
instead — these are primarily useful for boundary validation.
Malli schemas for the raw OpenADR 3 API response shape. These mirror the JSON exactly: camelCase keys, string values. Most consumers should use `openadr3.entities.schema` (the coerced schemas) instead — these are primarily useful for boundary validation.
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |