Remove your members from every data broker. One API.

Identity protection, credit monitoring, and privacy products charge for data-broker removal. We're the service underneath: scan 1,147 people-search and broker sites, submit the opt-outs, and confirm they're gone. You keep the customer, the price, and the margin.

Per-member cost from $7.53 in year one at scale. Consumer products sell this for $96 to $156 a year. Safe Shepherd, our own consumer brand, runs on it.

memberjane.d@…1,147 sitesrunning
    found on 0removed 0cost so far $0.00

    What happens to one member.

    Every step is one API call with one job. You decide the schedule; most customers scan on signup and re-check monthly.

    Scan

    Name, city, state in. For each site: found or not, and the profile URL if found. The engine picks the cheapest method that works on that broker.

    scan, from $0.003

    Found

    A typical member shows up on 15 to 40 sites. You get a webhook per site with what was exposed: address, age, relatives, phone.

    webhook per site

    Remove

    Automated form opt-out where the broker has one; a personalized CCPA/GDPR request where it doesn't. Proof screenshot when there's a form.

    remove, from $0.01

    Confirm

    Re-scan the sites where they were found. Brokers repopulate; the loop catches it. Your product shows "clean since March."

    check, billed as a scan

    Built to sit inside a product that already has the member.

    You have the trust and the billing relationship. Removal is the feature your members ask for and your competitors charge extra for.

    Identity protection

    Add removal to your existing plan tiers or sell it as an add-on. Batch-onboard your base, then run the monthly loop.

    $3 to $5typical add-on price per member per month

    Card issuers and banks

    A cardholder benefit that reduces account-takeover risk and lifts premium-card value. Enroll at activation.

    2%attach on a five-million cardholder base is 100,000 members

    Privacy and VPN products

    You already sell "less exposure." This is the part of that promise you can prove, site by site, with URLs.

    1,147sites covered, 855 with automated removal

    Build it in an afternoon. Or hand it to your coding agent.

    Everything an agent needs is at one URL. Paste this into Claude Code, Codex, or Cursor and it will wire the scan, the removal, the webhook handler, and a test run on the sandbox.

    Claude CodeCodexCursorAny MCP client
    # paste into your coding agent Read https://docs.privacyai.com/llms.txt and add PrivacyAI to this app. - Scan each member on signup, remove where found, re-check monthly. - My key is in PAI_API_KEY. Use the sandbox key first. - Add the webhook handler and run the sandbox test before you finish.

    Prefer to read it yourself? The five-minute start. Using it from a chat instead of a codebase? Connect the MCP server.

    Pricing you can put in a spreadsheet.

    Prepaid credits, no minimum, no platform fee. The tier is set by your total tasks that month. Most customers don't scan all 1,147 sites for every member; pick a coverage level and the per-member column updates.

    TierTasks per monthScanRemovePer member, example schedule iYou decide when and how often to scan; we bill per task. This column shows one common pattern: scan the covered sites once when a member joins (onboard), remove where found, then each month re-check the found sites plus the most-hit brokers (per month). Scan weekly, quarterly, or only on request and the cost moves with it.
    Standardunder 10,000$0.016$0.05
    Growth10,000 to 100,000$0.011$0.03
    Enterprise100,000 to 1,000,000$0.005$0.02
    Infrastructureover 1,000,000$0.003$0.01

    This is an example schedule, not how the API works: you pick which sites, when, and how often, and pay per task. At full coverage a typical member is found on about 25 sites; the found count scales with coverage. Some brokers need a browser or vision to read; those bill as Scan+ or Scan Pro and your invoice shows exactly which. Full price table.

    Sandbox key now. Live key when you add credits.

    Same endpoints, same payloads. Only the key prefix changes.

    Get a sandbox key

    What removal adds to your price sheet.

    Put your own numbers in. The cost side is our real tier table applied to a realistic member: full scan once, removals where found, a monthly re-check loop. The revenue side is whatever you charge.

    $0gross profit, year one
    $0revenue, year one
    $0paid to PrivacyAI, year one
    $0our cost per member, year one
    0%gross margin
    $0our cost per member, year two on
    0members enrolled
    How the cost is built. The schedule is yours; this models the one most customers run. Onboarding: one scan of all 1,147 sites, then one removal per site found. Ongoing: each month, re-check the sites where they were found plus the 75 highest-hit brokers, and re-remove about 8% of them. Tier is set by your first month's task volume and holds. Some brokers bill as Scan+ or Scan Pro; the blend here assumes 10% of scans do. Public consumer list prices for this service run $96 to $156 a year, so a $3 to $5 add-on is well under what your members can buy elsewhere.

    What you'd build yourself

    • Scrapers for 1,147 sites that change weekly
    • Proxy pool, CAPTCHA solving, browser fleet
    • Opt-out flows per broker, many with email verification loops
    • A team to keep all of it working
    • Eighteen months before the first member is clean

    What you get instead

    • One endpoint: scan, remove, check
    • Method chosen per broker; you pay for what ran
    • Proof screenshots where a form exists
    • Webhook per result; build any UI on top
    • Same engine running Safe Shepherd in production today

    Run your real numbers with us.

    Send your base size and target attach and we'll return a signed quote at the right tier.

    hello@privacyai.com

    Five minutes to a member scanned, removed, and confirmed.

    The whole page runs on your sandbox key. Fixture brokers return deterministic results and never touch a real site, so it costs nothing and nothing real gets removed.

    Two keys, one difference

    Sign up and both are on your dashboard. The prefix is the mode. There's no flag to set.

    sandboxsm_test_4c9afb5d17d4…free, fixtures, 60 tasks a minute
    livesm_live_…issued when you add credits

    Or skip the reading

    Paste this into Claude Code, Codex, or Cursor. It reads the same reference you would and runs the sandbox test.

    Read https://docs.privacyai.com/llms.txt and add PrivacyAI to this app. Scan members on signup, remove where found, re-check monthly. Key in PAI_API_KEY; use the sandbox key first. Add the webhook handler and run the sandbox test.

    Scan a member

    One site or every site. The person Found Person is on every fixture broker; Clean Person is on none.

    curl -X POST https://api.privacyai.com/task \
      -H "X-API-Key: $PAI_API_KEY" -H "Content-Type: application/json" \
      -d '{"type":"scan","target":"all",
           "person":{"firstName":"Found","lastName":"Person","state":"TX"},
           "webhookUrl":"https://yourapp.com/privacyai"}'
    Returns in about 50 ms {"taskId":"b7e2…","status":"queued","fanout":1147}

    Read the webhook

    One POST per site as each finishes. Branch on result.found.

    { "taskId": "b7e2…", "type": "scan", "target": "spokeo",
      "status": "SUCCESS",
      "result": { "found": true,
                  "urls": ["https://www.spokeo.com/Found-Person/…"],
                  "data": { "age": 47, "city": "Austin" } },
      "cost": { "method": "scan", "usd": 0.016, "charged": false } }
    Found? queue a remove for that target. Not found? nothing to do. FAILED? retry once, then alert.

    Remove where found

    Same endpoint, type: "remove". Some brokers need email or age; the 400 tells you which.

    { "type": "remove", "target": "spokeo",
      "person": { "firstName": "Found", "lastName": "Person",
                  "state": "TX", "email": "fp@example.com", "age": 47 },
      "webhookUrl": "https://yourapp.com/privacyai" }
    Webhook on completion {"type":"remove","status":"SUCCESS","removal_method":"form","proof":{"screenshot_url":"…"}}

    Confirm, then go live

    Send type: "check" for the sites where they were found. It's billed as a scan. When the loop works on fixtures, add credits and swap the key prefix. Nothing else changes.

    sandboxFound Person, Clean Person, Partial Person, Flaky Person, Failed Person, Slow Personall fixtures

    Full fixture table, webhook inbox, and request console: Sandbox reference.