1.2 KiB
1.2 KiB
OpenAPI 草案(完整)
已補上完整端點與資料結構,並提供 docs/openapi.yaml 作為可直接擴充的版本。
版本
- OpenAPI: 3.1.0
- 檔案:
docs/openapi.yaml
核心資源
- OAuth2/OIDC:授權、token、discovery、JWKS
- Auth:註冊、登入(password grant)、刷新、登出、忘記/重設密碼、Email 驗證
- User:個人資料
- Newsletter:訂閱/確認/退訂/偏好
- Admin:Tenants/Lists/OAuth Clients(MVP CRUD)
Security Schemes
- OAuth2 (Authorization Code + PKCE)
- Bearer JWT(API 使用)
補充說明
/oauth/token、/auth/login、/auth/refresh使用application/x-www-form-urlencoded/auth/email/verify需要token+email/newsletter/subscribe會回傳confirm_token/newsletter/unsubscribe-token需要list_id + email才能申請unsubscribe_token/newsletter/preferences(GET/POST)需要list_id + email,避免跨租戶資料讀取/更新
多租戶資料隔離原則
- 與訂閱者資料(preferences、unsubscribe token)相關的查詢與寫入,一律必須帶
list_id + email做租戶邊界約束。 - 不提供僅靠
email或單純subscription_id的公開查詢/操作端點。