This is a submission for the Permit.io Authorization Challenge: Permissions Redefined

What I Built

AutoGate is a futuristic access control system that allows users to type natural language requests like:

  • "A user wants to post in fun/creative/journal category"
  • "Who can post in news category?"

and instantly receive a permission decision.

The system parses the sentence, predicts the category using AI (Gemini/OpenAI) model, checks the user's attributes, and evaluates the permission dynamically.

This project redefines how permissions can be applied — moving away from rigid hardcoded logic toward dynamic, AI-assisted authorization that feels natural and intuitive.

Demo

🔗 Live Demo Link

📷 Screenshots:
Prototype Input Screen
Image description
)
Prototype Result Screen
()

Project Repo

(Here)

My Journey

During the development of AutoGate, I focused on creating a natural and fluid experience for dynamically checking user permissions through AI understanding and smart attribute-based policies.

One key design choice was to use a structure for permission rules, enabling rapid iteration and flexibility during the prototyping phase. The AI model plays a core role by interpreting the user's intent and context, allowing AutoGate to handle complex permission logic without burdening users with technical language.

Challenges I faced:

  • Designing a consistent parsing logic to reliably extract user attributes, actions, and objects from free-text input.
  • Creating a scalable way to manage permissions dynamically while keeping the system responsive and user-friendly.
  • Balancing fast prototyping needs with a vision for future enterprise-grade architecture.

What I learned:

  • Building flexible, AI-driven authorization is possible — but maintaining safety, governance, and explainability is critical for real-world adoption.
  • Planning for "day two problems" (like auditability, rollback, and policy versioning) is essential even when focusing on MVP.

Future Work: While the current version of AutoGate uses lightweight AI parsing, the plan is to expand it to include:

  • Full version control and audit logs for permission changes.
  • Multi-admin approval flows for sensitive policy updates.
  • Transitioning to distributed databases for scalable permission management.
  • Real-time consistency handling and safe cache invalidation during permission updates synced with Permit.io.

These expansions will allow AutoGate to evolve from a dynamic prototype into a robust, production-ready authorization platform.

Using Permit.io for Authorization

For the prototype phase, permission decisions are handled by referencing a map function that simulates dynamic policy logic.

In future iterations, the plan is to integrate directly with Permit.io's platform through their APIs to:

  • Replace static permission checking with Policy-as-Code.
  • Manage real-time policy updates and versioning with Permit CLI.
  • Enable advanced workflows such as approval chains and contextual access control.

This phased approach allowed me to prioritize user experience and core AI integration first, while ensuring a clear path toward full Permit.io integration as the system matures.