# `Buble.Error`
[🔗](https://github.com/bublehq/sdks/blob/main/lib/buble/error.ex#L1)

Error returned by the Buble SDK.

Non-bang functions return `{:error, %Buble.Error{}}`. Bang functions raise the
same exception struct.

# `t`

```elixir
@type t() :: %Buble.Error{
  __exception__: true,
  code: String.t() | nil,
  details: term(),
  message: String.t(),
  raw: term(),
  status: pos_integer() | nil,
  type:
    :api
    | :timeout
    | :missing_api_key
    | :unsupported_generation_field
    | :generation_failed
    | :generation_canceled
    | :app_generation_failed
    | :app_generation_canceled
    | :stream
}
```

---

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