Skip to content

Create a rubric

POST/v5/rubrics

Create a rubric, optionally with its initial criteria in the same request.

The rubric is created for the caller’s account at version 1. If the optional criteria field is supplied it must contain at least one entry, and each entry is created as a criterion attached to the new rubric; omit it to create an empty rubric and add criteria later via the criteria endpoint. The response returns the created rubric together with the full detail of any criteria created in this call.

Body ParametersJSONExpand Collapse
title: string

The rubric title

minLength1
criteria: optional array of RubricCriteriaInput { title, annotations, weight }

Initial criteria to create with the rubric

title: string

The Criteria text

minLength1
annotations: optional map[unknown]

Free-form metadata for the Criteria

weight: optional number

Weight multiplier for scoring

minimum0
tags: optional array of string

The tags associated with the entity

ReturnsExpand Collapse
RubricResponse object { id, created_at, created_by, 7 more }
id: string
created_at: string
formatdate-time
created_by: Identity { id, type, object }

The identity that created the entity.

id: string
type: "user" or "service_account"
One of the following:
"user"
"service_account"
object: optional "identity"
tags: array of string

The tags associated with the entity

title: string
version: number
archived_at: optional string
formatdate-time
criteria: optional array of RubricCriteriaResponse { id, created_at, rubric_id, 5 more } or RubricCriteriaSummaryResponse { title, weight }

Full criteria on get, summary (title + weight) on list

One of the following:
RubricCriteriaResponse object { id, created_at, rubric_id, 5 more }
id: string
created_at: string
formatdate-time
rubric_id: string
title: string
version: number
annotations: optional map[unknown]
object: optional "rubric_criteria"
weight: optional number
RubricCriteriaSummaryResponse object { title, weight }

Slim criteria projection for list endpoints (title + weight only).

title: string
weight: optional number
object: optional "rubric"
updated_at: optional string
formatdate-time

Create a rubric

curl https://api.egp.scale.com/v5/rubrics \
    -H 'Content-Type: application/json' \
    -H "x-api-key: $SGP_API_KEY" \
    -d '{
          "title": "x"
        }'
{
  "id": "id",
  "created_at": "2019-12-27T18:11:19.117Z",
  "created_by": {
    "id": "id",
    "type": "user",
    "object": "identity"
  },
  "tags": [
    "string"
  ],
  "title": "title",
  "version": 0,
  "archived_at": "2019-12-27T18:11:19.117Z",
  "criteria": [
    {
      "id": "id",
      "created_at": "2019-12-27T18:11:19.117Z",
      "rubric_id": "rubric_id",
      "title": "title",
      "version": 0,
      "annotations": {
        "foo": "bar"
      },
      "object": "rubric_criteria",
      "weight": 0
    }
  ],
  "object": "rubric",
  "updated_at": "2019-12-27T18:11:19.117Z"
}
Returns Examples
{
  "id": "id",
  "created_at": "2019-12-27T18:11:19.117Z",
  "created_by": {
    "id": "id",
    "type": "user",
    "object": "identity"
  },
  "tags": [
    "string"
  ],
  "title": "title",
  "version": 0,
  "archived_at": "2019-12-27T18:11:19.117Z",
  "criteria": [
    {
      "id": "id",
      "created_at": "2019-12-27T18:11:19.117Z",
      "rubric_id": "rubric_id",
      "title": "title",
      "version": 0,
      "annotations": {
        "foo": "bar"
      },
      "object": "rubric_criteria",
      "weight": 0
    }
  ],
  "object": "rubric",
  "updated_at": "2019-12-27T18:11:19.117Z"
}