Most API abuse is automated. Credential stuffing, scraping, fake-signup pipelines, ticket-bot drops, content theft — they're all run from scripts hitting your endpoints in volume. A WAF catches the bad payload shapes; Prosopo catches the bad actor regardless of payload.
Your backend calls Prosopo to verify each protected request before acting on it. The verification returns:
- A verified/not-verified result — pass or fail.
- A risk score between 0 and 1, surfaced on paid tiers, that your code can use however you want.
- A specific reason if the request was rejected — so you can show users an actionable message instead of a generic failure.
API Protection is most useful in front of endpoints where automation is expensive for you and rewarding for attackers:
| Endpoint type | What it stops |
|---|
| Login / authentication | Credential stuffing, brute force, password-spray attacks |
| Signup / registration | Fake-account creation, throwaway-email signups |
| Password reset | Account-takeover reconnaissance |
| Checkout / payment | Card-testing, inventory hoarding, ticket scalping |
| Search / catalogue | Scraping of pricing, listings, or proprietary content |
| Comment / review submission | Spam and astroturfing |
| Anything triggering an email / SMS | Abuse that drives your messaging bills up |
API Protection is a single HTTP call to Prosopo's verification API — so it runs wherever your code runs. The same integration works at the CDN edge or in your origin servers:
- AWS Lambda@Edge and CloudFront Functions. Verify at the closest CloudFront PoP before the request reaches your origin. Bot traffic gets stopped before it ever enters your AWS account.
- Cloudflare Workers. Add the verification check inside an existing Worker handling routing, auth or cache decisions — no separate hop and no traffic re-routing.
- Fastly Compute@Edge and VCL. Verify in front of cached and uncached content at Fastly's edge. See the step-by-step Fastly CDN integration guide.
- Direct backend integration. Call the verification endpoint straight from your application — Node, Go, Python, Java, Ruby, PHP, .NET, anywhere that can make an HTTPS POST. The simplest possible integration: one call to
/siteverify before your business logic runs.
The verification call is a single HTTPS request to globally-distributed endpoints. From an edge runtime (Lambda@Edge, Workers, Fastly) the round-trip is typically a handful of milliseconds — small enough to live on the request path without users noticing. From an origin server it's still short enough to keep on the hot path of authentication, checkout and other latency-sensitive operations.
Verification at the edge has a second payoff: your origin only sees traffic that's already been scored. Bot load that used to hit your auth or checkout servers gets absorbed at the CDN, freeing origin capacity for real users.
Every protected endpoint can be tuned independently:
- Bot-detection strictness via the Safety Threshold — tighter for checkout, looser for low-risk paths.
- Access rules by IP, IP range, ASN, country, TLS fingerprint, user agent, or user ID. Useful for blocking specific hosting networks, applying tighter rules to high-risk regions, or whitelisting partner integrations.
- Custom decision logic through Decision Machines — combine Prosopo's score with your own signals (account age, purchase value, device history) before deciding.
- Hard auto-ban above a score threshold of your choice, so unambiguous abuse never gets a challenge.
Full capability Partial / caveat Not available
| Capability | Prosopo API Protection | Traditional WAF | reCAPTCHA Enterprise |
|---|
| Designed for automation detection (not payload inspection) | ● | ● | ● |
|---|
| Risk score returned to your backend | ● Paid tiers | ● | ● |
|---|
| Access rules by ASN / TLS fingerprint | ● | ● Limited | ● |
|---|
| Per-endpoint policy | ● | ● | ● Limited |
|---|
| No DNS changes or traffic re-routing | ● | ● Varies | ● |
|---|
| Custom decision logic on the verification path | ● | ● | ● Limited |
|---|
| GDPR-compliant data handling | ● | ● Varies | ● |
|---|