Prodoscore API: Overview and Reference

Overview

The Prodoscore Data API is a read-only REST API that allows Enterprise plan customers to query their organization's Prodoscore data programmatically. It returns the same underlying data available elsewhere in Prodoscore, structured for consumption by external systems such as a BI tool, data warehouse, or internal reporting application.

The API is pull-based. There is no push notification or streaming mechanism. Your system sends a request when it needs data, and the API returns the most current data Prodoscore has calculated at that time.

The API does not support create, update, or delete operations. It cannot modify any data in your Prodoscore account.

Full API documentation can be found here: Prodoscore REST API Reference

Enabling API Access

API access is controlled at the organization level by an administrator.

  1. A Prodoscore administrator enables the API access setting from account settings.
  2. Until this setting is enabled, any request made to the API will return an unauthorized error, regardless of whether a valid API key is presented.
  3. Once enabled, the administrator can generate an API key for the organization.

Getting Started

  1. Have your Prodoscore administrator enable API access in account settings.
  2. Generate your organization's API key.
  3. Review the OpenAPI 3.0 specification and interactive explorer for exact request and response formats.
  4. Make a test request to the endpoint most relevant to your use case, using a short date range, to confirm connectivity before building a larger integration.

Authentication

  • Each customer organization receives one API key.
  • The API key is scoped to that organization's data only. There is no mechanism for a key to access data belonging to another organization.
  • All requests must be made over HTTPS. Requests made over unencrypted HTTP are not supported.
  • The API key must be included with every request. Refer to the API documentation for the specific header format.

Data Freshness

Prodoscore calculates scoring and activity data through nightly processing cycles. The Data API reflects the results of the most recent completed cycle. It does not provide real-time or intra-day data. If you query the API multiple times within the same day, you will receive the same data until the next nightly cycle completes.

Request Format

  • All endpoints return JSON.
  • All date and time fields are returned as ISO 8601 timestamps.
  • Product names are returned as both a normalized product code and a human-readable display name.
  • Every endpoint supports filtering by date range. Additional filters vary by endpoint and are listed below.
  • If a request does not specify a date range, the API returns data for the most recent 90 days.
  • Large result sets are paginated. Use the pagination fields in the response to retrieve subsequent pages rather than relying on a single request to return a complete dataset.

Versioning

The API uses URL-based versioning (for example, /v1/). When a new version is released, the prior version continues to function until a documented deprecation date has passed. Deprecation timelines will be communicated in advance.

Available Endpoints

The API is organized around five endpoints. Each returns a distinct category of data.

1. Employee Daily Summary

Returns a daily record for each employee: Prodoscore, active time, gap time, and productivity group for a specified day.

Fields returned: employee name, email, role, department, date, score, active time, gap time, productivity group.

Available filters: date range, email, role, department, productivity group.

2. Product Activity

Returns a count of employee interactions with each connected product on a given day. "Product" refers to any activity source Prodoscore tracks, such as Slack chats, emails sent, Google Drive activity, or Salesforce events.

Fields returned: employee name, email, role, date, product name, count.

Available filters: date range, email, product, role.

3. Desktop Agent Activity

Returns app-level and URL-level activity captured by the Desktop Connect agent, including which applications and websites were used, for how long, and the level of interaction recorded.

Fields returned: employee name, email, date, product category code, product category name, product score, app or URL name, app type (app vs. URL), duration, mouse clicks.

Available filters: date range, email, product category, app type.

Access requirement: This endpoint is only available to organizations with an active Desktop Connect license. If your organization does not have Desktop Connect enabled, requests to this endpoint will return an error message indicating the requirement is not met, rather than an empty result set.

4. Activity Events

Returns individual, time-blocked activity events for each employee, such as calendar entries, with start and end times. Some events include a flagged status and additional detail.

Fields returned: employee name, email, product, date, activity subject, start time, end time, flagged status, drilldown details.

Available filters: date range, email, product, flagged status.

5. Website Duration

Returns aggregated time spent per employee on each website domain over a specified date range. This endpoint provides a rolled-up view; for individual session-level detail, see Desktop Agent Activity.

Fields returned: employee name, role, department, website domain, total duration, period start date, period end date.

Available filters: date range, email, department, website.

Performance

The following are the API's target response times under normal operating conditions:

Query Type Target Response Time
Simple, filtered queries (single employee, short date range) Under 500 milliseconds
Broad queries (full department, 30+ day range), first page of results Under 2 seconds
Any query, 95th percentile Under 3 seconds

If a query would return a large result set, the API returns the first page of results promptly and expects the client to paginate through the remainder rather than waiting for the entire result set to be assembled.

Error Handling

The API returns standard error responses for conditions including, but not limited to:

  • API access not enabled for the organization
  • Missing or invalid API key
  • Requests to an endpoint the organization is not licensed for (for example, Desktop Agent Activity without an active Desktop Connect license)
  • Invalid request parameters

Refer to the error code reference in the API documentation for a complete list of error codes and their meanings.

← Go to prodoscore.com