@getlatedev/node 0.2.942 → 0.2.944

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.
@@ -2949,6 +2949,14 @@ export type ConversionAction = {
2949
2949
  * Google's ConversionActionCategory, e.g. DEFAULT, PURCHASE, LEAD.
2950
2950
  */
2951
2951
  category: string;
2952
+ /**
2953
+ * Google's ConversionOrigin, e.g. WEBSITE, APP. Together with category it names the goal the action belongs to (see GET /v1/ads/conversions/goals).
2954
+ */
2955
+ origin?: string;
2956
+ /**
2957
+ * true = primary (counts toward bidding when its goal is biddable), false = secondary. Change it with PATCH /v1/ads/conversions/actions/{actionId}.
2958
+ */
2959
+ primaryForGoal?: boolean;
2952
2960
  /**
2953
2961
  * The code a customer pastes onto their site. Present for types
2954
2962
  * Google generates a snippet for (e.g. WEBPAGE); empty otherwise.
@@ -4858,6 +4866,18 @@ export type GoogleAssetUpdate = {
4858
4866
  structuredSnippetAsset?: GoogleStructuredSnippet;
4859
4867
  };
4860
4868
 
4869
+ export type GoogleBiddableGoalInput = {
4870
+ /**
4871
+ * Google ConversionActionCategory, e.g. PURCHASE, SIGNUP, SUBMIT_LEAD_FORM
4872
+ */
4873
+ category: string;
4874
+ /**
4875
+ * Google ConversionOrigin, e.g. WEBSITE, APP, CALL_FROM_ADS, STORE, GOOGLE_HOSTED
4876
+ */
4877
+ origin: string;
4878
+ biddable: boolean;
4879
+ };
4880
+
4861
4881
  /**
4862
4882
  * Text and single image only (no videos). Supports STANDARD, EVENT, OFFER, and ALERT post types. Posts appear on Google Business Profile, Google Search, and Maps. Use locationId for multi-location posting. Schedule dates accept both ISO 8601 strings (e.g. '2026-04-15T09:00:00Z') and Google's native {year, month, day} objects.
4863
4883
  */
