---
title: "List source-session candidates for the duplicate-from picker (MED-982 / E1.3g)"
method: GET
path: "/cohorts/{cohortId}/sessions/duplicate-candidates"
tags: ["Session Agenda Authoring"]
---

# List source-session candidates for the duplicate-from picker (MED-982 / E1.3g)

`GET /cohorts/{cohortId}/sessions/duplicate-candidates`

## Request

- Base URL: `https://api.production.yourmedley.com`
- URL: `https://api.production.yourmedley.com/cohorts/{cohortId}/sessions/duplicate-candidates`
- Auth: none declared

Returns one row per unique session_number in the cohort's
group_coaching modality, with a `has_authored_content` flag so the
picker can grey out empty candidates (AC-EP3). The
`session_id` is a representative row at that session_number — pass it
verbatim back to POST `.../agenda/duplicate-from` as
`source_session_id`; the service resolves to the canonical
(cohort, modality, session_number) scope, identical for every
per-group row at the same session_number.

Empty array when the cohort has no group_coaching modality or no
sessions with a session_number — the picker handles "nothing to
choose" UI-side.

## Path parameters

- `cohortId` string, uuid, required

## Response `200`

Candidates ordered by session_number ascending.

- object
  - `success` boolean
  - `data` object[]
    - `session_id` string, uuid
    - `session_number` integer
    - `title` string
    - `has_authored_content` boolean

## Other responses

- `401`: Unauthorized

---

[API](https://skmtc.dev/withmedley/apis/medley-api.md) - [All operations](https://skmtc.dev/withmedley/apis/medley-api/llms.txt) - [OpenAPI document](https://skmtc.dev/withmedley/apis/medley-api/revisions/40aaac5ca6bd?raw)
