mirror of
				https://github.com/langgenius/dify.git
				synced 2025-10-26 00:18:44 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			36 lines
		
	
	
		
			912 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			912 B
		
	
	
	
		
			Python
		
	
	
	
	
	
| from typing import Any, Optional
 | |
| 
 | |
| from pydantic import BaseModel
 | |
| 
 | |
| from core.tools.entities.tool_entities import ToolParameter, ToolProviderType
 | |
| 
 | |
| 
 | |
| class ApiBasedToolBundle(BaseModel):
 | |
|     """
 | |
|     This class is used to store the schema information of an api based tool. such as the url, the method, the parameters, etc.
 | |
|     """
 | |
|     # server_url
 | |
|     server_url: str
 | |
|     # method
 | |
|     method: str
 | |
|     # summary
 | |
|     summary: Optional[str] = None
 | |
|     # operation_id
 | |
|     operation_id: str = None
 | |
|     # parameters
 | |
|     parameters: Optional[list[ToolParameter]] = None
 | |
|     # author
 | |
|     author: str
 | |
|     # icon
 | |
|     icon: Optional[str] = None
 | |
|     # openapi operation
 | |
|     openapi: dict
 | |
| 
 | |
| class AppToolBundle(BaseModel):
 | |
|     """
 | |
|     This class is used to store the schema information of an tool for an app.
 | |
|     """
 | |
|     type: ToolProviderType
 | |
|     credential: Optional[dict[str, Any]] = None
 | |
|     provider_id: str
 | |
|     tool_name: str | 
