Packages

The official Elixir client SDK for EventSourcingDB – a purpose-built database for event sourcing.

Current section

Files

Jump to
eventsourcingdb lib eventsourcingdb requests ping.ex
Raw

lib/eventsourcingdb/requests/ping.ex

defmodule EventSourcingDB.Requests.Ping do
@moduledoc false
alias EventSourcingDB.Errors.PingFailed
alias EventSourcingDB.{OneShotRequest, Endpoint}
use Endpoint
use OneShotRequest
# region metadata
method :get
path "/api/v1/ping"
# region request
# parameters and serialization
@derive Jason.Encoder
defstruct []
# region response
# validation and parsing
def validate_body(%{"type" => "io.eventsourcingdb.api.ping-received"}), do: {:ok, nil}
def validate_body(_payload), do: {:error, %PingFailed{}}
end