---
title: "Backfill Canonical Grades"
method: POST
path: "/api/v1/admin/pricing/grades/backfill"
tags: ["Admin - Pricing", "Admin - Pricing"]
---

# Backfill Canonical Grades

`POST /api/v1/admin/pricing/grades/backfill`

## Request

- Base URL: `https://api.gemstoneaiapp.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.gemstoneaiapp.com/api/v1/admin/pricing/grades/backfill`
- Auth: none declared

Normalize free-text JSON estimates into canonical grade columns.

Returns a per-row report plus an aggregate count of populated cells.
For large backfills, call repeatedly with increasing offset until
rows_processed < limit.

## Query parameters

- `limit` integer: Max rows this call
- `offset` integer: Skip this many rows
- `force` boolean: Overwrite existing canonical values
- `species` string, nullable: Restrict to one species

## Headers

- `x-admin-key` string, nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/gemstoneaiapp/apis/gemstoneai-api.md) · [All operations](https://skmtc.dev/gemstoneaiapp/apis/gemstoneai-api/llms.txt) · [OpenAPI document](https://skmtc.dev/gemstoneaiapp/apis/gemstoneai-api/revisions/fcb441f55161?raw)
