<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/permit-absinthe-0-2-absinthe-graphql-authorization-for-elixir-s1buxnnlf" -->

---
title: Permit.Absinthe 0.2: Absinthe GraphQL authorization for...
description: Permit.Absinthe v0.2.0 graduates from proof-of-concept to production-ready, bringing the Permit authorization library's load-and-authorize pattern to Absinthe...
canonical: https://daily.dev/posts/permit-absinthe-0-2-absinthe-graphql-authorization-for-elixir-s1buxnnlf
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Permit.Absinthe 0.2: Absinthe GraphQL authorization for Elixir | daily.dev
og:description: Permit.Absinthe v0.2.0 graduates from proof-of-concept to production-ready, bringing the Permit authorization library's load-and-authorize pattern to Absinthe...
og:url: https://daily.dev/posts/permit-absinthe-0-2-absinthe-graphql-authorization-for-elixir-s1buxnnlf
og:image: https://api.daily.dev/og/posts/s1BUXnnlF.png
og:image:alt: Permit.Absinthe 0.2: Absinthe GraphQL authorization for Elixir
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Permit.Absinthe 0.2: Absinthe GraphQL authorization for Elixir

**[Curiosum](https://daily.dev/sources/curiosum)** · 8 min read · 0 upvotes · 0 comments

## Summary

Permit.Absinthe v0.2.0 graduates from proof-of-concept to production-ready, bringing the Permit authorization library's load-and-authorize pattern to Absinthe GraphQL in Elixir. Key additions include a rich set of customization options on the `permit` macro: `base_query` and `finalize_query` for Ecto query control, `fetch_subject` for custom user extraction, `handle_unauthorized`/`handle_not_found` error callbacks, a custom `loader` for non-Ecto sources, and a `wrap_authorized` post-authorization hook. The release also adds custom ID field support, a Dataloader integration via `authorized_dataloader/3` for batched association loading, and a reference table to help developers choose between resolver, middleware, directive, and Dataloader integration points. The schema-wide hydrator remains a work in progress. The API is still 0.x with possible breaking changes before 1.0.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://www.curiosum.com/blog/permit-absinthe-0-2>

## Similar posts on daily.dev

- [Permit authorization framework 0.4.0 gets faster setup with Igniter and Phoenix fixes](https://daily.dev/posts/permit-authorization-framework-0-4-0-gets-faster-setup-with-igniter-and-phoenix-fixes-kezxyzvwe) · ElixirStatus · 0 upvotes · 0 comments
- [Phoenix scopes vs authorization: what developers need to know](https://daily.dev/posts/phoenix-scopes-vs-authorization-what-developers-need-to-know-qlyfia1nh) · Curiosum · 0 upvotes · 0 comments
- [LiveView authorization video tutorial](https://daily.dev/posts/liveview-authorization-video-tutorial-z8szvpmxf) · Elixir Forum · 0 upvotes · 0 comments
- [GitHub - fahchen/grephql: Compile-time GraphQL client for Elixir — typed responses, validated queries, zero runtime parsing.](https://daily.dev/posts/github---fahchen-grephql-compile-time-graphql-client-for-elixir-typed-responses-validated-querie-nuoqlhnyi) · ElixirStatus · 0 upvotes · 0 comments
- [A JavaScript developer's guide to Rails: Authorization with Pundit](https://daily.dev/posts/a-javascript-developer-s-guide-to-rails-authorization-with-pundit-fdknwhtaa) · RUBYLAND · 0 upvotes · 0 comments

---

Tags: [#graphql](https://daily.dev/tags/graphql), [#elixir](https://daily.dev/tags/elixir), [#authorization](https://daily.dev/tags/authorization), [#ecto](https://daily.dev/tags/ecto)

[View this post on daily.dev](https://daily.dev/posts/permit-absinthe-0-2-absinthe-graphql-authorization-for-elixir-s1buxnnlf)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Permit.Absinthe 0.2: Absinthe GraphQL authorization for Elixir","url":"https://daily.dev/posts/permit-absinthe-0-2-absinthe-graphql-authorization-for-elixir-s1buxnnlf","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/permit-absinthe-0-2-absinthe-graphql-authorization-for-elixir-s1buxnnlf"},"datePublished":"2026-02-23T10:32:58.268Z","dateModified":"2026-02-23T10:33:24.016Z","description":"Permit.Absinthe v0.2.0 graduates from proof-of-concept to production-ready, bringing the Permit authorization library's load-and-authorize pattern to Absinthe...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/0df11c19b79ff80d262276ce74a93c05?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/0df11c19b79ff80d262276ce74a93c05?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Curiosum","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Curiosum","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/261877579b1d412ab55712f8ad331574","url":"https://daily.dev/sources/curiosum"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/permit-absinthe-0-2-absinthe-graphql-authorization-for-elixir-s1buxnnlf","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"graphql,elixir,authorization,ecto","timeRequired":"PT8M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Curiosum","item":"https://daily.dev/sources/curiosum"},{"@type":"ListItem","position":3,"name":"Permit.Absinthe 0.2: Absinthe GraphQL authorization for Elixir"}]}
```

