Power-ups

Notion Power-ups

Notion power-ups overview

With our Notion power-ups you can give you bot the power to interact with your Notion pages and database to open up a whole host of possibilities.

You can add the ability to create, update and query databases, read from pages on the fly and more, all with absolutely zero code.

Why would you want to do this? Well Notions flexibility means its popular in the no-code scene working as the back-end for lots of use-cases.

The best way to see what the Notion power-ups can do and how they work is to watch the video below:

Example use-cases

Here's a few basic examples of bots you could make using our Notion power-ups:

  • Feature request bot - All your users to suggest feature requests for your app via Chat Thing. The bot can save the suggestions into a dedicated feature requests Notion database.
  • Project management buddy - Give your bot access to your Notion tasks database so you can ask complex questions about tasks. Eg. "How many tasks does Chris currently have in progress?", "Mark all Chris's tasks as done."
  • Meal tracker bot - Tell your bot what you have eaten, let it estimate calories and macros and then save the result to your meal trackers database.

Of course these are just some very basic examples and we can't wait to see what people create.

The 5 types of Notion power-ups

There are five different Notion power-ups each with a different purposes. Often you will want to enable multiple of these in combination to enable certain use-cases. Here's a description of each power-up

  • Save to Notion database - Allows your bot to save and update items in a Notion database of your choosing. This is one of the most powerful and commonly used Notion power-ups.
  • Query a Notion database - Allow your bot to search for items in the chosen database. It can perform filtering login, such as "Find all items that are done".
  • Read a Notion page - Read the contents of a Notion page on the fly. This is often useful combined with other Notion power-ups. Eg. "Show me the In Progress tasks." to receive a list of tasks, then "Show me the details of task x"
  • Search for a Notion page - Search for a Notion page using its title. Returns a list of matches.
  • Search for a Notion database - Search for a Notion database using its title. Returns a list of matches.

Save to Notion database

The save to Notion database is probably the Notion power-up that opens up the most possibilities by allowing you to save an update items in a Notion database.

You can add a new "Save to Notion database" power-up by going to your bot settings "Power-ups" tab, clicking "New power-up" and then choosing the "Save to Notion database" power-up.

Save to database configuration

After creating the power-up you will see the settings screen:

Xnapper-2024-03-25-16.40.01.png

Like the all power-ups it has a name and description. The description is used by the bot to decide how, when and why to use this power-up. It's recommended to leave these as is until you have selected your Notion database as we attempt to update them on your behalf with AI

Choosing a database

If you haven't already connected your Notion account, you will be asked to do so at this point. Once you have connected your account you will be able to search for and choose a Notion database to use.

Xnapper-2024-03-25-16.48.32.png

After choosing your database two things will happen.

First, using the database names and properties we will use AI to generate you a new power-up name and description. Feel free to update the generated the name and description if its not correct.

Secondly, you will see the database properties populated in the table below. When your bot uses the this power-up it will set values for each of your database tables. The "Database properties" allows you to configure how this works.

Xnapper-2024-03-25-16.53.15.png

Changing database property settings

After selecting your Notion database you will see the database properties appear in the table. Each row has the following columns:

  • Name - The name of the property from Notion
  • Type - The name of the property from Notion
  • Description - An AI generated description of the property. This is very important as it teaches the bot how to use the field
  • Value - An optional value field. You can use this to fix the value that will be sent to Notion whenever this power-up is used
  • Ignore - The ignore toggle can be used to tell your bot to ignore this field. When ignored it will not send a value for this property.

After choosing your database we use the database name, and properties list to auto-generate the property descriptions with AI. You should check the descriptions make sense and make changes if necessary. The descriptions should provide your bot with information on what the field is used for and what kind of data is valid.

You can use the value fields to set a fixed value for the items your bot adds or updates in the database. For example, for the database pictured above we could force our bot to only ever create "Breakfast" type entries by choosing "Breakfast" in the "Meal type" value selector.

Xnapper-2024-03-25-17.37.05.png

Ignoring properties means your bot will never set values for these when adding or updating items in the database. Its worth ignoring as many properties as possible to improve the reliability of the power-up. Ignoring properties simplifies things for your bot and means it has to make less decisions about what to add.

After configuring your properties go ahead and test your bot:

Xnapper-2024-03-25-17.50.26.png

and the resulting entry in the Notion database:

Xnapper-2024-03-25-18.01.47.png

Query Notion database

The query Notion database power-up allows your bot to query the items in a database on the fly, including property filters just like you can in Notion itself. "Show me all the tasks in progress", "Show me all the tasks assigned to Chris and in progress", "How many calories have I eaten at breakfast this week" etc.

You can add a new "Query Notion database" power-up by going to your bot settings "Power-ups" tab, clicking "New power-up" and then choosing the "Query Notion database" power-up.

