Eric Hirsh references an existing thread and mentions upcoming enhancements to the Conversations API by end of year.
Matt explains that HubL runs on the server before the page is sent to the browser, while JavaScript runs in the browser. Therefore, JS variables cannot control HubL `set` statements in this way. The solution is to perform the conditional logic entirely in HubL using the page URL variable (`page_meta.canonical_url`) and HubL's `string_containing` test.
Nicholas suggests using `{{ page_meta.html_title }}` to access page titles and mentions splitting the title to format it correctly.
Nicholas Decker suggests using the Timeline Events API to log user-specific actions manually.
Nicholas suggests this is likely the issue, acknowledging that the version of the `@hubspot/api-client` available in serverless functions might lag behind the latest npm version and differ from other environments like workflows, potentially causing inconsistencies.
Jake Lett identifies CSS file containing background image URL
Justin explains that during a merge, the record designated as the `primaryObjectId` remains the primary record. Properties from the secondary record (like an email address) will be merged into the primary record if the primary record doesn't already have a value for that property. So, the email address should not be lost.
Bradley confirms the module uses React and suggests cloning might not be possible as it's not editable directly.
Anton Bujanowski and Nicholas Decker recommend avoiding complex build tools (e.g., webpack) to ensure themes remain user-friendly in Design Manager.
Anton Bujanowski explains Hubl templating system while Scott Marion mentions PHP API client library
Harry later resolves issue caused by corporate firewall restrictions
Nicholas Decker explains that templates must be marked for automation in HubSpot's UI to appear in API responses.
Nicholas Decker outlines using HubSpot's User Provisioning API and permission/team mapping strategies
Nicholas Decker advises using the Lists API to segment and retrieve contacts based on subscription status.
Justin points out the provided custom code uses an outdated V1 merge API endpoint (`/contacts/v1/contact/merge-vids/{idToMerge}`). He provides a link to the current V3 merge API documentation (`/crm/v3/objects/contacts/merge`) which the developer should use to update the code. Psalm later confirms updating the code based on this documentation resolved the issue.
Nicholas suggests that a JavaScript error occurring earlier on the page is likely preventing the subsequent module.js script from executing correctly. Jayme also suggests checking for syntax errors (like unclosed tags) in scripts loaded before the problematic one.
Anton Bujanowski and Matt Scott provide troubleshooting steps including CMS settings and template modifications
Nicholas suggests checking the HubSpot API documentation for the endpoints used in the serverless function to identify the required scopes. He also recommends inspecting the full error object (potentially using JSON.stringify) as the specific scope names might be nested within it.
Carter suggests using a 'Format data' action immediately after the webhook trigger. Configure it to simply take the webhook data payload value as input (no specific formatting function needed). The output of this 'Format data' action can then be successfully referenced within the custom code action.
Maximilian suggests avoiding activity triggers. Instead, create a file property, trigger the workflow when that property is known, copy the file details (like name or URL) to a text property, and then use workflow filters/branches based on the text property's value.