#226 OpenAPI: Tenant & App Management Endpoints (27 endpoints)

closed high Created 2025-12-02 08:14 · Updated 2025-12-02 08:59

Description

Edit
## Scope Document tenant and app management endpoints: - `api/blueprints/v1/tenant_apps.py` (15 endpoints) - `api/blueprints/v1/apps.py` (12 endpoints) ## Tenant Apps Endpoints (15) 1. POST /tenant-apps - Register app for tenant 2. GET /tenant-apps - List tenant apps 3. GET /tenant-apps/{id} - Get app details 4. PUT /tenant-apps/{id} - Update app 5. DELETE /tenant-apps/{id} - Unregister app 6. POST /tenant-apps/{id}/enable - Enable app 7. POST /tenant-apps/{id}/disable - Disable app 8. GET /tenant-apps/{id}/config - Get app config 9. PUT /tenant-apps/{id}/config - Update app config 10. GET /tenant-apps/{id}/usage - Get app usage 11. POST /tenant-apps/{id}/reset-usage - Reset usage 12. GET /tenant-apps/available - List available apps 13. GET /tenant-apps/categories - List app categories 14. POST /tenant-apps/bulk-enable - Bulk enable 15. POST /tenant-apps/bulk-disable - Bulk disable ## Apps Endpoints (12) 1. POST /apps - Create app (admin) 2. GET /apps - List all apps 3. GET /apps/{id} - Get app 4. PUT /apps/{id} - Update app 5. DELETE /apps/{id} - Delete app 6. POST /apps/{id}/publish - Publish app 7. POST /apps/{id}/unpublish - Unpublish 8. GET /apps/{id}/versions - List versions 9. POST /apps/{id}/versions - Create version 10. GET /apps/categories - List categories 11. GET /apps/search - Search apps 12. GET /apps/featured - Get featured apps ## Pydantic Models ```python class TenantAppRegistration(BaseModel): app_id: str config: dict = {} class AppCreateRequest(BaseModel): name: str description: str category: str icon_url: str | None = None manifest: dict class AppResponse(BaseModel): app_id: str name: str description: str category: str version: str is_published: bool ``` ## Depends On - #224 (Infrastructure Setup) ## Acceptance Criteria - [ ] All 27 endpoints documented - [ ] Admin vs tenant permissions noted - [ ] Config schema documented

Comments

Loading comments...

Context

Loading context...

Audit History

View All
Loading audit history...