mirror of
				https://github.com/langgenius/dify.git
				synced 2025-10-31 02:42:59 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			30 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			30 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| import os
 | |
| 
 | |
| import requests
 | |
| 
 | |
| 
 | |
| class OperationService:
 | |
|     base_url = os.environ.get("BILLING_API_URL", "BILLING_API_URL")
 | |
|     secret_key = os.environ.get("BILLING_API_SECRET_KEY", "BILLING_API_SECRET_KEY")
 | |
| 
 | |
|     @classmethod
 | |
|     def _send_request(cls, method, endpoint, json=None, params=None):
 | |
|         headers = {"Content-Type": "application/json", "Billing-Api-Secret-Key": cls.secret_key}
 | |
| 
 | |
|         url = f"{cls.base_url}{endpoint}"
 | |
|         response = requests.request(method, url, json=json, params=params, headers=headers)
 | |
| 
 | |
|         return response.json()
 | |
| 
 | |
|     @classmethod
 | |
|     def record_utm(cls, tenant_id: str, utm_info: dict):
 | |
|         params = {
 | |
|             "tenant_id": tenant_id,
 | |
|             "utm_source": utm_info.get("utm_source", ""),
 | |
|             "utm_medium": utm_info.get("utm_medium", ""),
 | |
|             "utm_campaign": utm_info.get("utm_campaign", ""),
 | |
|             "utm_content": utm_info.get("utm_content", ""),
 | |
|             "utm_term": utm_info.get("utm_term", ""),
 | |
|         }
 | |
|         return cls._send_request("POST", "/tenant_utms", params=params)
 | 
