Skip to main content
Nova versions criteria automatically. Every change to a job’s criteria creates a new version, and scoring jobs reference the version they used.

What is versioned

These operations create a new criteria version:
  • POST /v1/jobs/{jobId}/criteria-generations
  • POST /v1/jobs/{jobId}/criteria/items
  • PATCH /v1/jobs/{jobId}/criteria/items/{criterionId}
  • DELETE /v1/jobs/{jobId}/criteria/items/{criterionId}
  • DELETE /v1/jobs/{jobId}/criteria (archives the active version)

What you get back

Criteria responses include:
  • criteria.id: The criteria version ID
  • criteria.version: A monotonically increasing version number per job
  • criteria.status: ACTIVE or ARCHIVED
{
  "criteria": {
    "id": "criteria_version_id",
    "version": 2,
    "status": "ACTIVE",
    "criteria": [],
    "createdAt": "2025-12-14T10:30:45Z"
  }
}
Criterion IDs are version-scoped. When a new criteria version is created, all criteria items receive new criterionId values. Fetch the latest criteria before editing or removing a criterion.

How this affects scoring

When you submit a scoring request, Nova uses:
  • The job’s active criteria version by default
  • When you re-score (rescore: true), you can pin scoring to a specific version using criteriaVersionId
To re-score an application after updating criteria, set rescore: true. You can optionally set criteriaVersionId to force a specific version.

Auditability

This approach ensures:
  • Old scores remain tied to the criteria version used at the time
  • Criteria changes do not retroactively change historical results