Defines the HTTP client interface used to send messages to the Humio ingest APIs
params() :: %{ base_url: String.t(), path: String.t(), body: String.t(), headers: [tuple()] }
response() :: %{status: 100..599, body: String.t()}
result() :: {:ok, response()} | {:error, any()}
send(params()) :: result()