---
title: "List interviewers"
method: GET
path: "/v1/interviewers"
tags: ["Interviewer"]
---

# List interviewers

`GET /v1/interviewers`

Lists interviewer load, pause state, work hours, and module training. Omit statuses for the default active-only view; pass statuses=ACTIVE,ARCHIVED to include both active and archived interviewers.

## Query parameters

- `cursor` string — Opaque pagination cursor from the previous page's pagination.next_cursor, bound to the same query filters.
- `limit` integer — Page size. Must be between 1 and 100; defaults to 25.
- `ids` string[], nullable — Comma-separated list of IDs; maximum 100 values.
- `search` string — Case-insensitive substring search across interviewer name and email; combines with other filters using AND.
- `name` string — Case-insensitive substring match on interviewer name; combines with other filters using AND.
- `email` string — Case-insensitive exact match on interviewer email; combines with other filters using AND.
- `statuses` string[], nullable — Matches interviewers with any listed status; combines with other filters using AND.
- `module_ids` string[], nullable — Matches interviewers assigned to any listed interview module; combines with other filters using AND.
- `manager_ids` string[], nullable — Matches interviewers managed by any listed employee; combines with other filters using AND.
- `ats_ids` string[], nullable — Matches interviewers whose ATS ID is one of these exact values; combines with other filters using AND.
- `ats_type` 'GREENHOUSE' | 'ASHBY' | 'LEVER' | 'WORKDAY' | 'SMARTRECRUITERS' | 'GEM' | 'KOMBO' — Filters by ATS provider.
- `created_at_gte` string, date-time — Filters records created at or after this timestamp.
- `created_at_lte` string, date-time — Filters records created at or before this timestamp.
- `updated_at_gte` string, date-time — Filters records updated at or after this timestamp.
- `updated_at_lte` string, date-time — Filters records updated at or before this timestamp.

## Response `200`

Success

- object
  - `data` Interviewer[], required
    - `id` string, required — Canonical employee ID (emp_ followed by 32 lowercase hexadecimal UUID characters).
    - `name` string, required
    - `email` string, email, required
    - `title` string, nullable, required
    - `timezone` string, nullable, required
    - `manager_id` string, nullable, required — Canonical employee ID (emp_ followed by 32 lowercase hexadecimal UUID characters).
    - `ats` object, nullable, required
      - `type` 'GREENHOUSE' | 'ASHBY' | 'LEVER' | 'WORKDAY' | 'SMARTRECRUITERS' | 'GEM' | 'KOMBO', required
      - `id` string, required
    - `load` object, required
      - `daily_interviews` integer, required
      - `daily_limit` integer, required
      - `daily_load_limit` object, nullable, required
        - `source` 'ORG' | 'INTERVIEWER', required
        - `limit` integer, required
        - `type` 'NUMBER_OF_INTERVIEWS' | 'NUMBER_OF_MINUTES', required
      - `weekly_interviews` integer, required
      - `weekly_limit` integer, required
      - `weekly_load_limit` object, nullable, required
        - `source` 'ORG' | 'INTERVIEWER', required
        - `limit` integer, required
        - `type` 'NUMBER_OF_INTERVIEWS' | 'NUMBER_OF_MINUTES', required
    - `paused` object, required
      - `is_paused` boolean, required
      - `until` string, date-time, nullable, required — ISO 8601 timestamp.
    - `pause_dates` object[], required
      - `start_at` string, date-time, required — ISO 8601 timestamp.
      - `end_at` string, date-time, required — ISO 8601 timestamp.
    - `work_hours` object, required
      - `source` 'ORG' | 'INTERVIEWER', required
      - `blocks` object[], required
        - `day` string, required
        - `start` string, required
        - `end` string, required
    - `attributes` object[], required
      - `attribute_name` object, required
        - `id` string, required — Canonical interviewer attribute ID (att_ followed by 32 lowercase hexadecimal UUID characters).
        - `name` string, required
        - `type` 'DEPARTMENT' | 'TEAM' | 'LEVEL' | 'LOCATION' | 'COUNTRY' | 'CUSTOM', required
      - `values` object[], required
        - `id` string, required — Canonical interviewer attribute value ID (atv_ followed by 32 lowercase hexadecimal UUID characters).
        - `name` string, required
    - `modules` object[], required
      - `module` object, required
        - `id` string, required — Canonical interview module ID (mod_ followed by 32 lowercase hexadecimal UUID characters).
        - `name` string, required
      - `training_status` 'TRAINED' | 'SHADOW' | 'REVERSE_SHADOW', required
      - `is_paused` boolean, required
    - `created_at` string, date-time, required — ISO 8601 timestamp.
    - `updated_at` string, date-time, required — ISO 8601 timestamp.
  - `pagination` Pagination, required
    - `next_cursor` string, nullable, required

## Other responses

- `400` — Bad request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not found
- `409` — Conflict
- `410` — Gone
- `500` — Internal error

---

[API](https://skmtc.dev/modernloop/apis/modernloop-platform-api.md) · [All operations](https://skmtc.dev/modernloop/apis/modernloop-platform-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/modernloop/modernloop-platform-api/revisions/33a0f9f44e4c/schema)
