使用nodejs创建Marketing Cloud的contact数据

简介: 使用nodejs创建Marketing Cloud的contact数据

源代码如下:

var config = require("./mcConfig");
var request = require('request');
var url = config.tokenURL;
console.log("user: " + config.user + " password: " + config.password); 
var getTokenOptions = {
        url: url,
        method: "GET",
        json:true,     
        headers: {
            'Authorization': 'Basic ' + new Buffer(config.user + ":" + config.password).toString('base64'),
            "content-type": "application/json",
            "x-csrf-token" :"fetch"
        }
};
function getToken() {
  return new Promise(function(resolve,reject){
      var requestC = request.defaults({jar: true});
      console.log("Step1: get csrf token via url: " + url );
      requestC(getTokenOptions,function(error,response,body){
       var csrfToken = response.headers['x-csrf-token'];
       if(!csrfToken){
          reject({message:"token fetch error: " + error});
          return;
       }
       console.log("Step1: csrf token got: " + csrfToken);
       resolve(csrfToken);
      }); 
     });
}
function createContact(token){
  return new Promise(function(resolve, reject){
    var oPostData = {"CountryCode":"CN",
                    "City":"Chengdu",
                    "FirstName":"Jerry4",
                    "LastName":"Wang2",
                    "PostalCode":"610093",
                    "RegionCode":"",
                    "Street":"天府软件园",
                    "HouseNumber":"天府软件园",
                    "DateofBirth":null,
                    "ContactPersonFacets":[
                      {"Id":"jerry1@sap.com",
                       "IdOrigin":"EMAIL",
                       "Obsolete":false,
                       "Invalid":false},
                       {"Id":"",
                       "IdOrigin":"PHONE",
                       "Obsolete":false,
                       "Invalid":false},
                       {"Id":"",
                       "IdOrigin":"MOBILE",
                       "Obsolete":false,
                       "Invalid":false},
                       {"Id":"",
                       "IdOrigin":"FAX",
                       "Obsolete":false,
                       "Invalid":false}
                       ],
                       "IsConsumer":true,
                       "Filter":{
                        "MarketingAreaId":"CXXGLOBAL"
                      }
                    };
    var requestC = request.defaults({jar: true});
        var createOptions = {
              url: config.createContactURL,
              method: "POST",
              json:true,
              headers: {
                  "content-type": "application/json",
                  'x-csrf-token': token
              },
              body:oPostData
        };
        requestC(createOptions,function(error,response,data){
            if(error){
                reject(error.message);
            }else {
               var oCreatedContact = data;
               console.log("created contact ID: " + oCreatedContact.d.ContactPersonId);
               resolve(data);
            }
        });
  });
}
getToken().then(createContact).catch((error) =>{
  console.log("error: " + error.message);
});

这里我把创建的contact的名称字段硬编码成Jerry4:image.png使用nodejs执行这个js文件,输出成功创建的contact guid:image.png在Marketing Cloud UI上看到这个创建成功的contact:

image.png

相关文章
|
存储 Web App开发 JavaScript
SAP Marketing Cloud Contact 模型的导入配置和数据合并原理
SAP Marketing Cloud Contact 模型的导入配置和数据合并原理
|
JavaScript
使用nodejs对Marketing Cloud的contact主数据进行修改操作
假设在Marketing Cloud有这样一个contact主数据:
使用nodejs对Marketing Cloud的contact主数据进行修改操作
|
JavaScript
使用nodejs实现OData的batch操作在Marketing Cloud里读取contact信息
我们先来看看Marketing Cloud系统里的contact信息: 一共1218374条数据。
使用nodejs实现OData的batch操作在Marketing Cloud里读取contact信息
|
JSON API 数据格式
使用OData API批量删除Marketing Cloud里的contact
基本思路就是使用Odata的batch操作,在一个batch容器里放入多个delete动作。一个典型的payload如下面所示: –batch_1e89-cb21-3cdd Content-Type: multipart/mixed; boundary=changeset_b099-6fed-59d4 –changeset_b099-6fed-59d4 Content-Type: application/http Content-Transfer-Encoding: binary
使用OData API批量删除Marketing Cloud里的contact
SAP Cloud for Customer使用webservice创建social media message
SAP Cloud for Customer使用webservice创建social media message
111 0
SAP Cloud for Customer使用webservice创建social media message
SAP Cloud for Customer用ABSL消费Restful Mashup API
SAP Cloud for Customer用ABSL消费Restful Mashup API
102 0
SAP Cloud for Customer用ABSL消费Restful Mashup API
|
JSON API 数据格式
Marketing Cloud contact的API介绍
Marketing Cloud contact的API介绍
115 0
Marketing Cloud contact的API介绍
Marketing Cloud的contact主数据的odata调用方式
Marketing Cloud的contact主数据的odata调用方式
Marketing Cloud的contact主数据的odata调用方式
使用Java代码在SAP Marketing Cloud上创建Contact数据
使用Java代码在SAP Marketing Cloud上创建Contact数据
下一篇
无影云桌面