Skip to content
KeystoneJS LogoKeystoneJS
👋🏻 Keystone 5 has officially moved to maintenance only. For the latest release of Keystone please visit the Keystone website.

atTracking Plugin

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


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

keystone.createList('ListWithPlugin', {
  fields: {...},
  plugins: [


createdAtFieldStringcreatedAtName of the createdAt field.
updatedAtFieldStringupdatedAtName of the updatedAt field.
formatStringMM/DD/YYYY h:mm AFormat of the generated DateTime field.
accessObjectSee: accessChange default access controls.


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 createdAt or updatedAt to apply a single tracking field:

const { createdAt, updatedAt } = require('@keystonejs/list-plugins');

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

On this page

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