ash v0.2.0 API Reference

Modules

Ash

The primary interface for interrogating apis and resources.

An Api allows you to interact with your resources, anc holds non-resource-specific configuration.

The interface for being an ash data layer.

An ETS (Erlang Term Storage) backed Ash Datalayer, for testing.

The interface for an ash authorizer

Utilties around constructing/manipulating ash queries.

A resource is a static definition of an entity in your system.

DSL components for declaring resource actions.

The representation of a read action

A DSL component for declaring attributes

The entrypoint for the Ash DSL documentation and interface.

DSL components for declaring relationships.

This behaviour is a superset of the Ecto.Type behavior, that also contains api level information, like what kinds of filters are allowed. Eventually, this may be used for composite types or serialization.

A type used for storing atoms.

Stores a raw elixir term in the database

Exceptions

Used when api's DSL is incorrectly configured.

Used when an invalid value is provided for a change

Used when a change fails for an unknown reason

Used when an invalid value is provided for a filter

Used when authorization for an action fails

Used when an unknown/generic framework error occurs

Used when an internal framework error occurs. These are always bugs.

Used when a resource or alias is provided that doesn't exist

The top level invalid error

Used when an invalid limit is provided

Used when an invalid offset is provided

Used when a resource's DSL is incorrectly configured.

Used when an invalid query is provided in a side load

Used when attempting to side load a relationship that does not exist

Used when an invalid sort order is provided

Used when attempting to sort on a field that does not exist

Used when attempting to sort on a field that cannot be used for sorting

The top level unknown error container