# `CookieJar.HTTPoison`
[🔗](https://github.com/princemaple/cookie_jar/blob/v1.1.0/lib/cookie_jar/httpoison.ex#L2)

Use this module instead of HTTPoison, use jar as the first argument in all
function calls, i.e. [:get, :get!, :head, :head!, :options, :options!, :delete, :delete!, :post, :post!, :put, :put!, :patch, :patch!]

# `delete`
[🔗](https://github.com/princemaple/cookie_jar/blob/v1.1.0/lib/cookie_jar/httpoison.ex#L16)

```elixir
@spec delete(GenServer.server(), String.t(), HTTPoison.headers(), HTTPoison.options()) ::
  {:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()}
  | {:error, HTTPoison.Error.t()}
```

# `delete!`
[🔗](https://github.com/princemaple/cookie_jar/blob/v1.1.0/lib/cookie_jar/httpoison.ex#L16)

```elixir
@spec delete!(
  GenServer.server(),
  String.t(),
  HTTPoison.headers(),
  HTTPoison.options()
) ::
  HTTPoison.Response.t() | HTTPoison.AsyncResponse.t() | no_return()
```

# `get`
[🔗](https://github.com/princemaple/cookie_jar/blob/v1.1.0/lib/cookie_jar/httpoison.ex#L16)

```elixir
@spec get(GenServer.server(), String.t(), HTTPoison.headers(), HTTPoison.options()) ::
  {:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()}
  | {:error, HTTPoison.Error.t()}
```

# `get!`
[🔗](https://github.com/princemaple/cookie_jar/blob/v1.1.0/lib/cookie_jar/httpoison.ex#L16)

```elixir
@spec get!(GenServer.server(), String.t(), HTTPoison.headers(), HTTPoison.options()) ::
  HTTPoison.Response.t() | HTTPoison.AsyncResponse.t() | no_return()
```

# `head`
[🔗](https://github.com/princemaple/cookie_jar/blob/v1.1.0/lib/cookie_jar/httpoison.ex#L16)

```elixir
@spec head(GenServer.server(), String.t(), HTTPoison.headers(), HTTPoison.options()) ::
  {:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()}
  | {:error, HTTPoison.Error.t()}
```

# `head!`
[🔗](https://github.com/princemaple/cookie_jar/blob/v1.1.0/lib/cookie_jar/httpoison.ex#L16)

```elixir
@spec head!(GenServer.server(), String.t(), HTTPoison.headers(), HTTPoison.options()) ::
  HTTPoison.Response.t() | HTTPoison.AsyncResponse.t() | no_return()
```

# `options`
[🔗](https://github.com/princemaple/cookie_jar/blob/v1.1.0/lib/cookie_jar/httpoison.ex#L16)

```elixir
@spec options(
  GenServer.server(),
  String.t(),
  HTTPoison.headers(),
  HTTPoison.options()
) ::
  {:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()}
  | {:error, HTTPoison.Error.t()}
```

# `options!`
[🔗](https://github.com/princemaple/cookie_jar/blob/v1.1.0/lib/cookie_jar/httpoison.ex#L16)

```elixir
@spec options!(
  GenServer.server(),
  String.t(),
  HTTPoison.headers(),
  HTTPoison.options()
) ::
  HTTPoison.Response.t() | HTTPoison.AsyncResponse.t() | no_return()
```

# `patch`
[🔗](https://github.com/princemaple/cookie_jar/blob/v1.1.0/lib/cookie_jar/httpoison.ex#L27)

```elixir
@spec patch(
  GenServer.server(),
  String.t(),
  any(),
  HTTPoison.headers(),
  HTTPoison.options()
) ::
  {:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()}
  | {:error, HTTPoison.Error.t()}
```

# `patch!`
[🔗](https://github.com/princemaple/cookie_jar/blob/v1.1.0/lib/cookie_jar/httpoison.ex#L27)

```elixir
@spec patch!(
  GenServer.server(),
  String.t(),
  any(),
  HTTPoison.headers(),
  HTTPoison.options()
) ::
  HTTPoison.Response.t() | HTTPoison.AsyncResponse.t() | no_return()
```

# `post`
[🔗](https://github.com/princemaple/cookie_jar/blob/v1.1.0/lib/cookie_jar/httpoison.ex#L27)

```elixir
@spec post(
  GenServer.server(),
  String.t(),
  any(),
  HTTPoison.headers(),
  HTTPoison.options()
) ::
  {:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()}
  | {:error, HTTPoison.Error.t()}
```

# `post!`
[🔗](https://github.com/princemaple/cookie_jar/blob/v1.1.0/lib/cookie_jar/httpoison.ex#L27)

```elixir
@spec post!(
  GenServer.server(),
  String.t(),
  any(),
  HTTPoison.headers(),
  HTTPoison.options()
) ::
  HTTPoison.Response.t() | HTTPoison.AsyncResponse.t() | no_return()
```

# `put`
[🔗](https://github.com/princemaple/cookie_jar/blob/v1.1.0/lib/cookie_jar/httpoison.ex#L27)

```elixir
@spec put(
  GenServer.server(),
  String.t(),
  any(),
  HTTPoison.headers(),
  HTTPoison.options()
) ::
  {:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()}
  | {:error, HTTPoison.Error.t()}
```

# `put!`
[🔗](https://github.com/princemaple/cookie_jar/blob/v1.1.0/lib/cookie_jar/httpoison.ex#L27)

```elixir
@spec put!(
  GenServer.server(),
  String.t(),
  any(),
  HTTPoison.headers(),
  HTTPoison.options()
) ::
  HTTPoison.Response.t() | HTTPoison.AsyncResponse.t() | no_return()
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
