---
title: "GET /v1/ai/workspaces/:wsId/voices"
method: GET
path: "/v1/ai/workspaces/:wsId/voices"
tags: ["AI Knowledge"]
---

# GET /v1/ai/workspaces/:wsId/voices

`GET /v1/ai/workspaces/:wsId/voices`

## Request

- Base URL: `https://api.quillhub.ai`
- URL: `https://api.quillhub.ai/v1/ai/workspaces/:wsId/voices`
- Auth: HTTP bearer

## Path parameters

- `wsId` integer, required

## Response `200`

Voices of the workspace.

- object
  - `voices` object[], required
    - `voice_id` number, required
    - `subject_id` number, nullable, required
    - `name` string, nullable, required
    - `projects` object[], required
      - `id` number, required
      - `name` string, required
    - `samples_count` number, required: How many acoustic samples (voice_sample rows with an embedding) this voice has — what the matcher compares new recordings against. Whole history, no window. At most one sample per (recording, diarization label) pair, so this is normally SMALLER than recordings_count and is NOT the number of meetings the voice was heard in.
    - `recordings_count` number, required: Distinct non-deleted recordings this voice was heard in (recording_voice), whole history. Unrelated to `occurrences` in GET /ai/workspaces/:wsId/unknown-speakers, which counts only the still-unidentified fragments inside that endpoint's recent-recordings triage window.
    - `last_heard_at` string, nullable, required
    - `has_sample` boolean, required
    - `fresh_samples_count` number, required: Subset of samples_count whose created_by is not 'migration'. A voice with samples_count > 0 and fresh_samples_count = 0 is recognizable only from carried-over embeddings, which never auto-fill a name.
    - `is_self` boolean, required
    - `dismissed` boolean, required
  - `suggestions` object[], required
    - `id` number, required
    - `voice_id` number, required
    - `candidate_voice_id` number, required
    - `candidate_name` string, nullable, required
    - `coverage` number, required

## Other responses

- `401`: Unauthenticated.
- `403`: Forbidden.

---

[API](https://skmtc.dev/quillhub/apis/quillhub-public-api.md) · [All operations](https://skmtc.dev/quillhub/apis/quillhub-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/quillhub/apis/quillhub-public-api/revisions/5bd42ee9d967?raw)
