Failed API Call Monitoring
FrictaSolv intercepts every failed network request from the browser — 4xx, 5xx, timeouts, and CORS errors. You see the exact endpoint, method, status code, and which page triggered it.
Captures XHR and Fetch failures automatically. No manual instrumentation of your API client needed.
See which endpoints fail most, grouped by URL pattern, status code, and affected page.
Not all errors are equal. FrictaSolv ranks failed requests by how many users they affect and how frustrated those users are.
Detects silent failures — API calls that return errors but the UI never updates. Users see stale data with no indication anything went wrong.
Failures FrictaSolv surfaces that server-side monitoring misses.
Stripe's API returns a 504 during peak traffic. The checkout page shows a generic error. Users retry, get the same error, and leave.
3 failed requests to api.stripe.com/v1/charges (504) within 30s, followed by 6 rage clicks on the checkout button
A user's JWT expires mid-session. Every subsequent API call returns 401. The app shows broken UI with missing data but no login redirect.
8 consecutive 401 responses across 4 different endpoints, ghost error detected (UI did not update despite failures)
After a deploy, CloudFront serves a cached JS bundle that references a deleted API endpoint. Users on the cached version get 404 errors on every action.
12 failed requests to /api/v2/dashboard (404) — endpoint renamed to /api/v3/dashboard in latest deploy
| Capability | FrictaSolv | Sentry / Datadog | Server logs |
|---|---|---|---|
| Client-side API failures | Automatic | Requires browser SDK | Not visible |
| CORS / network errors | Captured | Not visible | Not visible |
| User frustration context | Rage clicks + abandonment | Not available | Not available |
| Ghost error detection | Built-in | Not available | Not available |
| Third-party API failures | All origins | Own backend only | Own backend only |
| Setup | 1 script tag | SDK + config | Infrastructure |
One line. No backend changes. No SDK configuration.
<script src="https://api.frictasolv.com/solv.js" data-api-key="YOUR_API_KEY"></script>
FrictaSolv intercepts both Fetch and XMLHttpRequest calls. It logs any response with a 4xx or 5xx status code, as well as network errors, timeouts, and CORS failures. Each entry includes the URL, HTTP method, status code, and the page where it occurred.
No. FrictaSolv only logs the URL (truncated to 300 characters), status code, and method. It never reads request or response bodies, headers, cookies, or authentication tokens. This keeps the SDK lightweight and avoids PII collection.
Server-side tools see errors from the backend perspective. FrictaSolv sees them from the user perspective — capturing which page triggered the call, what the user did before and after, and whether the failure led to frustration (rage clicks, abandonment). Many client-side failures (CORS, timeouts, CDN errors) never appear in server logs at all.
Yes. FrictaSolv monitors all Fetch and XHR calls from the browser, regardless of destination. If a third-party payment gateway, analytics service, or CDN returns an error, it gets logged with the same detail as first-party API failures.
No. FrictaSolv wraps the native fetch function transparently. Your existing .catch() handlers, error boundaries, and retry logic continue to work exactly as before. FrictaSolv observes the result without modifying it.
Yes. The SDK supports remote configuration with ignore patterns. You can exclude specific URL patterns (like health checks or analytics pings) from being counted as failures.
Free 7-day friction audit. No credit card. No server-side changes needed.