forked from open-webui/open-webui
		
	feat: webhook backend
This commit is contained in:
		
							parent
							
								
									16fe0ee167
								
							
						
					
					
						commit
						2c6e2d5e8a
					
				
					 6 changed files with 60 additions and 2 deletions
				
			
		|  | @ -19,6 +19,7 @@ from config import ( | |||
|     DEFAULT_USER_ROLE, | ||||
|     ENABLE_SIGNUP, | ||||
|     USER_PERMISSIONS, | ||||
|     WEBHOOK_URL, | ||||
| ) | ||||
| 
 | ||||
| app = FastAPI() | ||||
|  | @ -32,6 +33,7 @@ app.state.DEFAULT_MODELS = DEFAULT_MODELS | |||
| app.state.DEFAULT_PROMPT_SUGGESTIONS = DEFAULT_PROMPT_SUGGESTIONS | ||||
| app.state.DEFAULT_USER_ROLE = DEFAULT_USER_ROLE | ||||
| app.state.USER_PERMISSIONS = USER_PERMISSIONS | ||||
| app.state.WEBHOOK_URL = WEBHOOK_URL | ||||
| 
 | ||||
| 
 | ||||
| app.add_middleware( | ||||
|  |  | |||
|  | @ -27,7 +27,8 @@ from utils.utils import ( | |||
|     create_token, | ||||
| ) | ||||
| from utils.misc import parse_duration, validate_email_format | ||||
| from constants import ERROR_MESSAGES | ||||
| from utils.webhook import post_webhook | ||||
| from constants import ERROR_MESSAGES, WEBHOOK_MESSAGES | ||||
| 
 | ||||
| router = APIRouter() | ||||
| 
 | ||||
|  | @ -155,6 +156,16 @@ async def signup(request: Request, form_data: SignupForm): | |||
|             ) | ||||
|             # response.set_cookie(key='token', value=token, httponly=True) | ||||
| 
 | ||||
|             if request.app.state.WEBHOOK_URL: | ||||
|                 post_webhook( | ||||
|                     request.app.state.WEBHOOK_URL, | ||||
|                     { | ||||
|                         "action": "signup", | ||||
|                         "message": WEBHOOK_MESSAGES.USER_SIGNUP(user.name), | ||||
|                         "user": user.model_dump_json(exclude_none=True), | ||||
|                     }, | ||||
|                 ) | ||||
| 
 | ||||
|             return { | ||||
|                 "token": token, | ||||
|                 "token_type": "Bearer", | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Timothy J. Baek
						Timothy J. Baek