Partially updates a color by ID.
Applies a JSON Patch document (RFC 6902) to a color owned by the current organization. Omitted fields are left unchanged (preserve-on-omit). Patch paths targeting fields not on the update command (e.g. /organizationId, /rgb, /itemColorCardId) return 422. The route id is authoritative; a ‘replace /id’ operation that retargets a different resource returns 409. A ‘replace’ to null on a nullable string field (e.g. /colorNote, /userDefinedId, /userDefinedId2, /colorReference) clears that field in the database; supply the field as a non-null value or omit it from the patch to preserve. Collections (‘colorGroupIds’, ‘languageIds’) follow RFC 6902 replace-set semantics. Omitting a collection entirely (no operation touches it) preserves all of its existing associations. When a collection is touched (replace/add/remove), the resulting array is the full desired set: ids in it are kept or added and existing ids not in it are deleted — ‘replace /languageIds [x]’ deletes every association except x, and ‘replace /languageIds []’ clears all. The languageIds write is silently skipped (no error) when the organization does not have the MultipleLanguage module licensed or has not enabled UseMultipleLanguages in color settings — matches legacy behaviour. Unknown colorGroupIds or languageIds are rejected per-id with field paths colorGroupIds[i] / languageIds[k].