Update a component type
const url = 'https://example.com/api/v1/component-types/example';const options = { method: 'PATCH', headers: {'Content-Type': 'application/json'}, body: '{"abbrev":"example","default_tags":["example"],"icon":"example","label":"example","label_rule":"example","stem":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PATCH \ --url https://example.com/api/v1/component-types/example \ --header 'Content-Type: application/json' \ --data '{ "abbrev": "example", "default_tags": [ "example" ], "icon": "example", "label": "example", "label_rule": "example", "stem": "example" }'Patches a component_type’s label, stem, icon, abbrev, label_rule, or default_tags. A shipped (official) row is never written: the patch FORKS it, storing your version over the shipped one, and the response comes back with forked=true under the same id. :restore discards the fork. Gated by component_type:update.
Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”Request Body required
Section titled “Request Body required ”object
A URL to the JSON Schema for this object.
A new compact form; an empty string clears it, so this type inherits the nearest ancestor’s again
Replaces the default-tag set; omit to leave unchanged
A new glyph key; an empty string clears it, so this type inherits the nearest ancestor’s again
A new operator-facing label
A new label template; an empty string clears it, so instances fall back to the nearest ancestor’s rule and then the global component rule. Refused with 422 if it does not parse.
A new name prefix (lowercase letters, digits, and hyphens); an empty string CLEARS it, so this type inherits the nearest ancestor’s again. A root type has no ancestor to inherit from and is refused (422).
Responses
Section titled “ Responses ”OK
object
A URL to the JSON Schema for this object.
A compact form of label; empty inherits the nearest ancestor’s
Tags every instance of this type (or a descendant that does not override) starts with
True when this shipped row carries changes of yours overriding it. Restore discards them
A glyph key; empty inherits the nearest ancestor’s
The component_type’s uuid, the stable handle that survives a rename
The abbrev this type would take if it stated none: the nearest ancestor’s. Absent when no ancestor states one. Served on the registry listing, on the same terms as resolved_icon
The name of the ancestor component_type inherited_abbrev comes from, which may be further up the chain than the parent
The glyph this type would take if it stated none: the nearest ancestor’s. Absent when no ancestor states one. Served on the registry listing, on the same terms as resolved_icon
The name of the ancestor component_type inherited_icon comes from, which may be further up the chain than the parent
The stem this type would take if it stated none: the nearest ancestor’s. Absent when no ancestor states one. Served on the registry listing, on the same terms as resolved_icon
The name of the ancestor component_type inherited_stem comes from, which may be further up the chain than the parent
The label template instances of this type get; empty inherits the nearest ancestor’s, then the global rule for components
The name an operator reads and types; renameable
True for a row this release ships. A shipped row is never written by an operator: an edit forks it
The parent component_type’s name, for display; absent for a root type
The parent component_type’s id, the canonical handle; absent for a root type
The glyph this type shows: its own icon, else the nearest ancestor’s. Served on the registry listing, where the whole chain is already in hand; a single-row write response does not carry it
The auto-generated component name’s prefix; empty inherits the nearest ancestor’s
Example
{ "$schema": "/api/v1/schemas/ComponentTypeBody.json"}default
Section titled “default ”Error
object
A URL to the JSON Schema for this object.
A human-readable explanation specific to this occurrence of the problem.
Optional list of individual error details
object
Where the error occurred, e.g. ‘body.items[3].tags’ or ‘path.thing-id’
Error message text
The value at the given location
A URI reference that identifies the specific occurrence of the problem.
HTTP status code
A short, human-readable summary of the problem type. This value should not change between occurrences of the error.
A URI reference to human-readable documentation for the error.
Example
{ "$schema": "/api/v1/schemas/ErrorModel.json", "detail": "Property foo is required but is missing.", "instance": "https://example.com/error-log/abc123", "status": 400, "title": "Bad Request", "type": "about:blank"}