---
title: "Create an attendance sheet"
method: POST
path: "/api/v2/classroom-slots/{classroomSlotId}/attendance-sheets"
tags: ["Classrooms"]
---

# Create an attendance sheet

`POST /api/v2/classroom-slots/{classroomSlotId}/attendance-sheets`

> 🔑
>
> Required OAuth scope: `attendanceSheets:write`.

Creates an attendance sheet for the given classroom slot.

## Path parameters

- `classroomSlotId` string, ObjectId, required

## Headers

- `360-api-version` 'v2.0', required

## Request body

- InputAttendanceSheetDTO
  - `name` string, required — The title of the attendance sheet.

## Response `201`

Returns the created attendance sheet.

- union
  - ClosedAttendanceSheetDTO
    - `_id` string, ObjectId, required — The unique ID of the attendance sheet.
    - `name` string, required — The title of the attendance sheet.
    - `personalizedFields` PersonalizedFields
      - `organizationName` string — The name of your organization.
      - `organizationLogoId` string, ObjectId — The unique id of the logo of your organization as a media of type image.
    - `status` 'closed' | 'signed', required — The status of the attendance sheet.
    - `checkInCode` string — The code to be used by learners to check in.
  - OpenedAttendanceSheetDTO
    - `_id` string, ObjectId, required — The unique ID of the attendance sheet.
    - `name` string, required — The title of the attendance sheet.
    - `personalizedFields` PersonalizedFields
      - `organizationName` string — The name of your organization.
      - `organizationLogoId` string, ObjectId — The unique id of the logo of your organization as a media of type image.
    - `status` 'adjustment' | 'open', required — The status of the attendance sheet.
    - `checkInCode` string, required — The code to be used by learners to check in.

## Other responses

- `400` — Maximum of 100 attendance sheets is reached for the given classroom slot.
- `401` — The given access token is either missing, invalid, has expired, or has been revoked.
- `403` — The given access token does not have the required OAuth scope to execute the request.
- `404` — The given `classroomSlotId` does not correspond to any existing classroom slot.
- `409` — Concurrency issue during the creation of the attendance sheet.
- `429` — The client has sent too many requests in a short amount of time.

---

[API](https://skmtc.dev/360learning/apis/core-api.md) · [All operations](https://skmtc.dev/360learning/apis/core-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/360learning/core-api/revisions/94b691b0b72c/schema)
