Node.js wrapper for the Oracle Maxymiser REST API.
HTTPS:
npm i git+https://git@github.com/leanconvert/node-mm-rest-api.git --save
SSH:
npm i git+ssh://git@github.com/leanconvert/node-mm-rest-api.git --save
http://docs.oracle.com/cloud/latest/marketingcs_gs/OMCGF/OAuth2.html
const MMRestApi = require('node-mm-rest-api');
const api = MMRestApi({
// default values:
// authHost: 'https://api-auth-eu.maxymiser.com/oauth2',
// host: 'https://api-eu.maxymiser.com',
// apiVersion: 1,
credentials: {
clientId: '<clientId>',
clientSecret: '<clientSecret>',
username: '<login for UI>',
password: '<password for UI>'
}
});
http://docs.oracle.com/cloud/latest/marketingcs_gs/OMCGF/api-Site%20Settings.html
http://docs.oracle.com/cloud/latest/marketingcs_gs/OMCGF/op-sites-get.html
api.sites.get()
.then(sites => {
console.log(sites);
});
api.sites.get({siteId: 'MzIxMzM'})
.then(site => {
console.log(site);
});
api.sites.get({siteName: 'test.com'})
.then(site => {
console.log(site);
});
api.sites.scripts.get({siteId: 'MzIxMzM'})
.then(scripts => {
console.log(scripts);
});
api.sites.scripts.get({siteName: 'test.com'})
.then(scripts => {
console.log(scripts);
});
api.sites.scripts.update({
siteId: 'MzIxMzM',
// siteName: 'test.com',
scriptName: 'renderer'
})
.then(result => {
console.log(result);
});
api.publish({
siteId: 'MzIxMzM',
// siteName: 'test.com'
});
api.sites.scripts.update({
siteId: 'MzIxMzM',
// siteName: 'test.com',
scriptId: 'Mzas3zM'
})
.then(result => {
console.log(result);
});
api.publish({
siteId: 'MzIxMzM',
// siteName: 'test.com'
});
api.sites.actions.update({
siteId: 'MzIxMzM',
// siteName: 'test.com'
})
.then(actions => {
console.log(actions);
});
api.publish({
siteId: 'MzIxMzM',
// siteName: 'test.com'
});
http://docs.oracle.com/cloud/latest/marketingcs_gs/OMCGF/api-Campaign%20Settings.html
api.campaigns.get({
siteId: 'MzIxMzM',
// siteName: 'test.com'
}).then(campaigns => {
console.log(campaigns);
})
api.campaigns.create({
siteId: 'MzIxMzM',
// siteName: 'test.com',
name: 'My campaign',
desciption: ''
}).then(result => {
console.log(result);
});
api.publish({
siteId: 'MzIxMzM',
// siteName: 'test.com'
});
api.campaigns.elements.get({
siteName: 'test.com',
// siteId: 'MzIxMzM',
campaignName: 'a31-test',
// campaignId: 'MzIsdfMzM',
}).then(elements => {
console.log(elements);
})
api.campaigns.elements.create({
siteName: 'test.com',
// siteId: 'MzIxMzM',
campaignName: 'a31-test',
// campaignId: 'MzIsdfMzM',
name: 'Element1',
description: ''
}).then(result => {
console.log(result);
});
api.publish({
siteId: 'MzIxMzM',
// siteName: 'test.com'
});
api.campaigns.variants.get({
siteName: 'test.com',
campaignName: 'a31-test',
elementName: 'renderer',
// siteId: 'MzIxMzM',
// campaignId: 'MDA2MjYx',
// elementId: 'MDMyMDU4'
}).then(variants => {
console.log(variants);
});
api.campaigns.variants.create({
siteName: 'test.com',
campaignName: 'a31-test',
elementName: 'renderer',
// siteId: 'MzIxMzM',
// campaignId: 'MDA2MjYx',
// elementId: 'MDMyMDU4',
name: 'Variant2',
content: '<span>Search</search>',
isDefault: false,
isControl: true,
weight: 100
}).then(result {
console.log(result);
});
api.publish({
siteId: 'MzIxMzM',
// siteName: 'test.com'
});
api.campaigns.variants.update({
siteName: 'test.com',
campaignName: 'a31-test',
elementName: 'renderer',
// siteId: 'MzIxMzM',
// campaignId: 'MDA2MjYx',
// elementId: 'MDMyMDU4',
variantId: 'KHFed4',
name: 'Variant2',
content: '<span>Search</search>',
isDefault: false,
isControl: true,
weight: 100
}).then(result {
console.log(result);
});
api.publish({
siteId: 'MzIxMzM',
// siteName: 'test.com'
});
api.campaigns.scripts.get({
siteName: 'test.com',
campaignName: 'a31-test',
elementName: 'renderer',
// siteId: 'MzIxMzM',
// campaignId: 'MDA2MjYx',
// elementId: 'MDMyMDU4'
}).then(scripts => {
console.log(scripts);
});
api.campaigns.scripts.create({
siteName: 'test.com',
campaignName: 'a31-test',
elementName: 'renderer',
// siteId: 'MzIxMzM',
// campaignId: 'MDA2MjYx',
// elementId: 'MDMyMDU4',
name: 'renderer',
description: '',
content: 'console.log("test")';
}).then(result {
console.log(result);
});
api.publish({
siteId: 'MzIxMzM',
// siteName: 'test.com'
});
api.campaigns.scripts.update({
siteName: 'test.com',
campaignName: 'a31-test',
elementName: 'renderer',
// siteId: 'MzIxMzM',
// campaignId: 'MDA2MjYx',
// elementId: 'MDMyMDU4',
scriptId: 'asdfASD3',
name: 'Rendering',
description: '',
content: 'console.log("test")';
}).then(result {
console.log(result);
});
api.publish({
siteId: 'MzIxMzM',
// siteName: 'test.com'
});
api.campaigns.actions.get({
siteName: 'test.com',
campaignName: 'a31-test',
elementName: 'renderer',
// siteId: 'MzIxMzM',
// campaignId: 'MDA2MjYx',
// elementId: 'MDMyMDU4'
}).then(actions => {
console.log(actions);
});
api.campaigns.scripts.update({
siteName: 'test.com',
campaignName: 'a31-test',
elementName: 'renderer',
// siteId: 'MzIxMzM',
// campaignId: 'MDA2MjYx',
// elementId: 'MDMyMDU4',
actionsId: 'NDMyNDMy',
name: 'Action1',
description: 'My first action',
type: 'ClickCounts',
isPrimary: 'true'
}).then(result {
console.log(result);
});
api.publish({
siteId: 'MzIxMzM',
// siteName: 'test.com'
});
Every time you create/update Site or Campaign object using the Oracle Maxymiser REST API the data is only being stored in the database. To apply the data to the Sandbox you need to make a publish request in addition.
api.publish({
siteName: 'test.com'
// siteId: 'MzIxMzM'
})
.then(() => {
console.log('Published!');
})