feat: show token in member response, revoke endpoint
Some checks failed
Deploy Tracker / deploy (push) Failing after 0s

This commit is contained in:
Markov 2026-02-23 12:11:12 +01:00
parent e8de6af512
commit 544745de61

View File

@ -78,6 +78,8 @@ def _member_to_out(m: Member) -> dict:
"status": m.status,
"avatar_url": m.avatar_url,
}
if m.type == "agent":
d["token"] = m.token
if m.agent_config:
d["agent_config"] = AgentConfigSchema(
capabilities=m.agent_config.capabilities or [],
@ -213,6 +215,21 @@ async def regenerate_token(slug: str, db: AsyncSession = Depends(get_db)):
return {"token": token}
@router.post("/members/{slug}/revoke-token")
async def revoke_token(slug: str, db: AsyncSession = Depends(get_db)):
result = await db.execute(
select(Member).where(Member.slug == slug)
)
member = result.scalar_one_or_none()
if not member:
raise HTTPException(404, "Member not found")
if member.type != "agent":
raise HTTPException(400, "Only agent tokens can be revoked")
member.token = None
await db.commit()
return {"ok": True}
@router.patch("/members/me/status")
async def update_my_status(status: str, db: AsyncSession = Depends(get_db)):
"""Quick status update (used by agents)."""