Pulse Dashboard API¶
Endpoint link¶
neomia Pulse Dashboard API URL
https://api.neomia.ai/pulse-dashboard
https://api.neomia.ai/pulse-dashboard/docs - Documentation
Configuration¶
API Key
To use this API, please send your neomia Pulse API key in the headers for each request.
1 | |
<APIKEY> with your particular access key.
The Pulse Dashboard API is the read / inspection surface of the platform: it serves the data displayed by the neomia Pulse Dashboard (authentications, users, statistics, usage) and the policy and alert configuration. Writes that affect authentication itself (enrollment, verification, account management) go through the Pulse API.
Every request is scoped to the organization identified by the API key — there is no cross-organization read. All responses share the envelope {"timestamp": …, "success": true, "message": "Done", …}; paginated responses add a count field.
Users¶
| Method | Path | Purpose |
|---|---|---|
| GET | /users |
Paginated user list (skip, limit, user_ref_filter). |
| GET | /users/{userRef} |
One user. |
| GET | /users/{userRef}/members |
Member roster of an account: per-member enrollment status, security-code state, pattern counts, last authentication. |
| GET | /users-refs/{search} |
User-reference search (typeahead). |
| GET | /users-growth |
User growth buckets over a date range. |
| GET/POST | /users/{userRef}/logs, /users/{userRef}/actions |
Per-user log entries and administrative actions. |
User objects carry user_ref, type (nominative | generic), groups, pattern references, and the optional user_display_name (a display label — the identity key remains user_ref).
Authentications¶
| Method | Path | Purpose |
|---|---|---|
| GET | /authentications |
Paginated authentication list (date_from, date_to, skip, limit, user_ref). |
| GET | /authentications/{id} |
One authentication. |
| GET | /authentications-history[/{userRef}] |
Authentication history. |
| GET | /authentication/{id}/trace |
Raw scoring trace. |
| GET | /authentication/{id}/{indicator}/signals[/{signal}] |
Per-indicator signal details. |
| GET/POST | /patterns, /patterns/tags[/{tag}] |
Patterns by id; tag keys and values. |
An authentication carries the decision (authenticated, recommended_action), the scores (confidence, confidence_biometrics, confidence_context), the method (auth_method: biometric | security_code), the indicator breakdown, session_id (attempts of one sign-in session share it), member_ref and account_type for shared accounts, and user_display_name.
Aggregations & activities¶
The data feed behind the dashboard's Home / Organization / Users views:
| Method | Path | Purpose |
|---|---|---|
| GET | /aggregations/daily-usages |
Per-day authenticated / blocked / challenged counters. |
| GET | /aggregations/blocked-users, /aggregations/blocked-users-history |
Currently blocked users and their history. |
| POST | /aggregations/blocked-users/batch |
Blocked counts for several time windows in one call. |
| GET | /aggregations/users[/{userRef}] |
Per-user statistics table (sortable, filterable). |
| GET | /aggregations/groups/ |
Group membership counts. |
| GET | /aggregations/geolocation |
Geolocation map points. |
| GET | /aggregations/contextual/{indicator} |
Contextual indicator breakdown. |
| GET | /aggregations/application/ |
Per-application counts. |
| GET | /aggregations/authentications-history |
Bucketed authentication history. |
| GET | /aggregations/connexion-stats |
Hour-of-day / day-of-week connection histograms. |
| GET | /activities/{type} |
Time series (events, biometrics, contextual, authentications). |
| GET | /activities-details |
The raw authentications behind a series point. |
| GET | /data-counter |
Users / patterns / authentications counters over a range. |
| POST | /data-counter/batch |
Counters for several time windows in one call. |
| GET/POST | /sorting/users |
Sorted user leaderboards. |
Null scores
Measurement signals (geolocation coordinates, impossible-travel distance/time/speed) have no per-signal computed outcome: the corresponding computedOutcome fields are null, which is distinct from a genuine score of 0.0.
Usage¶
Two endpoints expose the subscription-usage data (see the dashboard's Subscription page):
| Method | Path | Purpose |
|---|---|---|
| GET | /usage/history |
The headcount ledger: append-only account-count events (enroll, delete, type-change, checkpoint), each with n_accounts, n_accounts_generic, n_users_nominative, n_users_generic. When date_from is given, a baseline event anchors the curve at the window start. The ledger is delete-proof: it answers "how many accounts did the organization have at time T" even after deletions. |
| GET | /usage/api |
Daily API usage rollups: n_requests, a breakdown by_endpoint_class (verify, enroll, bootstrap, other) and n_active_users_max (the day's peak hourly count of distinct authenticated users). |
Both accumulate from the feature's deployment on — earlier history is not backfilled. On historical ledger events, n_accounts_generic defaults to 0 (not necessarily a true zero).
Policies¶
| Method | Path | Purpose |
|---|---|---|
| GET | /policies |
Policy list. The response also carries globally_enabled_indicators — the indicators enabled platform-wide; an indicator absent from this list never contributes to any score, whatever the policy says. null means the information is unavailable. |
| POST | /policies |
Create a policy (201). |
| GET | /default-policy |
The organization's default policy. |
| GET/PUT/DELETE | /policies/{id} |
Read / update / delete (archive) a policy. |
The policy document carries the indicator/signal weights, the v2 decision model (decision_threshold, contextual_influence, priority) and the security_code_fallback block (enabled, max_biometric_attempts, max_code_attempts, code_length, weak_codes).
Alerts, notifications & log export¶
| Method | Path | Purpose |
|---|---|---|
| GET/POST | /alert |
Alert-event rules matrix. |
| GET/POST | /alert/email, /alert/sms, /alert/syslog |
Delivery-channel configuration. |
| GET | /notifications |
Notification list (paginated). |
| GET/POST | /notifications/read |
Mark all / one notification read. |
| GET/POST | /logs, /logs/{id} |
Organization request logs. |
| POST | /management/export-log |
Queue an asynchronous CSV export. |
| POST | /management/logs-archives |
List export archives. |
| POST | /management/download-archive |
Download an archive. |
Errors¶
| Status | Situation |
|---|---|
| 401 | Missing or unknown API key (no organization resolved). |
| 404 | No result matching the request. |
| 422 | Empty or invalid body. |