bsure-api / scripts /check_monetization.py
“mohansree14”
Deploy Bsure API with correct structure
af1d8cd
Raw History Blame Contribute Delete
1.73 kB
import requests
import json
import time
BASE_URL = "http://localhost:8000"
def test_monetization():
print("Testing Monetization API...")
# 1. Seed Data
print("\n1. Seeding Data...")
try:
res = requests.post(f"{BASE_URL}/monetization/seed")
print(res.json())
except Exception as e:
print(f"❌ Seed failed: {e}")
return
# 2. Get Products
print("\n2. Fetching Products...")
products = []
try:
res = requests.get(f"{BASE_URL}/monetization/products")
products = res.json()
print(f"✅ Found {len(products)} products")
except Exception as e:
print(f"❌ Fetch products failed: {e}")
return
if not products:
print("❌ No products found, skipping click test")
return
# 3. Simulate Click
target_id = products[0]['id']
print(f"\n3. Simulating Click on Product {target_id}...")
try:
res = requests.get(f"{BASE_URL}/monetization/redirect/{target_id}?user_id=1")
data = res.json()
print(f"✅ Redirect Info: {data}")
if data['tracked']:
print(" (Click tracked successfully)")
except Exception as e:
print(f"❌ Click tracking failed: {e}")
# 4. Check Dashboard
print("\n4. Checking Dashboard Stats...")
try:
res = requests.get(f"{BASE_URL}/monetization/dashboard")
stats = res.json()
print(f"✅ Total Revenue: ${stats['total_revenue']}")
print(f"✅ Total Clicks: {stats['total_clicks']}")
print(json.dumps(stats['brand_performance'], indent=2))
except Exception as e:
print(f"❌ Dashboard stats failed: {e}")
if __name__ == "__main__":
test_monetization()