How qxsazz/model-gate-sub2api works
Sub2API is an AI API gateway that distributes subscription-backed quota across upstream model providers. The principal workflow is a client API request entering the gateway, being handled through its OpenAI-compatible request path, and reaching an upstream provider; account, usage, and subscription state support that service. Separate product areas cover user authentication, administrative account and channel management, payments, channel monitoring, web search, and image results/storage. The tree and README establish these capabilities, but sampled excerpts do not expose the full routing or service wiring, so uncertain links are omitted.
Main entry points: handler Gateway Handlers · schema Identity Records · openai_gateway_cc_pipeline.go OpenAI Pipeline · image_storage.go Image Result Uploader
Components 22
AI Gateway
- Gateway Handlers
backend/internal/handler - OpenAI Pipeline
backend/internal/service/openai_gateway_cc_pipeline.go - API Compatibility
backend/internal/pkg/apicompat - Model Providers
Accounts & Access
- Authentication
backend/internal/handler/auth_handler.go - OpenAI OAuth Admin
backend/internal/handler/admin/openai_oauth_handler.go - Identity Records
backend/ent/schema
Administration
- Admin APIs
backend/internal/handler/admin - Channel Monitoring
backend/internal/handler/channel_monitor_v2_handler.go - Monitor Templates
frontend/src/components/admin/monitor/MonitorTemplateManagerDialog.vue - Platform Records
backend/ent/schema
Plans & Payments
- Subscriptions
backend/internal/handler/subscription_handler.go - Payment APIs
backend/internal/handler/payment_handler.go - Payment Providers
backend/internal/payment/provider
Extended Services
- Web Search
backend/internal/pkg/websearch/manager.go - Image Tasks
backend/internal/handler/image_task_handler.go - Image Result Uploader
backend/internal/service/image_storage.go - S3 Image Storage
backend/internal/repository/image_storage_s3.go
Other components
- API Client
- PostgreSQL
- Redis
- S3-Compatible Store
Connections 16
- API Client → Gateway Handlers: sends API request
- Gateway Handlers → OpenAI Pipeline: handles requests
- OpenAI Pipeline → Model Providers: sends upstream request
- Gateway Handlers → API Compatibility: adapts API formats
- Authentication → Identity Records: manages identity data
- OpenAI OAuth Admin → Identity Records: creates account records
- Admin APIs → Platform Records: manages platform data
- Monitor Templates → Channel Monitoring: manages templates
- Subscriptions → Platform Records: manages subscriptions
- Payment APIs → Payment Providers: dispatches payments
- Image Tasks → Image Result Uploader: stores results
- Image Result Uploader → S3 Image Storage: uploads image bytes
- S3 Image Storage → S3-Compatible Store: writes objects
- Platform Records → PostgreSQL: persists records
- Identity Records → PostgreSQL: persists identity data
- Web Search → Redis: tracks provider quota