@zernio/node 0.2.34 → 0.2.36

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
@@ -491,12 +491,12 @@ declare class Zernio {
491
491
  getAd: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<GetAdData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<GetAdResponse, GetAdError, ThrowOnError>;
492
492
  updateAd: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<UpdateAdData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<UpdateAdResponse, unknown, ThrowOnError>;
493
493
  deleteAd: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<DeleteAdData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<DeleteAdResponse, DeleteAdError, ThrowOnError>;
494
- getAdAnalytics: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<GetAdAnalyticsData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<GetAdAnalyticsResponse, GetAdAnalyticsError, ThrowOnError>;
495
- listAdAccounts: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<ListAdAccountsData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<ListAdAccountsResponse, ListAdAccountsError, ThrowOnError>;
494
+ getAdAnalytics: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<GetAdAnalyticsData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<GetAdAnalyticsResponse, unknown, ThrowOnError>;
495
+ listAdAccounts: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<ListAdAccountsData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<ListAdAccountsResponse, unknown, ThrowOnError>;
496
496
  boostPost: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<BoostPostData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<BoostPostResponse, unknown, ThrowOnError>;
497
497
  createStandaloneAd: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<CreateStandaloneAdData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<CreateStandaloneAdResponse, unknown, ThrowOnError>;
498
498
  syncExternalAds: <ThrowOnError extends boolean = false>(options?: _hey_api_client_fetch.OptionsLegacyParser<unknown, ThrowOnError>) => _hey_api_client_fetch.RequestResult<SyncExternalAdsResponse, unknown, ThrowOnError>;
499
- searchAdInterests: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<SearchAdInterestsData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<SearchAdInterestsResponse, SearchAdInterestsError, ThrowOnError>;
499
+ searchAdInterests: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<SearchAdInterestsData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<SearchAdInterestsResponse, unknown, ThrowOnError>;
500
500
  };
501
501
  /**
502
502
  * adcampaigns API
@@ -511,8 +511,8 @@ declare class Zernio {
511
511
  adaudiences: {
512
512
  listAdAudiences: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<ListAdAudiencesData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<ListAdAudiencesResponse, ListAdAudiencesError, ThrowOnError>;
513
513
  createAdAudience: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<CreateAdAudienceData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<CreateAdAudienceResponse, unknown, ThrowOnError>;
514
- getAdAudience: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<GetAdAudienceData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<GetAdAudienceResponse, GetAdAudienceError, ThrowOnError>;
515
- deleteAdAudience: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<DeleteAdAudienceData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<DeleteAdAudienceResponse, DeleteAdAudienceError, ThrowOnError>;
514
+ getAdAudience: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<GetAdAudienceData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<GetAdAudienceResponse, unknown, ThrowOnError>;
515
+ deleteAdAudience: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<DeleteAdAudienceData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<DeleteAdAudienceResponse, unknown, ThrowOnError>;
516
516
  addUsersToAdAudience: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<AddUsersToAdAudienceData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<AddUsersToAdAudienceResponse, unknown, ThrowOnError>;
517
517
  };
518
518
  /**
@@ -753,6 +753,9 @@ type AdMetrics = {
753
753
  */
754
754
  cpm?: number;
755
755
  engagement?: number;
756
+ /**
757
+ * Present on individual ads only, not on campaign aggregations
758
+ */
756
759
  lastSyncedAt?: string;
757
760
  };
