Feature Announcement: Item Views, Workspace Templates, and Dynamic Mapping!

Hey amazing community! We released three highly requested features recently and I wanted to give you a heads up about them.

Item Views

Item views let you create apps that are displayed in an item’s “Updates” pane. The view behaves exactly the same as a board view or widget, only it’s connected to a single item.

Check it out in our documentation here!

Workspace Templates

These let you bundle a set of templates with your app. Super useful if you want your users to have a specific board structure and reduce the amount of app configuration.

Documentation is coming soon, but until then you can explore the feature by adding it to your app:

Dynamic Mapping and Custom Entities

This is also a highly requested feature. You can now create custom entities in your app that map to objects in other tools (or monday.com). You can also specify dependencies for the configuration!

We’ll link to more documentation in the next week or so, but here’s a brief explanation of how it works.

When a user tries to configure the mapping field, the monday Apps server will send a request to your “Field Definitions URL”. Your server should then respond with a list of field definitions, which your users can use to map item data to.

Here’s an example function that returns the field definitions:

async function getRemoteFieldDefs(req, res) {
  return res.status(200).send([
    { id: ‘name’, title: ‘Name’, outboundType: ‘text’, inboundTypes: [‘text’] },
    { id: ‘desc’, title: ‘Description’, outboundType: ‘text’, inboundTypes: [‘empty_value’, ‘text’, ‘text_array’] },
    { id: ‘dueDate’, title: ‘Due Date’, outboundType: ‘date’, inboundTypes: [‘empty_value’, ‘date’, ‘date_time’] },
    { id: ‘creationDate’, title: ‘CreateDate’, outboundType: ‘date_time’, inboundTypes: [‘date’, ‘date_time’] },
  ]);
}

You can already explore this by adding a custom field to your app:

3 Likes

This is amazing, Thank you @dipro & team !!

2 Likes

Of course! Looking forward to seeing what our amazing builders create with them :slight_smile:

1 Like

Wow, this makes life a lot easier :slight_smile:. I already changed the custom fields to use the (new) possibility to enter values directly, so no need to do that in the backend.

I am still struggling with the dependencies though. I have two custom fields where custom filed 2 (CF2) is dependent on CF1). I changed CF2 from a list type to a Dynamic Mapping type and added CF1 to its dependencies. When configuring the recipe and doing the Input field settings, I am able to select the dependency field. But there is nothing to choose for Source Entity. The hover over text states “Choose the entity from the trigger output to map data from”.

  • Can we use a custom field as the dependency field?
  • Do both fields (CF1 and CF2) need to configured in the trigger or the action?
  • Can I have dependencey field (CF1) in the trigger part, add it to the output fields and then use it as dependency field for CF1 which is configured in the action part?

Check out this post by @Ben for more detail on the features: Feature Release Updates!

We also just added some more documentation on Dynamic Mapping: link

@basdebruin – check out the article above to do a deep dive into the feature. Overall, you can use custom fields as dependencies, the dependencies need to be accessible in your block (but can come from recipe sentence or block output) and you must make sure your entity is included as one of the output fields of your recipe, like so: