Skip to main content
Featured group

* Data 360 *

Welcome! This group is dedicated to your success with Salesforce Data 360. Join the conversation here to stay up to date on the product, learn best practices, and everything in between. Use this group to review resources, ask questions, help each other, and share experiences. --------------------------------------- This group is maintained and moderated by Salesforce employees. The content received in this group falls under the official Forward-Looking Statement: http://investor.salesforce.com/about-us/investor/forward-looking-statements/default.aspx
Lukas Lunow (Lead Architect at NoA Ignite) Forum Ambassador

Hi all. Looking for input from anyone who has done B2B with many-to-many account–contact relationships.

Setup:

• B2B only; Sales Cloud is the only data source

• Contacts are linked to multiple Accounts via Account Contact Relationship (many-to-many)

• The same person can have a different role and relevance at each account

Requirement:

If a contact is related to two accounts that are both in a send's audience, they should get two emails, one per account. Each is personalised with that account's data (company name, account-level figures, etc.).

The tension:

In MC Next, segments and data graphs are anchored on Unified Individual, and identity resolution collapses the person into one profile. That's what we want for consent, which is keyed on the email address. But it seems to work against "one email per relationship". It also makes account-level merge fields ambiguous when one person has several accounts in the data graph.

Questions:

Has anyone delivered one email per account relationship in MC Next? Which pattern did you use: separate segments or flows per account, iterating over Account Contact Relationships in a flow, or something else?How do you make the data graph deterministic about which account's data renders in a given email?Any identity resolution tips for this case, e.g. keeping Contact-level identity versus matching on email?

Happy to share back what we land on

#Marketing Cloud #Sales Cloud
1 answer
  1. Yesterday, 1:18 PM

    Hi @Lukas Lunow

     

     

    This gets easier to create an approach, when we look at how each piece works underneath. Not done personally, but this is how i would approach this: 

    1. Sending works per row, so create the rows you want sent. MC Next sends one email per record that reaches the send step. If you want one email per account relationship, you need one row per Account Contact Relationship. Build a DMO with a Data Transform, keyed on the ACR Id, with the Contact Id, email and the account fields you need (company name, figures, role) on that row. Two relationships means two rows, which means two emails.
    2. Personalization reads from the record being sent, so put the account data on that record. The data graph gets ambiguous when one person has several accounts attached, because nothing tells it which one to pick. If each ACR row already carries its own account data, the merge fields just read from that row and the output is deterministic.
    3. Identity resolution is for the person, not the relationship, so let it do only that. Unified Individual exists to collapse the same human into one profile, which is exactly what you want for consent on email. Keep Contact Id as a Party Identification and match on email. Keep account-specific attributes off the Individual, so they never compete in the unified profile. Consent and suppression stay at the person level, and the send grain stays at the relationship level.

    The main thing I’d validate is how cleanly MC Next lets you send off a relationship-level DMO while still checking consent on the linked Unified Individual. We can prototype with one contact on two accounts before rolling out. 

     

0/9000

We're in the process of connecting Salesforce Data Cloud to our WordPress marketing site to track web engagement — page activity, CTA clicks, and form fills. We want to capture behavioral data and properly identify visitors when they submit a form, so we can stitch browsing activity to an identified record. (All tied to our Marketing Cloud Next/Advanced platform analytics)    We're evaluating two paths and would love input from anyone who has been through this decision, particularly in a B2B context.     

 

Path 1 — GA4 Connector

Path 2 — Manual Web SDK with Sitemap     

 

Questions   

1. For a B2B site focused purely on page engagement and form fills, does the GA4 connector capture an equivalent level of behavioral data compared to a manually configured sitemap? Or are there meaningful gaps?     

 

2. Identity resolution is our biggest concern with the GA4 path. When a visitor submits a form, will the GA4 connector properly stitch that known identity (email) back to their anonymous browsing history?    

 

3. Are there any known data quality issues with the GA4 path — such as bot traffic inflating profiles?     

 

4. For those who've implemented the manual SDK: how complex was the sitemap build for a non-ecommerce site? We'd need to cover page type definitions, button/CTA clicks, and form submission events (for our MCA forms)       

 

@* Data 360 *

  

 

#Data Cloud

