---
title: "Duplicate Teacher Assignments Batch"
method: POST
path: "/teacher/assignments/duplicate-batch"
tags: ["teacher_assignments"]
---

# Duplicate Teacher Assignments Batch

`POST /teacher/assignments/duplicate-batch`

## Request

- Base URL: `https://api.excellence-ai.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.excellence-ai.com/teacher/assignments/duplicate-batch`
- Auth: OAuth 2
  - Password
  - Token URL: `api/login`
- TypeScript: <https://skmtc.dev/excellence-ai/apis/excellence-learning/docs/teacher/assignments/duplicate-batch/post.ts> (a function with typed inputs; its response is checked against the schema)

Copy the selected devoirs, and every own devoir of the selected
folders' subtrees that belongs to `school_year`, as drafts of the
teacher's current year, each in the folder of its source. With
`dry_run` the response only says what would happen, which is what the
confirmation dialog shows. A devoir or folder that is not the teacher's
answers 404.

## Request body

- DuplicateAssignmentsBatchRequest: « Dupliquer pour 2026-2027 » on a selection of « Mes devoirs ».
  - `folder_ids` string[]
  - `school_year` string, required
  - `dry_run` boolean
  - `include_already_duplicated` boolean
  - `assignment_ids` string[]

## Response `200`

Successful Response

- BulkDuplicationResponse
  - `target_school_year` string, required
  - `to_copy` DuplicationItemResponse[], required
    - `id` string, required
    - `title` string, required
    - `folder_id` string, nullable
  - `already_duplicated` DuplicationItemResponse[], required
    - `id` string, required
    - `title` string, required
    - `folder_id` string, nullable
  - `created` DuplicationCreatedResponse[]
    - `source_id` string, required
    - `id` string, required
  - `failures` DuplicationFailureResponse[]
    - `id` string, required
    - `title` string, required
    - `error` string, required

## Other responses

- `404`: Resource not found
- `409`: Business rule violated
- `422`: Validation Error

## Changes

> 92 revisions in range; 1 not diffed.

- **2026-09-07** `0ccba2913cca`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/excellence-ai/apis/excellence-learning/changes/teacher/assignments/duplicate-batch/post.md)

---

[API](https://skmtc.dev/excellence-ai/apis/excellence-learning.md) - [All operations](https://skmtc.dev/excellence-ai/apis/excellence-learning/llms.txt) - [OpenAPI document](https://skmtc.dev/excellence-ai/apis/excellence-learning/revisions/ec30031e9362?raw)
