Skip to content
HubSpot Developer Changelog

May 2024 Rollup

HubSpot's recent updates for developers during this busy month of May include several key enhancements. The Records Sync v2 for Sandboxes has improved infrastructure, offering reliable CRM record sync capabilities and laying the groundwork for future functionalities like syncing custom object records. The new Sync Property type allows property values to be copied across objects, eliminating manual entry. Navigation Bookmarks streamline access to frequently used menu items, enhancing personalized navigation. The 'Calls' channel name in Ticket and Conversation properties has been updated to 'Calling' without requiring user action.
Developers can also now feature specific occurrences in repeated field groups, adding flexibility in displaying these groups. Custom fonts are supported in new CTAs, and a new analytics dashboard provides app partners with detailed app performance data. The UIE Extensions Beta includes enhancements to iFrame modals, such as title and flush properties, and introduces a new Icon component to improve user interface design.

Read more about these updates below. 

Developer Updates for May 2024

Records Sync v2 for Sandboxes

We have implemented infrastructure improvements to enhance the CRM record sync capabilities in Sandboxes. These enhancements aim to bolster reliability and expand support for future functionalities that our users need.

Immediate Effects:

This update has already been rolled out, ensuring that all existing sandbox environments benefit without any required changes from users in the short term. Users can continue to:

  • Trigger a one-time sync of their most recently updated 5,000 contacts (and, if applicable, up to 100 associated deals, companies, and tickets for each synced contact).
  • Manually import up to 200K contact records in their sandbox.
  • Before this change, the sync system attempted to assign non-contact objects synced to the sandbox the same object ID as those on the parent portal. However, customers will no longer need to rely on any CRM object record with the same object ID on the parent portal and the sandbox.

The infrastructure improvements lay the groundwork for future enhancements such as:

  • Syncing custom object records from production to sandbox environments.
  • Providing more robust and flexible testing capabilities mimicking the customer’s production process.

Customers can now use their sandbox to test changes with real CRM record data without risk. This allows them to ensure their changes will work as expected in production.

New Property Type: Sync Property

Sync Properties are a new property type that customers can use to copy a property value across objects. This feature eliminates the need for manual entry or workflows to keep two properties in sync across objects. This makes it even easier for customers to have the data they need when they need it, and where they need it.
When creating a new property, on the Field Type selection screen, select "Property Sync".

From here, you'll choose the source record type, the source record property, and the associated label and select Create to create the property.

sync prop
Learn more.

Introducing Navigation Bookmarks for Menu Items

We are introducing a new feature: Bookmarks in the navigation sidebar menu allowing you to bookmark your most frequently used menu items. Navigation Bookmarks provide a more personalized and efficient navigation experience tailored to your workflows and preferences. Some key benefits include streamlining access to frequently used items like key apps, establishing a focused workflow centered around what is relevant to you and your role, and simplifying the onboarding process for new users by highlighting core functionalities, helping them learn the platform quickly.

NOTE: You can add up to FIVE bookmarks to customize your navigation experience.

How to Use Bookmarks

Add Bookmarks: Click the bookmark icon next to any secondary menu item to add it to your Bookmarks.

Manage Bookmarks: Your bookmarked items are accessible via the Bookmarks menu.

Remove Bookmarks: Click the bookmark icon either next to the menu item or within the Bookmarks menu to remove it.

Display name of “Calls” channel has changed to “Calling” in Ticket and Conversation properties

Previously there was a value called 'Calls' in two properties - 'Originating channel type' for tickets, and 'Source' for conversations. Ticket and Conversation properties can be used in Inbox and Help Desk Views, Reporting, and Automation, amongst other places.

Now, the display name of this value is changed to 'Calling.'

You do not need to take any action. Your existing views, reports, and workflows will not break.

“Set as Featured” functionality is now available in local development for module field group occurrences

You can now add the ability to feature an occurrence in repeated field groups, giving developers and marketers more flexibility in how repeated field groups are displayed. When a field group is repeated, this new feature lets users specify one or more of those occurrences as featured. 

Field groups now have a new property group_occurrence_meta, which stores the featured_enabled and featured_limit properties. featured_enabled is a boolean that enables featuring repeated field groups, while featured_limit specifies the max number of featured items. These properties are only available on field groups, and are only relevant in field groups with an occurrence set.

Here is an example of what the group_occurrence_meta object can look like. This enables features for this field group and sets a maximum number of featured items at 3.
"group_occurrence_meta" : {
"featured_enabled": true,
"featured_limit": 3
When evaluating from a HubL level whether something has the featured tag applied, you can use an if statement (or the ternary operator) and check for the hs_meta.occurrence.featured boolean.

<div class="group"> {% for item in module.field_group %} <div class="item {{ item.hs_meta.occurrence.featured is truthy ? "featured" : "" }}"> {% inline_text field="text_field" value="{{ item.text_field }}" %} </div> {% endfor %} </div>

You can then use CSS to allow for styling your featured items as illustrated below:

Custom Fonts now supported in new CTAs

This update restores the popular custom font capabilities of legacy CTAs, bringing the same option to the improved CTA editor. After adding your custom fonts to your company's Brand Kit, you can use them in your new CTAs.

Learn more about adding custom fonts to your CTAs.

New & Improved Analytics for Marketplace Apps

Previously, anyone listing on the App Marketplace had minimal visibility into their app's analytics. With a new dashboard and enhanced features, app partners can view app discovery and adoption data, including app listing performance.

With this deeper level of detail, partners can make more informed decisions about changes to their listings and updates to their apps. To access this new dashboard, simply login to your app provider portal, select listings, and click on the name of your app listing. You will then be brought to your new dashboard. 

Public Betas

Public Beta: UIE Extensions Beta Updates

This month, the latest public beta for UIE extensions has added several iFrame modal enhancements and a new icon component. Please read below for more details.

New Props to Pop-Up IFrame

We have implemented several enhancements to iFrame modals to improve user experience and accessibility. The key updates include:

  1. Title Property: iFrame modals now support a title prop, allowing developers to provide a title for the modal. This enhancement improves content description and accessibility for users.
  2. Flush Property: A new flush prop has been added to iFrame modals. This property removes additional padding, facilitating better content consumption within the modal.
  3. Callback Function: Developers can now add a callback function to iFrame modals. This function is executed after the modal is closed, enabling developers to perform any custom actions required.

The link to the code sample can be found here.

New Icon Component

We are introducing a new Icon component to our UI components library, offering 34 icon options. This component enables developers to display visual icons within other components, improving the user interface design and experience. The Icon component can be utilized in most other components except those that do not support child components (e.g., the Input component).
It is important to always combine icons with text. If that is not feasible, utilize the screenReaderText prop to ensure that the icon's meaning is communicated to users with screen readers. By default, no extra spacing is included around the icon. However, spacing can be manually added using a space in the text string, &nbsp; or {" "}.

If you have any inquiries or concerns about the UIE beta, please contact us via the Developer Slack channel, #crm-customization-beta.

Questions or comments about these updates? Discuss these updates on our developer community forums.