Skip to content

Update a metaobject definition

View as Markdown
patch /api/metaobject_definitions/{id}

Updates the MetaobjectDefinition resource.

Partially updates a metaobject definition. The body is a JSON Merge Patch document: change the name, displayNameField, or the fieldDefinitions.

Path parameters

NameTypeRequiredDescription
idstringrequiredMetaobjectDefinition identifier

Request body

PropertyTypeRequiredDescription
descriptionstring | null-
displayNameFieldstring | null-The key of the field definition used as the display name for records of this type. Optional - when omitted it is null and records have no derived display name. When set, it must match the key of one of this definition's fieldDefinitions, otherwise the request is rejected with 422.
fieldDefinitionsEmbeddedMetaobjectFieldDefinitionResource[]-The field definitions that make up this metaobject definition.
Show fieldDefinitions fields
PropertyTypeRequiredDescription
descriptionstring | null-An optional description of the field.
keystringrequiredThe field key, unique within the definition (referenced by metaobject fields).
namestringrequiredThe human-readable name of the field.
requiredboolean-Whether a value for this field is required on metaobjects of the definition.
type"/api/metafield_definition_types/single_line_text_field" | "/api/metafield_definition_types/multi_line_text_field" | "/api/metafield_definition_types/number_integer" | "/api/metafield_definition_types/number_decimal" | "/api/metafield_definition_types/json" | "/api/metafield_definition_types/list__single_line_text_field" | "/api/metafield_definition_types/list__number_integer" | "/api/metafield_definition_types/list__number_decimal" | "/api/metafield_definition_types/list__product_reference" | "/api/metafield_definition_types/list__media_reference" | "/api/metafield_definition_types/product_reference" | "/api/metafield_definition_types/media_reference" | "/api/metafield_definition_types/metaobject_reference" | "/api/metafield_definition_types/list__metaobject_reference"requiredThe field data type, as an IRI to the field-type resource.

Immutable once the field definition exists: a PATCH changing it is rejected with a 422. Delete the field and add the key back to use another type.
validationsEmbeddedMetafieldDefinitionValidationResource[]-The validation rules applied to values of this field.
Show validations fields
PropertyTypeRequiredDescription
name"/api/metafield_definition_validation_types/min_length" | "/api/metafield_definition_validation_types/max_length" | "/api/metafield_definition_validation_types/min_value" | "/api/metafield_definition_validation_types/max_value" | "/api/metafield_definition_validation_types/max_precision" | "/api/metafield_definition_validation_types/json_schema" | "/api/metafield_definition_validation_types/media_type" | "/api/metafield_definition_validation_types/metaobject_definition"requiredThe type of validation rule
valuestringrequiredThe validation parameter value. Format depends on the validation type.
namestring | null-

Response

200 - MetaobjectDefinition resource updated

PropertyTypeRequiredDescription
@contextstring | object-
@idstringrequired
@typestringrequired
createdAtstring-The date and time when the resource was created (ISO 8601 format).
descriptionstring | null-The description of the metaobject definition.
displayNameFieldstring | null-The key of the field definition used as the display name for records of this type. Optional - when omitted it is null and records have no derived display name. When set, it must match the key of one of this definition's fieldDefinitions, otherwise the request is rejected with 422.
fieldDefinitionsEmbeddedMetaobjectFieldDefinitionResource[]-The field definitions that make up this metaobject definition.
Show fieldDefinitions fields
PropertyTypeRequiredDescription
descriptionstring | null-An optional description of the field.
idstring-The resource's unique identifier (UUID).
keystringrequiredThe field key, unique within the definition (referenced by metaobject fields).
namestringrequiredThe human-readable name of the field.
requiredboolean-Whether a value for this field is required on metaobjects of the definition.
type"/api/metafield_definition_types/single_line_text_field" | "/api/metafield_definition_types/multi_line_text_field" | "/api/metafield_definition_types/number_integer" | "/api/metafield_definition_types/number_decimal" | "/api/metafield_definition_types/json" | "/api/metafield_definition_types/list__single_line_text_field" | "/api/metafield_definition_types/list__number_integer" | "/api/metafield_definition_types/list__number_decimal" | "/api/metafield_definition_types/list__product_reference" | "/api/metafield_definition_types/list__media_reference" | "/api/metafield_definition_types/product_reference" | "/api/metafield_definition_types/media_reference" | "/api/metafield_definition_types/metaobject_reference" | "/api/metafield_definition_types/list__metaobject_reference"requiredThe field data type, as an IRI to the field-type resource.

