From 127721e986b32cf8eaeed1aa14e957993b8a25af Mon Sep 17 00:00:00 2001 From: Gabriel Luiz Freitas Almeida Date: Mon, 30 Oct 2023 19:50:39 -0300 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20fix(schema.py):=20handle=20empty?= =?UTF-8?q?=20list=20case=20in=20tags=5Fto=5Flist=20method=20to=20prevent?= =?UTF-8?q?=20potential=20errors=20=F0=9F=90=9B=20fix(service.py):=20add?= =?UTF-8?q?=20validation=20for=20missing=20API=20key=20when=20filter=5Fby?= =?UTF-8?q?=5Fuser=20is=20True=20to=20avoid=20unauthorized=20access?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/backend/langflow/services/store/schema.py | 2 ++ src/backend/langflow/services/store/service.py | 4 +++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/backend/langflow/services/store/schema.py b/src/backend/langflow/services/store/schema.py index 4f11ad262..7614b9609 100644 --- a/src/backend/langflow/services/store/schema.py +++ b/src/backend/langflow/services/store/schema.py @@ -53,6 +53,8 @@ class ListComponentResponse(BaseModel): def tags_to_list(cls, v): # Check if all values are have id and name # if so, return v else transform to TagResponse + if not v: + return v if all(["id" in tag and "name" in tag for tag in v]): return v else: diff --git a/src/backend/langflow/services/store/service.py b/src/backend/langflow/services/store/service.py index c0aef8be3..f70c7367d 100644 --- a/src/backend/langflow/services/store/service.py +++ b/src/backend/langflow/services/store/service.py @@ -168,8 +168,10 @@ class StoreService(Service): # Only public components or the ones created by the user # check for "public" or "Public" + if filter_by_user and not api_key: + raise ValueError("No API key provided") - if filter_by_user: + if filter_by_user and api_key: user_data = self._get( f"{self.base_url}/users/me", api_key, params={"fields": "id"} )