Reusable configuration for Kagi requests.
A client stores the configured session token and request options. Building a client performs no network I/O.
Fields
:session_token- Kagi session token string.:req_options- keyword list merged into eachReqrequest.
Summary
Functions
Builds a %Kagi.Client{} from application config.
Builds a %Kagi.Client{} or raises Kagi.Error.
Types
Functions
@spec new() :: {:ok, t()} | {:error, Kagi.Error.t()}
Builds a %Kagi.Client{} from application config.
Reads :session_token and :req_options from :kagi_ex config. Returns
{:error, %Kagi.Error{}} when the token is missing or :req_options is not
a keyword list.
Examples
config :kagi_ex, session_token: "abc"
{:ok, client} = Kagi.Client.new()
{:error, %Kagi.Error{reason: :missing_session_token}} = Kagi.Client.new()
@spec new!() :: t()
Builds a %Kagi.Client{} or raises Kagi.Error.