---
title: "Create a new GradeElementary"
method: POST
path: "/grade-elementary"
tags: ["GradeElementary"]
---

# Create a new GradeElementary

`POST /grade-elementary`

Create a new GradeElementary

## Request body

- object
  - `external` ExternalRequest — ExternalRequest is the External-object used on Update and Create operations, since it should only be allowed to set SourceID, the Source-field is not included.
    - `sourceID` string, required — The ID of the external source
  - `studentID` string, uuid, required — The ID of the student the grade belongs to. Must reference a student within the organization who has an active placement at the school referenced by SchoolID.
  - `schoolID` string, uuid, required — The ID of the school where the student received the grade. Must reference a school within the organization.
  - `subjectCode` string, required — The subject code as defined by the Swedish school authorities (e.g. "MA" for Mathematics, "SV" for Swedish).
  - `languageCode` string, nullable — The language code for the grade, used when the subject is taught in a specific language (e.g. mother tongue instruction).
  - `academicYear` string, required — The academic year in which the grade was awarded, in the format YYYY/YYYY (e.g. "2024/2025").
  - `term` 'HT' | 'VT', required — The school term in which the grade was awarded
  - `schoolYear` '6' | '7' | '8' | '9', required — The school year of the student when the grade was awarded (elementary school)
  - `teacher1EmployeeID` string, uuid, nullable — The ID of the primary teacher responsible for the grade. Must reference an Employee who has an active placement at the school referenced by SchoolID.
  - `teacher2EmployeeID` string, uuid, nullable — The ID of the secondary teacher responsible for the grade. Must reference an Employee who has an active placement at the school referenced by SchoolID.
  - `grade` 'A' | 'B' | 'C' | 'D' | 'E' | 'F' | 'MISSING' — The grade awarded to a student
  - `gradeDate` string, date, nullable — The date the grade was awarded.
  - `finalGrade` boolean, required — Whether this is the final grade for the student in this subject. A final grade is the official grade used on the student's grade certificate.
  - `isEnded` boolean, required — Whether the grading period has ended for this student in this subject.
  - `schoolComment` string, nullable — A comment from the school about the grade, visible to the student and guardians.

## Response `201`

Response for GradeElementary Create operation - returns the created GradeElementary

- GradeElementary — GradeElementary represents a grade awarded to a student in elementary school (Swedish: grundskola). Grades are scoped to the organization of the API key used. The SubjectCode field uses the subject code as defined by the Swedish school authorities (e.g. "MA" for Mathematics).
  - `id` string, uuid, required — Unique identifier for the GradeElementary
  - `meta` Meta — Meta contains information about the creation and modification of a resource for auditing purposes
    - `createdAt` string, date-time, required — Timestamp when the resource was created
    - `createdBy` string, uuid, nullable — User who created the resource
    - `updatedAt` string, date-time, nullable — Timestamp when the resource was last updated
    - `updatedBy` string, uuid, nullable — User who last updated the resource
  - `external` External — External is a reusable object that can be used to store external information from another system, used for third-party integration tracking.
    - `sourceID` string, nullable — The ID of the external source
    - `source` string, nullable — The source of the external information
  - `studentID` string, uuid, required — The ID of the student the grade belongs to. Must reference a student within the organization who has an active placement at the school referenced by SchoolID.
  - `schoolID` string, uuid, required — The ID of the school where the student received the grade. Must reference a school within the organization.
  - `subjectCode` string, required — The subject code as defined by the Swedish school authorities (e.g. "MA" for Mathematics, "SV" for Swedish).
  - `languageCode` string, nullable — The language code for the grade, used when the subject is taught in a specific language (e.g. mother tongue instruction).
  - `academicYear` string, required — The academic year in which the grade was awarded, in the format YYYY/YYYY (e.g. "2024/2025").
  - `term` 'HT' | 'VT', required — The school term in which the grade was awarded
  - `schoolYear` '6' | '7' | '8' | '9', required — The school year of the student when the grade was awarded (elementary school)
  - `teacher1EmployeeID` string, uuid, nullable — The ID of the primary teacher responsible for the grade. Must reference an Employee who has an active placement at the school referenced by SchoolID.
  - `teacher2EmployeeID` string, uuid, nullable — The ID of the secondary teacher responsible for the grade. Must reference an Employee who has an active placement at the school referenced by SchoolID.
  - `grade` 'A' | 'B' | 'C' | 'D' | 'E' | 'F' | 'MISSING' — The grade awarded to a student
  - `gradeDate` string, date, nullable — The date the grade was awarded.
  - `finalGrade` boolean, required — Whether this is the final grade for the student in this subject. A final grade is the official grade used on the student's grade certificate.
  - `isEnded` boolean, required — Whether the grading period has ended for this student in this subject.
  - `schoolComment` string, nullable — A comment from the school about the grade, visible to the student and guardians.

## Other responses

- `400` — Bad Request - The request was malformed or contained invalid parameters
- `401` — Unauthorized - The request is missing valid authentication credentials
- `403` — Forbidden - Request is authenticated, but the user is not allowed to perform the operation
- `404` — Not Found - The requested resource does not exist
- `409` — Conflict - The request could not be completed due to a conflict
- `422` — Validation error for GradeElementary Create operation - request data failed validation
- `429` — Too Many Requests - When the rate limit has been exceeded
- `500` — Internal Server Error - An unexpected server error occurred

---

[API](https://skmtc.net/meitner/apis/directory-api.md) · [All operations](https://skmtc.net/meitner/apis/directory-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/meitner/directory-api/revisions/014348a7bc35/schema)