Why not just use a Notion data source?

You can add Notion databases as a data source so why would you want to use the power-up instead? Either will work but if you plan to ask questions similar to those above the power-up's filtering ability will generally provide you with better results. Secondly it means you will always have the latest information which for some use-cases might be important. The content added via a Notiond data source would only be as up to date as when it was last synced.

Query database configuration

After creating your new power-up you will see the query Notion database power-up settings:

The Notion query database settings screen

It's recommended to leave the the name and description as is until you have selected your Notion database as we attempt to update them on your behalf with AI

Choosing a database

If you haven't already connected your Notion account, you will be asked to do so at this point. Once you have connected your account you will be able to search for and choose a Notion database to use.

Similar to the other Notion database power-ups, after choosing your database two things will happen.

First, using the database names and properties we will use AI to generate you a new power-up name and description. Feel free to update the generated the name and description if its not correct.

Secondly, you will see the database properties populated in the table below. When your bot uses the this power-up it will it will be able to filter the results using your database properties. The database properties section allows you to customise this behaviour.

Changing database property settings

After selecting your Notion database you will see the database properties appear in the table. These rows will allow you to change how your bot uses them to filter database queries. Each row has the following columns:

  • Name - The name of the property from Notion
  • Type - The name of the property from Notion
  • Description - An AI generated description of the property. This is very important as it teaches the bot how to use the field
  • Value - An optional value field. You can use this to fix the value that will be sent to Notion whenever this power-up is used
  • Ignore - The ignore toggle can be used to tell your bot to ignore this field. When ignored it will not send a value for this property.

After choosing your database we use the database name, and properties list to auto-generate the property descriptions with AI. You should check the descriptions make sense and make changes if necessary. The descriptions should provide your bot with information on what the property is so it knows how to use them in filters.

You can use the value fields to set a fixed value the query filter. For example, for the database pictured above we could force our bot to only ever return "Breakfast" type entries by choosing "Breakfast" in the "Meal type" value selector.

Xnapper-2024-03-25-17.37.05.png

Ignoring properties means your bot will never filter using these properties. Its worth ignoring as many properties as possible to improve the reliability of the power-up. Ignoring properties simplifies things for your bot and means it has to make less decisions about what to add.

After configuring your properties go ahead and test your bot:

Xnapper-2024-03-25-19.24.48.png

Here you can see the bot queried the meal tracker database filtering using a type of "Breakfast".

Read a Notion page

The Notion page power-up allows your bot to get the contents of a Notion page on the fly. This is particularly useful in combination with some of the other Notion power-ups. For example you could load a list of tasks with the query database power-up, and then ask to see the details of a particular task.

Again it has a few advantages over using a data source, mainly that the data will always be completely up to date.

Configuring read a Notion page

After adding a new "Read a Notion page" power-up you will see its settings:

Read a Notion page settings

You have the general power-up settings such as name and description, and you will also see you have the ability to choose a page.

Choosing a page is optional, and if you leave this field blank your bot will be able to read any page content given its ID. If you choose specific page, this power-up will only ever be used to read the chosen pages content.

Below is an example of using the "Read a Notion page" power-up in combination for the "Query Notion database" power-up. First we load recent lunches from a database with the database power-up, then when we ask for more information about a specific result, the "Read page" power-up is used to load the content of that item.

An example conversation using the Notion read page power-up

Search for a Notion page

The search for a Notion a page power-up does exactly what is says on the tin and allows your bot to search for a pages in your Notion workspace using their title.

Often you will want to pair this with the "Read Notion page" power-up so you can perform and search, and then get the pages content.

Search for a Notion page configuration

There is not a huge amount to configure for this one. It simply has the the generic power-up name and description settings.

Xnapper-2024-03-26-09.40.31.png

You can then use the power-up to search for a page by title:

Xnapper-2024-03-26-10.23.18.png

Search for a Notion database

The "Search for a Notion database" power-up is exactly the same as the "Search for a Notion page" power-up but allows you to find Notion databases by name.

Search for a Notion database configuration

There is not a huge amount to configure for this one. It simply has the the generic power-up name and description settings.

Xnapper-2024-03-26-10.30.41.png

Once you added the power-up it should work like this:

Xnapper-2024-03-26-10.32.30.png

General tips Notion power-up tips

My bot can't see my Notion page/database

If you can't find your Notion page or database either when you are configuring your power-up or when using the bot it's probably because the page or database isn't shared with the Chat Thing Notion connection.

You can see the pages you have given access to within Notion by opening your Notion settings, then going to the "My Connections" section. Once there you should see the "Chat Thing" connection. If you click the three dots menu and hover "Access selected pages" you will see the pages your bot can access.

The Notion connection access selected pages screen