---
title: "Create Invited Teacher Class"
method: POST
path: "/admin/teacher-invitations/{invitation_id}/classes"
tags: ["Teacher Invitations"]
---

# Create Invited Teacher Class

`POST /admin/teacher-invitations/{invitation_id}/classes`

Prepare a class (and its roster) for an invited teacher who has no
account yet. It becomes theirs when they create their account.

## Path parameters

- `invitation_id` string, required — The ID of the invitation

## Request body

- PendingTeacherClassCreate — Same body as `POST /admin/teachers/{id}/classes`.
  - `name` string, required
  - `grade` 'sixieme' | 'cinquieme' | 'quatrieme' | 'troisieme' | 'seconde' | 'premiere' | 'terminale' | 'prepa', nullable
  - `students` PendingTeacherClassStudent[]
    - `first_name` string, required
    - `last_name` string, required
    - `email` string, email, nullable
  - `send_invitations` boolean

## Response `200`

Successful Response

- PendingTeacherClassResponse
  - `id` string, required
  - `invitation_id` string, required
  - `name` string, required
  - `grade` string, nullable
  - `school_year` string, required
  - `students_count` integer, required
  - `send_invitations` boolean, required

## Other responses

- `400` — Malformed identifier
- `404` — Resource not found
- `409` — Business rule violated
- `422` — Validation Error

## Changes

> 23 revisions in range; 1 not diffed.

- **2026-09-25** `a8ae0e0c0570` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/excellence-ai/apis/excellence-learning/changes/admin/teacher-invitations/:invitation_id/classes/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/a8ae0e0c0570?raw)