4 answers
  1. Yesterday, 10:34 AM

    Hi  @Chris Mauro

    , 

     

     

    Hidden fields are a valid approach and probably the cleanest one in your setup.  

    Here is what I would use: 

    1. Read the Web SDK’s anonymous device ID on the main site and pass it into the MC Next form, either as a URL parameter on the CTA link or written into a hidden field. The form submission then carries both the email and the device ID, and identity resolution in Data Cloud can link the anonymous browsing to the known individual. You don’t need the SDK to fire an identity event on the subdomain.
    2. Also check the SDK’s cookie domain setting. If the cookie is set on the root domain (yourdomain.com) and not the www host, the subdomain can read the same device ID. If you’re allowed to load the SDK on the form subdomain too, that closes the gap completely.
    3. For the Pardot-style activity view on Lead/Contact, Data Cloud won’t surface it the way Pardot did. Use a Related List enrichment on the engagement DMO to show page views in sequence, and a Copy Field enrichment for single values like first referrer.

    Test it with one form first. Verify that the device ID lands on the submission record and that the unified profile actually merges before rolling out. 

     

0/9000

I am using the Salesforce content data kit to ingest ContentDocument, ContentDocumentLink, and ContentDocumentVersion data for a Data 360 Search Index. 

 

Salesforce Engineering confirmed that an initial or full index build processes all ContentDocumentVersion records included through the configured DMO relationship, not just each document’s latest published version. This means historical versions that remain in the DMO can be processed again during a new index build or rebuild, increasing Unstructured Data Processing credit consumption. 

 

I have not found a supported declarative way to limit the ContentDocumentVersion DMO or Search Index to records matching the document’s LatestPublishedVersionId. Salesforce Support is investigating whether a Data Space Filter could help, but with the way I understand Data Space Filter that doesn't seem like a viable option (crossing my fingers).  

 

Has anyone implemented a supported solution that ensures only the latest published ContentVersion for each ContentDocument is available to a Search Index? For example, have you successfully used a Data Space Filter, Data Transform, custom DMO, or a different data-stream design without breaking the standard file relationships required for indexing AND only indexes the latest ContentVersion data?

3 answers
  1. Yesterday, 10:30 AM

    Hi @Benjamin C.

    , 

     

    I agree with Santosh that Data Space Filters are a weak fit, but one angle is worth testing before you rule them out.  

     

    ContentVersion has a standard IsLatest field. If your content kit stream brings it in, try a dedicated data space used only for the Search Index, with a filter on IsLatest = true on the ContentVersion DMO. Because the filter evaluates current DMO values, superseded versions should drop out when they flip to false on the next sync. I’d avoid an ingestion-time stream filter for this. An update that flips a record to IsLatest = false may never land, so the old version could stay in the DMO as stale data.  

     

    I’d stay away from a Data Transform into a custom DMO. The index depends on the standard file relationships, and rebuilding those is where things usually break. 

0/9000

Hi Trailblazers, I’m a Data 360 Consultant (recently certified), 9x Salesforce certified, with 5+ years of experience. I’m looking for a mentor in Data Cloud and a volunteer project where I can help with Data Cloud setup, data modeling, segmentation/activation, and best practices. If you know a nonprofit or team needing help, I’d love to connect.  

 

Thanks! 

Lavanya