Immutable once the field definition exists: a PATCH changing it is rejected with a 422. Delete the field and add the key back to use another type.
validationsEmbeddedMetafieldDefinitionValidationResource[]-The validation rules applied to values of this field.
Show validations fields
PropertyTypeRequiredDescription
name"/api/metafield_definition_validation_types/min_length" | "/api/metafield_definition_validation_types/max_length" | "/api/metafield_definition_validation_types/min_value" | "/api/metafield_definition_validation_types/max_value" | "/api/metafield_definition_validation_types/max_precision" | "/api/metafield_definition_validation_types/json_schema" | "/api/metafield_definition_validation_types/media_type" | "/api/metafield_definition_validation_types/metaobject_definition"requiredThe type of validation rule
valuestringrequiredThe validation parameter value. Format depends on the validation type.
idstring-The resource's unique identifier (UUID).
namestringrequiredThe human-readable name of the metaobject definition.
typestringrequiredThe unique slug identifier for this metaobject definition.
updatedAtstring-The date and time when the resource was last modified (ISO 8601 format).

Errors

400 - Invalid input

PropertyTypeRequiredDescription
@contextstring | object-
@idstringrequired
@typestringrequired
codestring-Stable identifier of the error in the error code catalogue (see /api/error-codes). Present on catalogued errors only.
descriptionstring | null-
detailstring | null-A human-readable explanation specific to this occurrence of the problem.
instancestring | null-A URI reference that identifies the specific occurrence of the problem. It may or may not yield further information if dereferenced.
messagestring-End-user message localized in the request locale, with this occurrence's values substituted. Present on catalogued errors only.
slugstring-Stable, readable key of the error in the error code catalogue. Present on catalogued errors only.
statusinteger | null-
titlestring | null-A short, human-readable summary of the problem. For a catalogued error it repeats the slug.
typestring-A URI reference that identifies the problem type. For a catalogued error it is the error code resource, /api/error-codes/{code}.

403 - Access denied. The caller is missing one or more permissions required for this operation.

Content-Type: application/problem+json

PropertyTypeRequiredDescription
@contextstring | object-
@idstringrequired
@typestringrequired
detailstring-
missingPermissionsstring[]-Permissions that the caller is missing for this operation. Present only when the 403 is caused by a denied permission.
statusinteger-
titlestring-
typestring-

404 - Not found

PropertyTypeRequiredDescription
@contextstring | object-
@idstringrequired
@typestringrequired
codestring-Stable identifier of the error in the error code catalogue (see /api/error-codes). Present on catalogued errors only.
descriptionstring | null-
detailstring | null-A human-readable explanation specific to this occurrence of the problem.
instancestring | null-A URI reference that identifies the specific occurrence of the problem. It may or may not yield further information if dereferenced.
messagestring-End-user message localized in the request locale, with this occurrence's values substituted. Present on catalogued errors only.
slugstring-Stable, readable key of the error in the error code catalogue. Present on catalogued errors only.
statusinteger | null-
titlestring | null-A short, human-readable summary of the problem. For a catalogued error it repeats the slug.
typestring-A URI reference that identifies the problem type. For a catalogued error it is the error code resource, /api/error-codes/{code}.

422 - An error occurred

PropertyTypeRequiredDescription
@contextstring | object-
@idstringrequired
@typestringrequired
descriptionstring-
detailstring-
instancestring | null-
statusinteger-
titlestring | null-
typestring-
violationsobject[]-
Show violations fields
PropertyTypeRequiredDescription
codestring-The code of the violation
hintstring-An extra hint to understand the violation
messagestringrequiredThe message associated with the violation
parametersobject-Dynamic placeholder values for the violation message template (substitute into the code catalogue message).
payloadobject-The serialized payload of the violation
propertyPathstringrequiredThe property path of the violation
slugstring-Stable centralized error-code slug for this violation (see /api/error-codes).