remove_attribute
Removes a project attribute while recording its last value and removal reason in the case file. The attribute's history remains intact, and a later set can recreate it.
Instructions
Removes a project attribute and files an attribute_removed entry in the
project's case with its last value and the reason. The attribute's history stays
in the case; a later set_attribute with the same name creates it anew.
A name that matches no attribute of the project is refused with
attribute_not_found. A task token removes attributes.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Project key, case-insensitive. An unknown key is refused with `project_not_found` | |
| name | Yes | Attribute name: Latin letters, digits, `_` and `-`, at most 64 characters (`invalid_attribute_name` otherwise). Matching ignores case | |
| reason | Yes | Why the attribute is removed; a blank one is refused with `attribute_reason_required`. Filed in the `attribute_removed` entry together with the last value | |
| idempotency_key | No | Retry key chosen by the caller, e.g. a UUID. A repeat with the same key and the same arguments returns the first result and creates nothing; the same key with other arguments is refused with `idempotency_key_reused`. A key is bound to the caller's token and kept for 24 hours |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| no | Yes | Number of the `attribute_removed` entry in the project's case | |
| name | Yes | Name as it was stored | |
| project_key | Yes |