33 lines
1.3 KiB
Python
33 lines
1.3 KiB
Python
import requests
|
|
import json
|
|
|
|
# Login
|
|
login_resp = requests.post('http://localhost:8001/api/v1/auth/login', json={'username': 'admin', 'password': 'admin123'})
|
|
print('Login:', login_resp.status_code)
|
|
if login_resp.status_code == 200:
|
|
token = login_resp.json()['access_token']
|
|
headers = {'Authorization': f'Bearer {token}'}
|
|
|
|
# Get templates
|
|
resp = requests.get('http://localhost:8001/api/v1/templates', headers=headers)
|
|
print('Templates:', resp.status_code)
|
|
data = resp.json()
|
|
print('Total templates:', data.get('total', 0))
|
|
for t in data.get('data', []):
|
|
print(f" - {t['template_name']} ({t['template_code']}) - {t['indicator_count']} indicators")
|
|
|
|
# Get template types
|
|
resp2 = requests.get('http://localhost:8001/api/v1/templates/types', headers=headers)
|
|
print('Template types:', resp2.status_code)
|
|
|
|
# Get first template detail
|
|
if data.get('data'):
|
|
tid = data['data'][0]['id']
|
|
resp3 = requests.get(f'http://localhost:8001/api/v1/templates/{tid}', headers=headers)
|
|
print('Template detail:', resp3.status_code)
|
|
detail = resp3.json()['data']
|
|
print(f" Name: {detail['template_name']}")
|
|
print(f" Indicators: {len(detail.get('indicators', []))}")
|
|
else:
|
|
print('Login failed:', login_resp.text)
|