Jev.Wire (Jev v0.2.2)

Copy Markdown View Source

The /v1/systemone response as JSON-shaped structs.

These are boundary codecs generated by JSONCodec from the struct and type declarations below. Jev.HTTP decodes a response body into a Jev.Wire.Response, and Jev.reply/3 turns that into the plain reply map. Nothing else in the library sees the wire shape, and nothing in your code needs to.

The three answer kinds share one struct, Jev.Wire.Answer, because that is how the API sends them: a type and the fields of that type. Numbers are number() rather than float() since a server may send 1 for a probability of one. Unknown keys are ignored, so servers that add fields keep working; a missing answers, a non-numeric probability, or an unknown type is a JSONCodec.Error with the path of the offending field.

Jev.Wire.Response.schema/0 is the JSON Schema of what the client accepts.