mirror of https://github.com/kortix-ai/suna.git
fix pipedream app search
This commit is contained in:
parent
7bc95af934
commit
aa06019f7e
|
@ -355,10 +355,10 @@ async def get_available_pipedream_tools(
|
||||||
@router.get("/apps", response_model=Dict[str, Any])
|
@router.get("/apps", response_model=Dict[str, Any])
|
||||||
async def get_pipedream_apps(
|
async def get_pipedream_apps(
|
||||||
page: int = Query(1, ge=1),
|
page: int = Query(1, ge=1),
|
||||||
search: Optional[str] = Query(None),
|
q: Optional[str] = Query(None),
|
||||||
category: Optional[str] = Query(None)
|
category: Optional[str] = Query(None)
|
||||||
):
|
):
|
||||||
logger.info(f"Fetching Pipedream apps registry, page: {page}")
|
logger.info(f"Fetching Pipedream apps registry, page: {page}, search: {q}")
|
||||||
|
|
||||||
try:
|
try:
|
||||||
import httpx
|
import httpx
|
||||||
|
@ -367,8 +367,8 @@ async def get_pipedream_apps(
|
||||||
url = f"https://mcp.pipedream.com/api/apps"
|
url = f"https://mcp.pipedream.com/api/apps"
|
||||||
params = {"page": page}
|
params = {"page": page}
|
||||||
|
|
||||||
if search:
|
if q:
|
||||||
params["search"] = search
|
params["q"] = q
|
||||||
if category:
|
if category:
|
||||||
params["category"] = category
|
params["category"] = category
|
||||||
|
|
||||||
|
|
|
@ -179,14 +179,14 @@ export const pipedreamApi = {
|
||||||
},
|
},
|
||||||
|
|
||||||
async getApps(page: number = 1, search?: string, category?: string): Promise<PipedreamAppResponse> {
|
async getApps(page: number = 1, search?: string, category?: string): Promise<PipedreamAppResponse> {
|
||||||
if (search) {
|
|
||||||
return await this.searchApps(search, page, category);
|
|
||||||
}
|
|
||||||
|
|
||||||
const params = new URLSearchParams({
|
const params = new URLSearchParams({
|
||||||
page: page.toString(),
|
page: page.toString(),
|
||||||
});
|
});
|
||||||
|
|
||||||
|
if (search) {
|
||||||
|
params.append('q', search);
|
||||||
|
}
|
||||||
|
|
||||||
if (category) {
|
if (category) {
|
||||||
params.append('category', category);
|
params.append('category', category);
|
||||||
}
|
}
|
||||||
|
@ -209,33 +209,7 @@ export const pipedreamApi = {
|
||||||
},
|
},
|
||||||
|
|
||||||
async searchApps(query: string, page: number = 1, category?: string): Promise<PipedreamAppResponse> {
|
async searchApps(query: string, page: number = 1, category?: string): Promise<PipedreamAppResponse> {
|
||||||
const params = new URLSearchParams({
|
return await this.getApps(page, query, category);
|
||||||
q: query,
|
|
||||||
page: page.toString(),
|
|
||||||
});
|
|
||||||
|
|
||||||
if (category) {
|
|
||||||
params.append('category', category);
|
|
||||||
}
|
|
||||||
|
|
||||||
const result = await backendApi.get<PipedreamAppResponse>(
|
|
||||||
`/pipedream/apps/search?${params.toString()}`,
|
|
||||||
{
|
|
||||||
errorContext: { operation: 'search apps', resource: 'Pipedream apps' },
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
if (!result.success) {
|
|
||||||
throw new Error(result.error?.message || 'Failed to search apps');
|
|
||||||
}
|
|
||||||
|
|
||||||
// Handle both success response and potential error in the data
|
|
||||||
const data = result.data!;
|
|
||||||
if (!data.success && data.error) {
|
|
||||||
throw new Error(data.error);
|
|
||||||
}
|
|
||||||
|
|
||||||
return data;
|
|
||||||
},
|
},
|
||||||
|
|
||||||
async getAvailableTools(): Promise<PipedreamToolsResponse> {
|
async getAvailableTools(): Promise<PipedreamToolsResponse> {
|
||||||
|
|
Loading…
Reference in New Issue