Skip to main content
Loading...
Skip to article
  • Qualtrics Platform
    Qualtrics Platform
  • Customer Journey Optimizer
    Customer Journey Optimizer
  • XM Discover
    XM Discover
  • Qualtrics Social Connect
    Qualtrics Social Connect

Advanced Maps


Was this helpful?


This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

The feedback you submit here is used only to help improve this page.

That’s great! Thank you for your feedback!

Thank you for your feedback!


About Advanced Maps

Advanced maps are used when you need to map the subject, contact, and event schemas using different join identifiers in a single map. For example, let’s say you run an online business where customers can contact you 2 different ways: logging in with their account online, or calling in to a call center. You want to create a journey that understands the customer’s experience when trying to resolve an issue, which could involve one or both contact methods, which are represented by different event schemas. In each schema, the subject is different (for example, Web_Account for the online events, and PhoneVisit_ID for the phone events). You can use an advanced map to join the events from these multiple sources into one single map to use in your journey

Creating an Advanced Map

Attention: Creating an advanced map requires JSON knowledge. Custom coding features are provided as-is and require programming knowledge to implement. Qualtrics Support does not offer assistance or consultation on custom coding. You can always try asking our community of dedicated users instead. If you’d like to know more about our custom coding services, please contact your Qualtrics Account Executive.

To create an advanced map, you will create multiple maps and then join them together by modifying the maps’ JSON files. The steps below walk through this process.

  1. Follow the instructions on the creating maps page to create your maps. In general, your maps should follow the below structures:
    • 1 simple map which joins the contact data to an event schema’s subject (primary entity).
    • 1 simple map which joins the contact data to a different subject from a different event’s schema.
  2. Let’s take a look at the first simple map. In this map, various subject fields are mapped to contact fields that are ingested from an S3 import.a simple map
  3. We’ve also created a second simple map that maps subject data from a different event schema.
  4. Once you’ve created your maps, find your first map in the map list.
  5. Click the three dot menu next to the map and select Edit advanced.clicking Edit advanced in map options
  6. Click Copy code to copy the JSON to your clipboard.clicking copy code
  7. Paste this code into a text editor on your computer or a free online JSON editor.
  8. Find your second created map in the list and repeat the above steps to copy its code into the same text editor.
  9. In the JSON file of your first map, find “paths” where the mapped systems are defined.editing the json file
  10. Add a comma ( , ) after the closing square bracket ( ] ) of the last mapped system.
  11. With your cursor after the newly added comma, press Enter on your keyboard to add a new line.adding a new line
  12. Copy the mapping portion of the JSON file from your second map. Copy just the parts within the outer square brackets of the “paths” key (exclude the outer square bracket that appears on the same line as “paths” but include all the inner square and curly brackets that come after).copying the mapping portion of the json
  13. Paste your copied JSON into the new line you added in step 11.
  14. In the Customer Journey Optimizer, find your first map you created.
  15. Click the three dot menu next to the map and select Edit advanced.clicking edit advanced in map options
  16. Paste your modified JSON into the box.
    pasting the modified json and clicking save
  17. Click Save.
  18. Open the map to verify that it looks as you’d expect.
  19. This step is optional. You can delete the other maps, as you don’t need them anymore.

Example: Combining JSON Files

This section is an example of combining map files using JSON code snippets.

First Map JSON

Below is the JSON for our first map which combines contact data to the subject schema:

{

"id": 21774,

"name": "Customer",

"collectData": false,

"editable": false,

"objects": [

{

"keyObject": "/s3-importer-contact/contact",

"combinePaths": false,

"paths": [

[

{

"from": "/s3-importer-contact/contact/UserID",

"to": "/s3-importer-web/web/web_id",

"isCaseSensitive": true,

"cardinality": "ONE"

}

],

[

{

"from": "/s3-importer-contact/contact/Member_ID",

"to": "/s3-importer-crm/crm/Member_ID",

"isCaseSensitive": true,

"cardinality": "ONE"

}

],

[

{

"from": "/s3-importer-contact/contact/Phone_VisitorID",

"to": "/s3-importer-phones/phone/Phone_VisitorID",

"isCaseSensitive": true,

"cardinality": "ONE"

}

]

]

}

],

"created_by": "demo@qualtrics.com",

"updated_by": "demo@qualtrics.com",

"created_at": "2022-08-24T16:42:53.570221Z",

"updated_at": "2022-09-08T20:14:33.534431Z"

}

Second Map JSON

Below is the JSON for the second map, which maps event data to the subject:


{

"id": 21950,

"name": "Incoming Events",

"collectData": true,

"editable": false,

"objects": [

{

"keyObject": "/sftp/Members",

"combinePaths": false,

"paths": [

[

{

"from": "/sftp/Members/UserID",

"to": "/events/digital-events/User_ID",

"isCaseSensitive": true,

"cardinality": "ONE"

}

],

[

{

"from": "/sftp/Members/Member_Token",

"to": "/crm-events/crm-events/Member_Token",

"isCaseSensitive": true,

"cardinality": "ONE"

}

]

]

}

],

"created_by": "demo@qualtrics.com",

"updated_by": "demo@qualtrics.com",

"created_at": "2022-11-14T20:01:31.152653Z",

"updated_at": "2022-11-21T18:08:40.945220Z"

}

Combined Map JSON

After combining the 2 JSON files using the above method, the JSON for the advanced map looks like this:


{

"id": 21774,

"name": "Customer",

"collectData": false,

"editable": false,

"objects": [

{

"keyObject": "/s3-importer-contact/contact",

"combinePaths": false,

"paths": [

[

{

"from": "/s3-importer-contact/contact/UserID",

"to": "/s3-importer-web/web/web_id",

"isCaseSensitive": true,

"cardinality": "ONE"

}

],

[

{

"from": "/s3-importer-contact/contact/Member_ID",

"to": "/s3-importer-crm/crm/Member_ID",

"isCaseSensitive": true,

"cardinality": "ONE"

}

],

[

{

"from": "/s3-importer-contact/contact/Phone_VisitorID",

"to": "/s3-importer-phones/phone/Phone_VisitorID",

"isCaseSensitive": true,

"cardinality": "ONE"

}

],

[

{

"from": "/sftp/Members/UserID",

"to": "/events/digital-events/User_ID",

"isCaseSensitive": true,

"cardinality": "ONE"

}

],

[

{

"from": "/sftp/Members/Member_Token",

"to": "/crm-events/crm-events/Member_Token",

"isCaseSensitive": true,

"cardinality": "ONE"

}

]

]

}

],

"created_by": "demo@qualtrics.com",

"updated_by": "demo@qualtrics.com",

"created_at": "2022-08-24T16:42:53.570221Z",

"updated_at": "2022-09-08T20:14:33.534431Z"

}