Needs You
THE desk landing (docs/SUPERVISION_DESK.md; Frederick, 2026-08-09, defining it precisely): "What is on your list to work? Whether it be unassigned tickets for consumer, or assigned tickets for government account managers, or tickets that have been assigned to you that you have to respond to." One row per ticket that actually needs a reply from THIS caller -- see supervisor_service.gather_needs_you_queue's own module comment for the full "mine" composition and the approve/decide/rescue categorization.
pool_kinds IS QUEUE MEMBERSHIP, NOT VERTICAL VISIBILITY (2026-08-09, same-day correction, Frederick viewing this exact page as Keith Bowdle, Sales Manager, on staging: a government ticket nobody had assigned to him was sitting here with an Approve action -- "This is not a ticket that needs to be assigned to him ... the pool sources should key on being a CS agent / account manager for that vertical, not on holding its view grant"). This used to be _allowed_kinds (holds tickets:b2c/tickets:b2g at all) -- wrong, because that grant also means "may view/search," which Sales Manager holds for a completely different reason (routing a sales inquiry that arrives on the government side). registry.queue_membership_kinds is the narrower, role-derived signal (Account Manager / Customer Service by name, registry.QUEUE_MEMBERSHIP_ROLES) -- see that constant's own docstring for the full three-tier argument. The owner (admin:people:read) is a deliberate ADDITION to that signal, never a full replacement of it (2026-08-11 fix, Cindy Palma: Frederick set her grants to tickets:b2g only -- "she still sees consumer tickets" -- because this used to swap queue membership out entirely for the FULL kind list the instant admin:people:read was held, regardless of which verticals the holder actually had). registry.owner_bypass_ticket_kinds never returns a kind the caller does not separately hold tickets:b2c/tickets:b2g for -- see its own docstring. Frederick's desk stays exactly as full as before (he holds both grants), Cindy's stops including b2c.
NO GRANT GATE (2026-08-09, folding MyAssignedTicketsPanel's intent in here rather than keeping a second, parallel "tickets for you" list): holding neither tickets:b2c nor tickets:b2g used to 403 this whole endpoint. That is wrong for the exact case this desk exists to cover -- a media/legal/sales inquiry Frederick assigns straight to a named person who does no other CS work (his own example, the Keith Bowdle shape). The ASSIGNED-TO-ME half of the query applies regardless of any grant or role -- an explicit, by-name assignment is never affected by queue membership. A caller with no queue membership and no ticket assigned to them gets an honestly empty list, never a 403 -- "nothing needs you" is correct, not broken, for most of the company most of the time.
counts/total are computed from the SAME items this response returns, never a second query -- the literal fix for the desk reading "Needs you 23" while rendering one row: the number on the tab can never disagree with what is on the screen because they are the same list.
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/cs/needs-you
- Auth: none declared
Response
Successful Response
Changes
No recorded changes to this operation across all 1 revision of this API.