# `Ash.Error.Invalid.Unavailable`
[🔗](https://github.com/ash-project/ash/blob/v3.27.8/lib/ash/error/invalid/unavailable.ex#L5)

Used when a given resource is unavailable.

This might happen due to locking at the data layer, or something
you implement yourself.

# `exception`

```elixir
@spec exception(opts :: Keyword.t()) :: %Ash.Error.Invalid.Unavailable{
  __exception__: term(),
  bread_crumbs: term(),
  class: term(),
  path: term(),
  reason: term(),
  resource: term(),
  source: term(),
  splode: term(),
  stacktrace: term(),
  vars: term()
}
```

Create an `Elixir.Ash.Error.Invalid.Unavailable` without raising it.

## Keys

- :resource
- :source
- :reason

---

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