Create a Data Mapping
Legal information
Conversation Memory, including the APIs, may use artificial intelligence or machine learning technologies and is subject to the terms of the Predictive and Generative AI/ML Features Addendum. For more details on AI usage and data, see the AI Nutrition Facts.
Conversation Memory is not a HIPAA Eligible Service or PCI compliant and should not be enabled in workflows that are subject to HIPAA or PCI.
Conversation Memory is not intended for use with sensitive information about individuals. Twilio does not control what information comes from conversation channels and relies on you to ensure the data in customer profiles aligns with our acceptable use policy. Twilio does have limited guardrails in the form of a prompt exclusion that is designed to provide a minimal screening against inclusion of GDPR special category data. As a reminder our profile technology uses generative artificial intelligence. Because generative artificial intelligence can make mistakes, review all outputs to ensure that the profile is correct.
Conversations products are only available in the new Twilio Console. If your account hasn't been migrated, you'll be redirected to the legacy Console where these products won't appear.
POST/v1/ControlPlane/Stores/{storeId}/DataMappings
Base url: https://memory.twilio.com (base url)
Create a new data mapping to connect an external data source to this Memory Store. For DATASET types, validates that all mapped Trait Groups and traits exist and that dataset field data types match their respective mapped trait data types.
A unique Memory Store ID using Twilio Type ID (TTID) format
mem_store_00000000000000000000000000Pattern: ^mem_(store|service)_[0-7][0-9a-z]{25}$application/jsonName of the data mapping.
crm-contactsPattern: ^[a-zA-Z][a-zA-Z0-9-_.]*$Min length: 1Max length: 128A human readable description of this resource, up to 512 characters.
Syncs customer data from CRM dataset to profile traitsMin length: 1Max length: 512Flag indicating whether the data mapping is active. When true, data will be ingested and mapped according to the configuration. When false, the data mapping will be inactive and no data will be ingested into the Memory Store.
trueExample: trueDetails of where to map data items to. Each data mapping to type has its own set of configuration parameters and destination specific properties.
{"type":"TRAITS","mappings":[{"fieldName":"primary_email","traitGroup":"Contact","traitName":"email"}]}Details of where to map data items from. Each data mapping from type has its own set of configuration parameters and source specific properties.
{"type":"DATASET","datasetId":"tdi_dataset_00000000000000000000000000"}1// Download the helper library from https://www.twilio.com/docs/node/install2const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";34// Find your Account SID and Auth Token at twilio.com/console5// and set the environment variables. See http://twil.io/secure6const accountSid = process.env.TWILIO_ACCOUNT_SID;7const authToken = process.env.TWILIO_AUTH_TOKEN;8const client = twilio(accountSid, authToken);910async function createDataMapping() {11const dataMapping = await client.memory.v112.dataMappings("mem_store_00000000000000000000000000")13.create({14displayName: "crm-contacts",15mappingTo: {16type: "TRAITS",17mappings: [18{19fieldName: "fieldName",20expression: "expression",21traitGroup: "Contact",22traitName: "email",23},24],25},26mappingFrom: {27type: "DATASET",28datasetId: "tdi_dataset_00000000000000000000000000",29},30});3132console.log(dataMapping.message);33}3435createDataMapping();
Response
1{2"message": "message",3"statusUrl": "statusUrl"4}