with OpenSRS and Doppler Marketing Automation?
Emit new event when the DNS/ZONE check has passed or failed at the registry. See the documentation
Emit new event for each new domain registration. See the documentation
Emit new event when the status of a domain transfer changes. See the documentation
Initiate a domain transfer to OpenSRS. See the documentation
Adds a new subscriber or updates an existing one. See the documentation
Remove a subscriber. See the documentation
Unsubscribe an email address from the account. Once unsubscribed, the user will not receive any more communication. See the documentation
import { axios } from "@pipedream/platform";
import crypto from 'crypto';
export default defineComponent({
props: {
opensrs: {
type: "app",
app: "opensrs",
}
},
async run({steps, $}) {
const connectionDetails = {
reseller_username: this.opensrs.$auth.reseller_username,
api_key: this.opensrs.$auth.api_key,
api_host_port: this.opensrs.$auth.api_host_port
};
//Payload of the request
const xml = `<?xml version='1.0' encoding='UTF-8' standalone='no' ?>
<!DOCTYPE OPS_envelope SYSTEM 'ops.dtd'>
<OPS_envelope>
<header>
<version>0.9</version>
</header>
<body>
<data_block>
<dt_assoc>
<item key="protocol">XCP</item>
<item key="action">LOOKUP</item>
<item key="object">DOMAIN</item>
<item key="attributes">
<dt_assoc>
<item key="domain">${this.opensrs.$auth.domain}</item>
</dt_assoc>
</item>
</dt_assoc>
</data_block>
</body>
</OPS_envelope>`;
// Generate signature
const generateSignature = (xml, apiKey) => {
let md5 = crypto.createHash('md5');
md5.update(xml + apiKey);
let firstHash = md5.digest('hex');
md5 = crypto.createHash('md5');
md5.update(firstHash + apiKey);
return md5.digest('hex');
};
const signature = generateSignature(xml, connectionDetails.api_key);
// Prepare and call OpenSRS API
const headers = {
'Content-Type': 'text/xml',
'X-Username': connectionDetails.reseller_username,
'X-Signature': signature
};
return await axios($, {
method: "POST",
url: connectionDetails.api_host_port,
headers,
data: xml
});
},
})
The Doppler Marketing Automation API allows you to automate email marketing campaigns, manage subscriber lists, and analyze the performance of your email marketing efforts. When integrated with Pipedream, you can craft workflows that respond to events in real-time, sync data across various platforms, and personalize your marketing strategy, all while leveraging the serverless execution environment to scale as needed.
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
doppler_marketing_automation: {
type: "app",
app: "doppler_marketing_automation",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://restapi.fromdoppler.com/accounts/${this.doppler_marketing_automation.$auth.account_name}/campaigns`,
headers: {
"Accept": `application/json`,
"Authorization": `token ${this.doppler_marketing_automation.$auth.api_key}`,
},
})
},
})