Skip to content
KeystoneJS LogoKeystoneJS

byTracking Plugin

Add createdBy and updatedBy fields to a list. These fields are read-only but they will be updated automatically when items are created or updated.

Usage

JS
const { byTracking } = require('@keystonejs/list-plugins');

keystone.createList('ListWithPlugin', {
  fields: {...},
  plugins: [
    byTracking({...}),
  ],
});

Config

OptionTypeDefaultDescription
createdByFieldStringcreatedByName of the createdBy field.
updatedByFieldStringupdatedByName of the updatedBy field.
refStringUserA reference to the list authenticated items (users).
accessObjectSee: accessChange default access controls.

access

By default access control on at tracking fields is read only:

{
  read: true,
  create: false,
  update: false
}

Granular control

If you prefer, you can import either createdBy or updatedBy to apply a single tracking field:

JS
const { createdBy, updatedBy } = require('@keystonejs/list-plugins');

Note: The API is the same for each export as byTracking.

On this page

  • Usage
  • Config
  • access
  • Granular control
Edit on GitHub