Tutorial · Company API · Starter
Turn Brand Shield findings into tickets
Brand Shield scans daily for lookalike domains and cloned pages. Pull new findings into your ticket queue and escalate the real ones with one call.
1Fetch new findings
Needs a key with the findings scope. Filter by since (first seen) and min_score (0–100). Each finding includes the candidate domain, score, risk, reasons and signals.
import os, requests
H = {"X-API-Key": os.environ["FP_COMPANY_KEY"]}
r = requests.get("https://ugapgzpffrykyglevlhz.supabase.co/functions/v1/blackwall-api/v1/findings", headers=H, timeout=30,
params={"since": last_run_iso, "min_score": 60, "limit": 200})
r.raise_for_status()
for f in r.json()["findings"]:
create_ticket(title=f"Lookalike: {f['candidate_domain']} ({f['risk']})",
body="\n".join(f["reasons"]), external_id=f["id"])2Escalate to a takedown case
When an analyst confirms a finding, create a case from it. No body needed; evidence is carried over. Requires the submit scope (Pro and Enterprise).
curl -X POST "https://ugapgzpffrykyglevlhz.supabase.co/functions/v1/blackwall-api/v1/findings/<finding-id>/report" -H "X-API-Key: $FP_COMPANY_KEY"3Run it on a schedule
Brand Shield scans daily, so polling every hour is plenty. On Pro you can switch on the New Brand Shield finding webhook instead of polling.
