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.