Skip to content

Metaobjects

View as Markdown

A Metaobject is a single record of a Metaobject definition - one instance of the custom object type you declared. If the definition size_guide is the blueprint, then “Men’s shoes EU sizing” is a metaobject built from it.

Each metaobject belongs to a definition, has a handle (a unique, human-friendly slug within its type), a status, an optional displayName, and a set of fields - the values for the definition’s fieldDefinitions.

PropertyTypeRequiredDescription
idstring-The resource's unique identifier (UUID).
definitionstring-The MetaobjectDefinition (IRI) this metaobject is a record of.
handlestring-The metaobject's unique slug within its definition type.
status"DRAFT" | "ACTIVE"-The publication status of the metaobject.
displayNamestring | null-The human-readable label, derived from the field named by the definition's displayNameField.
fieldsEmbeddedMetaobjectFieldResource[]-The field values of the metaobject, one entry per field definition.
Show fields fields
PropertyTypeRequiredDescription
keystring-The field key (matches a field definition key).
valuestring | null-The field value, stored as a string regardless of the field type.
typestring-The field data type, as an IRI to the field-type resource.
metaobjectMetaobject[]-
Show metaobject fields
PropertyTypeRequiredDescription
idstring-The resource's unique identifier (UUID).
definitionstring-The MetaobjectDefinition (IRI) this metaobject is a record of.
handlestring-The metaobject's unique slug within its definition type.
status"DRAFT" | "ACTIVE"-The publication status of the metaobject.
displayNamestring | null-The human-readable label, derived from the field named by the definition's displayNameField.
fieldsEmbeddedMetaobjectFieldResource[]-The field values of the metaobject, one entry per field definition.
createdAtstring-The date and time when the resource was created (ISO 8601 format).
updatedAtstring-The date and time when the resource was last modified (ISO 8601 format).
createdAtstring-The date and time when the resource was created (ISO 8601 format).
updatedAtstring-The date and time when the resource was last modified (ISO 8601 format).

Metaobjects have a normal id-based route, plus a friendly type + handle lookup:

You can also list every record of one type.

  • Add a record. Create a metaobject referencing its definition, with a handle and the fields values. Each value is validated against the definition’s field types.
  • Look it up by slug. Use the type + handle route when you reference records by a stable, readable key.
  • Reference it. Point a Metafield (whose definition type is a metaobject reference) at a metaobject to attach it to a product or variant.

All requests require an OAuth 2.0 bearer token and the organization scope header:

Authorization: Bearer <token>
X-Flowkiwi-Organization-Id: <organization-id>

PATCH uses JSON Merge Patch with Content-Type: application/merge-patch+json.