Skip to main content
drupalreleases

Use direct release data with your AI assistant.

Learn more

Entity Normalization with YAML definitions

Security covered Maintenance fixes only 1 sites

Part of the Entity ecosystem · 308 projects

This module provides a user-friendly way to define how entity data is structured for output, allowing you to customize the JSON representation of nodes, users, and other entities using YAML files. It offers features like grouping fields, adding custom data, and creating different output formats without writing custom code.

This module makes it really easy to normalize the nodes in a more useful way than Drupal does by default. You can define the output of each entity type (like nodes, users, terms, etc.) per bundle using YAML files instead of creating everything in code.

Some of the key features are:

  • Define output in readable YAML files.
  • Extend definitions: create basic and bundle specific definitions.
  • Different definitions per normalization format.
  • Combine fields in groups without writing code.
  • Add custom data to the output using 'pseudo' fields.
  • Easy chaining of simple normalizers.

Configuration

Use RestUI (or code) to enable the JSON (or another) output format for content so you can fetch nodes using a url like /node/1?_format=json.

After this, you can configure the JSON output of entities using YAML files in the
root of your module using the pattern:

<module_name>.entity_normalization.yml

Example

user.base:
  type: user
  bundle: user
  fields:
    uid:
      name: id
    name:

article.base:
  type: node
  bundle: [article]
  fields:
    nid:
      name: id
    url:
      type: pseudo
      normalizer: entity_url.normalizer
    title:
    uid:
      name: author

This definition will give the following output when calling "/article/1234/my-title.html?_format=json":

{
  "id": 1234,
  "url": "/article/1234/my-title.html",
  "title": "My Title",
  "author": {
    "id": 1,
    "name": "Administrator"
  }
}
Drupal 10–11

Ask your assistant about Entity Normalization with YAML definitions

Check compatibility with your Drupal and PHP version, maintenance and security coverage, from current release data. How it works

Depends on

Dependencies of the latest stable release

  • serialization Drupal core

Required by

Tracked projects that depend on this one

No tracked projects depend on this one yet.

Activity

Tracked releases
3
Tracked since
Sep 2023
Latest release
1 year ago
Releases (12 mo)
0 ▼ from 1
Maintenance
Active

Release Timeline

Releases

Version Type Core PHP Release date
3.0.0 Stable 10–11 Sep 16, 2025
8.x-2.1 Stable 10 Jan 22, 2024
8.x-2.0 Stable 9–10 Sep 21, 2023