758
761
  type AnalyticsListResponse = {
@@ -10883,6 +10886,10 @@ type UpdateAdCampaignStatusResponse = ({
10883
10886
  */
10884
10887
  skipped?: number;
10885
10888
  skippedReasons?: Array<(string)>;
10889
+ /**
10890
+ * Human-readable summary (present when no ads were actionable)
10891
+ */
10892
+ message?: string;
10886
10893
  });
10887
10894
  type UpdateAdCampaignStatusError = (unknown | {
10888
10895
  error?: string;
@@ -10973,7 +10980,7 @@ type GetAdAnalyticsResponse = ({
10973
10980
  });
10974
10981
  type GetAdAnalyticsError = ({
10975
10982
  error?: string;
10976
- });
10983
+ } | unknown);
10977
10984
  type ListAdAccountsData = {
10978
10985
  query: {
10979
10986
  /**
@@ -10995,7 +11002,7 @@ type ListAdAccountsResponse = ({
10995
11002
  });
10996
11003
  type ListAdAccountsError = ({
10997
11004
  error?: string;
10998
- });
11005
+ } | unknown);
10999
11006
  type BoostPostData = {
11000
11007
  body: {
11001
11008
  /**
@@ -11037,6 +11044,21 @@ type BoostPostData = {
11037
11044
  countries?: Array<(string)>;
11038
11045
  interests?: Array<(string)>;
11039
11046
  };
11047
+ /**
11048
+ * Max bid cap (Meta only)
11049
+ */
11050
+ bidAmount?: number;
11051
+ /**
11052
+ * Meta only. Tracking specs (pixel, URL tags).
11053
+ */
11054
+ tracking?: {
11055
+ pixelId?: string;
11056
+ urlTags?: string;
11057
+ };
11058
+ /**
11059
+ * Meta only. Required for housing, employment, credit, or political ads.
11060
+ */
11061
+ specialAdCategories?: Array<('HOUSING' | 'EMPLOYMENT' | 'CREDIT' | 'ISSUES_ELECTIONS_POLITICS')>;
11040
11062
  };
11041
11063
  };
11042
11064
  type BoostPostResponse = ({
@@ -11059,6 +11081,10 @@ type CreateStandaloneAdData = {
11059
11081
  * Required for most platforms. Max: Meta=255, Google=30, Pinterest=100
11060
11082
  */
11061
11083
  headline?: string;
11084
+ /**
11085
+ * Google Display only
11086
+ */
11087
+ longHeadline?: string;
11062
11088
  /**
11063
11089
  * Max: Google=90, Pinterest=500
11064
11090
  */
@@ -11069,9 +11095,17 @@ type CreateStandaloneAdData = {
11069
11095
  callToAction?: 'LEARN_MORE' | 'SHOP_NOW' | 'SIGN_UP' | 'BOOK_TRAVEL' | 'CONTACT_US' | 'DOWNLOAD' | 'GET_OFFER' | 'GET_QUOTE' | 'SUBSCRIBE' | 'WATCH_MORE';
11070
11096
  linkUrl?: string;
11071
11097
  /**
11072
- * Image URL (or video URL for TikTok)
11098
+ * Image URL (or video URL for TikTok). Not required for Google Search campaigns.
11099
+ */
11100
+ imageUrl?: string;
11101
+ /**
11102
+ * Google Display only
11103
+ */
11104
+ businessName?: string;
11105
+ /**
11106
+ * Pinterest only. Board ID (auto-creates if not provided).
11073
11107
  */
11074
- imageUrl: string;
11108
+ boardId?: string;
11075
11109
  countries?: Array<(string)>;
11076
11110
  ageMin?: number;
11077
11111
  ageMax?: number;
@@ -11092,6 +11126,14 @@ type CreateStandaloneAdData = {
11092
11126
  * Google Search only
11093
11127
  */
11094
11128
  keywords?: Array<(string)>;
11129
+ /**
11130
+ * Google Search RSA only. Extra headlines.
11131
+ */
11132
+ additionalHeadlines?: Array<(string)>;
11133
+ /**
11134
+ * Google Search RSA only. Extra descriptions.
11135
+ */
11136
+ additionalDescriptions?: Array<(string)>;
11095
11137
  };
11096
11138
  };
11097
11139
  type CreateStandaloneAdResponse = ({
@@ -11108,7 +11150,7 @@ type SyncExternalAdsResponse = ({
11108
11150
  */
11109
11151
  synced?: number;
11110
11152
  /**
11111
- * Already-synced ads updated
11153
+ * Already-known ads (skipped import
11112
11154
  */
11113
11155
  skipped?: number;
11114
11156
  /**
@@ -11140,7 +11182,7 @@ type SearchAdInterestsResponse = ({
11140
11182
  });
11141
11183
  type SearchAdInterestsError = ({
11142
11184
  error?: string;
11143
- });
11185
+ } | unknown);
11144
11186
  type ListAdAudiencesData = {
11145
11187
  query: {
11146
11188
  /**
@@ -11199,6 +11241,16 @@ type CreateAdAudienceData = {
11199
11241
  * Required for lookalike audiences
11200
11242
  */
11201
11243
  ratio?: number;
11244
+ /**
11245
+ * Pixel event rule for website audiences (optional)
11246
+ */
11247
+ rule?: {
11248
+ [key: string]: unknown;
11249
+ };
11250
+ /**
11251
+ * Data source declaration for GDPR compliance (customer_list only)
11252
+ */
11253
+ customerFileSource?: string;
11202
11254
  };
11203
11255
  };
11204
11256
  type CreateAdAudienceResponse = ({
@@ -11228,7 +11280,7 @@ type GetAdAudienceResponse = ({
11228
11280
  });
11229
11281
  type GetAdAudienceError = ({
11230
11282
  error?: string;
11231
- });
11283
+ } | unknown);
11232
11284
  type DeleteAdAudienceData = {
11233
11285
  path: {
11234
11286
  audienceId: string;
@@ -11239,7 +11291,7 @@ type DeleteAdAudienceResponse = ({
11239
11291
  });
11240
11292
  type DeleteAdAudienceError = ({
11241
11293
  error?: string;
11242
- });
11294
+ } | unknown);
11243
11295
  type AddUsersToAdAudienceData = {
11244
11296
  body: {
11245
11297
  users: Array<{
package/dist/index.d.ts CHANGED
@@ -491,12 +491,12 @@ declare class Zernio {
491
491
  getAd: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<GetAdData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<GetAdResponse, GetAdError, ThrowOnError>;
492
492
  updateAd: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<UpdateAdData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<UpdateAdResponse, unknown, ThrowOnError>;
493
493
  deleteAd: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<DeleteAdData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<DeleteAdResponse, DeleteAdError, ThrowOnError>;
494
- getAdAnalytics: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<GetAdAnalyticsData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<GetAdAnalyticsResponse, GetAdAnalyticsError, ThrowOnError>;
495
- listAdAccounts: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<ListAdAccountsData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<ListAdAccountsResponse, ListAdAccountsError, ThrowOnError>;
494
+ getAdAnalytics: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<GetAdAnalyticsData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<GetAdAnalyticsResponse, unknown, ThrowOnError>;
495
+ listAdAccounts: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<ListAdAccountsData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<ListAdAccountsResponse, unknown, ThrowOnError>;
496
496
  boostPost: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<BoostPostData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<BoostPostResponse, unknown, ThrowOnError>;
497
497
  createStandaloneAd: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<CreateStandaloneAdData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<CreateStandaloneAdResponse, unknown, ThrowOnError>;
498
498
  syncExternalAds: <ThrowOnError extends boolean = false>(options?: _hey_api_client_fetch.OptionsLegacyParser<unknown, ThrowOnError>) => _hey_api_client_fetch.RequestResult<SyncExternalAdsResponse, unknown, ThrowOnError>;
499
- searchAdInterests: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<SearchAdInterestsData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<SearchAdInterestsResponse, SearchAdInterestsError, ThrowOnError>;
499
+ searchAdInterests: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<SearchAdInterestsData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<SearchAdInterestsResponse, unknown, ThrowOnError>;
500
500
  };
501
501
  /**
502
502
  * adcampaigns API
@@ -511,8 +511,8 @@ declare class Zernio {
511
511
  adaudiences: {
512
512
  listAdAudiences: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<ListAdAudiencesData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<ListAdAudiencesResponse, ListAdAudiencesError, ThrowOnError>;
513
513
  createAdAudience: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<CreateAdAudienceData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<CreateAdAudienceResponse, unknown, ThrowOnError>;
514
- getAdAudience: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<GetAdAudienceData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<GetAdAudienceResponse, GetAdAudienceError, ThrowOnError>;
515
- deleteAdAudience: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<DeleteAdAudienceData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<DeleteAdAudienceResponse, DeleteAdAudienceError, ThrowOnError>;
514
+ getAdAudience: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<GetAdAudienceData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<GetAdAudienceResponse, unknown, ThrowOnError>;
515
+ deleteAdAudience: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<DeleteAdAudienceData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<DeleteAdAudienceResponse, unknown, ThrowOnError>;
516
516
  addUsersToAdAudience: <ThrowOnError extends boolean = false>(options: _hey_api_client_fetch.OptionsLegacyParser<AddUsersToAdAudienceData, ThrowOnError>) => _hey_api_client_fetch.RequestResult<AddUsersToAdAudienceResponse, unknown, ThrowOnError>;
517
517
  };
518
518
  /**
@@ -753,6 +753,9 @@ type AdMetrics = {
753
753
  */
754
754
  cpm?: number;
755
755
  engagement?: number;
756
+ /**
757
+ * Present on individual ads only, not on campaign aggregations
758
+ */
756
759
  lastSyncedAt?: string;
757
760
  };
758
761
  type AnalyticsListResponse = {
@@ -10883,6 +10886,10 @@ type UpdateAdCampaignStatusResponse = ({
10883
10886
  */
10884
10887
  skipped?: number;
10885
10888
  skippedReasons?: Array<(string)>;
10889
+ /**
10890
+ * Human-readable summary (present when no ads were actionable)
10891
+ */
10892
+ message?: string;
10886
10893
  });
10887
10894
  type UpdateAdCampaignStatusError = (unknown | {
10888
10895
  error?: string;
@@ -10973,7 +10980,7 @@ type GetAdAnalyticsResponse = ({
10973
10980
  });
10974
10981
  type GetAdAnalyticsError = ({
10975
10982
  error?: string;
10976
- });
10983
+ } | unknown);
10977
10984
  type ListAdAccountsData = {
10978
10985
  query: {
10979
10986
  /**
@@ -10995,7 +11002,7 @@ type ListAdAccountsResponse = ({
10995
11002
  });
10996
11003
  type ListAdAccountsError = ({
10997
11004
  error?: string;
10998
- });
11005
+ } | unknown);
10999
11006
  type BoostPostData = {
11000
11007
  body: {
11001
11008
  /**
@@ -11037,6 +11044,21 @@ type BoostPostData = {
11037
11044
  countries?: Array<(string)>;
11038
11045
  interests?: Array<(string)>;
11039
11046
  };
11047
+ /**
11048
+ * Max bid cap (Meta only)
11049
+ */
11050
+ bidAmount?: number;
11051
+ /**
11052
+ * Meta only. Tracking specs (pixel, URL tags).
11053
+ */
11054
+ tracking?: {
11055
+ pixelId?: string;
11056
+ urlTags?: string;
11057
+ };
11058
+ /**
11059
+ * Meta only. Required for housing, employment, credit, or political ads.
11060
+ */
11061
+ specialAdCategories?: Array<('HOUSING' | 'EMPLOYMENT' | 'CREDIT' | 'ISSUES_ELECTIONS_POLITICS')>;
11040
11062
  };
11041
11063
  };
11042
11064
  type BoostPostResponse = ({
@@ -11059,6 +11081,10 @@ type CreateStandaloneAdData = {
11059
11081
  * Required for most platforms. Max: Meta=255, Google=30, Pinterest=100
11060
11082
  */
11061
11083
  headline?: string;
11084
+ /**
11085
+ * Google Display only
11086
+ */
11087
+ longHeadline?: string;
11062
11088
  /**
11063
11089
  * Max: Google=90, Pinterest=500
11064
11090
  */
@@ -11069,9 +11095,17 @@ type CreateStandaloneAdData = {
11069
11095
  callToAction?: 'LEARN_MORE' | 'SHOP_NOW' | 'SIGN_UP' | 'BOOK_TRAVEL' | 'CONTACT_US' | 'DOWNLOAD' | 'GET_OFFER' | 'GET_QUOTE' | 'SUBSCRIBE' | 'WATCH_MORE';
11070
11096
  linkUrl?: string;
11071
11097
  /**
11072
- * Image URL (or video URL for TikTok)
11098
+ * Image URL (or video URL for TikTok). Not required for Google Search campaigns.
11099
+ */
11100
+ imageUrl?: string;
11101
+ /**
11102
+ * Google Display only
11103
+ */
11104
+ businessName?: string;
11105
+ /**
11106
+ * Pinterest only. Board ID (auto-creates if not provided).
11073
11107
  */
11074
- imageUrl: string;
11108
+ boardId?: string;
11075
11109
  countries?: Array<(string)>;
11076
11110
  ageMin?: number;
11077
11111
  ageMax?: number;
@@ -11092,6 +11126,14 @@ type CreateStandaloneAdData = {
11092
11126
  * Google Search only
11093
11127
  */
11094
11128
  keywords?: Array<(string)>;
11129
+ /**
11130
+ * Google Search RSA only. Extra headlines.
11131
+ */
11132
+ additionalHeadlines?: Array<(string)>;
11133
+ /**
11134
+ * Google Search RSA only. Extra descriptions.
11135
+ */
11136
+ additionalDescriptions?: Array<(string)>;
11095
11137
  };
11096
11138
  };
11097
11139
  type CreateStandaloneAdResponse = ({
@@ -11108,7 +11150,7 @@ type SyncExternalAdsResponse = ({
11108
11150
  */
11109
11151
  synced?: number;
11110
11152
  /**
11111
- * Already-synced ads updated
11153
+ * Already-known ads (skipped import
11112
11154
  */
11113
11155
  skipped?: number;
11114
11156
  /**
@@ -11140,7 +11182,7 @@ type SearchAdInterestsResponse = ({
11140
11182
  });
11141
11183
  type SearchAdInterestsError = ({
11142
11184
  error?: string;
11143
- });
11185
+ } | unknown);
11144
11186
  type ListAdAudiencesData = {
11145
11187
  query: {
11146
11188
  /**
@@ -11199,6 +11241,16 @@ type CreateAdAudienceData = {
11199
11241
  * Required for lookalike audiences
11200
11242
  */
11201
11243
  ratio?: number;
11244
+ /**
11245
+ * Pixel event rule for website audiences (optional)
11246
+ */
11247
+ rule?: {
11248
+ [key: string]: unknown;
11249
+ };
11250
+ /**
11251
+ * Data source declaration for GDPR compliance (customer_list only)
11252
+ */
11253
+ customerFileSource?: string;
11202
11254
  };
11203
11255
  };
11204
11256
  type CreateAdAudienceResponse = ({
@@ -11228,7 +11280,7 @@ type GetAdAudienceResponse = ({
11228
11280
  });
11229
11281
  type GetAdAudienceError = ({
11230
11282
  error?: string;
11231
- });
11283
+ } | unknown);
11232
11284
  type DeleteAdAudienceData = {
11233
11285
  path: {
11234
11286
  audienceId: string;
@@ -11239,7 +11291,7 @@ type DeleteAdAudienceResponse = ({
11239
11291
  });
11240
11292
  type DeleteAdAudienceError = ({
11241
11293
  error?: string;
11242
- });
11294
+ } | unknown);
11243
11295
  type AddUsersToAdAudienceData = {
11244
11296
  body: {
11245
11297
  users: Array<{
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zernio/node",
3
- "version": "0.2.34",
3
+ "version": "0.2.36",
4
4
  "description": "The official Node.js library for the Zernio API",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
@@ -173,6 +173,9 @@ export type AdMetrics = {
173
173
  */
174
174
  cpm?: number;
175
175
  engagement?: number;
176
+ /**
177
+ * Present on individual ads only, not on campaign aggregations
178
+ */
176
179
  lastSyncedAt?: string;
177
180
  };
178
181
 
@@ -11183,6 +11186,10 @@ export type UpdateAdCampaignStatusResponse = ({
11183
11186
  */
11184
11187
  skipped?: number;
11185
11188
  skippedReasons?: Array<(string)>;
11189
+ /**
11190
+ * Human-readable summary (present when no ads were actionable)
11191
+ */
11192
+ message?: string;
11186
11193
  });
11187
11194
 
11188
11195
  export type UpdateAdCampaignStatusError = (unknown | {
@@ -11286,7 +11293,7 @@ export type GetAdAnalyticsResponse = ({
11286
11293
 
11287
11294
  export type GetAdAnalyticsError = ({
11288
11295
  error?: string;
11289
- });
11296
+ } | unknown);
11290
11297
 
11291
11298
  export type ListAdAccountsData = {
11292
11299
  query: {
@@ -11311,7 +11318,7 @@ export type ListAdAccountsResponse = ({
11311
11318
 
11312
11319
  export type ListAdAccountsError = ({
11313
11320
  error?: string;
11314
- });
11321
+ } | unknown);
11315
11322
 
11316
11323
  export type BoostPostData = {
11317
11324
  body: {
@@ -11354,6 +11361,21 @@ export type BoostPostData = {
11354
11361
  countries?: Array<(string)>;
11355
11362
  interests?: Array<(string)>;
11356
11363
  };
11364
+ /**
11365
+ * Max bid cap (Meta only)
11366
+ */
11367
+ bidAmount?: number;
11368
+ /**
11369
+ * Meta only. Tracking specs (pixel, URL tags).
11370
+ */
11371
+ tracking?: {
11372
+ pixelId?: string;
11373
+ urlTags?: string;
11374
+ };
11375
+ /**
11376
+ * Meta only. Required for housing, employment, credit, or political ads.
11377
+ */
11378
+ specialAdCategories?: Array<('HOUSING' | 'EMPLOYMENT' | 'CREDIT' | 'ISSUES_ELECTIONS_POLITICS')>;
11357
11379
  };
11358
11380
  };
11359
11381
 
@@ -11379,6 +11401,10 @@ export type CreateStandaloneAdData = {
11379
11401
  * Required for most platforms. Max: Meta=255, Google=30, Pinterest=100
11380
11402
  */
11381
11403
  headline?: string;
11404
+ /**
11405
+ * Google Display only
11406
+ */
11407
+ longHeadline?: string;
11382
11408
  /**
11383
11409
  * Max: Google=90, Pinterest=500
11384
11410
  */
@@ -11389,9 +11415,17 @@ export type CreateStandaloneAdData = {
11389
11415
  callToAction?: 'LEARN_MORE' | 'SHOP_NOW' | 'SIGN_UP' | 'BOOK_TRAVEL' | 'CONTACT_US' | 'DOWNLOAD' | 'GET_OFFER' | 'GET_QUOTE' | 'SUBSCRIBE' | 'WATCH_MORE';
11390
11416
  linkUrl?: string;
11391
11417
  /**
11392
- * Image URL (or video URL for TikTok)
11418
+ * Image URL (or video URL for TikTok). Not required for Google Search campaigns.
11419
+ */
11420
+ imageUrl?: string;
11421
+ /**
11422
+ * Google Display only
11423
+ */
11424
+ businessName?: string;
11425
+ /**
11426
+ * Pinterest only. Board ID (auto-creates if not provided).
11393
11427
  */
11394
- imageUrl: string;
11428
+ boardId?: string;
11395
11429
  countries?: Array<(string)>;
11396
11430
  ageMin?: number;
11397
11431
  ageMax?: number;
@@ -11412,6 +11446,14 @@ export type CreateStandaloneAdData = {
11412
11446
  * Google Search only
11413
11447
  */
11414
11448
  keywords?: Array<(string)>;
11449
+ /**
11450
+ * Google Search RSA only. Extra headlines.
11451
+ */
11452
+ additionalHeadlines?: Array<(string)>;
11453
+ /**
11454
+ * Google Search RSA only. Extra descriptions.
11455
+ */
11456
+ additionalDescriptions?: Array<(string)>;
11415
11457
  };
11416
11458
  };
11417
11459
 
@@ -11431,7 +11473,7 @@ export type SyncExternalAdsResponse = ({
11431
11473
  */
11432
11474
  synced?: number;
11433
11475
  /**
11434
- * Already-synced ads updated
11476
+ * Already-known ads (skipped import
11435
11477
  */
11436
11478
  skipped?: number;
11437
11479
  /**
@@ -11467,7 +11509,7 @@ export type SearchAdInterestsResponse = ({
11467
11509
 
11468
11510
  export type SearchAdInterestsError = ({
11469
11511
  error?: string;
11470
- });
11512
+ } | unknown);
11471
11513
 
11472
11514
  export type ListAdAudiencesData = {
11473
11515
  query: {
@@ -11530,6 +11572,16 @@ export type CreateAdAudienceData = {
11530
11572
  * Required for lookalike audiences
11531
11573
  */
11532
11574
  ratio?: number;
11575
+ /**
11576
+ * Pixel event rule for website audiences (optional)
11577
+ */
11578
+ rule?: {
11579
+ [key: string]: unknown;
11580
+ };
11581
+ /**
11582
+ * Data source declaration for GDPR compliance (customer_list only)
11583
+ */
11584
+ customerFileSource?: string;
11533
11585
  };
11534
11586
  };
11535
11587
 
@@ -11564,7 +11616,7 @@ export type GetAdAudienceResponse = ({
11564
11616
 
11565
11617
  export type GetAdAudienceError = ({
11566
11618
  error?: string;
11567
- });
11619
+ } | unknown);
11568
11620
 
11569
11621
  export type DeleteAdAudienceData = {
11570
11622
  path: {
@@ -11578,7 +11630,7 @@ export type DeleteAdAudienceResponse = ({
11578
11630
 
11579
11631
  export type DeleteAdAudienceError = ({
11580
11632
  error?: string;
11581
- });
11633
+ } | unknown);
11582
11634
 
11583
11635
  export type AddUsersToAdAudienceData = {
11584
11636
  body: {