
Built an open-source outbound API gateway in Django/DRF.
​
The idea started after getting tired of re-implementing the same things every time I integrated third-party APIs:
* auth handling
* OAuth token refresh
* rate limiting
* quotas
* logging
* endpoint wrappers
* response formatting
So I built **Asstgr**: a self-hosted platform where you register external APIs once, define endpoints/params/methods, and then access everything through a unified REST interface.
Architecture is basically:
`Your App -> Asstgr -> Stripe/GitHub/OpenWeather/etc`
Features:
* OAuth2 (`client_credentials`, `authorization_code`, `password`)
* API key auth (`sk-...`)
* per-user quota system
* DRF throttling
* endpoint modeling
* audit logs
* unified `/execute/` endpoint
* response formatting modes
* Django admin support
* PostgreSQL + ASGI stack
One thing I wanted was to make external APIs behave more like internal services instead of every project having bespoke integration code.
Tech stack:
* Django 5
* Django REST Framework
* PostgreSQL
* Daphne / Channels
* SimpleJWT
It’s fully open source (MIT), and I also built a hosted SaaS version with a UI layer on top because the admin-only workflow wasn’t great for daily use.
Open source:
https://github.com/botyut/asstgr
Hosted version:
Would genuinely love feedback from people who’ve built internal API platforms / gateways before — especially around:
* schema design
* quota systems
* OAuth architecture
* execution abstraction
* scaling concerns
Curious if others ended up building similar internal tooling instead of using RapidAPI / Kong / Tyk / etc.