# permit_ex v0.2.0 - API Reference

## Modules

- [PermitEx](PermitEx.md): Role and permission management for Ecto and Phoenix applications.
- [PermitEx.Absinthe.RequireAuthorization](PermitEx.Absinthe.RequireAuthorization.md): Absinthe middleware for enforcing PermitEx roles and permissions.
- [PermitEx.Absinthe.RequirePermission](PermitEx.Absinthe.RequirePermission.md): Absinthe middleware that requires a single permission.
- [PermitEx.Absinthe.RequireRole](PermitEx.Absinthe.RequireRole.md): Absinthe middleware that requires a single role.
- [PermitEx.Guard](PermitEx.Guard.md): Shared authorization checks used by Plug and LiveView adapters.

- [PermitEx.LiveView.RequireAuthorization](PermitEx.LiveView.RequireAuthorization.md): LiveView `on_mount` hook for enforcing PermitEx roles and permissions.
- [PermitEx.LiveView.RequirePermission](PermitEx.LiveView.RequirePermission.md): LiveView `on_mount` shortcut for requiring one permission.
- [PermitEx.LiveView.RequireRole](PermitEx.LiveView.RequireRole.md): LiveView `on_mount` shortcut for requiring one role.
- [PermitEx.Permission](PermitEx.Permission.md): Ecto schema for permission names.
- [PermitEx.Plug.RequireAuthorization](PermitEx.Plug.RequireAuthorization.md): Plug for enforcing PermitEx roles and permissions in controllers or APIs.
- [PermitEx.Plug.RequirePermission](PermitEx.Plug.RequirePermission.md): Plug shortcut for requiring one permission.
- [PermitEx.Plug.RequireRole](PermitEx.Plug.RequireRole.md): Plug shortcut for requiring one role.
- [PermitEx.Policy](PermitEx.Policy.md): Behaviour for optional resource-level policy checks.
- [PermitEx.Role](PermitEx.Role.md): Ecto schema for global and context-specific roles.
- [PermitEx.Scope](PermitEx.Scope.md): Authorization scope loaded from PermitEx role assignments.

## Mix Tasks

- [mix permit_ex.install](Mix.Tasks.PermitEx.Install.md): Installs PermitEx migrations into the host application.

