Symptom guide
| Symptom | Check | Resolution |
|---|---|---|
| 401 response | Authorization header and JWT validity | Send a current bearer JWT |
| 403 response | Organization membership | Use a member of the requested organization |
| 404 response | Organization slug | Resolve the organization before requesting analytics |
| An expected day is absent | Date window and whether that day had events | Send explicit UTC dates and treat omitted dates as zero only when appropriate |
| Service/provider count looks low | Selected window and how authentication events are recorded | Compare the same explicit period and verify the expected login path emitted events |
| Recent results are incomplete | Requested limit and lack of offset pagination |
Use a bounded limit for monitoring; use date-based aggregate endpoints for older periods |
| Dashboard panels disagree | Different implicit request times or date windows | Compute one window and send it to every compatible request |
| Dashboard is slow | Range size and parallel query volume | Bound the range, cache deliberately, and avoid uncontrolled refresh loops |
Log statuses, error codes, and report windows, but never log bearer tokens. See API error handling for resilient client patterns.