feat(mailchimp): add email opened trigger

This commit is contained in:
Rıdvan Akca
2024-02-01 14:24:06 +03:00
committed by Ali BARIN
parent 9a5cef08d6
commit 273f04128c
5 changed files with 149 additions and 2 deletions

View File

@@ -1,3 +1,4 @@
import listAudiences from './list-audiences/index.js';
import listCampaigns from './list-campaigns/index.js';
export default [listAudiences];
export default [listAudiences, listCampaigns];

View File

@@ -0,0 +1,42 @@
export default {
name: 'List campaigns',
key: 'listCampaigns',
async run($) {
const campaigns = {
data: [],
};
let hasMore = false;
const audienceId = $.step.parameters.audienceId;
const params = {
list_id: audienceId,
sort_field: 'create_time',
sort_dir: 'DESC',
count: 1000,
offset: 0,
};
do {
const { data } = await $.http.get('/3.0/campaigns', { params });
params.offset = params.offset + params.count;
if (data?.campaigns) {
for (const campaign of data.campaigns) {
campaigns.data.push({
value: campaign.id,
name: campaign.settings.title || campaign.settings.subject_line,
});
}
}
if (data.total_items > params.offset) {
hasMore = true;
} else {
hasMore = false;
}
} while (hasMore);
return campaigns;
},
};