1 comment
  1. Yesterday, 10:28 AM

    Hi @Lavanya Garimella

    , 

     

    Regrading your willingness to join any Data Cloud work, it would be difficult for anyone to involve any new user into any client-based project due to NDAs, confidentiality and time-critial deliverables. If you wish to learn and practice Data Cloud, i would suggest you could use the Salesforce trailhead modules and workshops (

    https://developer.salesforce.com/workshops/data-cloud-workshop/data-cloud/overview) to get some hands-on. 

0/9000

Hi fellow DataBlazers 

I'm currently working on a Tableau Next project where i need to report on HOME page use and logged in users and potentially when users have been logged in. 

Unfortunately neither LightningUriEvent or LoginHistory seems to be accessible through the normal Salesforce CRM connector in Data 360. 

Normally I would get the endpoint from the EventLogFile object and download the CSVs from a BASH script, but for this project I need to have the data from multiple orgs and share them to a central Data 360 org! 

Any suggestions on how to accomplish that? 

2 answers
0/9000

Environment: Full Copy Sandbox  Data Cloud was [enabled directly in the sandbox / inherited from Production]. Salesforce release: [Winter ‘27 / other]. 

 

Use case: Enable Agentforce Data Library and point it to internal CRM Knowledge Base articles. 

 

Steps taken: 

 

Enabled Data Cloud and assigned the Data Cloud Architect permission set to the System Admin user. 

Installed the latest Service Cloud bundle in the CRM Connector. 

Activated the Home Org CRM Connector. 

Created an Agentforce Data Library pointing to Knowledge Articles. 

 

The library status shows every step as successful: ingesting data into Data Cloud, creating data lake objects, mapping DLOs to DMOs, creating the search index, and building a retriever from the search index. 

 

Problem 1: Data Explorer queries fail 

 

DLO Knowledge_kav_Home fails with: “Something’s not right with the query. Check the columns or filter and try again.” TraceIds: 220ae71e7e7e017b, 6e0ef3579db8d062. 

DMO KA_CompanyName_KB_Data_Libr_index__dlm fails with the same error. TraceId: eb5ed4f4e67ee6d1. 

DMO KA_CompanyName_KB_Data_Libr_chunk__dlm fails with the same error. TraceId: b0b718d9efff328a. 

Other DMOs fail too, each with a different TraceId. 

Data Explorer lists the object’s metadata (46 columns for Knowledge_kav_Home, data space default), but running the query returns the error. 

 

Problem 2: Search Index Advanced Setup fails 

After creating the Data Library, I tried to create/update a search index using Advanced Setup. I selected the DMO ssot__KnowledgeArticleVersion__dlm and clicked Next. On the “Select Fields to Chunk” screen I get: “We hit a snag. Something went wrong while retrieving attachments.” 

 

What I’ve checked so far: 

 

Data stream status / records processed: [result] 

Minimal query (only Id column) in Data Explorer: [works / fails] 

Same query in Query Editor: [works / fails, error text] 

Other, non-Knowledge objects in Data Explorer: [work / fail] 

Incognito / different browser: [result] 

Retriever test in Prompt Builder or Agent Builder: [returns results / returns nothing] 

User permission sets: [list] 

Published Knowledge articles in the sandbox: [count] 

 

Questions: 

 

Is there a known limitation or extra provisioning step for Data Cloud and Agentforce Data Libraries in a Full Copy Sandbox? 

Has anyone seen Data Explorer return this generic “Something’s not right with the query” error on DLOs/DMOs created by a Data Library, even though ingestion shows success? 

Is a backend job (indexing, ingestion, or DMO mapping) still running or stuck after creation? How can I confirm this from the UI? 

Could the “Something went wrong while retrieving attachments” error in Advanced Setup come from a permission, a data space, or a Knowledge setting? What should I check? 

Do I need any extra permission set beyond Data Cloud Architect for the admin user to query these objects? 

Should I open a Salesforce Support case with these TraceIds, or is there a fix I should try first?

1 answer
  1. Oct 18, 5:54 PM

    That generic query failure in Data Explorer typically happens when the metadata synchronization between your DLOs, DMOs, and search indexes is interrupted during initial async build jobs. Because you are working in a Full Copy sandbox, background chunking and retrieval jobs can occasionally time out or lag due to resource constraints. To troubleshoot the issue, test metadata responsiveness by running a minimal query on just the primary key in Data Explorer. You should also review your Data Cloud job status and ensure that object permissions are not blocking access to the chunk objects. If failures persist, drop and rebuild the search index or manually refresh the data stream to allow background jobs to re-run successfully.

0/9000

Trying to deploy a Data Kit with custom DMO and Snowflake as a source. Inbound change set deploys successfully however the data kit fails with error of "developerName should not be null". Have check components and all appear to have "developerName" set. Any ideas? Thanks.

@* Salesforce Developers * 

4 answers
  1. Oct 14, 10:14 AM

     In my project, I encountered a similar situation where we were unable to promote Data Kits to other Salesforce instances, whether it was a Partial Copy or a Full Copy sandbox. We reached out to Salesforce Support, but they didn’t have a clue. From my perspective, combining Salesforce CLI, VS Code, and AI

    is the best approach to successfully deploy Data Kits. 

     

    The Issue

    Salesforce generates a single package.xml file for the DevOps Data Kit. While it contains all the items required for deployment, the deployment itself fails due to underlying Salesforce platform limitations and bugs. 

     

    The Resolution

    1. Extract the Data Kit package.xml file.
    2. Retrieve all metadata from your source organization.
    3. Run a validation against the destination organization.
    4. Capture all the deployment errors you receive.
    5. Feed the package.xml and error screenshots into an AI tool, then ask it to split the main package.xml into smaller, logical parts for deployment. Note: This step involves some trial and error. If you are lucky, you will get it right on the first try; otherwise, it might take 2 to 3 iterations.
    6. Deploy the single Data Kit in phases based on the split versions of the package.xml generated by the AI, bypassing the single-file method provided by Salesforce.

    Additional Context

    When you open a Salesforce Support ticket for assistance, they rarely know how to fix this particular issue. Eventually, they suggested we use Change Sets to promote the changes. However, manually selecting Data Kit dependencies is incredibly tedious—in our case, a single Data Kit had 1,000+ dependencies

    . By using AI to break down the massive package into manageable parts, I successfully promoted our changes all the way to Production without any issues. 

     

    Probable Root Cause

    Salesforce launched Data Cloud in a rush. I noticed a very similar pattern when they launched Community Cloud back in 2013, where we faced persistent deployment issues for it all the way up until 2020 and the main issue was promoting dependencies in sequence. same we are noticing in data kit deployments.

0/9000

I had created a data stream with snowflake connector. I am trying to deploy it with the data kit. 

I have followed these steps. 

1- I have created a devops data kit type. 

2- Added data stream to the data kit. DMO is added with data stream. 

3- I download the package from manifest file. 

4- Authorize the VS code with source org. 

5- Retrieve the component in VS code with package.xml. 

6- Change the org in vs code to target org. 

7- Deployed the components in the target org with package.xml. 

8- On the target org. I can see the data kit but when i clicked on data kit deploy. It got failed with error. 

"DataKit Job Failed due to Internal Error. Please reach out to support team with ID:"   Can anyone help me on this error? 

Is this correct way for data cloud deployment or do we have any other way to deploy with the help of data kit. 

 

@* Data 360 * 

6 answers
  1. Oct 14, 10:12 AM

     In my project, I encountered a similar situation where we were unable to promote Data Kits to other Salesforce instances, whether it was a Partial Copy or a Full Copy sandbox. We reached out to Salesforce Support, but they didn’t have a clue. From my perspective, combining Salesforce CLI, VS Code, and AI

    is the best approach to successfully deploy Data Kits. 

     

    The Issue

    Salesforce generates a single package.xml file for the DevOps Data Kit. While it contains all the items required for deployment, the deployment itself fails due to underlying Salesforce platform limitations and bugs. 

     

    The Resolution

    1. Extract the Data Kit package.xml file.
    2. Retrieve all metadata from your source organization.
    3. Run a validation against the destination organization.
    4. Capture all the deployment errors you receive.
    5. Feed the package.xml and error screenshots into an AI tool, then ask it to split the main package.xml into smaller, logical parts for deployment. Note: This step involves some trial and error. If you are lucky, you will get it right on the first try; otherwise, it might take 2 to 3 iterations.
    6. Deploy the single Data Kit in phases based on the split versions of the package.xml generated by the AI, bypassing the single-file method provided by Salesforce.

    Additional Context

    When you open a Salesforce Support ticket for assistance, they rarely know how to fix this particular issue. Eventually, they suggested we use Change Sets to promote the changes. However, manually selecting Data Kit dependencies is incredibly tedious—in our case, a single Data Kit had 1,000+ dependencies

    . By using AI to break down the massive package into manageable parts, I successfully promoted our changes all the way to Production without any issues. 

     

    Probable Root Cause

    Salesforce launched Data Cloud in a rush. I noticed a very similar pattern when they launched Community Cloud back in 2013, where we faced persistent deployment issues for it all the way up until 2020 and the main issue was promoting dependencies in sequence. same we are noticing in data kit deployments. 

0/9000

⭐️ Updated Module: Data 360 Credit Consumption Quick Look Now Covers Flex Credits

⭐️ 

We’ve updated the

Data 360 Credit Consumption: Quick Look

Trailhead module with information about Flex Credits and a worked example. Complete this module to learn how consumption is calculated and how Flex Credits change the multiplier as your usage grows. 

 

What the module now covers:

  • How Data 360 credits work 
  • How credits are consumed
  • The consumption formula
  • New: How Flex Credits change consumption
  • New: An example of Flex Credits consumption
  • Links to the billable usage types for Data Services credits and Flex Credits
  • How to optimize your credits and control your usage and cost

👉 Earn a Badge: Data 360 Credit Consumption: Quick Look

  

⭐️ Updated Module: Data 360 Credit Consumption Quick Look Now Covers Flex Credits ⭐️ We’ve updated the Data 360 Credit Consumption: Quick Look Trailhead module with information about Flex Credits and

0/9000

⭐️  Distribute Activation Platforms with the Data 360 Activation Toolkit: New Trailhead Module ⭐️ 

 

Learn how independent software vendors (ISVs) use the Activation Toolkit to distribute activation target platforms. Get to know the toolkit, then explore real-world use cases in this 10-minute module. 

 

The Activation Toolkit is a set of services that lets ISVs onboard their platform as an activation destination in Data 360 using metadata. The metadata defines the configuration for the destination, including the authentication type and connector fields. Data 360 uses it to set up the activation target, the authenticated connection, and the activation experience for customers. 

 

👉 Earn a Badge: Data 360 Activation Toolkit for Independent Software Vendors 

⭐️ Distribute Activation Platforms with the Data 360 Activation Toolkit: New Trailhead Module ⭐️ Learn how independent software vendors (ISVs) use the Activation Toolkit to distribute activation targe 

0/9000