habulaj commited on
Commit
91cd81f
·
verified ·
1 Parent(s): 9fa62f2

Update routes/users.py

Browse files
Files changed (1) hide show
  1. routes/users.py +33 -1
routes/users.py CHANGED
@@ -127,4 +127,36 @@ async def get_recent_users_endpoint(
127
 
128
  except Exception as e:
129
  logger.error(f"❌ Erro ao obter usuários: {str(e)}")
130
- raise HTTPException(status_code=500, detail=str(e))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
127
 
128
  except Exception as e:
129
  logger.error(f"❌ Erro ao obter usuários: {str(e)}")
130
+ raise HTTPException(status_code=500, detail=str(e))
131
+
132
+ @router.get("/admin/user")
133
+ async def get_user_name(
134
+ user_id: str = Query(..., description="ID do usuário"),
135
+ user_token: str = Header(None, alias="User-key")
136
+ ):
137
+ """
138
+ Endpoint para obter o nome de um usuário específico a partir do ID.
139
+ """
140
+ try:
141
+ await verify_admin_token(user_token)
142
+
143
+ query = f"{SUPABASE_URL}/rest/v1/User?select=name&id=eq.{user_id}"
144
+ headers = SUPABASE_HEADERS.copy()
145
+ headers["Accept"] = "application/json; charset=utf-8"
146
+
147
+ async with aiohttp.ClientSession() as session:
148
+ async with session.get(query, headers=headers) as response:
149
+ if response.status != 200:
150
+ raise HTTPException(status_code=500, detail="Erro ao consultar o Supabase")
151
+
152
+ data = await response.json()
153
+ if not data:
154
+ raise HTTPException(status_code=404, detail="Usuário não encontrado")
155
+
156
+ return {"name": data[0]["name"]}
157
+
158
+ except HTTPException as he:
159
+ raise he
160
+ except Exception as e:
161
+ logger.error(f"❌ Erro ao buscar usuário: {str(e)}")
162
+ raise HTTPException(status_code=500, detail="Erro interno do servidor")