summaryrefslogtreecommitdiff
path: root/app/routers/subscriptions.py
diff options
context:
space:
mode:
authorChristian Cleberg <[email protected]>2026-04-08 14:29:21 -0500
committerChristian Cleberg <[email protected]>2026-04-08 14:29:21 -0500
commita7c25076d16bde9ec928b9ef01bce952406ea7b1 (patch)
tree802c5f84902f240c6aab95acc1e6348dfbd806c2 /app/routers/subscriptions.py
downloadhutch-notify-a7c25076d16bde9ec928b9ef01bce952406ea7b1.tar.gz
hutch-notify-a7c25076d16bde9ec928b9ef01bce952406ea7b1.tar.bz2
hutch-notify-a7c25076d16bde9ec928b9ef01bce952406ea7b1.zip
initial commit
Diffstat (limited to 'app/routers/subscriptions.py')
-rw-r--r--app/routers/subscriptions.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/app/routers/subscriptions.py b/app/routers/subscriptions.py
new file mode 100644
index 0000000..81585a1
--- /dev/null
+++ b/app/routers/subscriptions.py
@@ -0,0 +1,14 @@
+from fastapi import APIRouter, Depends
+from sqlalchemy.ext.asyncio import AsyncSession
+from app.db import get_db
+from app.schemas import SubscriptionUpsertIn
+from app.crud import replace_subscriptions
+from app.security import require_api_key
+
+router = APIRouter(prefix="/v1/subscriptions", tags=["subscriptions"], dependencies=[Depends(require_api_key)])
+
+
+async def upsert_subscriptions(payload: SubscriptionUpsertIn, db: AsyncSession = Depends(get_db)) -> dict:
+ await replace_subscriptions(db, payload)
+ return {"status": "ok"}