BookatlasTwo-Day MuleSoft → Salesforce Bootcamp
77 / 81 · Module 18 — Interview Coding Scenarios · filtered: interview← prev⊞ allnext →

18.3Scenario 2 — DataWeave mapping

Prompt:

“Transform this customer into Salesforce Account format.”

Input:

{
  "id": "C001",
  "name": "Acme Corporation",
  "address": {
    "city": "Orlando",
    "state": "FL"
  },
  "phone": null
}

Write:

%dw 2.0
output application/java
---
{
    External_Customer_ID__c: payload.id,
    Name: payload.name,
    BillingCity: payload.address.city,
    BillingState: payload.address.state,
    (Phone: payload.phone)
        if (payload.phone != null)
}

If Salesforce connector expects a collection:

%dw 2.0
output application/java
---
[{
    External_Customer_ID__c: payload.id,
    Name: payload.name,
    BillingCity: payload.address.city,
    BillingState: payload.address.state,
    (Phone: payload.phone)
        if (payload.phone != null)
}]

The important thing is that you understand:

payload.foo
nested access
conditional fields
application/java