tiktokads
Advanced tools
Comparing version 1.0.17 to 1.0.18
@@ -8,3 +8,3 @@ import { getLongTermAccessToken, getAccounts } from './accounts'; | ||
import { uploadVideo } from './videos'; | ||
import { getPixels } from './pixels'; | ||
import { getPixels, getEvents } from './pixels'; | ||
declare class TiktokAdsClient { | ||
@@ -26,4 +26,5 @@ get: (end_point: string, headers: object, params: any) => Promise<any>; | ||
getPixels: typeof getPixels; | ||
getEvents: typeof getEvents; | ||
} | ||
declare const tiktokAdsClient: TiktokAdsClient; | ||
export default tiktokAdsClient; |
export declare function getPixels(access_token: string, advertiser_id: string): Promise<any>; | ||
export declare function getEvents(access_token: string, advertiser_id: string): Promise<any>; |
@@ -1,2 +0,2 @@ | ||
var e,t=(e=require("node-fetch"))&&"object"==typeof e&&"default"in e?e.default:e,r="https://business-api.tiktok.com/open_api/v1.2",n=function(e,n,i){try{return Promise.resolve(new Promise(function(o,s){var c=r+e+"?"+Object.entries(i).map(function(e){return e.map(encodeURIComponent).join("=")}).join("&");t(c,{method:"GET",headers:n}).then(function(e){return e.json()}).then(function(e){o(e)}).catch(function(e){s(e)})}))}catch(e){return Promise.reject(e)}},i=function(e,n,i){try{return Promise.resolve(new Promise(function(o,s){var c=r+e+"?"+Object.entries(i).map(function(e){return e.map(encodeURIComponent).join("=")}).join("&");t(c,{method:"GET",headers:n}).then(function(e){return e.text()}).then(function(e){o(e)}).catch(function(e){s(e)})}))}catch(e){return Promise.reject(e)}},o=function(e,n,i){try{return Promise.resolve(new Promise(function(o,s){var c=r+n;console.log(c),t(c,{headers:{"Access-Token":e,Accept:"application/json","Content-Type":"application/json"},method:"POST",body:JSON.stringify(i)}).then(function(e){return e.json()}).then(function(e){return o(e)}).catch(function(e){s(e.json())})}))}catch(e){return Promise.reject(e)}},s=function(e){try{var t={access_token:e,app_id:process.env.TIKTOK_APP_ID,secret:process.env.TIKTOK_APP_SECRET};return Promise.resolve(i("/oauth2/advertiser/get",{},t)).then(function(e){for(var t=JSON.parse(e).data.list,r=e.split('advertiser_id": ').map(function(e){return e.substring(0,e.indexOf(","))}),n=0;n<t.length;n++)t[n].advertiser_id=r[1+n];return t})}catch(e){return Promise.reject(e)}},c=function(e){try{var t={app_id:process.env.TIKTOK_APP_ID,auth_code:e,secret:process.env.TIKTOK_APP_SECRET};return Promise.resolve(o("","/oauth2/access_token/",t))}catch(e){return Promise.reject(e)}},a=function(e,t,r,i){try{return Promise.resolve(function(e,t,r){try{return Promise.resolve(n("/tools/regions/",{"Access-Token":e},{advertiser_id:t,placement:'["PLACEMENT_TIKTOK"]',objective_type:r})).then(function(e){var t=[],r={};return e.data.region_info.forEach(function(e){t.push(e.name),r[e.name]=e}),t.sort(),[t,r]})}catch(e){return Promise.reject(e)}}(t,r,i)).then(function(t){var r=t[0],n=t[1],i=[],o=e.toUpperCase();return r.forEach(function(e){e.toUpperCase().includes(o)&&i.push(n[e])}),i})}catch(e){return Promise.reject(e)}},u=function(e,t,r){try{return Promise.resolve(n("/tools/interest_keyword/recommend/",{"Access-Token":t},{advertiser_id:r,keywords:'["'+e+'"]'}))}catch(e){return Promise.reject(e)}};function d(e,t,r){if(!e.s){if(r instanceof f){if(!r.s)return void(r.o=d.bind(null,e,t));1&t&&(t=r.s),r=r.v}if(r&&r.then)return void r.then(d.bind(null,e,t),d.bind(null,e,2));e.s=t,e.v=r;var n=e.o;n&&n(e)}}var f=function(){function e(){}return e.prototype.then=function(t,r){var n=new e,i=this.s;if(i){var o=1&i?t:r;if(o){try{d(n,1,o(this.v))}catch(e){d(n,2,e)}return n}return this}return this.o=function(e){try{var i=e.v;1&e.s?d(n,1,t?t(i):i):r?d(n,1,r(i)):d(n,2,i)}catch(e){d(n,2,e)}},n},e}();function h(e){return e instanceof f&&1&e.s}var _=function(e,t){try{var r=!0,i=1,o=[],s=function(e,t,r){for(var n;;){var i=e();if(h(i)&&(i=i.v),!i)return o;if(i.then){n=0;break}var o=r();if(o&&o.then){if(!h(o)){n=1;break}o=o.s}}var s=new f,c=d.bind(null,s,2);return(0===n?i.then(u):1===n?o.then(a):(void 0).then(function(){(i=e())?i.then?i.then(u).then(void 0,c):u(i):d(s,1,o)})).then(void 0,c),s;function a(t){o=t;do{if(!(i=e())||h(i)&&!i.v)return void d(s,1,o);if(i.then)return void i.then(u).then(void 0,c);h(o=r())&&(o=o.v)}while(!o||!o.then);o.then(a).then(void 0,c)}function u(e){e?(o=r())&&o.then?o.then(a).then(void 0,c):a(o):d(s,1,o)}}(function(){return!!r},0,function(){return Promise.resolve(n("/campaign/get/",{"Access-Token":e},{advertiser_id:t,page:i,page_size:1e3})).then(function(e){if(0!=e.code)throw new Error(e.message);o=o.concat(e.data.list),e.data.page_info.total_number>o.length?i++:r=!1})});return Promise.resolve(s&&s.then?s.then(function(e){return o}):o)}catch(e){return Promise.reject(e)}},l=function(e,t,r){try{var i={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[r]})};return Promise.resolve(n("/ad/get/",{"Access-Token":e},i)).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.page_info.total_number>0?e.data.list[0]:[]})}catch(e){return Promise.reject(e)}},p=function(e,t,r){try{var i={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[r]})};return Promise.resolve(n("/adgroup/get/",{"Access-Token":e},i)).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.page_info.total_number>0?e.data.list[0]:[]})}catch(e){return Promise.reject(e)}},v=function(e,t,r){try{var i={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[r]})};return Promise.resolve(n("/campaign/get/",{"Access-Token":e},i)).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.page_info.total_number>0?e.data.list[0]:[]})}catch(e){return Promise.reject(e)}},m=function(e,t,r,i){try{return Promise.resolve(n("/file/video/suggestcover/",{"Access-Token":e},{advertiser_id:t,video_id:r,poster_number:i})).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.list})}catch(e){return Promise.reject(e)}},g=function(e,t,r,i){try{var o,s={advertiser_id:t,report_type:"BASIC",dimensions:'["campaign_id", "stat_time_day"]',data_level:"AUCTION_CAMPAIGN",start_date:i,end_date:i,filters:JSON.stringify([{field_name:"campaign_ids",filter_type:"IN",filter_value:"["+r+"]"}]),metrics:'["spend","cpc","cpm","impressions","clicks","ctr","reach","cost_per_1000_reached","conversion","cost_per_conversion","conversion_rate","real_time_conversion","real_time_cost_per_conversion","real_time_conversion_rate","result","cost_per_result","result_rate","real_time_result","real_time_cost_per_result","real_time_result_rate","secondary_goal_result","cost_per_secondary_goal_result","secondary_goal_result_rate","frequency"]'};return Promise.resolve(n("/reports/integrated/get/",{"Access-Token":e,"Content-Type":"application/json"},s)).then(function(e){if(0!=(o=e).code)throw new Error(o.message);return o.data.list.length>0?o.data.list[0].metrics:{}})}catch(e){return Promise.reject(e)}},P=function(e,t,r){try{var n;return Promise.resolve(o(e,"/file/video/ad/upload/",{advertiser_id:t,upload_type:"UPLOAD_BY_URL",video_url:r})).then(function(e){if(0!=(n=e).code)throw new Error(n.message);return n})}catch(e){return Promise.reject(e)}},y=function(e,t){try{return Promise.resolve(i("/pixel/list/",{"Access-Token":e},{advertiser_id:t,page_size:20})).then(function(e){var t=JSON.parse(e);if(0!=t.code)throw new Error(t.message);var r=t.data.pixels;if(r.length>0){var n=e.split('pixel_id": ').map(function(e){return e.substring(0,e.indexOf(","))});return n.shift(),r.forEach(function(e,t){e.pixel_id=n[t]}),t.data.pixels}return[]})}catch(e){return Promise.reject(e)}},T=new function(){this.get=n,this.getText=i,this.post=o,this.getAccounts=s,this.getLongTermAccessToken=c,this.getRegions=a,this.getInterests=u,this.getCampaign=v,this.getAdGroup=p,this.getAd=l,this.getAllCampaigns=_,this.getThumbnails=m,this.getMetrics=g,this.uploadVideo=P,this.getPixels=y};module.exports=T; | ||
var e,t=(e=require("node-fetch"))&&"object"==typeof e&&"default"in e?e.default:e,r="https://business-api.tiktok.com/open_api/v1.2",n=function(e,n,i){try{return Promise.resolve(new Promise(function(o,s){var c=r+e+"?"+Object.entries(i).map(function(e){return e.map(encodeURIComponent).join("=")}).join("&");t(c,{method:"GET",headers:n}).then(function(e){return e.json()}).then(function(e){o(e)}).catch(function(e){s(e)})}))}catch(e){return Promise.reject(e)}},i=function(e,n,i){try{return Promise.resolve(new Promise(function(o,s){var c=r+e+"?"+Object.entries(i).map(function(e){return e.map(encodeURIComponent).join("=")}).join("&");t(c,{method:"GET",headers:n}).then(function(e){return e.text()}).then(function(e){o(e)}).catch(function(e){s(e)})}))}catch(e){return Promise.reject(e)}},o=function(e,n,i){try{return Promise.resolve(new Promise(function(o,s){var c=r+n;console.log(c),t(c,{headers:{"Access-Token":e,Accept:"application/json","Content-Type":"application/json"},method:"POST",body:JSON.stringify(i)}).then(function(e){return e.json()}).then(function(e){return o(e)}).catch(function(e){s(e.json())})}))}catch(e){return Promise.reject(e)}},s=function(e){try{var t={access_token:e,app_id:process.env.TIKTOK_APP_ID,secret:process.env.TIKTOK_APP_SECRET};return Promise.resolve(i("/oauth2/advertiser/get",{},t)).then(function(e){for(var t=JSON.parse(e).data.list,r=e.split('advertiser_id": ').map(function(e){return e.substring(0,e.indexOf(","))}),n=0;n<t.length;n++)t[n].advertiser_id=r[1+n];return t})}catch(e){return Promise.reject(e)}},c=function(e){try{var t={app_id:process.env.TIKTOK_APP_ID,auth_code:e,secret:process.env.TIKTOK_APP_SECRET};return Promise.resolve(o("","/oauth2/access_token/",t))}catch(e){return Promise.reject(e)}},a=function(e,t,r,i){try{return Promise.resolve(function(e,t,r){try{return Promise.resolve(n("/tools/regions/",{"Access-Token":e},{advertiser_id:t,placement:'["PLACEMENT_TIKTOK"]',objective_type:r})).then(function(e){var t=[],r={};return e.data.region_info.forEach(function(e){t.push(e.name),r[e.name]=e}),t.sort(),[t,r]})}catch(e){return Promise.reject(e)}}(t,r,i)).then(function(t){var r=t[0],n=t[1],i=[],o=e.toUpperCase();return r.forEach(function(e){e.toUpperCase().includes(o)&&i.push(n[e])}),i})}catch(e){return Promise.reject(e)}},u=function(e,t,r){try{return Promise.resolve(n("/tools/interest_keyword/recommend/",{"Access-Token":t},{advertiser_id:r,keywords:'["'+e+'"]'}))}catch(e){return Promise.reject(e)}};function f(e,t,r){if(!e.s){if(r instanceof d){if(!r.s)return void(r.o=f.bind(null,e,t));1&t&&(t=r.s),r=r.v}if(r&&r.then)return void r.then(f.bind(null,e,t),f.bind(null,e,2));e.s=t,e.v=r;var n=e.o;n&&n(e)}}var d=function(){function e(){}return e.prototype.then=function(t,r){var n=new e,i=this.s;if(i){var o=1&i?t:r;if(o){try{f(n,1,o(this.v))}catch(e){f(n,2,e)}return n}return this}return this.o=function(e){try{var i=e.v;1&e.s?f(n,1,t?t(i):i):r?f(n,1,r(i)):f(n,2,i)}catch(e){f(n,2,e)}},n},e}();function h(e){return e instanceof d&&1&e.s}var _=function(e,t){try{var r=!0,i=1,o=[],s=function(e,t,r){for(var n;;){var i=e();if(h(i)&&(i=i.v),!i)return o;if(i.then){n=0;break}var o=r();if(o&&o.then){if(!h(o)){n=1;break}o=o.s}}var s=new d,c=f.bind(null,s,2);return(0===n?i.then(u):1===n?o.then(a):(void 0).then(function(){(i=e())?i.then?i.then(u).then(void 0,c):u(i):f(s,1,o)})).then(void 0,c),s;function a(t){o=t;do{if(!(i=e())||h(i)&&!i.v)return void f(s,1,o);if(i.then)return void i.then(u).then(void 0,c);h(o=r())&&(o=o.v)}while(!o||!o.then);o.then(a).then(void 0,c)}function u(e){e?(o=r())&&o.then?o.then(a).then(void 0,c):a(o):f(s,1,o)}}(function(){return!!r},0,function(){return Promise.resolve(n("/campaign/get/",{"Access-Token":e},{advertiser_id:t,page:i,page_size:1e3})).then(function(e){if(0!=e.code)throw new Error(e.message);o=o.concat(e.data.list),e.data.page_info.total_number>o.length?i++:r=!1})});return Promise.resolve(s&&s.then?s.then(function(e){return o}):o)}catch(e){return Promise.reject(e)}},l=function(e,t,r){try{var i={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[r]})};return Promise.resolve(n("/ad/get/",{"Access-Token":e},i)).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.page_info.total_number>0?e.data.list[0]:[]})}catch(e){return Promise.reject(e)}},v=function(e,t,r){try{var i={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[r]})};return Promise.resolve(n("/adgroup/get/",{"Access-Token":e},i)).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.page_info.total_number>0?e.data.list[0]:[]})}catch(e){return Promise.reject(e)}},p=function(e,t,r){try{var i={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[r]})};return Promise.resolve(n("/campaign/get/",{"Access-Token":e},i)).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.page_info.total_number>0?e.data.list[0]:[]})}catch(e){return Promise.reject(e)}},m=function(e,t,r,i){try{return Promise.resolve(n("/file/video/suggestcover/",{"Access-Token":e},{advertiser_id:t,video_id:r,poster_number:i})).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.list})}catch(e){return Promise.reject(e)}},g=function(e,t,r,i){try{var o,s={advertiser_id:t,report_type:"BASIC",dimensions:'["campaign_id", "stat_time_day"]',data_level:"AUCTION_CAMPAIGN",start_date:i,end_date:i,filters:JSON.stringify([{field_name:"campaign_ids",filter_type:"IN",filter_value:"["+r+"]"}]),metrics:'["spend","cpc","cpm","impressions","clicks","ctr","reach","cost_per_1000_reached","conversion","cost_per_conversion","conversion_rate","real_time_conversion","real_time_cost_per_conversion","real_time_conversion_rate","result","cost_per_result","result_rate","real_time_result","real_time_cost_per_result","real_time_result_rate","secondary_goal_result","cost_per_secondary_goal_result","secondary_goal_result_rate","frequency"]'};return Promise.resolve(n("/reports/integrated/get/",{"Access-Token":e,"Content-Type":"application/json"},s)).then(function(e){if(0!=(o=e).code)throw new Error(o.message);return o.data.list.length>0?o.data.list[0].metrics:{}})}catch(e){return Promise.reject(e)}},P=function(e,t,r){try{var n;return Promise.resolve(o(e,"/file/video/ad/upload/",{advertiser_id:t,upload_type:"UPLOAD_BY_URL",video_url:r})).then(function(e){if(0!=(n=e).code)throw new Error(n.message);return n})}catch(e){return Promise.reject(e)}},y=function(e,t){try{return Promise.resolve(i("/app/external_action/",{"Access-Token":e},{advertiser_id:t,placement:["PLACEMENT_TIKTOK"],objective:"CONVERSIONS",optimizeGoal:"CONVERT"})).then(function(e){var t=JSON.parse(e);if(0!=t.code)throw new Error(t.message);return t})}catch(e){return Promise.reject(e)}},T=function(e,t){try{return Promise.resolve(i("/pixel/list/",{"Access-Token":e},{advertiser_id:t,page_size:20})).then(function(e){var t=JSON.parse(e);if(0!=t.code)throw new Error(t.message);var r=t.data.pixels;if(r.length>0){var n=e.split('pixel_id": ').map(function(e){return e.match(/[0-9]+/)[0]});n.shift(),r.forEach(function(e,t){e.pixel_id=n[t]});var i=e.split('event_id": ').map(function(e){return e.substring(0,e.indexOf(","))});i.shift();var o=0;return r.forEach(function(e){e.events.forEach(function(e){e.event_id=i[o],o++})}),r}return[]})}catch(e){return Promise.reject(e)}},j=new function(){this.get=n,this.getText=i,this.post=o,this.getAccounts=s,this.getLongTermAccessToken=c,this.getRegions=a,this.getInterests=u,this.getCampaign=p,this.getAdGroup=v,this.getAd=l,this.getAllCampaigns=_,this.getThumbnails=m,this.getMetrics=g,this.uploadVideo=P,this.getPixels=T,this.getEvents=y};module.exports=j; | ||
//# sourceMappingURL=tiktokads.js.map |
@@ -1,2 +0,2 @@ | ||
import e from"node-fetch";const t="https://business-api.tiktok.com/open_api/v1.2",s=async(s,n,a)=>new Promise((i,r)=>{const o=t+s+"?"+Object.entries(a).map(e=>e.map(encodeURIComponent).join("=")).join("&");e(o,{method:"GET",headers:n}).then(e=>e.json()).then(e=>{i(e)}).catch(e=>{r(e)})}),n=async(s,n,a)=>new Promise((i,r)=>{const o=t+s+"?"+Object.entries(a).map(e=>e.map(encodeURIComponent).join("=")).join("&");e(o,{method:"GET",headers:n}).then(e=>e.text()).then(e=>{i(e)}).catch(e=>{r(e)})}),a=async(s,n,a)=>new Promise((i,r)=>{const o=t+n;console.log(o),e(o,{headers:{"Access-Token":s,Accept:"application/json","Content-Type":"application/json"},method:"POST",body:JSON.stringify(a)}).then(e=>e.json()).then(e=>i(e)).catch(e=>{r(e.json())})});async function i(e){const t={app_id:process.env.TIKTOK_APP_ID,auth_code:e,secret:process.env.TIKTOK_APP_SECRET};return await a("","/oauth2/access_token/",t)}async function r(e){const t={access_token:e,app_id:process.env.TIKTOK_APP_ID,secret:process.env.TIKTOK_APP_SECRET},s=await n("/oauth2/advertiser/get",{},t),a=JSON.parse(s).data.list,i=s.split('advertiser_id": ').map(e=>e.substring(0,e.indexOf(",")));for(var r=0;r<a.length;r++)a[r].advertiser_id=i[1+r];return a}async function o(e,t,n,a){const[i,r]=await async function(e,t,n){const a=await s("/tools/regions/",{"Access-Token":e},{advertiser_id:t,placement:'["PLACEMENT_TIKTOK"]',objective_type:n}),i=[],r={};return a.data.region_info.forEach(e=>{i.push(e.name),r[e.name]=e}),i.sort(),[i,r]}(t,n,a),o=[],c=e.toUpperCase();return i.forEach(e=>{e.toUpperCase().includes(c)&&o.push(r[e])}),o}async function c(e,t,n){return await s("/tools/interest_keyword/recommend/",{"Access-Token":t},{advertiser_id:n,keywords:`["${e}"]`})}async function d(e,t,n){const a={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[n]})},i=await s("/campaign/get/",{"Access-Token":e},a);if(0!=i.code)throw new Error(i.message);return i.data.page_info.total_number>0?i.data.list[0]:[]}async function _(e,t,n){const a={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[n]})},i=await s("/adgroup/get/",{"Access-Token":e},a);if(0!=i.code)throw new Error(i.message);return i.data.page_info.total_number>0?i.data.list[0]:[]}async function p(e,t,n){const a={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[n]})},i=await s("/ad/get/",{"Access-Token":e},a);if(0!=i.code)throw new Error(i.message);return i.data.page_info.total_number>0?i.data.list[0]:[]}async function l(e,t){let n=!0,a=1,i=[];for(;n;){const r=await s("/campaign/get/",{"Access-Token":e},{advertiser_id:t,page:a,page_size:1e3});if(0!=r.code)throw new Error(r.message);i=i.concat(r.data.list),r.data.page_info.total_number>i.length?a++:n=!1}return i}async function g(e,t,n,a){const i={advertiser_id:t,video_id:n,poster_number:a},r=await s("/file/video/suggestcover/",{"Access-Token":e},i);if(0!=r.code)throw new Error(r.message);return r.data.list}async function u(e,t,n,a){let i;const r={advertiser_id:t,report_type:"BASIC",dimensions:'["campaign_id", "stat_time_day"]',data_level:"AUCTION_CAMPAIGN",start_date:a,end_date:a,filters:JSON.stringify([{field_name:"campaign_ids",filter_type:"IN",filter_value:`[${n}]`}]),metrics:'["spend","cpc","cpm","impressions","clicks","ctr","reach","cost_per_1000_reached","conversion","cost_per_conversion","conversion_rate","real_time_conversion","real_time_cost_per_conversion","real_time_conversion_rate","result","cost_per_result","result_rate","real_time_result","real_time_cost_per_result","real_time_result_rate","secondary_goal_result","cost_per_secondary_goal_result","secondary_goal_result_rate","frequency"]'};if(i=await s("/reports/integrated/get/",{"Access-Token":e,"Content-Type":"application/json"},r),0!=i.code)throw new Error(i.message);return i.data.list.length>0?i.data.list[0].metrics:{}}async function m(e,t,s){let n,i;if(i={advertiser_id:t,upload_type:"UPLOAD_BY_URL",video_url:s},n=await a(e,"/file/video/ad/upload/",i),0!=n.code)throw new Error(n.message);return n}async function h(e,t){const s={advertiser_id:t,page_size:20},a=await n("/pixel/list/",{"Access-Token":e},s),i=JSON.parse(a);if(0!=i.code)throw new Error(i.message);const r=i.data.pixels;if(r.length>0){const e=a.split('pixel_id": ').map(e=>e.substring(0,e.indexOf(",")));return e.shift(),r.forEach((t,s)=>{t.pixel_id=e[s]}),i.data.pixels}return[]}const f=new class{constructor(){this.get=s,this.getText=n,this.post=a,this.getAccounts=r,this.getLongTermAccessToken=i,this.getRegions=o,this.getInterests=c,this.getCampaign=d,this.getAdGroup=_,this.getAd=p,this.getAllCampaigns=l,this.getThumbnails=g,this.getMetrics=u,this.uploadVideo=m,this.getPixels=h}};export default f; | ||
import e from"node-fetch";const t="https://business-api.tiktok.com/open_api/v1.2",s=async(s,n,a)=>new Promise((i,r)=>{const o=t+s+"?"+Object.entries(a).map(e=>e.map(encodeURIComponent).join("=")).join("&");e(o,{method:"GET",headers:n}).then(e=>e.json()).then(e=>{i(e)}).catch(e=>{r(e)})}),n=async(s,n,a)=>new Promise((i,r)=>{const o=t+s+"?"+Object.entries(a).map(e=>e.map(encodeURIComponent).join("=")).join("&");e(o,{method:"GET",headers:n}).then(e=>e.text()).then(e=>{i(e)}).catch(e=>{r(e)})}),a=async(s,n,a)=>new Promise((i,r)=>{const o=t+n;console.log(o),e(o,{headers:{"Access-Token":s,Accept:"application/json","Content-Type":"application/json"},method:"POST",body:JSON.stringify(a)}).then(e=>e.json()).then(e=>i(e)).catch(e=>{r(e.json())})});async function i(e){const t={app_id:process.env.TIKTOK_APP_ID,auth_code:e,secret:process.env.TIKTOK_APP_SECRET};return await a("","/oauth2/access_token/",t)}async function r(e){const t={access_token:e,app_id:process.env.TIKTOK_APP_ID,secret:process.env.TIKTOK_APP_SECRET},s=await n("/oauth2/advertiser/get",{},t),a=JSON.parse(s).data.list,i=s.split('advertiser_id": ').map(e=>e.substring(0,e.indexOf(",")));for(var r=0;r<a.length;r++)a[r].advertiser_id=i[1+r];return a}async function o(e,t,n,a){const[i,r]=await async function(e,t,n){const a=await s("/tools/regions/",{"Access-Token":e},{advertiser_id:t,placement:'["PLACEMENT_TIKTOK"]',objective_type:n}),i=[],r={};return a.data.region_info.forEach(e=>{i.push(e.name),r[e.name]=e}),i.sort(),[i,r]}(t,n,a),o=[],c=e.toUpperCase();return i.forEach(e=>{e.toUpperCase().includes(c)&&o.push(r[e])}),o}async function c(e,t,n){return await s("/tools/interest_keyword/recommend/",{"Access-Token":t},{advertiser_id:n,keywords:`["${e}"]`})}async function _(e,t,n){const a={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[n]})},i=await s("/campaign/get/",{"Access-Token":e},a);if(0!=i.code)throw new Error(i.message);return i.data.page_info.total_number>0?i.data.list[0]:[]}async function d(e,t,n){const a={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[n]})},i=await s("/adgroup/get/",{"Access-Token":e},a);if(0!=i.code)throw new Error(i.message);return i.data.page_info.total_number>0?i.data.list[0]:[]}async function p(e,t,n){const a={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[n]})},i=await s("/ad/get/",{"Access-Token":e},a);if(0!=i.code)throw new Error(i.message);return i.data.page_info.total_number>0?i.data.list[0]:[]}async function l(e,t){let n=!0,a=1,i=[];for(;n;){const r=await s("/campaign/get/",{"Access-Token":e},{advertiser_id:t,page:a,page_size:1e3});if(0!=r.code)throw new Error(r.message);i=i.concat(r.data.list),r.data.page_info.total_number>i.length?a++:n=!1}return i}async function g(e,t,n,a){const i={advertiser_id:t,video_id:n,poster_number:a},r=await s("/file/video/suggestcover/",{"Access-Token":e},i);if(0!=r.code)throw new Error(r.message);return r.data.list}async function u(e,t,n,a){let i;const r={advertiser_id:t,report_type:"BASIC",dimensions:'["campaign_id", "stat_time_day"]',data_level:"AUCTION_CAMPAIGN",start_date:a,end_date:a,filters:JSON.stringify([{field_name:"campaign_ids",filter_type:"IN",filter_value:`[${n}]`}]),metrics:'["spend","cpc","cpm","impressions","clicks","ctr","reach","cost_per_1000_reached","conversion","cost_per_conversion","conversion_rate","real_time_conversion","real_time_cost_per_conversion","real_time_conversion_rate","result","cost_per_result","result_rate","real_time_result","real_time_cost_per_result","real_time_result_rate","secondary_goal_result","cost_per_secondary_goal_result","secondary_goal_result_rate","frequency"]'};if(i=await s("/reports/integrated/get/",{"Access-Token":e,"Content-Type":"application/json"},r),0!=i.code)throw new Error(i.message);return i.data.list.length>0?i.data.list[0].metrics:{}}async function m(e,t,s){let n,i;if(i={advertiser_id:t,upload_type:"UPLOAD_BY_URL",video_url:s},n=await a(e,"/file/video/ad/upload/",i),0!=n.code)throw new Error(n.message);return n}async function h(e,t){const s={advertiser_id:t,page_size:20},a=await n("/pixel/list/",{"Access-Token":e},s),i=JSON.parse(a);if(0!=i.code)throw new Error(i.message);const r=i.data.pixels;if(r.length>0){const e=a.split('pixel_id": ').map(e=>e.match(/[0-9]+/)[0]);e.shift(),r.forEach((t,s)=>{t.pixel_id=e[s]});const t=a.split('event_id": ').map(e=>e.substring(0,e.indexOf(",")));t.shift();let s=0;return r.forEach(e=>{e.events.forEach(e=>{e.event_id=t[s],s++})}),r}return[]}async function f(e,t){const s={advertiser_id:t,placement:["PLACEMENT_TIKTOK"],objective:"CONVERSIONS",optimizeGoal:"CONVERT"},a=await n("/app/external_action/",{"Access-Token":e},s),i=JSON.parse(a);if(0!=i.code)throw new Error(i.message);return i}const v=new class{constructor(){this.get=s,this.getText=n,this.post=a,this.getAccounts=r,this.getLongTermAccessToken=i,this.getRegions=o,this.getInterests=c,this.getCampaign=_,this.getAdGroup=d,this.getAd=p,this.getAllCampaigns=l,this.getThumbnails=g,this.getMetrics=u,this.uploadVideo=m,this.getPixels=h,this.getEvents=f}};export default v; | ||
//# sourceMappingURL=tiktokads.modern.js.map |
@@ -1,2 +0,2 @@ | ||
import e from"node-fetch";var t="https://business-api.tiktok.com/open_api/v1.2",r=function(r,n,i){try{return Promise.resolve(new Promise(function(o,s){var c=t+r+"?"+Object.entries(i).map(function(e){return e.map(encodeURIComponent).join("=")}).join("&");e(c,{method:"GET",headers:n}).then(function(e){return e.json()}).then(function(e){o(e)}).catch(function(e){s(e)})}))}catch(e){return Promise.reject(e)}},n=function(r,n,i){try{return Promise.resolve(new Promise(function(o,s){var c=t+r+"?"+Object.entries(i).map(function(e){return e.map(encodeURIComponent).join("=")}).join("&");e(c,{method:"GET",headers:n}).then(function(e){return e.text()}).then(function(e){o(e)}).catch(function(e){s(e)})}))}catch(e){return Promise.reject(e)}},i=function(r,n,i){try{return Promise.resolve(new Promise(function(o,s){var c=t+n;console.log(c),e(c,{headers:{"Access-Token":r,Accept:"application/json","Content-Type":"application/json"},method:"POST",body:JSON.stringify(i)}).then(function(e){return e.json()}).then(function(e){return o(e)}).catch(function(e){s(e.json())})}))}catch(e){return Promise.reject(e)}},o=function(e){try{var t={access_token:e,app_id:process.env.TIKTOK_APP_ID,secret:process.env.TIKTOK_APP_SECRET};return Promise.resolve(n("/oauth2/advertiser/get",{},t)).then(function(e){for(var t=JSON.parse(e).data.list,r=e.split('advertiser_id": ').map(function(e){return e.substring(0,e.indexOf(","))}),n=0;n<t.length;n++)t[n].advertiser_id=r[1+n];return t})}catch(e){return Promise.reject(e)}},s=function(e){try{var t={app_id:process.env.TIKTOK_APP_ID,auth_code:e,secret:process.env.TIKTOK_APP_SECRET};return Promise.resolve(i("","/oauth2/access_token/",t))}catch(e){return Promise.reject(e)}},c=function(e,t,n,i){try{return Promise.resolve(function(e,t,n){try{return Promise.resolve(r("/tools/regions/",{"Access-Token":e},{advertiser_id:t,placement:'["PLACEMENT_TIKTOK"]',objective_type:n})).then(function(e){var t=[],r={};return e.data.region_info.forEach(function(e){t.push(e.name),r[e.name]=e}),t.sort(),[t,r]})}catch(e){return Promise.reject(e)}}(t,n,i)).then(function(t){var r=t[0],n=t[1],i=[],o=e.toUpperCase();return r.forEach(function(e){e.toUpperCase().includes(o)&&i.push(n[e])}),i})}catch(e){return Promise.reject(e)}},a=function(e,t,n){try{return Promise.resolve(r("/tools/interest_keyword/recommend/",{"Access-Token":t},{advertiser_id:n,keywords:'["'+e+'"]'}))}catch(e){return Promise.reject(e)}};function u(e,t,r){if(!e.s){if(r instanceof d){if(!r.s)return void(r.o=u.bind(null,e,t));1&t&&(t=r.s),r=r.v}if(r&&r.then)return void r.then(u.bind(null,e,t),u.bind(null,e,2));e.s=t,e.v=r;var n=e.o;n&&n(e)}}var d=function(){function e(){}return e.prototype.then=function(t,r){var n=new e,i=this.s;if(i){var o=1&i?t:r;if(o){try{u(n,1,o(this.v))}catch(e){u(n,2,e)}return n}return this}return this.o=function(e){try{var i=e.v;1&e.s?u(n,1,t?t(i):i):r?u(n,1,r(i)):u(n,2,i)}catch(e){u(n,2,e)}},n},e}();function f(e){return e instanceof d&&1&e.s}var h=function(e,t){try{var n=!0,i=1,o=[],s=function(e,t,r){for(var n;;){var i=e();if(f(i)&&(i=i.v),!i)return o;if(i.then){n=0;break}var o=r();if(o&&o.then){if(!f(o)){n=1;break}o=o.s}}var s=new d,c=u.bind(null,s,2);return(0===n?i.then(h):1===n?o.then(a):(void 0).then(function(){(i=e())?i.then?i.then(h).then(void 0,c):h(i):u(s,1,o)})).then(void 0,c),s;function a(t){o=t;do{if(!(i=e())||f(i)&&!i.v)return void u(s,1,o);if(i.then)return void i.then(h).then(void 0,c);f(o=r())&&(o=o.v)}while(!o||!o.then);o.then(a).then(void 0,c)}function h(e){e?(o=r())&&o.then?o.then(a).then(void 0,c):a(o):u(s,1,o)}}(function(){return!!n},0,function(){return Promise.resolve(r("/campaign/get/",{"Access-Token":e},{advertiser_id:t,page:i,page_size:1e3})).then(function(e){if(0!=e.code)throw new Error(e.message);o=o.concat(e.data.list),e.data.page_info.total_number>o.length?i++:n=!1})});return Promise.resolve(s&&s.then?s.then(function(e){return o}):o)}catch(e){return Promise.reject(e)}},_=function(e,t,n){try{var i={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[n]})};return Promise.resolve(r("/ad/get/",{"Access-Token":e},i)).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.page_info.total_number>0?e.data.list[0]:[]})}catch(e){return Promise.reject(e)}},l=function(e,t,n){try{var i={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[n]})};return Promise.resolve(r("/adgroup/get/",{"Access-Token":e},i)).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.page_info.total_number>0?e.data.list[0]:[]})}catch(e){return Promise.reject(e)}},p=function(e,t,n){try{var i={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[n]})};return Promise.resolve(r("/campaign/get/",{"Access-Token":e},i)).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.page_info.total_number>0?e.data.list[0]:[]})}catch(e){return Promise.reject(e)}},v=function(e,t,n,i){try{return Promise.resolve(r("/file/video/suggestcover/",{"Access-Token":e},{advertiser_id:t,video_id:n,poster_number:i})).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.list})}catch(e){return Promise.reject(e)}},m=function(e,t,n,i){try{var o,s={advertiser_id:t,report_type:"BASIC",dimensions:'["campaign_id", "stat_time_day"]',data_level:"AUCTION_CAMPAIGN",start_date:i,end_date:i,filters:JSON.stringify([{field_name:"campaign_ids",filter_type:"IN",filter_value:"["+n+"]"}]),metrics:'["spend","cpc","cpm","impressions","clicks","ctr","reach","cost_per_1000_reached","conversion","cost_per_conversion","conversion_rate","real_time_conversion","real_time_cost_per_conversion","real_time_conversion_rate","result","cost_per_result","result_rate","real_time_result","real_time_cost_per_result","real_time_result_rate","secondary_goal_result","cost_per_secondary_goal_result","secondary_goal_result_rate","frequency"]'};return Promise.resolve(r("/reports/integrated/get/",{"Access-Token":e,"Content-Type":"application/json"},s)).then(function(e){if(0!=(o=e).code)throw new Error(o.message);return o.data.list.length>0?o.data.list[0].metrics:{}})}catch(e){return Promise.reject(e)}},g=function(e,t,r){try{var n;return Promise.resolve(i(e,"/file/video/ad/upload/",{advertiser_id:t,upload_type:"UPLOAD_BY_URL",video_url:r})).then(function(e){if(0!=(n=e).code)throw new Error(n.message);return n})}catch(e){return Promise.reject(e)}},P=function(e,t){try{return Promise.resolve(n("/pixel/list/",{"Access-Token":e},{advertiser_id:t,page_size:20})).then(function(e){var t=JSON.parse(e);if(0!=t.code)throw new Error(t.message);var r=t.data.pixels;if(r.length>0){var n=e.split('pixel_id": ').map(function(e){return e.substring(0,e.indexOf(","))});return n.shift(),r.forEach(function(e,t){e.pixel_id=n[t]}),t.data.pixels}return[]})}catch(e){return Promise.reject(e)}},y=new function(){this.get=r,this.getText=n,this.post=i,this.getAccounts=o,this.getLongTermAccessToken=s,this.getRegions=c,this.getInterests=a,this.getCampaign=p,this.getAdGroup=l,this.getAd=_,this.getAllCampaigns=h,this.getThumbnails=v,this.getMetrics=m,this.uploadVideo=g,this.getPixels=P};export default y; | ||
import e from"node-fetch";var t="https://business-api.tiktok.com/open_api/v1.2",r=function(r,n,i){try{return Promise.resolve(new Promise(function(o,s){var c=t+r+"?"+Object.entries(i).map(function(e){return e.map(encodeURIComponent).join("=")}).join("&");e(c,{method:"GET",headers:n}).then(function(e){return e.json()}).then(function(e){o(e)}).catch(function(e){s(e)})}))}catch(e){return Promise.reject(e)}},n=function(r,n,i){try{return Promise.resolve(new Promise(function(o,s){var c=t+r+"?"+Object.entries(i).map(function(e){return e.map(encodeURIComponent).join("=")}).join("&");e(c,{method:"GET",headers:n}).then(function(e){return e.text()}).then(function(e){o(e)}).catch(function(e){s(e)})}))}catch(e){return Promise.reject(e)}},i=function(r,n,i){try{return Promise.resolve(new Promise(function(o,s){var c=t+n;console.log(c),e(c,{headers:{"Access-Token":r,Accept:"application/json","Content-Type":"application/json"},method:"POST",body:JSON.stringify(i)}).then(function(e){return e.json()}).then(function(e){return o(e)}).catch(function(e){s(e.json())})}))}catch(e){return Promise.reject(e)}},o=function(e){try{var t={access_token:e,app_id:process.env.TIKTOK_APP_ID,secret:process.env.TIKTOK_APP_SECRET};return Promise.resolve(n("/oauth2/advertiser/get",{},t)).then(function(e){for(var t=JSON.parse(e).data.list,r=e.split('advertiser_id": ').map(function(e){return e.substring(0,e.indexOf(","))}),n=0;n<t.length;n++)t[n].advertiser_id=r[1+n];return t})}catch(e){return Promise.reject(e)}},s=function(e){try{var t={app_id:process.env.TIKTOK_APP_ID,auth_code:e,secret:process.env.TIKTOK_APP_SECRET};return Promise.resolve(i("","/oauth2/access_token/",t))}catch(e){return Promise.reject(e)}},c=function(e,t,n,i){try{return Promise.resolve(function(e,t,n){try{return Promise.resolve(r("/tools/regions/",{"Access-Token":e},{advertiser_id:t,placement:'["PLACEMENT_TIKTOK"]',objective_type:n})).then(function(e){var t=[],r={};return e.data.region_info.forEach(function(e){t.push(e.name),r[e.name]=e}),t.sort(),[t,r]})}catch(e){return Promise.reject(e)}}(t,n,i)).then(function(t){var r=t[0],n=t[1],i=[],o=e.toUpperCase();return r.forEach(function(e){e.toUpperCase().includes(o)&&i.push(n[e])}),i})}catch(e){return Promise.reject(e)}},a=function(e,t,n){try{return Promise.resolve(r("/tools/interest_keyword/recommend/",{"Access-Token":t},{advertiser_id:n,keywords:'["'+e+'"]'}))}catch(e){return Promise.reject(e)}};function u(e,t,r){if(!e.s){if(r instanceof f){if(!r.s)return void(r.o=u.bind(null,e,t));1&t&&(t=r.s),r=r.v}if(r&&r.then)return void r.then(u.bind(null,e,t),u.bind(null,e,2));e.s=t,e.v=r;var n=e.o;n&&n(e)}}var f=function(){function e(){}return e.prototype.then=function(t,r){var n=new e,i=this.s;if(i){var o=1&i?t:r;if(o){try{u(n,1,o(this.v))}catch(e){u(n,2,e)}return n}return this}return this.o=function(e){try{var i=e.v;1&e.s?u(n,1,t?t(i):i):r?u(n,1,r(i)):u(n,2,i)}catch(e){u(n,2,e)}},n},e}();function d(e){return e instanceof f&&1&e.s}var h=function(e,t){try{var n=!0,i=1,o=[],s=function(e,t,r){for(var n;;){var i=e();if(d(i)&&(i=i.v),!i)return o;if(i.then){n=0;break}var o=r();if(o&&o.then){if(!d(o)){n=1;break}o=o.s}}var s=new f,c=u.bind(null,s,2);return(0===n?i.then(h):1===n?o.then(a):(void 0).then(function(){(i=e())?i.then?i.then(h).then(void 0,c):h(i):u(s,1,o)})).then(void 0,c),s;function a(t){o=t;do{if(!(i=e())||d(i)&&!i.v)return void u(s,1,o);if(i.then)return void i.then(h).then(void 0,c);d(o=r())&&(o=o.v)}while(!o||!o.then);o.then(a).then(void 0,c)}function h(e){e?(o=r())&&o.then?o.then(a).then(void 0,c):a(o):u(s,1,o)}}(function(){return!!n},0,function(){return Promise.resolve(r("/campaign/get/",{"Access-Token":e},{advertiser_id:t,page:i,page_size:1e3})).then(function(e){if(0!=e.code)throw new Error(e.message);o=o.concat(e.data.list),e.data.page_info.total_number>o.length?i++:n=!1})});return Promise.resolve(s&&s.then?s.then(function(e){return o}):o)}catch(e){return Promise.reject(e)}},_=function(e,t,n){try{var i={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[n]})};return Promise.resolve(r("/ad/get/",{"Access-Token":e},i)).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.page_info.total_number>0?e.data.list[0]:[]})}catch(e){return Promise.reject(e)}},v=function(e,t,n){try{var i={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[n]})};return Promise.resolve(r("/adgroup/get/",{"Access-Token":e},i)).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.page_info.total_number>0?e.data.list[0]:[]})}catch(e){return Promise.reject(e)}},l=function(e,t,n){try{var i={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[n]})};return Promise.resolve(r("/campaign/get/",{"Access-Token":e},i)).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.page_info.total_number>0?e.data.list[0]:[]})}catch(e){return Promise.reject(e)}},p=function(e,t,n,i){try{return Promise.resolve(r("/file/video/suggestcover/",{"Access-Token":e},{advertiser_id:t,video_id:n,poster_number:i})).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.list})}catch(e){return Promise.reject(e)}},m=function(e,t,n,i){try{var o,s={advertiser_id:t,report_type:"BASIC",dimensions:'["campaign_id", "stat_time_day"]',data_level:"AUCTION_CAMPAIGN",start_date:i,end_date:i,filters:JSON.stringify([{field_name:"campaign_ids",filter_type:"IN",filter_value:"["+n+"]"}]),metrics:'["spend","cpc","cpm","impressions","clicks","ctr","reach","cost_per_1000_reached","conversion","cost_per_conversion","conversion_rate","real_time_conversion","real_time_cost_per_conversion","real_time_conversion_rate","result","cost_per_result","result_rate","real_time_result","real_time_cost_per_result","real_time_result_rate","secondary_goal_result","cost_per_secondary_goal_result","secondary_goal_result_rate","frequency"]'};return Promise.resolve(r("/reports/integrated/get/",{"Access-Token":e,"Content-Type":"application/json"},s)).then(function(e){if(0!=(o=e).code)throw new Error(o.message);return o.data.list.length>0?o.data.list[0].metrics:{}})}catch(e){return Promise.reject(e)}},g=function(e,t,r){try{var n;return Promise.resolve(i(e,"/file/video/ad/upload/",{advertiser_id:t,upload_type:"UPLOAD_BY_URL",video_url:r})).then(function(e){if(0!=(n=e).code)throw new Error(n.message);return n})}catch(e){return Promise.reject(e)}},P=function(e,t){try{return Promise.resolve(n("/app/external_action/",{"Access-Token":e},{advertiser_id:t,placement:["PLACEMENT_TIKTOK"],objective:"CONVERSIONS",optimizeGoal:"CONVERT"})).then(function(e){var t=JSON.parse(e);if(0!=t.code)throw new Error(t.message);return t})}catch(e){return Promise.reject(e)}},y=function(e,t){try{return Promise.resolve(n("/pixel/list/",{"Access-Token":e},{advertiser_id:t,page_size:20})).then(function(e){var t=JSON.parse(e);if(0!=t.code)throw new Error(t.message);var r=t.data.pixels;if(r.length>0){var n=e.split('pixel_id": ').map(function(e){return e.match(/[0-9]+/)[0]});n.shift(),r.forEach(function(e,t){e.pixel_id=n[t]});var i=e.split('event_id": ').map(function(e){return e.substring(0,e.indexOf(","))});i.shift();var o=0;return r.forEach(function(e){e.events.forEach(function(e){e.event_id=i[o],o++})}),r}return[]})}catch(e){return Promise.reject(e)}},T=new function(){this.get=r,this.getText=n,this.post=i,this.getAccounts=o,this.getLongTermAccessToken=s,this.getRegions=c,this.getInterests=a,this.getCampaign=l,this.getAdGroup=v,this.getAd=_,this.getAllCampaigns=h,this.getThumbnails=p,this.getMetrics=m,this.uploadVideo=g,this.getPixels=y,this.getEvents=P};export default T; | ||
//# sourceMappingURL=tiktokads.module.js.map |
@@ -1,2 +0,2 @@ | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("node-fetch")):"function"==typeof define&&define.amd?define(["node-fetch"],t):(e=e||self).tiktokads=t(e.nodeFetch)}(this,function(e){e=e&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e;var t="https://business-api.tiktok.com/open_api/v1.2",r=function(r,n,i){try{return Promise.resolve(new Promise(function(o,s){var c=t+r+"?"+Object.entries(i).map(function(e){return e.map(encodeURIComponent).join("=")}).join("&");e(c,{method:"GET",headers:n}).then(function(e){return e.json()}).then(function(e){o(e)}).catch(function(e){s(e)})}))}catch(e){return Promise.reject(e)}},n=function(r,n,i){try{return Promise.resolve(new Promise(function(o,s){var c=t+r+"?"+Object.entries(i).map(function(e){return e.map(encodeURIComponent).join("=")}).join("&");e(c,{method:"GET",headers:n}).then(function(e){return e.text()}).then(function(e){o(e)}).catch(function(e){s(e)})}))}catch(e){return Promise.reject(e)}},i=function(r,n,i){try{return Promise.resolve(new Promise(function(o,s){var c=t+n;console.log(c),e(c,{headers:{"Access-Token":r,Accept:"application/json","Content-Type":"application/json"},method:"POST",body:JSON.stringify(i)}).then(function(e){return e.json()}).then(function(e){return o(e)}).catch(function(e){s(e.json())})}))}catch(e){return Promise.reject(e)}},o=function(e){try{var t={access_token:e,app_id:process.env.TIKTOK_APP_ID,secret:process.env.TIKTOK_APP_SECRET};return Promise.resolve(n("/oauth2/advertiser/get",{},t)).then(function(e){for(var t=JSON.parse(e).data.list,r=e.split('advertiser_id": ').map(function(e){return e.substring(0,e.indexOf(","))}),n=0;n<t.length;n++)t[n].advertiser_id=r[1+n];return t})}catch(e){return Promise.reject(e)}},s=function(e){try{var t={app_id:process.env.TIKTOK_APP_ID,auth_code:e,secret:process.env.TIKTOK_APP_SECRET};return Promise.resolve(i("","/oauth2/access_token/",t))}catch(e){return Promise.reject(e)}},c=function(e,t,n,i){try{return Promise.resolve(function(e,t,n){try{return Promise.resolve(r("/tools/regions/",{"Access-Token":e},{advertiser_id:t,placement:'["PLACEMENT_TIKTOK"]',objective_type:n})).then(function(e){var t=[],r={};return e.data.region_info.forEach(function(e){t.push(e.name),r[e.name]=e}),t.sort(),[t,r]})}catch(e){return Promise.reject(e)}}(t,n,i)).then(function(t){var r=t[0],n=t[1],i=[],o=e.toUpperCase();return r.forEach(function(e){e.toUpperCase().includes(o)&&i.push(n[e])}),i})}catch(e){return Promise.reject(e)}},a=function(e,t,n){try{return Promise.resolve(r("/tools/interest_keyword/recommend/",{"Access-Token":t},{advertiser_id:n,keywords:'["'+e+'"]'}))}catch(e){return Promise.reject(e)}};function u(e,t,r){if(!e.s){if(r instanceof d){if(!r.s)return void(r.o=u.bind(null,e,t));1&t&&(t=r.s),r=r.v}if(r&&r.then)return void r.then(u.bind(null,e,t),u.bind(null,e,2));e.s=t,e.v=r;var n=e.o;n&&n(e)}}var d=function(){function e(){}return e.prototype.then=function(t,r){var n=new e,i=this.s;if(i){var o=1&i?t:r;if(o){try{u(n,1,o(this.v))}catch(e){u(n,2,e)}return n}return this}return this.o=function(e){try{var i=e.v;1&e.s?u(n,1,t?t(i):i):r?u(n,1,r(i)):u(n,2,i)}catch(e){u(n,2,e)}},n},e}();function f(e){return e instanceof d&&1&e.s}var h=function(e,t){try{var n=!0,i=1,o=[],s=function(e,t,r){for(var n;;){var i=e();if(f(i)&&(i=i.v),!i)return o;if(i.then){n=0;break}var o=r();if(o&&o.then){if(!f(o)){n=1;break}o=o.s}}var s=new d,c=u.bind(null,s,2);return(0===n?i.then(h):1===n?o.then(a):(void 0).then(function(){(i=e())?i.then?i.then(h).then(void 0,c):h(i):u(s,1,o)})).then(void 0,c),s;function a(t){o=t;do{if(!(i=e())||f(i)&&!i.v)return void u(s,1,o);if(i.then)return void i.then(h).then(void 0,c);f(o=r())&&(o=o.v)}while(!o||!o.then);o.then(a).then(void 0,c)}function h(e){e?(o=r())&&o.then?o.then(a).then(void 0,c):a(o):u(s,1,o)}}(function(){return!!n},0,function(){return Promise.resolve(r("/campaign/get/",{"Access-Token":e},{advertiser_id:t,page:i,page_size:1e3})).then(function(e){if(0!=e.code)throw new Error(e.message);o=o.concat(e.data.list),e.data.page_info.total_number>o.length?i++:n=!1})});return Promise.resolve(s&&s.then?s.then(function(e){return o}):o)}catch(e){return Promise.reject(e)}},l=function(e,t,n){try{var i={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[n]})};return Promise.resolve(r("/ad/get/",{"Access-Token":e},i)).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.page_info.total_number>0?e.data.list[0]:[]})}catch(e){return Promise.reject(e)}},_=function(e,t,n){try{var i={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[n]})};return Promise.resolve(r("/adgroup/get/",{"Access-Token":e},i)).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.page_info.total_number>0?e.data.list[0]:[]})}catch(e){return Promise.reject(e)}},p=function(e,t,n){try{var i={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[n]})};return Promise.resolve(r("/campaign/get/",{"Access-Token":e},i)).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.page_info.total_number>0?e.data.list[0]:[]})}catch(e){return Promise.reject(e)}},v=function(e,t,n,i){try{return Promise.resolve(r("/file/video/suggestcover/",{"Access-Token":e},{advertiser_id:t,video_id:n,poster_number:i})).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.list})}catch(e){return Promise.reject(e)}},m=function(e,t,n,i){try{var o,s={advertiser_id:t,report_type:"BASIC",dimensions:'["campaign_id", "stat_time_day"]',data_level:"AUCTION_CAMPAIGN",start_date:i,end_date:i,filters:JSON.stringify([{field_name:"campaign_ids",filter_type:"IN",filter_value:"["+n+"]"}]),metrics:'["spend","cpc","cpm","impressions","clicks","ctr","reach","cost_per_1000_reached","conversion","cost_per_conversion","conversion_rate","real_time_conversion","real_time_cost_per_conversion","real_time_conversion_rate","result","cost_per_result","result_rate","real_time_result","real_time_cost_per_result","real_time_result_rate","secondary_goal_result","cost_per_secondary_goal_result","secondary_goal_result_rate","frequency"]'};return Promise.resolve(r("/reports/integrated/get/",{"Access-Token":e,"Content-Type":"application/json"},s)).then(function(e){if(0!=(o=e).code)throw new Error(o.message);return o.data.list.length>0?o.data.list[0].metrics:{}})}catch(e){return Promise.reject(e)}},g=function(e,t,r){try{var n;return Promise.resolve(i(e,"/file/video/ad/upload/",{advertiser_id:t,upload_type:"UPLOAD_BY_URL",video_url:r})).then(function(e){if(0!=(n=e).code)throw new Error(n.message);return n})}catch(e){return Promise.reject(e)}},P=function(e,t){try{return Promise.resolve(n("/pixel/list/",{"Access-Token":e},{advertiser_id:t,page_size:20})).then(function(e){var t=JSON.parse(e);if(0!=t.code)throw new Error(t.message);var r=t.data.pixels;if(r.length>0){var n=e.split('pixel_id": ').map(function(e){return e.substring(0,e.indexOf(","))});return n.shift(),r.forEach(function(e,t){e.pixel_id=n[t]}),t.data.pixels}return[]})}catch(e){return Promise.reject(e)}};return new function(){this.get=r,this.getText=n,this.post=i,this.getAccounts=o,this.getLongTermAccessToken=s,this.getRegions=c,this.getInterests=a,this.getCampaign=p,this.getAdGroup=_,this.getAd=l,this.getAllCampaigns=h,this.getThumbnails=v,this.getMetrics=m,this.uploadVideo=g,this.getPixels=P}}); | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("node-fetch")):"function"==typeof define&&define.amd?define(["node-fetch"],t):(e=e||self).tiktokads=t(e.nodeFetch)}(this,function(e){e=e&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e;var t="https://business-api.tiktok.com/open_api/v1.2",r=function(r,n,i){try{return Promise.resolve(new Promise(function(o,s){var c=t+r+"?"+Object.entries(i).map(function(e){return e.map(encodeURIComponent).join("=")}).join("&");e(c,{method:"GET",headers:n}).then(function(e){return e.json()}).then(function(e){o(e)}).catch(function(e){s(e)})}))}catch(e){return Promise.reject(e)}},n=function(r,n,i){try{return Promise.resolve(new Promise(function(o,s){var c=t+r+"?"+Object.entries(i).map(function(e){return e.map(encodeURIComponent).join("=")}).join("&");e(c,{method:"GET",headers:n}).then(function(e){return e.text()}).then(function(e){o(e)}).catch(function(e){s(e)})}))}catch(e){return Promise.reject(e)}},i=function(r,n,i){try{return Promise.resolve(new Promise(function(o,s){var c=t+n;console.log(c),e(c,{headers:{"Access-Token":r,Accept:"application/json","Content-Type":"application/json"},method:"POST",body:JSON.stringify(i)}).then(function(e){return e.json()}).then(function(e){return o(e)}).catch(function(e){s(e.json())})}))}catch(e){return Promise.reject(e)}},o=function(e){try{var t={access_token:e,app_id:process.env.TIKTOK_APP_ID,secret:process.env.TIKTOK_APP_SECRET};return Promise.resolve(n("/oauth2/advertiser/get",{},t)).then(function(e){for(var t=JSON.parse(e).data.list,r=e.split('advertiser_id": ').map(function(e){return e.substring(0,e.indexOf(","))}),n=0;n<t.length;n++)t[n].advertiser_id=r[1+n];return t})}catch(e){return Promise.reject(e)}},s=function(e){try{var t={app_id:process.env.TIKTOK_APP_ID,auth_code:e,secret:process.env.TIKTOK_APP_SECRET};return Promise.resolve(i("","/oauth2/access_token/",t))}catch(e){return Promise.reject(e)}},c=function(e,t,n,i){try{return Promise.resolve(function(e,t,n){try{return Promise.resolve(r("/tools/regions/",{"Access-Token":e},{advertiser_id:t,placement:'["PLACEMENT_TIKTOK"]',objective_type:n})).then(function(e){var t=[],r={};return e.data.region_info.forEach(function(e){t.push(e.name),r[e.name]=e}),t.sort(),[t,r]})}catch(e){return Promise.reject(e)}}(t,n,i)).then(function(t){var r=t[0],n=t[1],i=[],o=e.toUpperCase();return r.forEach(function(e){e.toUpperCase().includes(o)&&i.push(n[e])}),i})}catch(e){return Promise.reject(e)}},a=function(e,t,n){try{return Promise.resolve(r("/tools/interest_keyword/recommend/",{"Access-Token":t},{advertiser_id:n,keywords:'["'+e+'"]'}))}catch(e){return Promise.reject(e)}};function u(e,t,r){if(!e.s){if(r instanceof f){if(!r.s)return void(r.o=u.bind(null,e,t));1&t&&(t=r.s),r=r.v}if(r&&r.then)return void r.then(u.bind(null,e,t),u.bind(null,e,2));e.s=t,e.v=r;var n=e.o;n&&n(e)}}var f=function(){function e(){}return e.prototype.then=function(t,r){var n=new e,i=this.s;if(i){var o=1&i?t:r;if(o){try{u(n,1,o(this.v))}catch(e){u(n,2,e)}return n}return this}return this.o=function(e){try{var i=e.v;1&e.s?u(n,1,t?t(i):i):r?u(n,1,r(i)):u(n,2,i)}catch(e){u(n,2,e)}},n},e}();function d(e){return e instanceof f&&1&e.s}var h=function(e,t){try{var n=!0,i=1,o=[],s=function(e,t,r){for(var n;;){var i=e();if(d(i)&&(i=i.v),!i)return o;if(i.then){n=0;break}var o=r();if(o&&o.then){if(!d(o)){n=1;break}o=o.s}}var s=new f,c=u.bind(null,s,2);return(0===n?i.then(h):1===n?o.then(a):(void 0).then(function(){(i=e())?i.then?i.then(h).then(void 0,c):h(i):u(s,1,o)})).then(void 0,c),s;function a(t){o=t;do{if(!(i=e())||d(i)&&!i.v)return void u(s,1,o);if(i.then)return void i.then(h).then(void 0,c);d(o=r())&&(o=o.v)}while(!o||!o.then);o.then(a).then(void 0,c)}function h(e){e?(o=r())&&o.then?o.then(a).then(void 0,c):a(o):u(s,1,o)}}(function(){return!!n},0,function(){return Promise.resolve(r("/campaign/get/",{"Access-Token":e},{advertiser_id:t,page:i,page_size:1e3})).then(function(e){if(0!=e.code)throw new Error(e.message);o=o.concat(e.data.list),e.data.page_info.total_number>o.length?i++:n=!1})});return Promise.resolve(s&&s.then?s.then(function(e){return o}):o)}catch(e){return Promise.reject(e)}},l=function(e,t,n){try{var i={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[n]})};return Promise.resolve(r("/ad/get/",{"Access-Token":e},i)).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.page_info.total_number>0?e.data.list[0]:[]})}catch(e){return Promise.reject(e)}},_=function(e,t,n){try{var i={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[n]})};return Promise.resolve(r("/adgroup/get/",{"Access-Token":e},i)).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.page_info.total_number>0?e.data.list[0]:[]})}catch(e){return Promise.reject(e)}},p=function(e,t,n){try{var i={advertiser_id:t,page:1,page_size:1,filtering:JSON.stringify({campaign_ids:[n]})};return Promise.resolve(r("/campaign/get/",{"Access-Token":e},i)).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.page_info.total_number>0?e.data.list[0]:[]})}catch(e){return Promise.reject(e)}},v=function(e,t,n,i){try{return Promise.resolve(r("/file/video/suggestcover/",{"Access-Token":e},{advertiser_id:t,video_id:n,poster_number:i})).then(function(e){if(0!=e.code)throw new Error(e.message);return e.data.list})}catch(e){return Promise.reject(e)}},m=function(e,t,n,i){try{var o,s={advertiser_id:t,report_type:"BASIC",dimensions:'["campaign_id", "stat_time_day"]',data_level:"AUCTION_CAMPAIGN",start_date:i,end_date:i,filters:JSON.stringify([{field_name:"campaign_ids",filter_type:"IN",filter_value:"["+n+"]"}]),metrics:'["spend","cpc","cpm","impressions","clicks","ctr","reach","cost_per_1000_reached","conversion","cost_per_conversion","conversion_rate","real_time_conversion","real_time_cost_per_conversion","real_time_conversion_rate","result","cost_per_result","result_rate","real_time_result","real_time_cost_per_result","real_time_result_rate","secondary_goal_result","cost_per_secondary_goal_result","secondary_goal_result_rate","frequency"]'};return Promise.resolve(r("/reports/integrated/get/",{"Access-Token":e,"Content-Type":"application/json"},s)).then(function(e){if(0!=(o=e).code)throw new Error(o.message);return o.data.list.length>0?o.data.list[0].metrics:{}})}catch(e){return Promise.reject(e)}},g=function(e,t,r){try{var n;return Promise.resolve(i(e,"/file/video/ad/upload/",{advertiser_id:t,upload_type:"UPLOAD_BY_URL",video_url:r})).then(function(e){if(0!=(n=e).code)throw new Error(n.message);return n})}catch(e){return Promise.reject(e)}},P=function(e,t){try{return Promise.resolve(n("/app/external_action/",{"Access-Token":e},{advertiser_id:t,placement:["PLACEMENT_TIKTOK"],objective:"CONVERSIONS",optimizeGoal:"CONVERT"})).then(function(e){var t=JSON.parse(e);if(0!=t.code)throw new Error(t.message);return t})}catch(e){return Promise.reject(e)}},y=function(e,t){try{return Promise.resolve(n("/pixel/list/",{"Access-Token":e},{advertiser_id:t,page_size:20})).then(function(e){var t=JSON.parse(e);if(0!=t.code)throw new Error(t.message);var r=t.data.pixels;if(r.length>0){var n=e.split('pixel_id": ').map(function(e){return e.match(/[0-9]+/)[0]});n.shift(),r.forEach(function(e,t){e.pixel_id=n[t]});var i=e.split('event_id": ').map(function(e){return e.substring(0,e.indexOf(","))});i.shift();var o=0;return r.forEach(function(e){e.events.forEach(function(e){e.event_id=i[o],o++})}),r}return[]})}catch(e){return Promise.reject(e)}};return new function(){this.get=r,this.getText=n,this.post=i,this.getAccounts=o,this.getLongTermAccessToken=s,this.getRegions=c,this.getInterests=a,this.getCampaign=p,this.getAdGroup=_,this.getAd=l,this.getAllCampaigns=h,this.getThumbnails=v,this.getMetrics=m,this.uploadVideo=g,this.getPixels=y,this.getEvents=P}}); | ||
//# sourceMappingURL=tiktokads.umd.js.map |
{ | ||
"name": "tiktokads", | ||
"version": "1.0.17", | ||
"version": "1.0.18", | ||
"description": "Wrapper for the tiktok ads api.", | ||
@@ -5,0 +5,0 @@ "license": "MIT", |
@@ -9,3 +9,3 @@ import { get, getText, post } from './api' | ||
import { uploadVideo } from './videos' | ||
import { getPixels } from './pixels' | ||
import { getPixels, getEvents } from './pixels' | ||
@@ -28,2 +28,3 @@ class TiktokAdsClient { | ||
getPixels = getPixels; | ||
getEvents = getEvents; | ||
}; | ||
@@ -30,0 +31,0 @@ |
@@ -23,11 +23,24 @@ import { getText } from './api.js' | ||
if (pixels.length > 0) { | ||
const stringIds = resText.split('pixel_id": ').map(el => { | ||
return el.substring(0, el.indexOf(",")) | ||
const pixelIds = resText.split('pixel_id": ').map(el => { | ||
return el.match(/[0-9]+/)[0] | ||
}) | ||
stringIds.shift(); | ||
pixelIds.shift(); | ||
pixels.forEach((val, i: number) => { | ||
val.pixel_id = stringIds[i]; | ||
val.pixel_id = pixelIds[i]; | ||
}); | ||
const eventIds = resText.split('event_id": ').map(el => { | ||
return el.substring(0, el.indexOf(",")) | ||
}) | ||
eventIds.shift(); | ||
return res.data.pixels; | ||
let index = 0; | ||
pixels.forEach((pixel) => { | ||
pixel.events.forEach((event) => { | ||
event.event_id = eventIds[index]; | ||
index++; | ||
}); | ||
}); | ||
return pixels; | ||
} | ||
@@ -37,2 +50,25 @@ else { | ||
} | ||
} | ||
export async function getEvents(access_token: string, advertiser_id: string) { | ||
const data = { | ||
'advertiser_id': advertiser_id, | ||
'placement': ["PLACEMENT_TIKTOK"], | ||
'objective': "CONVERSIONS", | ||
'optimizeGoal': "CONVERT", | ||
} | ||
const resText = await getText( | ||
'/app/external_action/', | ||
{ 'Access-Token': access_token }, | ||
data | ||
) | ||
const res = JSON.parse(resText); | ||
if (res.code != 0) { | ||
throw new Error(res.message); | ||
} | ||
return res; | ||
} |
@@ -15,6 +15,7 @@ import tiktokAdsClient from './dist/tiktokads.modern.js' | ||
const advertiserId = "6933501230249459714"; | ||
const placement = ["PLACEMENT_TIKTOK"]; | ||
const objective = "CONVERSIONS"; | ||
const optimizeGoal = "CONVERT"; | ||
const campaignId = "1735089089327137"; | ||
@@ -25,3 +26,3 @@ const date = "2022-06-12"; | ||
res = await tiktokAdsClient.getPixels(refreshToken, advertiserId); | ||
console.log(res) | ||
console.log(JSON.stringify(res, null, 2)) | ||
@@ -28,0 +29,0 @@ |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
127185
569