Skip to content
This repository has been archived by the owner on May 15, 2024. It is now read-only.

Custom Properties

DerLev edited this page Jun 4, 2022 · 3 revisions

Custom properties can be used in a variety of ways.
Only thing to note is that custom properties are static and cannot be assigned dynamically, meaning they cannot respond to events (like time or occupancy).

How to configure custom properties

Custom properties can be configured in dbs.js and gcal-sync.js where they are either applied for the whole database or the whole calendar respectfully.
Custom properties follow the schema of the Notion API.

Example gcal-sync.js where the Calendar ID is displayed in a select prop

const gcals = [
  {
    id: 'gcal id',
    notionDB: 'notion db id',
    additional: {
      "Calendar": {            // <-- header object with property name
        select: {              // <-- type of the prop
          name: "gcal id"      // <-- data of the field
        }
      },
      // more properties here
    }
  },
]

module.exports = gcals

Here you can see that every custom prop has a head object which's key is a string with the property name and the value being the object that describes the property like above, following the API Reference. Typically you can omit the key's double quotes described in the reference, since the reference is describing JSON and not in-code JS.

For more fields view the API Reference

Ideas for custom properties

  • filtering by calendar in notion (configuration in gcal-sync.js → select property)

  • marking task-type as "calendar event" (configuration in dbs.js → select or multi-select property)

    many more...