---
title: "takeHomeAssignment.list"
method: POST
path: "/takeHomeAssignment.list"
tags: ["Take Home Assignment"]
---

# takeHomeAssignment.list

`POST /takeHomeAssignment.list`

> Beta
>
> This endpoint is in beta and may not be available for all organizations.

Lists take-home assignments visible to the caller, including candidate submission metadata and reviewer feedback status, and links each assignment to its interview definition through `interviewId`. Pass `expand: ["interview"]` to include that definition.

See the [Pagination and Incremental Synchronization](/docs/pagination-and-incremental-sync) guide for detailed usage examples.

**Requires the [`interviewsRead`](authentication#permissions-takehomeassignmentlist) permission.**

## Request body

- TakeHomeAssignmentListRequest
  - `applicationId` string, uuid, nullable — Filter to take-home assignments for this application
  - `candidateId` string, uuid, nullable — Filter to take-home assignments for this candidate
  - `expand` string[], nullable — Choose to expand results and include related interview definitions.
  - `cursor` string, nullable — Opaque cursor indicating which page of results to fetch
  - `syncToken` string, nullable — An opaque token representing the last time the data was successfully synced from the API. A new, updated one is returned after successfully fetching the last page of data.
  - `limit` integer, nullable — The maximum number of items to return. The maximum and default value is 100.

## Response `200`

Responses from the takeHomeAssignment.list endpoint

- union
  - TakeHomeAssignmentListSuccessResponse
    - `success` true, required
    - `results` TakeHomeAssignment[], required
      - `id` string, uuid, required — The unique identifier for the take-home assignment
      - `applicationId` string, uuid, required — The id of the associated application
      - `candidateId` string, uuid, required — The id of the associated candidate
      - `interviewStageId` string, uuid, nullable, required — The interview stage associated with the take-home assignment, if any
      - `interviewId` string, uuid — The id of the linked interview definition for this take-home
      - `interview` Interview
        - `id` string, uuid, required — The unique identifier for the interview
        - `title` string, required — The internal title of the interview
        - `externalTitle` string, required — The title of the interview shown to candidates
        - `type` 'Assessment' | 'Interview' | 'InterviewWithoutSchedule' | 'TakeHome' | 'Debrief', required — The interview definition type, such as Interview, TakeHome, or Debrief
        - `isArchived` boolean, required — Whether the interview is archived
        - `isDebrief` boolean, required — Whether the interview is a debrief
        - `isFeedbackRequired` boolean, required — Whether feedback is required for this interview
        - `isFeedbackRequested` boolean, required — Whether feedback is requested for this interview
        - `instructionsHtml` string, nullable — The interview instructions rendered as HTML
        - `instructionsPlain` string, nullable — The interview instructions rendered as plain text
        - `jobId` string, uuid, nullable — The unique identifier for the job associated with this interview, if any
        - `feedbackFormDefinitionId` string, uuid, required — The unique identifier for the feedback form definition used by this interview
      - `status` 'WaitingOnSubmission' | 'WaitingOnFeedback' | 'Complete' | 'Cancelled', required — The current lifecycle status of the take-home assignment
      - `createdAt` string, date-time, required — The timestamp when the take-home was created
      - `updatedAt` string, date-time, required — The timestamp when the take-home was last updated
      - `submission` TakeHomeAssignmentSubmission, required
        - `id` string, uuid, required — The unique identifier for the take-home submission
        - `submittedAt` string, date-time, required — The timestamp when the candidate submitted
        - `notesHtml` string, nullable, required — The candidate's submission notes rendered as HTML, if provided
        - `notesPlain` string, nullable, required — The candidate's submission notes rendered as plain text, if provided
        - `fileHandles` TakeHomeAssignmentFile[], required — The files submitted by the candidate
          - `id` string, uuid, required — The unique identifier for the file
          - `name` string, required — The file name
          - `handle` string, required — The file handle, which can be used with the file.info endpoint
      - `feedbackFormDefinitionId` string, uuid, required — The feedback form definition reviewers use for this take-home
      - `reviewers` TakeHomeAssignmentReviewer[], required — The assigned take-home reviewers
        - `userId` string, uuid, required — The id of the assigned reviewer
        - `interviewEventId` string, uuid, required — The interview event id used for interview briefings and feedback submission
        - `feedbackLink` string, uri, required — The Ashby app link for submitting reviewer feedback
        - `hasSubmittedFeedback` boolean, required — Whether this reviewer has submitted take-home feedback
        - `feedbackSubmittedAt` string, date-time, nullable, required — The timestamp when feedback was submitted, if it has been submitted
    - `nextCursor` string — Cursor for the next page of results, if available
    - `moreDataAvailable` boolean — Whether more data is available beyond this page
    - `syncToken` string — Sync token to use for future incremental syncs. Only present on the last page.
  - ErrorResponse
    - `success` false, required
    - `errors` ErrorDetail[], required
      - `message` string, required
      - `parameter` string

---

[API](https://skmtc.net/ashbyhq/apis/ashby-api.md) · [All operations](https://skmtc.net/ashbyhq/apis/ashby-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/ashbyhq/ashby-api/revisions/778b919dc743/schema)
