What is Permify?
Permify is an open source authorization service for creating fine-grained and scalable authorization systems.
With Permify, you can easily structure your authorization model, store authorization data in your preferred database, and interact with the Permify API to handle all authorization queries from your applications or services.
Permify is inspired by Googleโs consistent, global authorization system, Google Zanzibar.
Motivationโ
Our goal is to make Google's Zanzibar available to everyone and help them to build robust, flexible, and easily auditable authorization system that establishes a natural linkage between permissions across the business units, functions, and entities of an organization.
Key Featuresโ
๐ก๏ธ Production ready authorization API that serve as gRPC and REST.
๐ฎ Domain Specific Authorization Language to easily model your authorization. SUpporting RBAC, ReBAC, ABAC and more.
๐ Database Configuration to store your permissions with high availability and low latency.
โ Perform access control checks and get answers down to 10ms with our various cache mechanisms that we operate.
๐ช Battle tested, robust authorization architecture and data model based on Google Zanzibar.
โ๏ธ Create custom permissions for your tenants, and manage them in a single place with Multi Tenancy.
โก Analyze performance and behavior of your authorization with tracing tools jaeger, signoz or zipkin.f
Getting Startedโ
In Permify, authorization is divided into 3 core aspects; modeling, storing authorization data and access checks.
- See how to Model your Authorization using Permify Schema.
- Learn how Permify will Store Authorization Data as relations.
- Perform Access Checks anywhere in your stack.
This document explains how Permify handles these aspects to provide a robust and scalable authorization system for your applications. For the ones that want to try it out and examine it instantly,



Community & Supportโ
We would love to hear from you โค๏ธ
You can get immediate help on our Discord channel. This can be any kind of question-related to Permify, authorization, or authentication and identity management. We'd love to discuss anything related to access control space.
For feature requests, bugs, or any improvements you can always open an issue.
Want to Contribute? Here are the ways to contribute to Permifyโ
- Contribute to codebase: We're collaboratively working with our community to make Permify the best it can be! You can develop new features, fix existing issues or make third-party integrations/packages.
- Improve documentation: Alongside our codebase, documentation is an important part of our open-source journey. We're trying to give the best DX possible to explain ourselves and Permify. And you can help with that by importing resources or adding new ones.
- Contribute to playground: Permify playground allows you to visualize and test your authorization logic. You can contribute to our playground by improving its user interface, fixing glitches, or adding new features.
You can find more details about contributions on CONTRIBUTING.md.
Communication Channelsโ
If you like Permify, please consider giving us a โญ on github
Roadmapโ
You can find Permify's Public Roadmap here!
Need any help on Authorization ?โ
Our team is happy to help you get started with Permify. If you'd like to learn more about using Permify or how it might fit into your authorization workflow, schedule a call with one of our Permify engineers.