Skip to main content
PATCH
Update a rubric criterion

Rules

  • Every field is optional. Anything you leave out keeps its current value.
  • Sending scoringLogic replaces every band. Send the full list, not just the band you changed.
  • Every band you send needs both score and scoringLogic.
  • maxScore and minScore stay strings of at most 10 characters.
  • Keep the trailing slash on the path. Without it the API redirects, and most HTTP clients drop the request body when they follow a redirect.
The rubric id in the path is ignored. The criterion is found by criteriaId alone, so a wrong or made-up rubric ID still updates the criterion and returns 200. Get criteriaId from the rubric’s own rubricCriteria array so you change the criterion you meant to.
The response is the whole rubric, not the criterion. Find your change inside rubricCriteria.
An unknown criteriaId returns 404 with Rubric criteria not found.

Authorizations

Authorization
string
header
required

Access token from Get an access token.

Path Parameters

id
string<uuid>
required

Unique ID of the rubric, from Create a rubric or List rubrics.

criteriaId
string<uuid>
required

Unique ID of the criterion, from the rubricCriteria array of any rubric response.

Body

application/json

Every field is optional. Fields you leave out keep their current value.

name
string

What this criterion measures.

Example:

"Grammar and mechanics"

description
string

Optional longer explanation of the criterion.

Example:

"Spelling, punctuation, and sentence construction."

maxScore
string

Highest score this criterion can award. A string, not a number, so 5 Star and 10 are both valid. At most 10 characters.

Maximum string length: 10
Example:

"5 Star"

minScore
string

Lowest score this criterion can award. A string, not a number. At most 10 characters.

Maximum string length: 10
Example:

"1 Star"

scoringLogic
object[]

One band per score the criterion can award, from maxScore down to minScore. Every band needs both score and scoringLogic.

Response

The updated rubric, with the changed criterion inside rubricCriteria.

A rubric and all of its criteria.

id
string<uuid>

Unique ID of the rubric. Send it as rubricId when you attach the rubric to an assignment.

Example:

"2b973c83-2830-4712-87b7-64a8c0a99035"

name
string

Name of the rubric.

Example:

"Grade 5 English homework"

description
string | null

Longer explanation of the rubric. null if you did not send one.

Example:

"Grades handwritten English homework on grammar and clarity."

rubricCriteria
object[]

Every criterion on this rubric, oldest first. Empty until you add one.

createdAt
string<date-time>
Example:

"2026-03-27T11:30:18.402117Z"

modifiedAt
string<date-time>
Example:

"2026-03-27T11:30:18.402145Z"