@kadam-net/n8n-nodes-kadam
Version:
Kadam node for n8n to manage campaigns, creatives, and more.
67 lines • 3.04 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.createMaterial = createMaterial;
exports.updateMaterial = updateMaterial;
exports.deleteMaterial = deleteMaterial;
exports.getMaterials = getMaterials;
exports.getBannerSizes = getBannerSizes;
exports.uploadMedia = uploadMedia;
const utils_1 = require("./utils");
const form_data_1 = __importDefault(require("form-data"));
async function createMaterial(i, baseUrl, headers, appId) {
const data = this.getNodeParameter('data', i);
if (Array.isArray(data)) {
data.forEach(item => item.client_id = appId);
}
else if (typeof data === 'object' && data !== null) {
data.client_id = appId;
}
return utils_1.makeApiRequest.call(this, 'put', `${baseUrl}/ads.materials.put`, headers, { app_id: appId }, { data });
}
async function updateMaterial(i, baseUrl, headers, appId) {
const data = this.getNodeParameter('data', i);
if (Array.isArray(data)) {
data.forEach(item => item.client_id = appId);
}
else if (typeof data === 'object' && data !== null) {
data.client_id = appId;
}
return utils_1.makeApiRequest.call(this, 'post', `${baseUrl}/ads.materials.update`, headers, { app_id: appId }, { data });
}
async function deleteMaterial(i, baseUrl, headers, appId) {
const params = {
app_id: appId,
client_id: appId,
account_id: this.getNodeParameter('accountId', i),
ids: this.getNodeParameter('ids', i),
};
return utils_1.makeApiRequest.call(this, 'delete', `${baseUrl}/ads.materials.delete`, headers, params);
}
async function getMaterials(i, baseUrl, headers, appId) {
const params = {
app_id: appId,
account_id: this.getNodeParameter('accountId', i),
client_id: appId,
archive: this.getNodeParameter('archive', i, false) ? 1 : 0,
campaign_ids: this.getNodeParameter('campaignIds', i, null),
material_ids: this.getNodeParameter('materialIds', i, null),
ad_format: this.getNodeParameter('adFormat', i),
};
return utils_1.fetchAll.call(this, `${baseUrl}/ads.materials.get`, headers, params);
}
async function getBannerSizes(i, baseUrl, headers, appId) {
const params = { app_id: appId, client_id: appId };
return utils_1.makeApiRequest.call(this, 'get', `${baseUrl}/ads.materials.banner.sizes.get`, headers, params);
}
async function uploadMedia(i, baseUrl, headers, appId) {
const binaryData = await this.helpers.getBinaryDataBuffer(i, 'file');
const formData = new form_data_1.default();
formData.append('file', binaryData, 'media_file');
formData.append('app_id', appId);
formData.append('ad_format', this.getNodeParameter('adFormat', i));
return utils_1.makeApiRequest.call(this, 'post', `${baseUrl}/data.upload.media.update`, headers, undefined, formData);
}
//# sourceMappingURL=materials.js.map