workforce

Desk Ratings

The customer-service desk's score: the rolling window that decides the tier, its trend week by week, the recent shifts, and why.

A manager (or anybody holding the People read) sees everyone they manage; everybody else sees exactly their own row, and a caller who is not on the desk sees an empty list.

⛔B4a (#3504), Frederick, 2026-10-03: measured in production this route cost 5,058ms/162 queries for Frederick, 2,901ms/132 for a CS rep, and 2,654ms/128 for a floor contractor who gets an empty list -- every one of those computed the IDENTICAL whole-desk reading (desk_activity. report's only narrows what is returned, never what is read -- see its docstring). Two fixes, in order:

  1. A caller whose visible rows (_desk_rows_visible_to) hold nobody who is actually on the desk today (desk_activity.desk_members_among -- one cheap existence check) gets the empty body immediately, without ever reading a shift, a completion or waiting work for anyone.
  2. Everybody else reads through desk_reading_cache.cached_report: the whole desk computed once and shared by every caller for up to 120 seconds (see that module's docstring for the staleness reasoning), filtered down to exactly the rows this caller may see (desk_reading_cache.filter_rows) -- byte-identical to what calling report(..., only=visible) would have returned on its own.
get/api/workforce/desk-ratings

Request

  • Base URL: https://api.pigeonly.com (the document declares no server; this is the origin it was published from)
  • URL: https://api.pigeonly.com/api/workforce/desk-ratings
  • Auth: none declared

Query parameters

weeksinteger

Response

Successful Response

object required

Changes

No recorded changes to this operation across all 1 revision of this API.