@segment/action-destinations 3.200.1 → 3.200.2-staging.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/dist/destinations/engage/sendgrid/sendEmail/SendEmailPerformer.js +1 -0
  2. package/dist/destinations/engage/sendgrid/sendEmail/SendEmailPerformer.js.map +1 -1
  3. package/dist/destinations/engage/twilio/utils/PhoneMessageSender.js +3 -1
  4. package/dist/destinations/engage/twilio/utils/PhoneMessageSender.js.map +1 -1
  5. package/dist/destinations/engage/utils/MessageSendPerformer.d.ts +1 -0
  6. package/dist/destinations/engage/utils/MessageSendPerformer.js +16 -2
  7. package/dist/destinations/engage/utils/MessageSendPerformer.js.map +1 -1
  8. package/dist/destinations/segment/sendGroup/index.js +2 -1
  9. package/dist/destinations/segment/sendGroup/index.js.map +1 -1
  10. package/dist/destinations/segment/sendIdentify/index.js +2 -1
  11. package/dist/destinations/segment/sendIdentify/index.js.map +1 -1
  12. package/dist/destinations/segment/sendPage/index.js +2 -1
  13. package/dist/destinations/segment/sendPage/index.js.map +1 -1
  14. package/dist/destinations/segment/sendScreen/index.js +2 -1
  15. package/dist/destinations/segment/sendScreen/index.js.map +1 -1
  16. package/dist/destinations/segment/sendTrack/index.js +2 -1
  17. package/dist/destinations/segment/sendTrack/index.js.map +1 -1
  18. package/dist/destinations/segment-profiles/index.js +3 -1
  19. package/dist/destinations/segment-profiles/index.js.map +1 -1
  20. package/dist/destinations/segment-profiles/sendGroup/index.js +2 -1
  21. package/dist/destinations/segment-profiles/sendGroup/index.js.map +1 -1
  22. package/dist/destinations/segment-profiles/sendIdentify/index.js +2 -1
  23. package/dist/destinations/segment-profiles/sendIdentify/index.js.map +1 -1
  24. package/dist/destinations/segment-profiles/sendSubscriptions/generated-types.d.ts +18 -0
  25. package/dist/destinations/segment-profiles/sendSubscriptions/generated-types.js +3 -0
  26. package/dist/destinations/segment-profiles/sendSubscriptions/generated-types.js.map +1 -0
  27. package/dist/destinations/segment-profiles/sendSubscriptions/index.d.ts +5 -0
  28. package/dist/destinations/segment-profiles/sendSubscriptions/index.js +124 -0
  29. package/dist/destinations/segment-profiles/sendSubscriptions/index.js.map +1 -0
  30. package/dist/destinations/the-trade-desk-crm/awsClient.d.ts +1 -0
  31. package/dist/destinations/the-trade-desk-crm/awsClient.js +1 -0
  32. package/dist/destinations/the-trade-desk-crm/awsClient.js.map +1 -1
  33. package/dist/destinations/the-trade-desk-crm/functions.js +58 -1
  34. package/dist/destinations/the-trade-desk-crm/functions.js.map +1 -1
  35. package/dist/destinations/the-trade-desk-crm/generated-types.d.ts +0 -3
  36. package/dist/destinations/the-trade-desk-crm/index.d.ts +3 -29
  37. package/dist/destinations/the-trade-desk-crm/index.js +0 -62
  38. package/dist/destinations/the-trade-desk-crm/index.js.map +1 -1
  39. package/dist/destinations/the-trade-desk-crm/properties.d.ts +2 -1
  40. package/dist/destinations/the-trade-desk-crm/properties.js +12 -8
  41. package/dist/destinations/the-trade-desk-crm/properties.js.map +1 -1
  42. package/dist/destinations/the-trade-desk-crm/syncAudience/generated-types.d.ts +2 -1
  43. package/dist/destinations/the-trade-desk-crm/syncAudience/index.js +2 -1
  44. package/dist/destinations/the-trade-desk-crm/syncAudience/index.js.map +1 -1
  45. package/dist/destinations/tiktok-audiences/addToAudience/generated-types.d.ts +9 -0
  46. package/dist/destinations/tiktok-audiences/addToAudience/generated-types.js +3 -0
  47. package/dist/destinations/tiktok-audiences/addToAudience/generated-types.js.map +1 -0
  48. package/dist/destinations/tiktok-audiences/addToAudience/index.d.ts +5 -0
  49. package/dist/destinations/tiktok-audiences/addToAudience/index.js +33 -0
  50. package/dist/destinations/tiktok-audiences/addToAudience/index.js.map +1 -0
  51. package/dist/destinations/tiktok-audiences/addUser/index.js +10 -1
  52. package/dist/destinations/tiktok-audiences/addUser/index.js.map +1 -1
  53. package/dist/destinations/tiktok-audiences/createAudience/index.js +10 -1
  54. package/dist/destinations/tiktok-audiences/createAudience/index.js.map +1 -1
  55. package/dist/destinations/tiktok-audiences/functions.d.ts +6 -2
  56. package/dist/destinations/tiktok-audiences/functions.js +27 -5
  57. package/dist/destinations/tiktok-audiences/functions.js.map +1 -1
  58. package/dist/destinations/tiktok-audiences/generated-types.d.ts +1 -1
  59. package/dist/destinations/tiktok-audiences/index.js +6 -2
  60. package/dist/destinations/tiktok-audiences/index.js.map +1 -1
  61. package/dist/destinations/tiktok-audiences/properties.d.ts +1 -0
  62. package/dist/destinations/tiktok-audiences/properties.js +9 -1
  63. package/dist/destinations/tiktok-audiences/properties.js.map +1 -1
  64. package/dist/destinations/tiktok-audiences/removeFromAudience/generated-types.d.ts +9 -0
  65. package/dist/destinations/tiktok-audiences/removeFromAudience/generated-types.js +3 -0
  66. package/dist/destinations/tiktok-audiences/removeFromAudience/generated-types.js.map +1 -0
  67. package/dist/destinations/tiktok-audiences/removeFromAudience/index.d.ts +5 -0
  68. package/dist/destinations/tiktok-audiences/removeFromAudience/index.js +33 -0
  69. package/dist/destinations/tiktok-audiences/removeFromAudience/index.js.map +1 -0
  70. package/dist/destinations/tiktok-audiences/removeUser/index.js +10 -1
  71. package/dist/destinations/tiktok-audiences/removeUser/index.js.map +1 -1
  72. package/dist/destinations/webhook-audiences/index.js +13 -1
  73. package/dist/destinations/webhook-audiences/index.js.map +1 -1
  74. package/package.json +3 -3
@@ -12,7 +12,7 @@ async function processPayload(input) {
12
12
  if (input.payloads.length < TTD_MIN_RECORD_COUNT) {
13
13
  throw new actions_core_1.PayloadValidationError(`received payload count below The Trade Desk's ingestion limits. Expected: >=${TTD_MIN_RECORD_COUNT} actual: ${input.payloads.length}`);
14
14
  }
15
- const crmID = input.payloads[0].external_id;
15
+ const crmID = await getCRMInfo(input.request, input.settings, input.payloads[0]);
16
16
  const usersFormatted = extractUsers(input.payloads);
17
17
  if (input.features && input.features[exports.TTD_LEGACY_FLOW_FLAG_NAME]) {
18
18
  const dropEndpoint = await getCRMDataDropEndpoint(input.request, input.settings, input.payloads[0], crmID);
@@ -23,6 +23,7 @@ async function processPayload(input) {
23
23
  TDDAuthToken: input.settings.auth_token,
24
24
  AdvertiserId: input.settings.advertiser_id,
25
25
  CrmDataId: crmID,
26
+ SegmentName: input.payloads[0].name,
26
27
  UsersFormatted: usersFormatted,
27
28
  DropOptions: {
28
29
  PiiType: input.payloads[0].pii_type,
@@ -32,6 +33,62 @@ async function processPayload(input) {
32
33
  }
33
34
  }
34
35
  exports.processPayload = processPayload;
36
+ async function getAllDataSegments(request, settings) {
37
+ const allDataSegments = [];
38
+ let response = await request(`${BASE_URL}/crmdata/segment/${settings.advertiser_id}`, {
39
+ method: 'GET',
40
+ headers: {
41
+ 'Content-Type': 'application/json',
42
+ 'TTD-Auth': settings.auth_token
43
+ }
44
+ });
45
+ let segments = response.data.Segments;
46
+ let pagingToken = response.data.PagingToken;
47
+ while (segments.length > 0) {
48
+ allDataSegments.push(...segments);
49
+ response = await request(`${BASE_URL}/crmdata/segment/${settings.advertiser_id}?pagingToken=${pagingToken}`, {
50
+ method: 'GET',
51
+ headers: {
52
+ 'Content-Type': 'application/json',
53
+ 'TTD-Auth': settings.auth_token
54
+ }
55
+ });
56
+ segments = response.data.Segments;
57
+ pagingToken = response.data.PagingToken;
58
+ }
59
+ return allDataSegments;
60
+ }
61
+ async function getCRMInfo(request, settings, payload) {
62
+ let segmentId;
63
+ const segments = await getAllDataSegments(request, settings);
64
+ const segmentExists = segments.filter(function (segment) {
65
+ if (segment.SegmentName == payload.name) {
66
+ return segment;
67
+ }
68
+ });
69
+ if (segmentExists.length > 1) {
70
+ throw new actions_core_1.IntegrationError('Multiple audiences found with the same name', 'INVALID_SETTINGS', 400);
71
+ }
72
+ else if (segmentExists.length == 1) {
73
+ segmentId = segmentExists[0].CrmDataId;
74
+ }
75
+ else {
76
+ const response = await request(`${BASE_URL}/crmdata/segment`, {
77
+ method: 'POST',
78
+ headers: {
79
+ 'Content-Type': 'application/json',
80
+ 'TTD-Auth': settings.auth_token
81
+ },
82
+ json: {
83
+ AdvertiserId: settings.advertiser_id,
84
+ SegmentName: payload.name,
85
+ Region: payload.region
86
+ }
87
+ });
88
+ segmentId = response.data.CrmDataId;
89
+ }
90
+ return segmentId;
91
+ }
35
92
  function extractUsers(payloads) {
36
93
  let users = '';
37
94
  payloads.forEach((payload) => {
@@ -1 +1 @@
1
- {"version":3,"file":"functions.js","sourceRoot":"","sources":["../../../src/destinations/the-trade-desk-crm/functions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"functions.js","sourceRoot":"","sources":["../../../src/destinations/the-trade-desk-crm/functions.ts"],"names":[],"mappings":";;;AAAA,wDAAiH;AAGjH,mCAAmC;AAEnC,2CAA4C;AAsC5C,MAAM,WAAW,GAAG,IAAI,CAAA;AACxB,MAAM,QAAQ,GAAG,gCAAgC,WAAW,EAAE,CAAA;AAC9D,MAAM,oBAAoB,GAAG,IAAI,CAAA;AAEpB,QAAA,yBAAyB,GAAG,wCAAwC,CAAA;AAE1E,KAAK,UAAU,cAAc,CAAC,KAA0B;IAC7D,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,oBAAoB,EAAE;QAChD,MAAM,IAAI,qCAAsB,CAC9B,+EAA+E,oBAAoB,YAAY,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CACvI,CAAA;KACF;IACD,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;IAGhF,MAAM,cAAc,GAAG,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;IAGnD,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,iCAAyB,CAAC,EAAE;QAM/D,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;QAG1G,OAAO,2BAA2B,CAAC,KAAK,CAAC,OAAO,EAAE,YAAY,EAAE,cAAc,CAAC,CAAA;KAChF;SAAM;QAML,OAAO,0BAAc,CAAC,KAAK,CAAC,OAAO,EAAE;YACnC,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,UAAU;YACvC,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,aAAa;YAC1C,SAAS,EAAE,KAAK;YAChB,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI;YACnC,cAAc,EAAE,cAAc;YAC9B,WAAW,EAAE;gBACX,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ;gBACnC,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,SAAS;aACrD;SACF,CAAC,CAAA;KACH;AACH,CAAC;AAxCD,wCAwCC;AAED,KAAK,UAAU,kBAAkB,CAAC,OAAsB,EAAE,QAAkB;IAC1E,MAAM,eAAe,GAAe,EAAE,CAAA;IAEtC,IAAI,QAAQ,GAA4C,MAAM,OAAO,CACnE,GAAG,QAAQ,oBAAoB,QAAQ,CAAC,aAAa,EAAE,EACvD;QACE,MAAM,EAAE,KAAK;QACb,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,UAAU,EAAE,QAAQ,CAAC,UAAU;SAChC;KACF,CACF,CAAA;IACD,IAAI,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAA;IAErC,IAAI,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAA;IAE3C,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;QAC1B,eAAe,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAA;QACjC,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,QAAQ,oBAAoB,QAAQ,CAAC,aAAa,gBAAgB,WAAW,EAAE,EAAE;YAC3G,MAAM,EAAE,KAAK;YACb,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,UAAU,EAAE,QAAQ,CAAC,UAAU;aAChC;SACF,CAAC,CAAA;QAEF,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAA;QACjC,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAA;KACxC;IACD,OAAO,eAAe,CAAA;AACxB,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,OAAsB,EAAE,QAAkB,EAAE,OAAgB;IACpF,IAAI,SAAiB,CAAA;IACrB,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IAC5D,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,UAAU,OAAO;QACrD,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,IAAI,EAAE;YACvC,OAAO,OAAO,CAAA;SACf;IACH,CAAC,CAAC,CAAA;IAGF,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;QAC5B,MAAM,IAAI,+BAAgB,CAAC,6CAA6C,EAAE,kBAAkB,EAAE,GAAG,CAAC,CAAA;KACnG;SAAM,IAAI,aAAa,CAAC,MAAM,IAAI,CAAC,EAAE;QACpC,SAAS,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;KACvC;SAAM;QAGL,MAAM,QAAQ,GAA0C,MAAM,OAAO,CAAC,GAAG,QAAQ,kBAAkB,EAAE;YACnG,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,UAAU,EAAE,QAAQ,CAAC,UAAU;aAChC;YACD,IAAI,EAAE;gBACJ,YAAY,EAAE,QAAQ,CAAC,aAAa;gBACpC,WAAW,EAAE,OAAO,CAAC,IAAI;gBACzB,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB;SACF,CAAC,CAAA;QACF,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAA;KACpC;IAED,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,SAAS,YAAY,CAAC,QAAmB;IACvC,IAAI,KAAK,GAAG,EAAE,CAAA;IACd,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAgB,EAAE,EAAE;QACpC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;YAClB,OAAM;SACP;QAED,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,EAAE;YAC/B,KAAK,IAAI,GAAG,OAAO,CAAC,KAAK,IAAI,CAAA;SAC9B;QAED,IAAI,OAAO,CAAC,QAAQ,IAAI,uBAAuB,EAAE;YAC/C,MAAM,eAAe,GAAG,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;YACrD,MAAM,WAAW,GAAG,YAAI,CAAC,eAAe,CAAC,CAAA;YACzC,KAAK,IAAI,GAAG,WAAW,IAAI,CAAA;SAC5B;IACH,CAAC,CAAC,CAAA;IACF,OAAO,KAAK,CAAA;AACd,CAAC;AAGD,SAAS,cAAc,CAAC,KAAa;IAEnC,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IAElC,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;QAChC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QACjC,IAAI,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;QAEzC,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QACtC,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE;YACnB,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;SAC3C;QAED,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QAEtC,KAAK,GAAG,QAAQ,GAAG,YAAY,CAAA;KAChC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAEM,MAAM,IAAI,GAAG,CAAC,KAAa,EAAU,EAAE;IAC5C,MAAM,IAAI,GAAG,mBAAU,CAAC,QAAQ,CAAC,CAAA;IACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAClB,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;AAC9B,CAAC,CAAA;AAJY,QAAA,IAAI,QAIhB;AAGD,KAAK,UAAU,sBAAsB,CAAC,OAAsB,EAAE,QAAkB,EAAE,OAAgB,EAAE,KAAa;IAC/G,MAAM,QAAQ,GAAiD,MAAM,OAAO,CAC1E,GAAG,QAAQ,oBAAoB,QAAQ,CAAC,aAAa,IAAI,KAAK,EAAE,EAChE;QACE,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,UAAU,EAAE,QAAQ,CAAC,UAAU;SAChC;QACD,IAAI,EAAE;YACJ,OAAO,EAAE,OAAO,CAAC,QAAQ;YACzB,SAAS,EAAE,OAAO,CAAC,UAAU,IAAI,SAAS;SAC3C;KACF,CACF,CAAA;IAED,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAA;AAC1B,CAAC;AAGD,KAAK,UAAU,2BAA2B,CAAC,OAAsB,EAAE,QAAgB,EAAE,KAAa;IAChG,OAAO,MAAM,OAAO,CAAC,QAAQ,EAAE;QAC7B,MAAM,EAAE,KAAK;QACb,OAAO,EAAE;YACP,cAAc,EAAE,YAAY;SAC7B;QACD,IAAI,EAAE,KAAK;KACZ,CAAC,CAAA;AACJ,CAAC"}
@@ -4,6 +4,3 @@ export interface Settings {
4
4
  __segment_internal_engage_force_full_sync: boolean;
5
5
  __segment_internal_engage_batch_sync: boolean;
6
6
  }
7
- export interface AudienceSettings {
8
- region?: string;
9
- }
@@ -1,30 +1,4 @@
1
- import type { AudienceDestinationDefinition } from '@segment/actions-core';
2
- import type { Settings, AudienceSettings } from './generated-types';
3
- export interface CREATE_API_RESPONSE {
4
- CrmDataId: string;
5
- FirstPartyDataId: number;
6
- }
7
- export interface GET_API_RESPONSE {
8
- AdvertiserId: string;
9
- CrmDataId: string;
10
- SegmentName: number;
11
- }
12
- export interface Segments {
13
- CrmDataId: string;
14
- SegmentName: string;
15
- Region: string;
16
- FirstPartyDataId: number;
17
- }
18
- export interface GET_CRMS_API_RESPONSE {
19
- Segments: [
20
- {
21
- CrmDataId: string;
22
- SegmentName: string;
23
- Region: string;
24
- FirstPartyDataId: number;
25
- }
26
- ];
27
- PagingToken: string;
28
- }
29
- declare const destination: AudienceDestinationDefinition<Settings, AudienceSettings>;
1
+ import type { DestinationDefinition } from '@segment/actions-core';
2
+ import type { Settings } from './generated-types';
3
+ declare const destination: DestinationDefinition<Settings>;
30
4
  export default destination;
@@ -3,10 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- const actions_core_1 = require("@segment/actions-core");
7
6
  const syncAudience_1 = __importDefault(require("./syncAudience"));
8
- const API_VERSION = 'v3';
9
- const BASE_URL = `https://api.thetradedesk.com/${API_VERSION}`;
10
7
  const destination = {
11
8
  name: 'The Trade Desk Crm',
12
9
  slug: 'actions-the-trade-desk-crm',
@@ -42,65 +39,6 @@ const destination = {
42
39
  }
43
40
  }
44
41
  },
45
- audienceFields: {
46
- region: {
47
- type: 'string',
48
- label: 'Region',
49
- description: 'Region of your audience.'
50
- }
51
- },
52
- audienceConfig: {
53
- mode: {
54
- type: 'synced',
55
- full_audience_sync: false
56
- },
57
- async createAudience(request, createAudienceInput) {
58
- const audienceName = createAudienceInput.audienceName;
59
- const advertiserId = createAudienceInput.settings.advertiser_id;
60
- const authToken = createAudienceInput.settings.auth_token;
61
- const region = createAudienceInput.audienceSettings?.region;
62
- if (audienceName?.length == 0) {
63
- throw new actions_core_1.IntegrationError('Missing audience name value', 'MISSING_REQUIRED_FIELD', 400);
64
- }
65
- const response = await request(`${BASE_URL}/crmdata/segment`, {
66
- method: 'POST',
67
- headers: {
68
- 'Content-Type': 'application/json',
69
- 'TTD-Auth': authToken
70
- },
71
- json: {
72
- AdvertiserId: advertiserId,
73
- SegmentName: audienceName,
74
- Region: region
75
- }
76
- });
77
- return {
78
- externalId: response.data.CrmDataId
79
- };
80
- },
81
- async getAudience(request, getAudienceInput) {
82
- const crmDataId = getAudienceInput.externalId;
83
- const advertiserId = getAudienceInput.settings.advertiser_id;
84
- const authToken = getAudienceInput.settings.auth_token;
85
- const response = await request(`${BASE_URL}/crmdata/segment/${advertiserId}/${crmDataId}`, {
86
- method: 'GET',
87
- headers: {
88
- 'Content-Type': 'application/json',
89
- 'TTD-Auth': authToken
90
- }
91
- });
92
- if (response.status !== 200) {
93
- throw new actions_core_1.IntegrationError('Invalid response from get audience request', 'INVALID_RESPONSE', 400);
94
- }
95
- const externalId = response.data.CrmDataId;
96
- if (externalId !== getAudienceInput.externalId) {
97
- throw new actions_core_1.IntegrationError("Unable to verify ownership over audience. Segment Audience ID doesn't match The Trade Desk's Audience ID.", 'INVALID_REQUEST_DATA', 400);
98
- }
99
- return {
100
- externalId: externalId
101
- };
102
- }
103
- },
104
42
  actions: {
105
43
  syncAudience: syncAudience_1.default
106
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/the-trade-desk-crm/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/the-trade-desk-crm/index.ts"],"names":[],"mappings":";;;;;AAGA,kEAAyC;AAEzC,MAAM,WAAW,GAAoC;IACnD,IAAI,EAAE,oBAAoB;IAC1B,IAAI,EAAE,4BAA4B;IAClC,IAAI,EAAE,OAAO;IAEb,cAAc,EAAE;QACd,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE;YACN,UAAU,EAAE;gBACV,KAAK,EAAE,sBAAsB;gBAC7B,WAAW,EACT,yRAAyR;gBAC3R,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;aACf;YACD,aAAa,EAAE;gBACb,KAAK,EAAE,eAAe;gBACtB,WAAW,EACT,uGAAuG;gBACzG,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;aACf;YACD,yCAAyC,EAAE;gBACzC,KAAK,EAAE,iBAAiB;gBACxB,WAAW,EAAE,iBAAiB;gBAC9B,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;gBACd,OAAO,EAAE,IAAI;aACd;YACD,oCAAoC,EAAE;gBACpC,KAAK,EAAE,6BAA6B;gBACpC,WAAW,EAAE,6BAA6B;gBAC1C,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI;gBACd,OAAO,EAAE,IAAI;aACd;SACF;KACF;IACD,OAAO,EAAE;QACP,YAAY,EAAZ,sBAAY;KACb;CACF,CAAA;AAED,kBAAe,WAAW,CAAA"}
@@ -1,5 +1,6 @@
1
1
  import { InputField } from '@segment/actions-core/destination-kit/types';
2
- export declare const external_id: InputField;
2
+ export declare const name: InputField;
3
+ export declare const region: InputField;
3
4
  export declare const pii_type: InputField;
4
5
  export declare const email: InputField;
5
6
  export declare const event_name: InputField;
@@ -1,14 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.merge_mode = exports.batch_size = exports.enable_batching = exports.event_name = exports.email = exports.pii_type = exports.external_id = void 0;
4
- exports.external_id = {
5
- label: 'External Audience ID',
6
- description: 'The CRM Data ID for The Trade Desk Segment. ',
7
- type: 'hidden',
3
+ exports.merge_mode = exports.batch_size = exports.enable_batching = exports.event_name = exports.email = exports.pii_type = exports.region = exports.name = void 0;
4
+ exports.name = {
5
+ label: 'Segment Name',
6
+ description: 'The name of The Trade Desk CRM Data Segment you want to sync. If the audience name does not exist Segment will create one.',
7
+ type: 'string',
8
+ required: true
9
+ };
10
+ exports.region = {
11
+ label: 'Region',
12
+ description: 'The geographical region of the CRM data segment based on the origin of PII.',
13
+ type: 'string',
8
14
  required: true,
9
- default: {
10
- '@path': '$.context.personas.external_audience_id'
11
- }
15
+ default: 'US'
12
16
  };
13
17
  exports.pii_type = {
14
18
  label: 'PII Type',
@@ -1 +1 @@
1
- {"version":3,"file":"properties.js","sourceRoot":"","sources":["../../../src/destinations/the-trade-desk-crm/properties.ts"],"names":[],"mappings":";;;AAEa,QAAA,WAAW,GAAe;IACrC,KAAK,EAAE,sBAAsB;IAC7B,WAAW,EAAE,8CAA8C;IAC3D,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE;QACP,OAAO,EAAE,yCAAyC;KACnD;CACF,CAAA;AAEY,QAAA,QAAQ,GAAe;IAClC,KAAK,EAAE,UAAU;IACjB,WAAW,EAAE,wEAAwE;IACrF,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;QAClC,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,uBAAuB,EAAE;KAC1D;IACD,QAAQ,EAAE,IAAI;CACf,CAAA;AAEY,QAAA,KAAK,GAAe;IAC/B,KAAK,EAAE,YAAY;IACnB,WAAW,EAAE,qDAAqD;IAClE,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,wBAAwB;KAClC;CACF,CAAA;AAEY,QAAA,UAAU,GAAe;IACpC,KAAK,EAAE,YAAY;IACnB,WAAW,EAAE,wCAAwC;IACrD,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,SAAS;KACnB;CACF,CAAA;AAEY,QAAA,eAAe,GAAe;IACzC,KAAK,EAAE,iBAAiB;IACxB,WAAW,EAAE,4DAA4D;IACzE,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,IAAI;CACd,CAAA;AAEY,QAAA,UAAU,GAAe;IACpC,KAAK,EAAE,YAAY;IACnB,WAAW,EAAE,qFAAqF;IAClG,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,MAAM;CAChB,CAAA;AAEY,QAAA,UAAU,GAAe;IACpC,KAAK,EAAE,YAAY;IACnB,WAAW,EAAE,wEAAwE;IACrF,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP;YACE,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,KAAK;SACb;QACD;YACE,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,SAAS;SACjB;KACF;IACD,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,KAAK;CAChB,CAAA"}
1
+ {"version":3,"file":"properties.js","sourceRoot":"","sources":["../../../src/destinations/the-trade-desk-crm/properties.ts"],"names":[],"mappings":";;;AAEa,QAAA,IAAI,GAAe;IAC9B,KAAK,EAAE,cAAc;IACrB,WAAW,EACT,4HAA4H;IAC9H,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,IAAI;CACf,CAAA;AAEY,QAAA,MAAM,GAAe;IAChC,KAAK,EAAE,QAAQ;IACf,WAAW,EAAE,6EAA6E;IAC1F,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE,IAAI;CACd,CAAA;AAEY,QAAA,QAAQ,GAAe;IAClC,KAAK,EAAE,UAAU;IACjB,WAAW,EAAE,wEAAwE;IACrF,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;QAClC,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,uBAAuB,EAAE;KAC1D;IACD,QAAQ,EAAE,IAAI;CACf,CAAA;AAEY,QAAA,KAAK,GAAe;IAC/B,KAAK,EAAE,YAAY;IACnB,WAAW,EAAE,qDAAqD;IAClE,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,wBAAwB;KAClC;CACF,CAAA;AAEY,QAAA,UAAU,GAAe;IACpC,KAAK,EAAE,YAAY;IACnB,WAAW,EAAE,wCAAwC;IACrD,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,SAAS;KACnB;CACF,CAAA;AAEY,QAAA,eAAe,GAAe;IACzC,KAAK,EAAE,iBAAiB;IACxB,WAAW,EAAE,4DAA4D;IACzE,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,IAAI;CACd,CAAA;AAEY,QAAA,UAAU,GAAe;IACpC,KAAK,EAAE,YAAY;IACnB,WAAW,EAAE,qFAAqF;IAClG,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,MAAM;CAChB,CAAA;AAEY,QAAA,UAAU,GAAe;IACpC,KAAK,EAAE,YAAY;IACnB,WAAW,EAAE,wEAAwE;IACrF,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP;YACE,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,KAAK;SACb;QACD;YACE,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,SAAS;SACjB;KACF;IACD,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,KAAK;CAChB,CAAA"}
@@ -1,5 +1,6 @@
1
1
  export interface Payload {
2
- external_id: string;
2
+ name: string;
3
+ region: string;
3
4
  pii_type: string;
4
5
  email?: string;
5
6
  merge_mode?: string;
@@ -7,7 +7,8 @@ const action = {
7
7
  description: 'Drop users into the given CRM Data Segment',
8
8
  defaultSubscription: 'event = "Audience Entered"',
9
9
  fields: {
10
- external_id: { ...properties_1.external_id },
10
+ name: { ...properties_1.name },
11
+ region: { ...properties_1.region },
11
12
  pii_type: { ...properties_1.pii_type },
12
13
  email: { ...properties_1.email },
13
14
  merge_mode: { ...properties_1.merge_mode },
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/the-trade-desk-crm/syncAudience/index.ts"],"names":[],"mappings":";;AAGA,8CAAiH;AACjH,4CAA6C;AAE7C,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,mCAAmC;IAC1C,WAAW,EAAE,4CAA4C;IACzD,mBAAmB,EAAE,4BAA4B;IACjD,MAAM,EAAE;QACN,WAAW,EAAE,EAAE,GAAG,wBAAW,EAAE;QAC/B,QAAQ,EAAE,EAAE,GAAG,qBAAQ,EAAE;QACzB,KAAK,EAAE,EAAE,GAAG,kBAAK,EAAE;QACnB,UAAU,EAAE,EAAE,GAAG,uBAAU,EAAE;QAC7B,eAAe,EAAE,EAAE,GAAG,4BAAe,EAAE;QACvC,UAAU,EAAE,EAAE,GAAG,uBAAU,EAAE;QAC7B,UAAU,EAAE,EAAE,GAAG,uBAAU,EAAE;KAC9B;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC1D,OAAO,0BAAc,CAAC;YACpB,OAAO;YACP,QAAQ;YACR,QAAQ,EAAE,CAAC,OAAO,CAAC;YACnB,QAAQ;SACT,CAAC,CAAA;IACJ,CAAC;IACD,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC/D,OAAO,0BAAc,CAAC;YACpB,OAAO;YACP,QAAQ;YACR,QAAQ,EAAE,OAAO;YACjB,QAAQ;SACT,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/the-trade-desk-crm/syncAudience/index.ts"],"names":[],"mappings":";;AAGA,8CAAkH;AAClH,4CAA6C;AAE7C,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,mCAAmC;IAC1C,WAAW,EAAE,4CAA4C;IACzD,mBAAmB,EAAE,4BAA4B;IACjD,MAAM,EAAE;QACN,IAAI,EAAE,EAAE,GAAG,iBAAI,EAAE;QACjB,MAAM,EAAE,EAAE,GAAG,mBAAM,EAAE;QACrB,QAAQ,EAAE,EAAE,GAAG,qBAAQ,EAAE;QACzB,KAAK,EAAE,EAAE,GAAG,kBAAK,EAAE;QACnB,UAAU,EAAE,EAAE,GAAG,uBAAU,EAAE;QAC7B,eAAe,EAAE,EAAE,GAAG,4BAAe,EAAE;QACvC,UAAU,EAAE,EAAE,GAAG,uBAAU,EAAE;QAC7B,UAAU,EAAE,EAAE,GAAG,uBAAU,EAAE;KAC9B;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC1D,OAAO,0BAAc,CAAC;YACpB,OAAO;YACP,QAAQ;YACR,QAAQ,EAAE,CAAC,OAAO,CAAC;YACnB,QAAQ;SACT,CAAC,CAAA;IACJ,CAAC;IACD,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC/D,OAAO,0BAAc,CAAC;YACpB,OAAO;YACP,QAAQ;YACR,QAAQ,EAAE,OAAO;YACjB,QAAQ;SACT,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -0,0 +1,9 @@
1
+ export interface Payload {
2
+ email?: string;
3
+ advertising_id?: string;
4
+ send_email?: boolean;
5
+ send_advertising_id?: boolean;
6
+ event_name?: string;
7
+ enable_batching?: boolean;
8
+ external_audience_id?: string;
9
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=generated-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../../src/destinations/tiktok-audiences/addToAudience/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ import type { ActionDefinition } from '@segment/actions-core';
2
+ import type { Settings, AudienceSettings } from '../generated-types';
3
+ import type { Payload } from './generated-types';
4
+ declare const action: ActionDefinition<Settings, Payload, AudienceSettings>;
5
+ export default action;
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const functions_1 = require("../functions");
4
+ const properties_1 = require("../properties");
5
+ const actions_core_1 = require("@segment/actions-core");
6
+ const action = {
7
+ title: 'Add to Audience',
8
+ description: 'Add records from an Engage Audience to a TikTok Audience Segment.',
9
+ defaultSubscription: 'event = "Audience Entered"',
10
+ fields: {
11
+ email: { ...properties_1.email },
12
+ advertising_id: { ...properties_1.advertising_id },
13
+ send_email: { ...properties_1.send_email },
14
+ send_advertising_id: { ...properties_1.send_advertising_id },
15
+ event_name: { ...properties_1.event_name },
16
+ enable_batching: { ...properties_1.enable_batching },
17
+ external_audience_id: { ...properties_1.external_audience_id }
18
+ },
19
+ perform: async (request, { audienceSettings, payload }) => {
20
+ if (!audienceSettings) {
21
+ throw new actions_core_1.IntegrationError('Bad Request: no audienceSettings found.', 'INVALID_REQUEST_DATA', 400);
22
+ }
23
+ return functions_1.processPayload(request, audienceSettings, [payload], 'add');
24
+ },
25
+ performBatch: async (request, { payload, audienceSettings }) => {
26
+ if (!audienceSettings) {
27
+ throw new actions_core_1.IntegrationError('Bad Request: no audienceSettings found.', 'INVALID_REQUEST_DATA', 400);
28
+ }
29
+ return functions_1.processPayload(request, audienceSettings, payload, 'add');
30
+ }
31
+ };
32
+ exports.default = action;
33
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/tiktok-audiences/addToAudience/index.ts"],"names":[],"mappings":";;AAGA,4CAA6C;AAC7C,8CAQsB;AACtB,wDAAwD;AAExD,MAAM,MAAM,GAA0D;IACpE,KAAK,EAAE,iBAAiB;IACxB,WAAW,EAAE,mEAAmE;IAChF,mBAAmB,EAAE,4BAA4B;IACjD,MAAM,EAAE;QACN,KAAK,EAAE,EAAE,GAAG,kBAAK,EAAE;QACnB,cAAc,EAAE,EAAE,GAAG,2BAAc,EAAE;QACrC,UAAU,EAAE,EAAE,GAAG,uBAAU,EAAE;QAC7B,mBAAmB,EAAE,EAAE,GAAG,gCAAmB,EAAE;QAC/C,UAAU,EAAE,EAAE,GAAG,uBAAU,EAAE;QAC7B,eAAe,EAAE,EAAE,GAAG,4BAAe,EAAE;QACvC,oBAAoB,EAAE,EAAE,GAAG,iCAAoB,EAAE;KAClD;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE,EAAE;QACxD,IAAI,CAAC,gBAAgB,EAAE;YACrB,MAAM,IAAI,+BAAgB,CAAC,yCAAyC,EAAE,sBAAsB,EAAE,GAAG,CAAC,CAAA;SACnG;QAED,OAAO,0BAAc,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAA;IACpE,CAAC;IACD,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE,EAAE;QAC7D,IAAI,CAAC,gBAAgB,EAAE;YACrB,MAAM,IAAI,+BAAgB,CAAC,yCAAyC,EAAE,sBAAsB,EAAE,GAAG,CAAC,CAAA;SACnG;QACD,OAAO,0BAAc,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IAClE,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -21,7 +21,16 @@ const action = {
21
21
  selected_advertiser_id: async (request, { settings }) => {
22
22
  try {
23
23
  const tiktok = new api_1.TikTokAudiences(request);
24
- return tiktok.fetchAdvertisers(settings.advertiser_ids);
24
+ if (settings.advertiser_ids) {
25
+ return tiktok.fetchAdvertisers(settings.advertiser_ids);
26
+ }
27
+ return {
28
+ choices: [],
29
+ error: {
30
+ message: JSON.stringify('BAD REQUEST - expected settings.advertiser_ids and got nothing!'),
31
+ code: '400'
32
+ }
33
+ };
25
34
  }
26
35
  catch (err) {
27
36
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/tiktok-audiences/addUser/index.ts"],"names":[],"mappings":";;AAGA,4CAA6C;AAC7C,8CASsB;AACtB,gCAAwC;AAExC,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,WAAW;IAClB,WAAW,EAAE,oEAAoE;IACjF,mBAAmB,EAAE,4BAA4B;IACjD,MAAM,EAAE;QACN,sBAAsB,EAAE,EAAE,GAAG,mCAAsB,EAAE;QACrD,WAAW,EAAE,EAAE,GAAG,wBAAW,EAAE;QAC/B,KAAK,EAAE,EAAE,GAAG,kBAAK,EAAE;QACnB,cAAc,EAAE,EAAE,GAAG,2BAAc,EAAE;QACrC,UAAU,EAAE,EAAE,GAAG,uBAAU,EAAE;QAC7B,mBAAmB,EAAE,EAAE,GAAG,gCAAmB,EAAE;QAC/C,UAAU,EAAE,EAAE,GAAG,uBAAU,EAAE;QAC7B,eAAe,EAAE,EAAE,GAAG,4BAAe,EAAE;KACxC;IACD,aAAa,EAAE;QACb,sBAAsB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;YACtD,IAAI;gBACF,MAAM,MAAM,GAAG,IAAI,qBAAe,CAAC,OAAO,CAAC,CAAA;gBAE3C,OAAO,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA;aACxD;YAAC,OAAO,GAAG,EAAE;gBACZ,OAAO;oBACL,OAAO,EAAE,EAAE;oBACX,KAAK,EAAE;wBACL,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;wBAC5B,IAAI,EAAE,KAAK;qBACZ;iBACF,CAAA;aACF;QACH,CAAC;QACD,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;YAC1C,IAAI;gBACF,MAAM,MAAM,GAAG,IAAI,qBAAe,CAAC,OAAO,CAAC,CAAA;gBAE3C,OAAO,MAAM,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAA;aACnE;YAAC,OAAO,GAAG,EAAE;gBACZ,OAAO;oBACL,OAAO,EAAE,EAAE;oBACX,KAAK,EAAE;wBACL,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;wBAC5B,IAAI,EAAE,KAAK;qBACZ;iBACF,CAAA;aACF;QACH,CAAC;KACF;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;QAChD,OAAO,0BAAc,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAA;IAC5D,CAAC;IACD,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;QACrD,OAAO,0BAAc,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IAC1D,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/tiktok-audiences/addUser/index.ts"],"names":[],"mappings":";;AAGA,4CAA6C;AAC7C,8CASsB;AACtB,gCAAwC;AAMxC,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,WAAW;IAClB,WAAW,EAAE,oEAAoE;IACjF,mBAAmB,EAAE,4BAA4B;IACjD,MAAM,EAAE;QACN,sBAAsB,EAAE,EAAE,GAAG,mCAAsB,EAAE;QACrD,WAAW,EAAE,EAAE,GAAG,wBAAW,EAAE;QAC/B,KAAK,EAAE,EAAE,GAAG,kBAAK,EAAE;QACnB,cAAc,EAAE,EAAE,GAAG,2BAAc,EAAE;QACrC,UAAU,EAAE,EAAE,GAAG,uBAAU,EAAE;QAC7B,mBAAmB,EAAE,EAAE,GAAG,gCAAmB,EAAE;QAC/C,UAAU,EAAE,EAAE,GAAG,uBAAU,EAAE;QAC7B,eAAe,EAAE,EAAE,GAAG,4BAAe,EAAE;KACxC;IACD,aAAa,EAAE;QACb,sBAAsB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;YACtD,IAAI;gBACF,MAAM,MAAM,GAAG,IAAI,qBAAe,CAAC,OAAO,CAAC,CAAA;gBAE3C,IAAI,QAAQ,CAAC,cAAc,EAAE;oBAC3B,OAAO,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA;iBACxD;gBAED,OAAO;oBACL,OAAO,EAAE,EAAE;oBACX,KAAK,EAAE;wBACL,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,iEAAiE,CAAC;wBAC1F,IAAI,EAAE,KAAK;qBACZ;iBACF,CAAA;aACF;YAAC,OAAO,GAAG,EAAE;gBACZ,OAAO;oBACL,OAAO,EAAE,EAAE;oBACX,KAAK,EAAE;wBACL,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;wBAC5B,IAAI,EAAE,KAAK;qBACZ;iBACF,CAAA;aACF;QACH,CAAC;QACD,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;YAC1C,IAAI;gBACF,MAAM,MAAM,GAAG,IAAI,qBAAe,CAAC,OAAO,CAAC,CAAA;gBAE3C,OAAO,MAAM,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAA;aACnE;YAAC,OAAO,GAAG,EAAE;gBACZ,OAAO;oBACL,OAAO,EAAE,EAAE;oBACX,KAAK,EAAE;wBACL,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;wBAC5B,IAAI,EAAE,KAAK;qBACZ;iBACF,CAAA;aACF;QACH,CAAC;KACF;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;QAChD,OAAO,0BAAc,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAA;IAC5D,CAAC;IACD,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;QACrD,OAAO,0BAAc,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IAC1D,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -16,7 +16,16 @@ const action = {
16
16
  selected_advertiser_id: async (request, { settings }) => {
17
17
  try {
18
18
  const tiktok = new api_1.TikTokAudiences(request);
19
- return tiktok.fetchAdvertisers(settings.advertiser_ids);
19
+ if (settings.advertiser_ids) {
20
+ return tiktok.fetchAdvertisers(settings.advertiser_ids);
21
+ }
22
+ return {
23
+ choices: [],
24
+ error: {
25
+ message: JSON.stringify('BAD REQUEST - expected settings.advertiser_ids and got nothing!'),
26
+ code: '400'
27
+ }
28
+ };
20
29
  }
21
30
  catch (err) {
22
31
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/tiktok-audiences/createAudience/index.ts"],"names":[],"mappings":";;AAGA,4CAA6C;AAC7C,8CAAqF;AACrF,gCAAwC;AAMxC,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,iBAAiB;IACxB,WAAW,EAAE,oDAAoD;IACjE,mBAAmB,EAAE,2BAA2B;IAChD,MAAM,EAAE;QACN,sBAAsB,EAAE,EAAE,GAAG,mCAAsB,EAAE;QACrD,oBAAoB,EAAE,EAAE,GAAG,iCAAoB,EAAE;QACjD,OAAO,EAAE,EAAE,GAAG,oBAAO,EAAE;KACxB;IACD,aAAa,EAAE;QACb,sBAAsB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;YACtD,IAAI;gBACF,MAAM,MAAM,GAAG,IAAI,qBAAe,CAAC,OAAO,CAAC,CAAA;gBAE3C,OAAO,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA;aACxD;YAAC,OAAO,GAAG,EAAE;gBACZ,OAAO;oBACL,OAAO,EAAE,EAAE;oBACX,KAAK,EAAE;wBACL,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;wBAC5B,IAAI,EAAE,KAAK;qBACZ;iBACF,CAAA;aACF;QACH,CAAC;KACF;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE;QACpD,YAAY,EAAE,WAAW,EAAE,IAAI,CAAC,gDAAgD,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAA;QACxG,OAAO,0BAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IACzC,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/tiktok-audiences/createAudience/index.ts"],"names":[],"mappings":";;AAGA,4CAA6C;AAC7C,8CAAqF;AACrF,gCAAwC;AAMxC,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,iBAAiB;IACxB,WAAW,EAAE,oDAAoD;IACjE,mBAAmB,EAAE,2BAA2B;IAChD,MAAM,EAAE;QACN,sBAAsB,EAAE,EAAE,GAAG,mCAAsB,EAAE;QACrD,oBAAoB,EAAE,EAAE,GAAG,iCAAoB,EAAE;QACjD,OAAO,EAAE,EAAE,GAAG,oBAAO,EAAE;KACxB;IACD,aAAa,EAAE;QACb,sBAAsB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;YACtD,IAAI;gBACF,MAAM,MAAM,GAAG,IAAI,qBAAe,CAAC,OAAO,CAAC,CAAA;gBAE3C,IAAI,QAAQ,CAAC,cAAc,EAAE;oBAC3B,OAAO,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA;iBACxD;gBAED,OAAO;oBACL,OAAO,EAAE,EAAE;oBACX,KAAK,EAAE;wBACL,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,iEAAiE,CAAC;wBAC1F,IAAI,EAAE,KAAK;qBACZ;iBACF,CAAA;aACF;YAAC,OAAO,GAAG,EAAE;gBACZ,OAAO;oBACL,OAAO,EAAE,EAAE;oBACX,KAAK,EAAE;wBACL,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;wBAC5B,IAAI,EAAE,KAAK;qBACZ;iBACF,CAAA;aACF;QACH,CAAC;KACF;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE;QACpD,YAAY,EAAE,WAAW,EAAE,IAAI,CAAC,gDAAgD,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAA;QACxG,OAAO,0BAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IACzC,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -1,11 +1,15 @@
1
1
  import { RequestClient, ModifiedResponse } from '@segment/actions-core';
2
2
  import { Payload as AddUserPayload } from './addUser/generated-types';
3
+ import { Payload as AddToAudiencePayload } from './addToAudience/generated-types';
3
4
  import { Payload as RemoveUserPayload } from './removeUser/generated-types';
4
5
  import { Payload as CreateAudiencePayload } from './createAudience/generated-types';
5
6
  import { Settings } from './generated-types';
6
7
  import { CreateAudienceAPIResponse } from './types';
7
- declare type GenericPayload = AddUserPayload | RemoveUserPayload;
8
- export declare function processPayload(request: RequestClient, settings: Settings, payloads: GenericPayload[], action: string): Promise<ModifiedResponse<unknown>>;
8
+ import { AudienceSettings } from './generated-types';
9
+ declare type LegacyPayload = AddUserPayload | RemoveUserPayload;
10
+ declare type GenericPayload = LegacyPayload | AddToAudiencePayload;
11
+ declare type GenericSettings = Settings | AudienceSettings;
12
+ export declare function processPayload(request: RequestClient, settings: GenericSettings, payloads: GenericPayload[], action: string): Promise<ModifiedResponse<unknown>>;
9
13
  export declare function createAudience(request: RequestClient, payload: CreateAudiencePayload): Promise<ModifiedResponse<CreateAudienceAPIResponse>>;
10
14
  export declare function validate(payloads: GenericPayload[]): void;
11
15
  export declare function getIDSchema(payload: GenericPayload): string[];
@@ -6,14 +6,29 @@ const crypto_1 = require("crypto");
6
6
  const api_1 = require("./api");
7
7
  async function processPayload(request, settings, payloads, action) {
8
8
  validate(payloads);
9
- const selected_advertiser_id = payloads[0].selected_advertiser_id ?? undefined;
10
- const TikTokApiClient = new api_1.TikTokAudiences(request, selected_advertiser_id);
9
+ let selected_advertiser_id;
10
+ let advertiser_ids;
11
+ const isNativeFlow = 'advertiserId' in settings;
12
+ if (isNativeFlow) {
13
+ settings = settings;
14
+ selected_advertiser_id = settings.advertiserId;
15
+ advertiser_ids = [selected_advertiser_id];
16
+ }
17
+ else {
18
+ settings = settings;
19
+ const legacyPayload = payloads[0];
20
+ if ('selected_advertiser_id' in legacyPayload) {
21
+ selected_advertiser_id = legacyPayload.selected_advertiser_id;
22
+ }
23
+ advertiser_ids = settings.advertiser_ids;
24
+ }
11
25
  const id_schema = getIDSchema(payloads[0]);
26
+ const TikTokApiClient = new api_1.TikTokAudiences(request, selected_advertiser_id);
12
27
  const users = extractUsers(payloads);
13
28
  let res;
14
29
  if (users.length > 0) {
15
30
  const elements = {
16
- advertiser_ids: settings.advertiser_ids,
31
+ advertiser_ids: advertiser_ids,
17
32
  action: action,
18
33
  id_schema: id_schema,
19
34
  batch_data: users
@@ -55,6 +70,13 @@ function extractUsers(payloads) {
55
70
  return;
56
71
  }
57
72
  const user_ids = [];
73
+ let external_audience_id;
74
+ if ('external_audience_id' in payload) {
75
+ external_audience_id = payload.external_audience_id;
76
+ }
77
+ if ('audience_id' in payload && !external_audience_id) {
78
+ external_audience_id = payload.audience_id;
79
+ }
58
80
  if (payload.send_email === true) {
59
81
  let email_id = {};
60
82
  if (payload.email) {
@@ -64,7 +86,7 @@ function extractUsers(payloads) {
64
86
  .toLowerCase();
65
87
  email_id = {
66
88
  id: crypto_1.createHash('sha256').update(payload.email).digest('hex'),
67
- audience_ids: [payload.audience_id]
89
+ audience_ids: [external_audience_id]
68
90
  };
69
91
  }
70
92
  user_ids.push(email_id);
@@ -74,7 +96,7 @@ function extractUsers(payloads) {
74
96
  if (payload.advertising_id) {
75
97
  advertising_id = {
76
98
  id: crypto_1.createHash('sha256').update(payload.advertising_id).digest('hex'),
77
- audience_ids: [payload.audience_id]
99
+ audience_ids: [external_audience_id]
78
100
  };
79
101
  }
80
102
  user_ids.push(advertising_id);
@@ -1 +1 @@
1
- {"version":3,"file":"functions.js","sourceRoot":"","sources":["../../../src/destinations/tiktok-audiences/functions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"functions.js","sourceRoot":"","sources":["../../../src/destinations/tiktok-audiences/functions.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  export interface Settings {
2
- advertiser_ids: string[];
2
+ advertiser_ids?: string[];
3
3
  }
4
4
  export interface AudienceSettings {
5
5
  advertiserId: string;
@@ -9,6 +9,8 @@ const removeUser_1 = __importDefault(require("./removeUser"));
9
9
  const api_1 = require("./api");
10
10
  const constants_1 = require("./constants");
11
11
  const createAudience_1 = __importDefault(require("./createAudience"));
12
+ const addToAudience_1 = __importDefault(require("./addToAudience"));
13
+ const removeFromAudience_1 = __importDefault(require("./removeFromAudience"));
12
14
  const destination = {
13
15
  name: 'TikTok Audiences',
14
16
  slug: 'actions-tiktok-audiences',
@@ -20,7 +22,7 @@ const destination = {
20
22
  label: 'TikTok Advertiser IDs',
21
23
  description: 'The Advertiser IDs where audiences should be synced. Hidden in production and should not be altered by users.',
22
24
  type: 'string',
23
- required: true,
25
+ required: false,
24
26
  multiple: true
25
27
  }
26
28
  },
@@ -127,7 +129,9 @@ const destination = {
127
129
  actions: {
128
130
  addUser: addUser_1.default,
129
131
  removeUser: removeUser_1.default,
130
- createAudience: createAudience_1.default
132
+ createAudience: createAudience_1.default,
133
+ addToAudience: addToAudience_1.default,
134
+ removeFromAudience: removeFromAudience_1.default
131
135
  }
132
136
  };
133
137
  exports.default = destination;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/tiktok-audiences/index.ts"],"names":[],"mappings":";;;;;AACA,wDAAoF;AAEpF,wDAA+B;AAC/B,8DAAqC;AACrC,+BAAuC;AAGvC,2CAAmE;AAEnE,sEAA6C;AAE7C,MAAM,WAAW,GAA8D;IAC7E,IAAI,EAAE,kBAAkB;IACxB,IAAI,EAAE,0BAA0B;IAChC,IAAI,EAAE,OAAO;IAEb,cAAc,EAAE;QACd,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE;YACN,cAAc,EAAE;gBAEd,KAAK,EAAE,uBAAuB;gBAC9B,WAAW,EACT,+GAA+G;gBACjH,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,IAAI;aACf;SACF;QACD,kBAAkB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;YAC9C,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE;gBACtB,MAAM,IAAI,yCAA0B,CAClC,+FAA+F,CAChG,CAAA;aACF;YAED,MAAM,eAAe,GAAoB,IAAI,qBAAe,CAAC,OAAO,CAAC,CAAA;YAErE,MAAM,QAAQ,GAAkC,MAAM,eAAe,CAAC,WAAW,EAAE,CAAA;YAInF,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,EAAE;gBAC5B,MAAM,IAAI,KAAK,CACb,oJAAoJ,CACrJ,CAAA;aACF;QACH,CAAC;KACF;IACD,aAAa,CAAC,EAAE,IAAI,EAAE;QACpB,OAAO;YACL,OAAO,EAAE;gBACP,cAAc,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE;gBACtC,cAAc,EAAE,kBAAkB;aACnC;SACF,CAAA;IACH,CAAC;IACD,cAAc,EAAE;QACd,YAAY,EAAE;YACZ,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,eAAe;YACtB,WAAW,EAAE,kDAAkD;YAC/D,QAAQ,EAAE,IAAI;SACf;QACD,MAAM,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,SAAS;YAChB,WAAW,EACT,qHAAqH;YACvH,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE;gBACzC,EAAE,KAAK,EAAE,uBAAuB,EAAE,KAAK,EAAE,aAAa,EAAE;gBACxD,EAAE,KAAK,EAAE,wBAAwB,EAAE,KAAK,EAAE,aAAa,EAAE;gBACzD,EAAE,KAAK,EAAE,oBAAoB,EAAE,KAAK,EAAE,aAAa,EAAE;aACtD;YACD,QAAQ,EAAE,IAAI;SACf;KACF;IACD,cAAc,EAAE;QACd,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,kBAAkB,EAAE,KAAK;SAC1B;QACD,KAAK,CAAC,cAAc,CAAC,OAAO,EAAE,mBAAmB;YAC/C,MAAM,YAAY,GAAG,mBAAmB,CAAC,YAAY,CAAA;YACrD,MAAM,MAAM,GAAG,mBAAmB,CAAC,gBAAgB,EAAE,MAAM,CAAA;YAC3D,MAAM,YAAY,GAAG,mBAAmB,CAAC,gBAAgB,EAAE,YAAY,CAAA;YAEvE,IAAI,CAAC,YAAY,EAAE;gBACjB,MAAM,IAAI,+BAAgB,CAAC,6BAA6B,EAAE,wBAAwB,EAAE,GAAG,CAAC,CAAA;aACzF;YAED,IAAI,CAAC,YAAY,EAAE;gBACjB,MAAM,IAAI,+BAAgB,CAAC,6BAA6B,EAAE,wBAAwB,EAAE,GAAG,CAAC,CAAA;aACzF;YAED,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,+BAAmB,EAAE;gBAClD,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE;oBACJ,oBAAoB,EAAE,YAAY;oBAClC,aAAa,EAAE,YAAY;oBAC3B,OAAO,EAAE,MAAM;oBACf,MAAM,EAAE,QAAQ;iBACjB;aACF,CAAC,CAAA;YAEF,MAAM,CAAC,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;YAC/B,IAAI,CAAC,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE;gBAGzB,MAAM,IAAI,+BAAgB,CAAC,+CAA+C,EAAE,kBAAkB,EAAE,GAAG,CAAC,CAAA;aACrG;YAED,OAAO;gBACL,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC;aAClC,CAAA;QACH,CAAC;QACD,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,gBAAgB;YAGzC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,4BAAgB,CAAC,CAAA;YACrC,MAAM,WAAW,GAAG,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAA;YACjD,MAAM,YAAY,GAAG,gBAAgB,CAAC,gBAAgB,EAAE,YAAY,CAAA;YAEpE,IAAI,CAAC,YAAY,EAAE;gBACjB,MAAM,IAAI,+BAAgB,CACxB,iEAAiE,EACjE,sBAAsB,EACtB,GAAG,CACJ,CAAA;aACF;YAED,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAA;YACpC,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,YAAY,CAAC,CAAA;YAC5C,MAAM,CAAC,MAAM,CAAC,qBAAqB,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAA;YAEjE,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,GAAG,CAAC,QAAQ,EAAE,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,EAAE;gBACvE,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE;oBACP,cAAc,EAAE,mCAAmC;iBACpD;aACF,CAAC,CAAA;YAEF,MAAM,CAAC,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;YAC/B,IAAI,CAAC,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE;gBACzB,MAAM,IAAI,+BAAgB,CAAC,4CAA4C,EAAE,kBAAkB,EAAE,GAAG,CAAC,CAAA;aAClG;YAED,MAAM,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,aAAa,CAAC,CAAA;YAEvE,IAAI,UAAU,KAAK,gBAAgB,CAAC,UAAU,EAAE;gBAC9C,MAAM,IAAI,+BAAgB,CACxB,kGAAkG,EAClG,sBAAsB,EACtB,GAAG,CACJ,CAAA;aACF;YAED,OAAO;gBACL,UAAU,EAAE,UAAU;aACvB,CAAA;QACH,CAAC;KACF;IACD,OAAO,EAAE;QACP,OAAO,EAAP,iBAAO;QACP,UAAU,EAAV,oBAAU;QACV,cAAc,EAAd,wBAAc;KACf;CACF,CAAA;AAED,kBAAe,WAAW,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/tiktok-audiences/index.ts"],"names":[],"mappings":"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"}
@@ -9,3 +9,4 @@ export declare const advertising_id: InputField;
9
9
  export declare const send_advertising_id: InputField;
10
10
  export declare const event_name: InputField;
11
11
  export declare const enable_batching: InputField;
12
+ export declare const external_audience_id: InputField;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.enable_batching = exports.event_name = exports.send_advertising_id = exports.advertising_id = exports.send_email = exports.email = exports.custom_audience_name = exports.audience_id = exports.id_type = exports.selected_advertiser_id = void 0;
3
+ exports.external_audience_id = exports.enable_batching = exports.event_name = exports.send_advertising_id = exports.advertising_id = exports.send_email = exports.email = exports.custom_audience_name = exports.audience_id = exports.id_type = exports.selected_advertiser_id = void 0;
4
4
  exports.selected_advertiser_id = {
5
5
  label: 'Advertiser ID',
6
6
  description: 'The advertiser ID to use when syncing audiences.',
@@ -75,4 +75,12 @@ exports.enable_batching = {
75
75
  type: 'boolean',
76
76
  default: true
77
77
  };
78
+ exports.external_audience_id = {
79
+ label: 'External Audience ID',
80
+ description: "The Audience ID in TikTok's DB.",
81
+ type: 'hidden',
82
+ default: {
83
+ '@path': '$.context.personas.external_audience_id'
84
+ }
85
+ };
78
86
  //# sourceMappingURL=properties.js.map