Get Poll Voters
List individual voters (“who voted”) for a discussion’s poll.
Paginated per-vote rows enriched with display_name + signed thumbnail avatar_url. Optional ?option_id= filters data (not option_counts).
Restricted-space ACL denial returns 404 discussion_not_found — the SAME shape as a genuinely missing discussion — NOT the 403 space_access_denied the sibling GET /discussions//reactions/reactors route returns for the identical can_view() failure. A member probing discussion ids must not be able to enumerate which ids exist inside a restricted space they can’t access by diffing a 403 (exists, denied) from a 404 (doesn’t exist) — reactors/reposters keep their existing 403 (out of scope; see the module docstring’s error-mapping table).
Roster visibility rule (server-enforced, matches the poll read gating): viewable ONLY when the requesting contact can see results — they’ve voted OR the poll is closed. Otherwise 403 poll_results_hidden, even though the caller already passed the discussion-level can_view() ACL — seeing the discussion does not imply seeing an unrevealed poll’s roster. This is NOT an existence oracle (unlike the can_view() case above): it only ever fires once can_view() has already confirmed the discussion is visible to this viewer, so it never distinguishes “doesn’t exist” from anything.
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.