---
title: "Mapping Put"
method: PUT
path: "/api/mapping"
---

# Mapping Put

`PUT /api/mapping`

## Request

- Base URL: `https://data.humanarchive.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://data.humanarchive.ai/api/mapping`
- Auth: none declared

Replace the folding rules.

⚠ THIS MOVES REAL HOURS BETWEEN PLAN CATEGORIES, so it is gated and attributed. The caller must
be signed in (the router requires it), the rules are validated before anything is written, and
each rule records who saved it and when — a change that reshapes every per-category figure
should never be anonymous.

⚠ VALIDATED, NOT TRUSTED. A rule folding a label into a category the plan does not contain
would silently move hours into a bucket that renders nowhere; two rules for one label would make
the result depend on list order. Both are refused here rather than absorbed.

## Request body

- object

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/humanarchive/apis/data-humanarchive-ai.md) - [All operations](https://skmtc.dev/humanarchive/apis/data-humanarchive-ai/llms.txt) - [OpenAPI document](https://skmtc.dev/humanarchive/apis/data-humanarchive-ai/revisions/d746c2f4eb21?raw)