@@ -5015,6 +5035,124 @@ export type GoogleBusinessReview = {
5015
5035
  */
5016
5036
  export type starRating = 'ONE' | 'TWO' | 'THREE' | 'FOUR' | 'FIVE';
5017
5037
 
5038
+ export type GoogleCampaignConversionGoals = {
5039
+ campaignId?: string;
5040
+ goalConfigLevel?: 'CUSTOMER' | 'CAMPAIGN' | 'UNSPECIFIED' | 'UNKNOWN';
5041
+ customConversionGoalId?: (string) | null;
5042
+ goals?: Array<{
5043
+ category?: string;
5044
+ origin?: string;
5045
+ biddable?: boolean;
5046
+ resourceName?: string;
5047
+ }>;
5048
+ };
5049
+
5050
+ export type goalConfigLevel = 'CUSTOMER' | 'CAMPAIGN' | 'UNSPECIFIED' | 'UNKNOWN';
5051
+
5052
+ export type GoogleCustomConversionGoal = {
5053
+ id?: string;
5054
+ resourceName?: string;
5055
+ name?: string;
5056
+ status?: string;
5057
+ conversionActionIds?: Array<(string)>;
5058
+ };
5059
+
5060
+ export type GoogleCustomerConversionGoal = {
5061
+ category?: string;
5062
+ origin?: string;
5063
+ /**
5064
+ * Used for bidding and counted in the Conversions column.
5065
+ */
5066
+ biddable?: boolean;
5067
+ resourceName?: string;
5068
+ /**
5069
+ * Non-removed conversion actions in this category and origin.
5070
+ */
5071
+ conversionActions?: Array<{
5072
+ id?: string;
5073
+ name?: string;
5074
+ status?: string;
5075
+ /**
5076
+ * true = primary, false = secondary
5077
+ */
5078
+ primaryForGoal?: boolean;
5079
+ }>;
5080
+ };
5081
+
5082
+ /**
5083
+ * Creative, channel and audience settings for a Google Demand Gen campaign (campaignType demand_gen). Creates one ad group with one ad: a multi-asset image ad, or a video responsive ad when youtubeVideoIds is sent.
5084
+ */
5085
+ export type GoogleDemandGenInput = {
5086
+ /**
5087
+ * Defaults to the ad name.
5088
+ */
5089
+ adGroupName?: string;
5090
+ finalUrl: string;
5091
+ businessName: string;
5092
+ /**
5093
+ * Distinct texts.
5094
+ */
5095
+ headlines: Array<(string)>;
5096
+ /**
5097
+ * Video ads only, and required there.
5098
+ */
5099
+ longHeadlines?: Array<(string)>;
5100
+ descriptions: Array<(string)>;
5101
+ /**
5102
+ * Image ads only. Call to action text such as 'Learn more'; Google picks one when omitted.
5103
+ */
5104
+ callToAction?: string;
5105
+ /**
5106
+ * Public image URLs. An image ad needs landscape or square; a video ad takes only one logo.
5107
+ */
5108
+ images: {
5109
+ /**
5110
+ * 1.91:1, at least 600x314.
5111
+ */
5112
+ landscape?: Array<(string)>;
5113
+ /**
5114
+ * 1:1, at least 300x300.
5115
+ */
5116
+ square?: Array<(string)>;
5117
+ /**
5118
+ * 4:5, at least 480x600.
5119
+ */
5120
+ portrait?: Array<(string)>;
5121
+ /**
5122
+ * 1:1, at least 128x128.
5123
+ */
5124
+ logo: Array<(string)>;
5125
+ };
5126
+ /**
5127
+ * Makes the ad a video responsive ad.
5128
+ */
5129
+ youtubeVideoIds?: Array<(string)>;
5130
+ /**
5131
+ * Channel controls on the ad group. Only the listed channels serve; omit to serve on all of them.
5132
+ */
5133
+ channels?: Array<('youtube_in_stream' | 'youtube_in_feed' | 'youtube_shorts' | 'discover' | 'gmail' | 'display')>;
5134
+ /**
5135
+ * Created as a Google Audience and attached to the ad group. Send at least one dimension. Ids are numeric Google ids (user lists, interest categories, custom audiences) from the same customer.
5136
+ */
5137
+ audience?: {
5138
+ userLists?: Array<(string)>;
5139
+ userInterests?: Array<(string)>;
5140
+ customAudiences?: Array<(string)>;
5141
+ ageRanges?: Array<{
5142
+ min: 18 | 25 | 35 | 45 | 55 | 65;
5143
+ /**
5144
+ * Omit for no upper bound.
5145
+ */
5146
+ max?: 24 | 34 | 44 | 54 | 64;
5147
+ }>;
5148
+ genders?: Array<('male' | 'female' | 'undetermined')>;
5149
+ };
5150
+ /**
5151
+ * Attach an existing Google Audience by numeric id instead of audience.
5152
+ */
5153
+ audienceId?: string;
5154
+ };
5155
+
5018
5156
  /**
5019
5157
  * Exactly one key. Omit the value (for example { productBrand: {} }) for the everything-else node of that level.
5020
5158
  */
@@ -5253,62 +5391,6 @@ export type GooglePmaxAssetGroupUpdate = {
5253
5391
  youtubeVideoIds?: Array<(string)>;
5254
5392
  };
5255
5393
 
5256
- export type GoogleRecommendation = {
5257
- /**
5258
- * customers/{customerId}/recommendations/{id}. Pass it to apply or dismiss.
5259
- */
5260
- resourceName: string;
5261
- id: string;
5262
- /**
5263
- * Google RecommendationType, such as CAMPAIGN_BUDGET, KEYWORD or SET_TARGET_CPA.
5264
- */
5265
- type: string;
5266
- dismissed: boolean;
5267
- campaignId: (string) | null;
5268
- /**
5269
- * Every campaign the recommendation targets (several for account-level types).
5270
- */
5271
- campaignIds: Array<(string)>;
5272
- adGroupId: (string) | null;
5273
- campaignBudgetId: (string) | null;
5274
- /**
5275
- * Google's estimate over its own window. Null when Google gives none for the type.
5276
- */
5277
- impact: {
5278
- base?: GoogleRecommendationMetrics;
5279
- potential?: GoogleRecommendationMetrics;
5280
- } | null;
5281
- /**
5282
- * The type-specific recommendation payload exactly as Google returns it (camelCase, amounts in micros), for example recommendedTargetCpaMicros or budgetOptions.
5283
- */
5284
- details: {
5285
- [key: string]: unknown;
5286
- } | null;
5287
- };
5288
-
5289
- export type GoogleRecommendationMetrics = {
5290
- impressions?: number;
5291
- clicks?: number;
5292
- /**
5293
- * Account currency units.
5294
- */
5295
- cost?: number;
5296
- conversions?: number;
5297
- conversionsValue?: number;
5298
- videoViews?: number;
5299
- };
5300
-
5301
- export type GoogleRecommendationResult = {
5302
- resourceName: string;
5303
- status: 'applied' | 'dismissed' | 'failed';
5304
- /**
5305
- * Google's message when status is failed.
5306
- */
5307
- error?: string;
5308
- };
5309
-
5310
- export type status13 = 'applied' | 'dismissed' | 'failed';
5311
-
5312
5394
  export type GoogleRsaDescription = {
5313
5395
  text: string;
5314
5396
  /**
@@ -5439,7 +5521,7 @@ export type kind = 'phone' | 'email';
5439
5521
 
5440
5522
  export type region = 'US' | 'GB';
5441
5523
 
5442
- export type status14 = 'ordering' | 'activating' | 'active' | 'suspended' | 'canceled' | 'failed';
5524
+ export type status13 = 'ordering' | 'activating' | 'active' | 'suspended' | 'canceled' | 'failed';
5443
5525
 
5444
5526
  /**
5445
5527
  * Attachment snapshot inside an edit-history entry.
@@ -5511,7 +5593,7 @@ export type InboxWebhookConversation = {
5511
5593
  contactId?: string;
5512
5594
  };
5513
5595
 
5514
- export type status15 = 'active' | 'archived';
5596
+ export type status14 = 'active' | 'archived';
5515
5597
 
5516
5598
  /**
5517
5599
  * The conversation object included in conversation lifecycle webhook payloads (conversation.started, conversation.control_changed).
@@ -7098,7 +7180,7 @@ export type OwnedPhoneNumber = {
7098
7180
  }>;
7099
7181
  };
7100
7182
 
7101
- export type status16 = 'pending_payment' | 'pending_regulatory' | 'regulatory_declined' | 'provisioning' | 'verifying' | 'active' | 'suspended' | 'releasing' | 'released';
7183
+ export type status15 = 'pending_payment' | 'pending_regulatory' | 'regulatory_declined' | 'provisioning' | 'verifying' | 'active' | 'suspended' | 'releasing' | 'released';
7102
7184
 
7103
7185
  export type metaVerificationStatus = 'pending' | 'code_requested' | 'verified' | 'expired';
7104
7186
 
@@ -7223,7 +7305,7 @@ export type PlatformAnalytics = {
7223
7305
  errorMessage?: (string) | null;
7224
7306
  };
7225
7307
 
7226
- export type status17 = 'published' | 'failed';
7308
+ export type status16 = 'published' | 'failed';
7227
7309
 
7228
7310
  /**
7229
7311
  * Sync state of analytics for this platform
@@ -7625,7 +7707,7 @@ export type Product = {
7625
7707
 
7626
7708
  export type platform8 = 'shopify';
7627
7709
 
7628
- export type status18 = 'active' | 'draft' | 'archived';
7710
+ export type status17 = 'active' | 'draft' | 'archived';
7629
7711
 
7630
7712
  export type ProductImage = {
7631
7713
  url?: string;
@@ -8901,7 +8983,7 @@ export type UploadTokenResponse = {
8901
8983
  status?: 'pending' | 'completed' | 'expired';
8902
8984
  };
8903
8985
 
8904
- export type status19 = 'pending' | 'completed' | 'expired';
8986
+ export type status18 = 'pending' | 'completed' | 'expired';
8905
8987
 
8906
8988
  export type UploadTokenStatusResponse = {
8907
8989
  token?: string;
@@ -9400,7 +9482,7 @@ export type Verification = {
9400
9482
  resend?: boolean;
9401
9483
  };
9402
9484
 
9403
- export type status20 = 'pending' | 'approved' | 'expired' | 'max_attempts_reached' | 'canceled' | 'delivery_failed';
9485
+ export type status19 = 'pending' | 'approved' | 'expired' | 'max_attempts_reached' | 'canceled' | 'delivery_failed';
9404
9486
 
9405
9487
  export type channel4 = 'sms';
9406
9488
 
@@ -9527,7 +9609,7 @@ export type WebhookLog = {
9527
9609
  /**
9528
9610
  * Delivery outcome
9529
9611
  */
9530
- export type status21 = 'success' | 'failed';
9612
+ export type status20 = 'success' | 'failed';
9531
9613
 
9532
9614
  /**
9533
9615
  * Webhook payload for `account.ads.initial_sync_completed` events.
@@ -9639,7 +9721,7 @@ export type event = 'account.ads.initial_sync_completed';
9639
9721
  /**
9640
9722
  * Overall outcome of the initial sync.
9641
9723
  */
9642
- export type status22 = 'success' | 'failure';
9724
+ export type status21 = 'success' | 'failure';
9643
9725
 
9644
9726
  /**
9645
9727
  * Stable category for UX branching. New values may be added; existing ones are
@@ -11592,7 +11674,7 @@ export type event22 = 'post.platform.published' | 'post.platform.failed' | 'post
11592
11674
  /**
11593
11675
  * Terminal status this event fires on. Matches the event suffix.
11594
11676
  */
11595
- export type status23 = 'published' | 'failed' | 'deleted';
11677
+ export type status22 = 'published' | 'failed' | 'deleted';
11596
11678
 
11597
11679
  /**
11598
11680
  * Webhook payload for reaction received events (WhatsApp, Telegram, Slack, Instagram, Facebook Messenger, TikTok)
@@ -11858,7 +11940,7 @@ export type platform15 = 'whatsapp';
11858
11940
  /**
11859
11941
  * Normalized from Meta's `decision` (REJECTED -> DECLINED, DEFERRED -> PENDING_REVIEW; the review is still open on DEFERRED, not a rejection).
11860
11942
  */
11861
- export type status24 = 'APPROVED' | 'DECLINED' | 'PENDING_REVIEW';
11943
+ export type status23 = 'APPROVED' | 'DECLINED' | 'PENDING_REVIEW';
11862
11944
 
11863
11945
  /**
11864
11946
  * Webhook payload for the `whatsapp.template.category_updated` event.
@@ -12007,7 +12089,7 @@ export type event30 = 'whatsapp.template.status_updated';
12007
12089
  * request before the template is actually removed.
12008
12090
  *
12009
12091
  */
12010
- export type status25 = 'APPROVED' | 'REJECTED' | 'PENDING' | 'PAUSED' | 'DISABLED' | 'IN_APPEAL' | 'PENDING_DELETION';
12092
+ export type status24 = 'APPROVED' | 'REJECTED' | 'PENDING' | 'PAUSED' | 'DISABLED' | 'IN_APPEAL' | 'PENDING_DELETION';
12011
12093
 
12012
12094
  export type WhatsAppBodyComponent = {
12013
12095
  type: 'body';
@@ -12161,7 +12243,7 @@ export type WhatsAppSandboxSession = {
12161
12243
  * list responses.
12162
12244
  *
12163
12245
  */
12164
- export type status26 = 'pending' | 'active';
12246
+ export type status25 = 'pending' | 'active';
12165
12247
 
12166
12248
  export type WhatsAppTemplateButton = {
12167
12249
  type: 'quick_reply' | 'url' | 'phone_number' | 'otp' | 'copy_code' | 'flow' | 'mpm' | 'catalog';
@@ -12319,7 +12401,7 @@ export type WorkflowExecutionEvent = {
12319
12401
 
12320
12402
  export type action2 = 'execution_started' | 'execution_completed' | 'execution_exited' | 'execution_paused' | 'execution_resumed' | 'node_started' | 'node_completed' | 'node_failed' | 'node_skipped';
12321
12403
 
12322
- export type status27 = 'success' | 'failed' | 'pending';
12404
+ export type status26 = 'success' | 'failed' | 'pending';
12323
12405
 
12324
12406
  /**
12325
12407
  * A node in a workflow graph. `config` shape depends on `type`.
@@ -35410,103 +35492,6 @@ export type GetAdsSearchTermsError = (ErrorResponse | {
35410
35492
  error?: string;
35411
35493
  } | unknown);
35412
35494
 
35413
- export type ListGoogleRecommendationsData = {
35414
- query: {
35415
- /**
35416
- * Google ads SocialAccount id.
35417
- */
35418
- accountId: string;
35419
- /**
35420
- * Google customer id, digits only. Defaults to the connection's only customer.
35421
- */
35422
- adAccountId?: string;
35423
- /**
35424
- * Only recommendations targeting this campaign.
35425
- */
35426
- campaignId?: string;
35427
- /**
35428
- * Alias of adAccountId, kept for consistency with other Google endpoints.
35429
- * @deprecated
35430
- */
35431
- customerId?: string;
35432
- /**
35433
- * Comma-separated Google RecommendationType values, for example CAMPAIGN_BUDGET,KEYWORD,SET_TARGET_CPA.
35434
- */
35435
- types?: string;
35436
- };
35437
- };
35438
-
35439
- export type ListGoogleRecommendationsResponse = ({
35440
- adAccountId: string;
35441
- recommendations: Array<GoogleRecommendation>;
35442
- cachedAt: (string) | null;
35443
- stale: boolean;
35444
- });
35445
-
35446
- export type ListGoogleRecommendationsError = (ErrorResponse | {
35447
- error?: string;
35448
- } | unknown);
35449
-
35450
- export type ApplyGoogleRecommendationsData = {
35451
- body: {
35452
- /**
35453
- * Google ads SocialAccount id.
35454
- */
35455
- accountId: string;
35456
- /**
35457
- * Google customer id, digits only. Required when the connection has several customers.
35458
- */
35459
- adAccountId?: string;
35460
- recommendations: Array<{
35461
- /**
35462
- * Recommendation resource name from the list, or its id.
35463
- */
35464
- resourceName: string;
35465
- /**
35466
- * One key, such as campaignBudget, keyword, textAd, targetCpaOptIn, targetRoasOptIn, callAsset, calloutAsset, sitelinkAsset, moveUnusedBudget, responsiveSearchAd, responsiveSearchAdAsset, responsiveSearchAdImproveAdStrength, useBroadMatchKeyword, raiseTargetCpa, lowerTargetRoas, setTargetCpa, setTargetRoas, forecastingSetTargetCpa, forecastingSetTargetRoas, leadFormAsset, raiseTargetCpaBidTooLow, raiseTargetCpaPerformanceBidTooLow, lowerTargetRoasPerformanceBidTooLow, calloutExtension, callExtension or sitelinkExtension.
35467
- */
35468
- parameters?: {
35469
- [key: string]: unknown;
35470
- };
35471
- }>;
35472
- };
35473
- };
35474
-
35475
- export type ApplyGoogleRecommendationsResponse = ({
35476
- adAccountId: string;
35477
- results: Array<GoogleRecommendationResult>;
35478
- });
35479
-
35480
- export type ApplyGoogleRecommendationsError = (ErrorResponse | {
35481
- error?: string;
35482
- } | unknown);
35483
-
35484
- export type DismissGoogleRecommendationsData = {
35485
- body: {
35486
- /**
35487
- * Google ads SocialAccount id.
35488
- */
35489
- accountId: string;
35490
- /**
35491
- * Google customer id, digits only. Required when the connection has several customers.
35492
- */
35493
- adAccountId?: string;
35494
- /**
35495
- * Recommendation resource names from the list, or their ids.
35496
- */
35497
- resourceNames: Array<(string)>;
35498
- };
35499
- };
35500
-
35501
- export type DismissGoogleRecommendationsResponse = ({
35502
- adAccountId: string;
35503
- results: Array<GoogleRecommendationResult>;
35504
- });
35505
-
35506
- export type DismissGoogleRecommendationsError = (ErrorResponse | {
35507
- error?: string;
35508
- } | unknown);
35509
-
35510
35495
  export type ListBidStrategiesData = {
35511
35496
  query: {
35512
35497
  /**
@@ -42061,7 +42046,7 @@ export type CreateStandaloneAdData = {
42061
42046
  */
42062
42047
  aiDisclosure?: 'OPT_IN' | 'OPT_OUT';
42063
42048
  /**
42064
- * Google Performance Max validates the complete atomic campaign and asset group with no resource creation or local persistence. Google validation still downloads image URLs and consumes quota. On Meta, validates the complete inline campaign, ad set, creative and ad with execution_options validate_only. Nothing is uploaded or created, and validation bypasses Idempotency-Key storage. Supports a single image, all-image placementAssets with per-rule copy, existing video.id or existingCreativeId; other media pools, new video uploads, creatives[], adSetId and RESERVED buying return 400. Placement validation uses existing Instagram identities only. Existing campaign or creative nodes are marked skipped. Success returns 200 with per-node results; Meta rejection returns an error. ChatGPT (OpenAI) has no platform dry-run: Zernio runs every check it knows (creative lengths, budget, bid strategy, targeting) plus live lookups of the conversion event and target countries, and uploads or creates nothing. OpenAI's own write-time checks (image fetch, currency-specific minimums, ad review) still run only on a real create. Any other platform, or a Google campaignType other than pmax, returns 501 `feature_not_available`.
42049
+ * Google Performance Max validates the complete atomic campaign and asset group with no resource creation or local persistence. Google validation still downloads image URLs and consumes quota. On Meta, validates the complete inline campaign, ad set, creative and ad with execution_options validate_only. Nothing is uploaded or created, and validation bypasses Idempotency-Key storage. Supports a single image, all-image placementAssets with per-rule copy, existing video.id or existingCreativeId; other media pools, new video uploads, creatives[], adSetId and RESERVED buying return 400. Placement validation uses existing Instagram identities only. Existing campaign or creative nodes are marked skipped. Success returns 200 with per-node results; Meta rejection returns an error. ChatGPT (OpenAI) has no platform dry-run: Zernio runs every check it knows (creative lengths, budget, bid strategy, targeting) plus live lookups of the conversion event and target countries, and uploads or creates nothing. OpenAI's own write-time checks (image fetch, currency-specific minimums, ad review) still run only on a real create. Any other platform, or a Google campaignType other than pmax or demand_gen, returns 501 `feature_not_available`.
42065
42050
  */
42066
42051
  validateOnly?: boolean;
42067
42052
  /**
@@ -42811,14 +42796,15 @@ export type CreateStandaloneAdData = {
42811
42796
  */
42812
42797
  audienceId?: string;
42813
42798
  /**
42814
- * Google only. Performance Max requires assetGroup and is always created PAUSED.
42799
+ * Google only. Performance Max requires assetGroup and Demand Gen requires demandGen; both are always created PAUSED.
42815
42800
  */
42816
- campaignType?: 'display' | 'search' | 'pmax';
42801
+ campaignType?: 'display' | 'search' | 'pmax' | 'demand_gen';
42817
42802
  /**
42818
42803
  * Google only (400 elsewhere). Set on the new campaign; a request that joins an existing campaign (`existingCampaignId` or `adSetId`) returns 400, change that campaign with PUT /v1/ads/campaigns/{campaignId}/targeting instead. `presence` reaches only people in or regularly in the targeted locations.
42819
42804
  */
42820
42805
  locationTargetingType?: (GoogleLocationTargetingType);
42821
42806
  assetGroup?: GooglePmaxAssetGroupInput;
42807
+ demandGen?: GoogleDemandGenInput;
42822
42808
  /**
42823
42809
  * Google Search only. Keywords on the new ad group; entries are strings (BROAD) or { text, matchType }. Editable later via PUT /v1/ads/{adId} targeting.keywords.
42824
42810
  */
@@ -45316,6 +45302,281 @@ export type CreateConversionActionError = (ErrorResponse | {
45316
45302
  error?: string;
45317
45303
  } | unknown);
45318
45304
 
45305
+ export type ListAdConversionGoalsData = {
45306
+ query: {
45307
+ /**
45308
+ * Zernio SocialAccount id (Google Ads)
45309
+ */
45310
+ accountId: string;
45311
+ /**
45312
+ * Google customer id. Required when the connection has multiple customers.
45313
+ */
45314
+ adAccountId?: string;
45315
+ /**
45316
+ * Alias of adAccountId
45317
+ * @deprecated
45318
+ */
45319
+ customerId?: string;
45320
+ };
45321
+ };
45322
+
45323
+ export type ListAdConversionGoalsResponse = ({
45324
+ customerId?: string;
45325
+ goals?: Array<GoogleCustomerConversionGoal>;
45326
+ cachedAt?: (string) | null;
45327
+ stale?: boolean;
45328
+ });
45329
+
45330
+ export type ListAdConversionGoalsError = (ErrorResponse | {
45331
+ error?: string;
45332
+ } | unknown);
45333
+
45334
+ export type UpdateAdConversionGoalsData = {
45335
+ body: {
45336
+ /**
45337
+ * Zernio SocialAccount id (Google Ads)
45338
+ */
45339
+ accountId: string;
45340
+ /**
45341
+ * Google customer id. Required when the connection has multiple customers.
45342
+ */
45343
+ adAccountId?: string;
45344
+ /**
45345
+ * Alias of adAccountId
45346
+ * @deprecated
45347
+ */
45348
+ customerId?: string;
45349
+ goals: Array<GoogleBiddableGoalInput>;
45350
+ };
45351
+ };
45352
+
45353
+ export type UpdateAdConversionGoalsResponse = ({
45354
+ customerId?: string;
45355
+ goals?: Array<GoogleCustomerConversionGoal>;
45356
+ });
45357
+
45358
+ export type UpdateAdConversionGoalsError = (ErrorResponse | {
45359
+ error?: string;
45360
+ } | unknown);
45361
+
45362
+ export type UpdateConversionActionData = {
45363
+ body: {
45364
+ /**
45365
+ * Zernio SocialAccount id (Google Ads)
45366
+ */
45367
+ accountId: string;
45368
+ /**
45369
+ * Google customer id. Required when the connection has multiple customers.
45370
+ */
45371
+ adAccountId?: string;
45372
+ /**
45373
+ * Alias of adAccountId
45374
+ * @deprecated
45375
+ */
45376
+ customerId?: string;
45377
+ /**
45378
+ * true = primary, false = secondary
45379
+ */
45380
+ primaryForGoal: boolean;
45381
+ };
45382
+ path: {
45383
+ /**
45384
+ * Google conversion action id
45385
+ */
45386
+ actionId: string;
45387
+ };
45388
+ };
45389
+
45390
+ export type UpdateConversionActionResponse = ({
45391
+ customerId?: string;
45392
+ action?: {
45393
+ id?: string;
45394
+ primaryForGoal?: boolean;
45395
+ };
45396
+ });
45397
+
45398
+ export type UpdateConversionActionError = (ErrorResponse | {
45399
+ error?: string;
45400
+ } | unknown);
45401
+
45402
+ export type ListCustomConversionGoalsData = {
45403
+ query: {
45404
+ /**
45405
+ * Zernio SocialAccount id (Google Ads)
45406
+ */
45407
+ accountId: string;
45408
+ /**
45409
+ * Google customer id. Required when the connection has multiple customers.
45410
+ */
45411
+ adAccountId?: string;
45412
+ /**
45413
+ * Alias of adAccountId
45414
+ * @deprecated
45415
+ */
45416
+ customerId?: string;
45417
+ };
45418
+ };
45419
+
45420
+ export type ListCustomConversionGoalsResponse = ({
45421
+ customerId?: string;
45422
+ goals?: Array<GoogleCustomConversionGoal>;
45423
+ cachedAt?: (string) | null;
45424
+ stale?: boolean;
45425
+ });
45426
+
45427
+ export type ListCustomConversionGoalsError = (ErrorResponse | {
45428
+ error?: string;
45429
+ } | unknown);
45430
+
45431
+ export type CreateCustomConversionGoalData = {
45432
+ body: {
45433
+ /**
45434
+ * Zernio SocialAccount id (Google Ads)
45435
+ */
45436
+ accountId: string;
45437
+ /**
45438
+ * Google customer id. Required when the connection has multiple customers.
45439
+ */
45440
+ adAccountId?: string;
45441
+ /**
45442
+ * Alias of adAccountId
45443
+ * @deprecated
45444
+ */
45445
+ customerId?: string;
45446
+ name: string;
45447
+ conversionActionIds: Array<(string)>;
45448
+ };
45449
+ };
45450
+
45451
+ export type CreateCustomConversionGoalResponse = ({
45452
+ customerId?: string;
45453
+ id?: string;
45454
+ resourceName?: string;
45455
+ });
45456
+
45457
+ export type CreateCustomConversionGoalError = (ErrorResponse | {
45458
+ error?: string;
45459
+ } | unknown);
45460
+
45461
+ export type UpdateCustomConversionGoalData = {
45462
+ body: {
45463
+ /**
45464
+ * Zernio SocialAccount id (Google Ads)
45465
+ */
45466
+ accountId: string;
45467
+ /**
45468
+ * Google customer id. Required when the connection has multiple customers.
45469
+ */
45470
+ adAccountId?: string;
45471
+ /**
45472
+ * Alias of adAccountId
45473
+ * @deprecated
45474
+ */
45475
+ customerId?: string;
45476
+ name?: string;
45477
+ /**
45478
+ * Replaces the whole set.
45479
+ */
45480
+ conversionActionIds?: Array<(string)>;
45481
+ };
45482
+ path: {
45483
+ /**
45484
+ * Google custom conversion goal id
45485
+ */
45486
+ goalId: string;
45487
+ };
45488
+ };
45489
+
45490
+ export type UpdateCustomConversionGoalResponse = ({
45491
+ customerId?: string;
45492
+ goal?: GoogleCustomConversionGoal;
45493
+ });
45494
+
45495
+ export type UpdateCustomConversionGoalError = (ErrorResponse | {
45496
+ error?: string;
45497
+ } | unknown);
45498
+
45499
+ export type RemoveCustomConversionGoalData = {
45500
+ path: {
45501
+ /**
45502
+ * Google custom conversion goal id
45503
+ */
45504
+ goalId: string;
45505
+ };
45506
+ query: {
45507
+ /**
45508
+ * Zernio SocialAccount id (Google Ads)
45509
+ */
45510
+ accountId: string;
45511
+ /**
45512
+ * Google customer id. Required when the connection has multiple customers.
45513
+ */
45514
+ adAccountId?: string;
45515
+ /**
45516
+ * Alias of adAccountId
45517
+ * @deprecated
45518
+ */
45519
+ customerId?: string;
45520
+ };
45521
+ };
45522
+
45523
+ export type RemoveCustomConversionGoalResponse = ({
45524
+ customerId?: string;
45525
+ goalId?: string;
45526
+ /**
45527
+ * Always true on success
45528
+ */
45529
+ removed?: boolean;
45530
+ });
45531
+
45532
+ export type RemoveCustomConversionGoalError = (ErrorResponse | {
45533
+ error?: string;
45534
+ } | unknown);
45535
+
45536
+ export type GetCampaignConversionGoalsData = {
45537
+ path: {
45538
+ /**
45539
+ * Google campaign id
45540
+ */
45541
+ campaignId: string;
45542
+ };
45543
+ };
45544
+
45545
+ export type GetCampaignConversionGoalsResponse = ((GoogleCampaignConversionGoals & {
45546
+ customerId?: string;
45547
+ cachedAt?: (string) | null;
45548
+ stale?: boolean;
45549
+ }));
45550
+
45551
+ export type GetCampaignConversionGoalsError = (ErrorResponse | {
45552
+ error?: string;
45553
+ } | unknown);
45554
+
45555
+ export type UpdateCampaignConversionGoalsData = {
45556
+ body: {
45557
+ goals?: Array<GoogleBiddableGoalInput>;
45558
+ goalConfigLevel?: 'CUSTOMER' | 'CAMPAIGN';
45559
+ /**
45560
+ * Custom goal to bid on, or null to clear
45561
+ */
45562
+ customConversionGoalId?: (string) | null;
45563
+ };
45564
+ path: {
45565
+ /**
45566
+ * Google campaign id
45567
+ */
45568
+ campaignId: string;
45569
+ };
45570
+ };
45571
+
45572
+ export type UpdateCampaignConversionGoalsResponse = ((GoogleCampaignConversionGoals & {
45573
+ customerId?: string;
45574
+ }));
45575
+
45576
+ export type UpdateCampaignConversionGoalsError = (ErrorResponse | {
45577
+ error?: string;
45578
+ } | unknown);
45579
+
45319
45580
  export type ListConversionDestinationsData = {
45320
45581
  path: {
45321
45582
  /**