Understanding how software and computers are used across a team is useful. But many organizations want to go further than dashboards.
They want to:
- integrate usage data into internal tools
- build custom reporting pipelines
- automate analysis of software adoption
- correlate workstation activity with other operational systems
That's why we've introduced the WhatPulse Professional API.
The API provides programmatic access to the same activity and usage data available in the WhatPulse Professional dashboard, allowing organizations to integrate the data into their own systems and workflows.
Alongside the portal API, we're also publishing the documentation for the Client API, which has been available in the desktop application for quite some time but is now fully documented.
Together these APIs make it possible to treat WhatPulse as a data source within your infrastructure, not just a reporting interface.
Portal API
The Portal API allows your systems to retrieve data from the WhatPulse Professional platform.
Typical data available through the API includes:
- users and computers
- application usage
- input activity (keys and clicks)
- network traffic
- uptime metrics
The API is RESTful and supports authentication via API keys, making it suitable for server-to-server integrations. Manage your API keys here.
Example use cases
There is a lot of flexibility in how organizations can use the API, but here are a few examples of what we've seen:
Pull software usage for license analysis
GET https://app.whatpulse.pro/api/v1/applications/{application_id}/users
This can be used to build internal reports such as:
- identifying rarely used software
- validating software license renewals
- correlating application usage with software cost
Track workstation activity trends
GET /v1/computers/{computer_id}/time_series
This endpoint can be used to build time-series analysis such as:
- keystrokes and clicks over time
- workstation uptime patterns
- activity distribution across teams
Organizations often use this data to identify:
- focus periods across departments
- workflow interruptions
- underutilized systems
Build your own dashboard
Some organizations already connect the API to BI tools such as:
- PowerBI
- Grafana
- Tableau
- internal data warehouses
A common setup is a nightly job that fetches data such as:
GET /v1/users
GET /v1/computers
GET /v1/applications
GET /v1/websites
The data is then stored internally and visualized alongside metrics from other systems like ticketing platforms, cloud infrastructure, or project management tools.
Client API for local integrations
This isn't a new feature, but it's freshly documented. The Client API operates locally on the workstation and exposes real-time statistics directly from the running WhatPulse client.
This allows local tools or scripts to interact with the client in real time.
Example:
GET http://localhost:3490/v1/all-stats
This returns local statistics such as:
- current keystroke count
- mouse activity
- active applications
- uptime metrics
Because this API runs locally, it enables different types of integrations.
Example: workstation activity widgets
Developers can build small local utilities such as:
- system tray widgets displaying live input statistics
- Stream Deck panels showing activity levels
- terminal dashboards displaying workstation metrics
Example: automation workflows
The local API can also be used for automation. For example, when a process is started, an integration could start a WhatPulse Profile to track the stats against a specific session, and then stop it when the process ends.
Treat WhatPulse as a data source
Most teams start with WhatPulse as a dashboard. But the data behind it can be useful in many other contexts.
Examples we've already seen internally and from customers include:
Software license optimization
Pull application usage via the API and compare it with license costs to identify underused tools.
Engineering productivity dashboards
Combine activity metrics with data from other sources, like GitHub or GitLab, to visualize development patterns.
Infrastructure monitoring
Track workstation uptime alongside server uptime to identify operational patterns across teams or kiosk computers.
Documentation
The full documentation for both APIs is available here:
Portal API https://whatpulse.pro/help/docs/api/web/whatpulse-professional-api
Client API https://whatpulse.pro/help/docs/api/client/whatpulse-client-api
If you build something interesting with the API, we'd genuinely be curious to see it.
— Martijn
WhatPulse Professional