# `Ash.Info.Manifest.Action`
[🔗](https://github.com/ash-project/ash/blob/v3.25.0/lib/ash/info/manifest/action.ex#L5)

Represents a resource action in the API specification.

# `action_type`

```elixir
@type action_type() :: :read | :create | :update | :destroy | :action
```

# `t`

```elixir
@type t() :: %Ash.Info.Manifest.Action{
  accept: [atom()] | nil,
  allow_nil_input: [atom()] | nil,
  arguments: [Ash.Info.Manifest.Argument.t()],
  custom: map(),
  description: String.t() | nil,
  get?: boolean(),
  metadata: [Ash.Info.Manifest.Metadata.t()],
  name: atom(),
  pagination: Ash.Info.Manifest.Pagination.t() | nil,
  primary?: boolean(),
  require_attributes: [atom()] | nil,
  returns: Ash.Info.Manifest.Type.t() | nil,
  type: action_type()
}
```

---

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