Skip to content

feat: add BeenVerified broker connector (scan-only)#8

Merged
thomasnemer merged 1 commit into
mainfrom
feat/beenverified-connector
Feb 22, 2026
Merged

feat: add BeenVerified broker connector (scan-only)#8
thomasnemer merged 1 commit into
mainfrom
feat/beenverified-connector

Conversation

@thomasnemer

Copy link
Copy Markdown
Contributor

Summary

  • Add BeenVerifiedBroker — the first real data broker connector, targeting BeenVerified's public opt-out search endpoints
  • Scan uses a two-pass strategy: JSON API (/svc/optout/search/optouts) first, then an HTML fallback stub that logs a warning for future scraper crate integration
  • State parameter is required; deletion methods bail with clear messages explaining CAPTCHA requirement
  • Registered in the connector registry with graceful error handling on initialization failure
  • 9 new tests: 6 unit tests for response parsing, 3 integration tests for registry, validation, and capability checks

Test plan

  • cargo test — all 17 tests pass (11 existing + 6 new unit + 3 new integration)
  • cargo run -- scan --first-name John --last-name Doe --state NY --brokers beenverified — verify HTTP behavior against live endpoint
  • cargo run -- broker list — confirm BeenVerified appears in connector list

Implement the first real data broker connector targeting BeenVerified's
public opt-out search endpoints. Scan uses a two-pass strategy (JSON API
then HTML fallback stub). Deletion methods bail with CAPTCHA explanation.
State parameter is required. Registered in the connector registry with
graceful initialization error handling.
@thomasnemer thomasnemer force-pushed the feat/beenverified-connector branch from 630c7ff to 9f55686 Compare February 22, 2026 08:43
@thomasnemer thomasnemer merged commit 40a4d56 into main Feb 22, 2026
1 check passed
@thomasnemer thomasnemer deleted the feat/beenverified-connector branch February 22, 2026 08:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant