@zernio/node 0.2.1487 → 0.2.1489

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.
package/dist/index.d.mts CHANGED
@@ -52189,6 +52189,13 @@ type DuplicateAdCampaignResponse = ({
52189
52189
  adIdMap?: {
52190
52190
  [key: string]: (string);
52191
52191
  };
52192
+ /**
52193
+ * The copy exists on the platform in all three cases.
52194
+ *
52195
+ * - `triggered`: an ads sync started and runs after this response, so the copy may not be readable through Zernio yet.
52196
+ * - `skipped`: no sync started, so the copy appears on a later scheduled sync.
52197
+ * - `failed`: the sync could not start. A sync that errors after the response is not reported here.
52198
+ */
52192
52199
  discovery?: 'triggered' | 'skipped' | 'failed';
52193
52200
  /**
52194
52201
  * Platform-native response from the copy (TikTok and LinkedIn). Absent on Meta, which returns `adSetIdMap` and `adIdMap` instead.
@@ -52791,6 +52798,13 @@ type DuplicateAdSetResponse = ({
52791
52798
  adIdMap?: {
52792
52799
  [key: string]: (string);
52793
52800
  };
52801
+ /**
52802
+ * The copy exists on the platform in all three cases.
52803
+ *
52804
+ * - `triggered`: an ads sync started and runs after this response, so the copy may not be readable through Zernio yet.
52805
+ * - `skipped`: no sync started, so the copy appears on a later scheduled sync.
52806
+ * - `failed`: the sync could not start. A sync that errors after the response is not reported here.
52807
+ */
52794
52808
  discovery?: 'triggered' | 'skipped' | 'failed';
52795
52809
  /**
52796
52810
  * Platform-native response from the copy (TikTok). Absent on Meta, which returns `adIdMap` instead.
@@ -52855,6 +52869,13 @@ type DuplicateAdResponse = ({
52855
52869
  * Platform ID of the new ad
52856
52870
  */
52857
52871
  copiedAdId?: string;
52872
+ /**
52873
+ * The copy exists on the platform in all three cases.
52874
+ *
52875
+ * - `triggered`: an ads sync started and runs after this response, so the copy may not be readable through Zernio yet.
52876
+ * - `skipped`: no sync started, so the copy appears on a later scheduled sync.
52877
+ * - `failed`: the sync could not start. A sync that errors after the response is not reported here.
52878
+ */
52858
52879
  discovery?: 'triggered' | 'skipped' | 'failed';
52859
52880
  raw?: {
52860
52881
  [key: string]: unknown;
@@ -58788,7 +58809,7 @@ type BoostPostData = {
58788
58809
  * - New campaign: held paused with its ad set and ad on. One PUT /v1/ads/campaigns/{campaignId}/status with `active` brings it live.
58789
58810
  * - Into an existing campaign (TikTok `existingCampaignId`): the new ad set is held paused.
58790
58811
  * - Attached to an existing ad set (`adSetId`): the new ad itself is paused.
58791
- * - LinkedIn: the held campaign group is PAUSED, its campaign and creative ACTIVE.
58812
+ * - LinkedIn: every object the boost creates is held. A new campaign group is PAUSED, and its campaign and creative stay DRAFT. Resume each held object top-down to go live.
58792
58813
  * - X: has no per-ad switch, so its lowest level is the line item.
58793
58814
  *
58794
58815
  * `campaignStatus`, `adSetStatus` and `adStatus` set one level each and always win for that level. `status: PAUSED` adds a hold of its own only when none of them is PAUSED. To create every object paused, send all three as PAUSED.
@@ -59359,7 +59380,7 @@ type CreateStandaloneAdData = {
59359
59380
  *
59360
59381
  * **Platform notes:**
59361
59382
  *
59362
- * - LinkedIn: a held campaign group is PAUSED with its campaign and creative ACTIVE. A new campaign in an existing group stays DRAFT. A held creative (with `adSetId`) is created DRAFT, as LinkedIn refuses PAUSED until its review is APPROVED.
59383
+ * - LinkedIn: every object the call creates is held. A new campaign group is PAUSED. A new campaign or creative stays DRAFT, as LinkedIn refuses PAUSED on a creative until its review is APPROVED. Resume each held object top-down to go live.
59363
59384
  * - X: no per-ad switch, so its lowest level is the line item.
59364
59385
  * - Google Performance Max and Demand Gen: accept PAUSED only (the campaign is created paused).
59365
59386
  *
package/dist/index.d.ts CHANGED
@@ -52189,6 +52189,13 @@ type DuplicateAdCampaignResponse = ({
52189
52189
  adIdMap?: {
52190
52190
  [key: string]: (string);
52191
52191
  };
52192
+ /**
52193
+ * The copy exists on the platform in all three cases.
52194
+ *
52195
+ * - `triggered`: an ads sync started and runs after this response, so the copy may not be readable through Zernio yet.
52196
+ * - `skipped`: no sync started, so the copy appears on a later scheduled sync.
52197
+ * - `failed`: the sync could not start. A sync that errors after the response is not reported here.
52198
+ */
52192
52199
  discovery?: 'triggered' | 'skipped' | 'failed';
52193
52200
  /**
52194
52201
  * Platform-native response from the copy (TikTok and LinkedIn). Absent on Meta, which returns `adSetIdMap` and `adIdMap` instead.
@@ -52791,6 +52798,13 @@ type DuplicateAdSetResponse = ({
52791
52798
  adIdMap?: {
52792
52799
  [key: string]: (string);
52793
52800
  };
52801
+ /**
52802
+ * The copy exists on the platform in all three cases.
52803
+ *
52804
+ * - `triggered`: an ads sync started and runs after this response, so the copy may not be readable through Zernio yet.
52805
+ * - `skipped`: no sync started, so the copy appears on a later scheduled sync.
52806
+ * - `failed`: the sync could not start. A sync that errors after the response is not reported here.
52807
+ */
52794
52808
  discovery?: 'triggered' | 'skipped' | 'failed';
52795
52809
  /**
52796
52810
  * Platform-native response from the copy (TikTok). Absent on Meta, which returns `adIdMap` instead.
@@ -52855,6 +52869,13 @@ type DuplicateAdResponse = ({
52855
52869
  * Platform ID of the new ad
52856
52870
  */
52857
52871
  copiedAdId?: string;
52872
+ /**
52873
+ * The copy exists on the platform in all three cases.
52874
+ *
52875
+ * - `triggered`: an ads sync started and runs after this response, so the copy may not be readable through Zernio yet.
52876
+ * - `skipped`: no sync started, so the copy appears on a later scheduled sync.
52877
+ * - `failed`: the sync could not start. A sync that errors after the response is not reported here.
52878
+ */
52858
52879
  discovery?: 'triggered' | 'skipped' | 'failed';
52859
52880
  raw?: {
52860
52881
  [key: string]: unknown;
@@ -58788,7 +58809,7 @@ type BoostPostData = {
58788
58809
  * - New campaign: held paused with its ad set and ad on. One PUT /v1/ads/campaigns/{campaignId}/status with `active` brings it live.
58789
58810
  * - Into an existing campaign (TikTok `existingCampaignId`): the new ad set is held paused.
58790
58811
  * - Attached to an existing ad set (`adSetId`): the new ad itself is paused.
58791
- * - LinkedIn: the held campaign group is PAUSED, its campaign and creative ACTIVE.
58812
+ * - LinkedIn: every object the boost creates is held. A new campaign group is PAUSED, and its campaign and creative stay DRAFT. Resume each held object top-down to go live.
58792
58813
  * - X: has no per-ad switch, so its lowest level is the line item.
58793
58814
  *
58794
58815
  * `campaignStatus`, `adSetStatus` and `adStatus` set one level each and always win for that level. `status: PAUSED` adds a hold of its own only when none of them is PAUSED. To create every object paused, send all three as PAUSED.
@@ -59359,7 +59380,7 @@ type CreateStandaloneAdData = {
59359
59380
  *
59360
59381
  * **Platform notes:**
59361
59382
  *
59362
- * - LinkedIn: a held campaign group is PAUSED with its campaign and creative ACTIVE. A new campaign in an existing group stays DRAFT. A held creative (with `adSetId`) is created DRAFT, as LinkedIn refuses PAUSED until its review is APPROVED.
59383
+ * - LinkedIn: every object the call creates is held. A new campaign group is PAUSED. A new campaign or creative stays DRAFT, as LinkedIn refuses PAUSED on a creative until its review is APPROVED. Resume each held object top-down to go live.
59363
59384
  * - X: no per-ad switch, so its lowest level is the line item.
59364
59385
  * - Google Performance Max and Demand Gen: accept PAUSED only (the campaign is created paused).
59365
59386
  *
package/dist/index.js CHANGED
@@ -36,7 +36,7 @@ module.exports = __toCommonJS(index_exports);
36
36
  // package.json
37
37
  var package_default = {
38
38
  name: "@zernio/node",
39
- version: "0.2.1487",
39
+ version: "0.2.1489",
40
40
  description: "The official Node.js library for the Zernio API",
41
41
  main: "dist/index.js",
42
42
  module: "dist/index.mjs",
package/dist/index.mjs CHANGED
@@ -5,7 +5,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
5
5
  // package.json
6
6
  var package_default = {
7
7
  name: "@zernio/node",
8
- version: "0.2.1487",
8
+ version: "0.2.1489",
9
9
  description: "The official Node.js library for the Zernio API",
10
10
  main: "dist/index.js",
11
11
  module: "dist/index.mjs",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zernio/node",
3
- "version": "0.2.1487",
3
+ "version": "0.2.1489",
4
4
  "description": "The official Node.js library for the Zernio API",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
@@ -13115,7 +13115,9 @@ export const bulkUpdateAdCampaignStatus = <ThrowOnError extends boolean = false>
13115
13115
  *
13116
13116
  * ### Sync
13117
13117
  *
13118
- * The new hierarchy is asynchronous to materialize in our DB, and we trigger sync discovery automatically. Set `syncAfter: false` to skip and poll `/v1/ads/tree` on your own cadence.
13118
+ * The copy exists on the platform when this call returns. The new hierarchy reaches our DB through a sync discovery that starts automatically and runs after the response, usually within a few minutes.
13119
+ *
13120
+ * Poll `/v1/ads/tree` until it appears; until then, calls that take a copied id return 404, so retry them. Set `syncAfter: false` to skip the sync; the copy then appears on a later scheduled sync.
13119
13121
  *
13120
13122
  */
13121
13123
  export const duplicateAdCampaign = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<DuplicateAdCampaignData, ThrowOnError>) => {
@@ -13319,7 +13321,7 @@ export const createAdSet = <ThrowOnError extends boolean = false>(options: Optio
13319
13321
  * - So an ad set with any number of ads copies: Meta refuses a single deep copy of 3 or more objects.
13320
13322
  * - `statusOption` applies to the ad set and every ad.
13321
13323
  * - If an ad copy fails, the partial ad set copy is deleted and the request fails with Meta's error.
13322
- * - Sync discovery is triggered automatically (`syncAfter: false` to skip).
13324
+ * - A sync discovery starts automatically and runs after the response (`syncAfter: false` to skip). The copy is readable through Zernio once it finishes, usually within a few minutes. Until then, calls that take a copied id return 404, so retry them.
13323
13325
  *
13324
13326
  * TikTok: the ad group is read and recreated under the campaign with its targeting, bidding,
13325
13327
  * budget and schedule (start reset to now); `deepCopy: true` recreates its ads too (default
@@ -13342,7 +13344,7 @@ export const duplicateAdSet = <ThrowOnError extends boolean = false>(options: Op
13342
13344
  *
13343
13345
  * - `adSetId` retargets the copy into another ad set; omitted = the source's own ad set.
13344
13346
  * - Accepts the Zernio ad id or the platform ad id.
13345
- * - Sync discovery is triggered automatically (`syncAfter: false` to skip).
13347
+ * - A sync discovery starts automatically and runs after the response (`syncAfter: false` to skip). The copy is readable through Zernio once it finishes, usually within a few minutes. Until then, calls that take a copied id return 404, so retry them.
13346
13348
  *
13347
13349
  * ### Creative settings
13348
13350
  *
@@ -53013,6 +53013,13 @@ export type DuplicateAdCampaignResponse = ({
53013
53013
  adIdMap?: {
53014
53014
  [key: string]: (string);
53015
53015
  };
53016
+ /**
53017
+ * The copy exists on the platform in all three cases.
53018
+ *
53019
+ * - `triggered`: an ads sync started and runs after this response, so the copy may not be readable through Zernio yet.
53020
+ * - `skipped`: no sync started, so the copy appears on a later scheduled sync.
53021
+ * - `failed`: the sync could not start. A sync that errors after the response is not reported here.
53022
+ */
53016
53023
  discovery?: 'triggered' | 'skipped' | 'failed';
53017
53024
  /**
53018
53025
  * Platform-native response from the copy (TikTok and LinkedIn). Absent on Meta, which returns `adSetIdMap` and `adIdMap` instead.
@@ -53630,6 +53637,13 @@ export type DuplicateAdSetResponse = ({
53630
53637
  adIdMap?: {
53631
53638
  [key: string]: (string);
53632
53639
  };
53640
+ /**
53641
+ * The copy exists on the platform in all three cases.
53642
+ *
53643
+ * - `triggered`: an ads sync started and runs after this response, so the copy may not be readable through Zernio yet.
53644
+ * - `skipped`: no sync started, so the copy appears on a later scheduled sync.
53645
+ * - `failed`: the sync could not start. A sync that errors after the response is not reported here.
53646
+ */
53633
53647
  discovery?: 'triggered' | 'skipped' | 'failed';
53634
53648
  /**
53635
53649
  * Platform-native response from the copy (TikTok). Absent on Meta, which returns `adIdMap` instead.
@@ -53697,6 +53711,13 @@ export type DuplicateAdResponse = ({
53697
53711
  * Platform ID of the new ad
53698
53712
  */
53699
53713
  copiedAdId?: string;
53714
+ /**
53715
+ * The copy exists on the platform in all three cases.
53716
+ *
53717
+ * - `triggered`: an ads sync started and runs after this response, so the copy may not be readable through Zernio yet.
53718
+ * - `skipped`: no sync started, so the copy appears on a later scheduled sync.
53719
+ * - `failed`: the sync could not start. A sync that errors after the response is not reported here.
53720
+ */
53700
53721
  discovery?: 'triggered' | 'skipped' | 'failed';
53701
53722
  raw?: {
53702
53723
  [key: string]: unknown;
@@ -59986,7 +60007,7 @@ export type BoostPostData = {
59986
60007
  * - New campaign: held paused with its ad set and ad on. One PUT /v1/ads/campaigns/{campaignId}/status with `active` brings it live.
59987
60008
  * - Into an existing campaign (TikTok `existingCampaignId`): the new ad set is held paused.
59988
60009
  * - Attached to an existing ad set (`adSetId`): the new ad itself is paused.
59989
- * - LinkedIn: the held campaign group is PAUSED, its campaign and creative ACTIVE.
60010
+ * - LinkedIn: every object the boost creates is held. A new campaign group is PAUSED, and its campaign and creative stay DRAFT. Resume each held object top-down to go live.
59990
60011
  * - X: has no per-ad switch, so its lowest level is the line item.
59991
60012
  *
59992
60013
  * `campaignStatus`, `adSetStatus` and `adStatus` set one level each and always win for that level. `status: PAUSED` adds a hold of its own only when none of them is PAUSED. To create every object paused, send all three as PAUSED.
@@ -60581,7 +60602,7 @@ export type CreateStandaloneAdData = {
60581
60602
  *
60582
60603
  * **Platform notes:**
60583
60604
  *
60584
- * - LinkedIn: a held campaign group is PAUSED with its campaign and creative ACTIVE. A new campaign in an existing group stays DRAFT. A held creative (with `adSetId`) is created DRAFT, as LinkedIn refuses PAUSED until its review is APPROVED.
60605
+ * - LinkedIn: every object the call creates is held. A new campaign group is PAUSED. A new campaign or creative stays DRAFT, as LinkedIn refuses PAUSED on a creative until its review is APPROVED. Resume each held object top-down to go live.
60585
60606
  * - X: no per-ad switch, so its lowest level is the line item.
60586
60607
  * - Google Performance Max and Demand Gen: accept PAUSED only (the campaign is created paused).
60587
60608
  *