diff --git a/src/backend/langflow/services/store/schema.py b/src/backend/langflow/services/store/schema.py index e07e7d384..89eb7a094 100644 --- a/src/backend/langflow/services/store/schema.py +++ b/src/backend/langflow/services/store/schema.py @@ -60,8 +60,7 @@ class DownloadComponentResponse(BaseModel): description: Optional[str] data: Optional[dict] is_component: Optional[bool] - metadata: Optional[dict] - downloads_count: Optional[int] + metadata: Optional[dict] = {} class StoreComponentCreate(BaseModel): diff --git a/src/backend/langflow/services/store/service.py b/src/backend/langflow/services/store/service.py index acf6efcd0..b79731cd2 100644 --- a/src/backend/langflow/services/store/service.py +++ b/src/backend/langflow/services/store/service.py @@ -298,11 +298,13 @@ class StoreService(Service): async def download(self, api_key: str, component_id: UUID) -> DownloadComponentResponse: url = f"{self.components_url}/{component_id}" - params = {"fields": ",".join(["id", "name", "description", "data", "is_component"])} + params = {"fields": ",".join(["id", "name", "description", "data", "is_component", "metadata"])} if not self.download_webhook_url: raise ValueError("DOWNLOAD_WEBHOOK_URL is not set") component, _ = await self._get(url, api_key, params) await self.call_webhook(api_key, self.download_webhook_url, component_id) + if isinstance(component, list): + component = component[0] return DownloadComponentResponse(**component)