# `Jibu.Models`
[🔗](https://github.com/oliverandrich/jibu/blob/v0.2.1/lib/jibu/models.ex#L1)

The Models API: the models available to the API key, with their capabilities.
Results are the API's JSON with string keys.

# `get`

```elixir
@spec get(Req.Request.t(), String.t()) :: {:ok, map()} | {:error, Jibu.Error.t()}
```

Retrieves one model by id or alias.

# `list`

```elixir
@spec list(Req.Request.t(), keyword()) :: {:ok, map()} | {:error, Jibu.Error.t()}
```

Returns one page. `query` takes the API's parameters, such as `:limit`, `:after_id` and `:before_id`.

# `stream`

```elixir
@spec stream(Req.Request.t(), keyword()) :: Enumerable.t()
```

Streams all models across pages, forward only. Raises `Jibu.Error` when a page fails.

---

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