# bowline_client v1.2.0 - Table of Contents

> Runtime for Bowline generated Elixir clients

## Pages

- [bowline_client](readme.md)
- [bowline_client](changelog.md)

## Modules

- [BowlineClient](BowlineClient.md): Runtime for Bowline generated Elixir clients: the transport, the error
envelope, decoding helpers, and validation rules that generated modules use.

- [BowlineClient.Empty](BowlineClient.Empty.md): The input or output of a procedure declared with `struct{}`.
- [BowlineClient.Encode](BowlineClient.Encode.md): Encoding helpers used by generated `to_map/1` functions.
- [BowlineClient.Issue](BowlineClient.Issue.md): One validation failure: the JSON path, the rule, and the message the server would send.
- [BowlineClient.Read](BowlineClient.Read.md): Decoding helpers used by generated `from_map/1` functions; each raises `ArgumentError` naming the key on a shape mismatch.
- [BowlineClient.Rules](BowlineClient.Rules.md): Validation rules with the same semantics and messages as the Bowline server.
- [BowlineClient.SSE](BowlineClient.SSE.md): Parser for the server-sent event framing the Bowline runtime writes.
- [BowlineClient.Transport](BowlineClient.Transport.md): Sends procedure calls to a Bowline handler over HTTP and maps every outcome
to `{:ok, value}` or `{:error, %BowlineClient.Error{}}`.

- Exceptions
  - [BowlineClient.Error](BowlineClient.Error.md): A failed call: the Bowline error code, the message, the HTTP status, details, and validation issues.

