late-sdk 0.0.894 → 0.0.896

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 (109) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +26 -3
  3. data/docs/AdAccountsApi.md +446 -0
  4. data/docs/AdAnalyticsResponse.md +1 -1
  5. data/docs/AdAnalyticsResponseAnalytics.md +22 -0
  6. data/docs/AdCampaign.md +1 -1
  7. data/docs/AdCampaignBudget.md +11 -3
  8. data/docs/AdCampaignsApi.md +149 -3
  9. data/docs/AdInsightsApi.md +1 -1
  10. data/docs/AdNegativeKeywordList.md +26 -0
  11. data/docs/AdNegativeKeywordListKeyword.md +22 -0
  12. data/docs/BoostPostRequest.md +6 -4
  13. data/docs/CampaignAnalyticsResponseAnalytics.md +3 -1
  14. data/docs/CampaignAnalyticsResponseAnalyticsImpressionShareCache.md +20 -0
  15. data/docs/CampaignAnalyticsResponseAnalyticsSummary.md +96 -0
  16. data/docs/CampaignAnalyticsResponseCampaign.md +2 -0
  17. data/docs/CreateAdNegativeKeywordList201Response.md +24 -0
  18. data/docs/CreateAdNegativeKeywordListRequest.md +26 -0
  19. data/docs/CreateCallAdRequest.md +8 -2
  20. data/docs/CreateMessagingAdRequest.md +8 -2
  21. data/docs/CtwaAdRequestBody.md +8 -2
  22. data/docs/CtwaAdRequestBodyCreativesInner.md +7 -3
  23. data/docs/DeleteAdNegativeKeywordList200Response.md +20 -0
  24. data/docs/GetAdAnalytics202Response.md +1 -1
  25. data/docs/GetAdNegativeKeywordList200Response.md +24 -0
  26. data/docs/GetAdNegativeKeywordList200ResponseList.md +28 -0
  27. data/docs/ListAdNegativeKeywordLists200Response.md +24 -0
  28. data/docs/MediaItem.md +1 -1
  29. data/docs/MessagingAdsApi.md +10 -10
  30. data/docs/ReplaceAdNegativeKeywordListKeywords200Response.md +22 -0
  31. data/docs/ReplaceAdNegativeKeywordListKeywordsRequest.md +24 -0
  32. data/docs/ReplaceCampaignNegativeKeywordListsRequest.md +20 -0
  33. data/docs/UpdateAdCampaign200Response.md +1 -1
  34. data/docs/UpdateAdCampaignRequest.md +2 -0
  35. data/docs/UpdateAdNegativeKeywordList200Response.md +20 -0
  36. data/docs/UpdateAdNegativeKeywordListRequest.md +24 -0
  37. data/lib/zernio-sdk/api/ad_accounts_api.rb +500 -0
  38. data/lib/zernio-sdk/api/ad_campaigns_api.rb +160 -6
  39. data/lib/zernio-sdk/api/ad_insights_api.rb +2 -2
  40. data/lib/zernio-sdk/api/messaging_ads_api.rb +8 -8
  41. data/lib/zernio-sdk/models/ad_analytics_response.rb +1 -1
  42. data/lib/zernio-sdk/models/ad_analytics_response_analytics.rb +169 -0
  43. data/lib/zernio-sdk/models/ad_campaign.rb +3 -1
  44. data/lib/zernio-sdk/models/ad_campaign_budget.rb +99 -5
  45. data/lib/zernio-sdk/models/ad_negative_keyword_list.rb +209 -0
  46. data/lib/zernio-sdk/models/ad_negative_keyword_list_keyword.rb +222 -0
  47. data/lib/zernio-sdk/models/boost_post_request.rb +38 -7
  48. data/lib/zernio-sdk/models/campaign_analytics_response_analytics.rb +11 -2
  49. data/lib/zernio-sdk/models/campaign_analytics_response_analytics_impression_share_cache.rb +158 -0
  50. data/lib/zernio-sdk/models/campaign_analytics_response_analytics_summary.rb +550 -0
  51. data/lib/zernio-sdk/models/campaign_analytics_response_campaign.rb +11 -1
  52. data/lib/zernio-sdk/models/create_ad_negative_keyword_list201_response.rb +220 -0
  53. data/lib/zernio-sdk/models/create_ad_negative_keyword_list_request.rb +327 -0
  54. data/lib/zernio-sdk/models/create_call_ad_request.rb +94 -3
  55. data/lib/zernio-sdk/models/create_messaging_ad_request.rb +94 -3
  56. data/lib/zernio-sdk/models/ctwa_ad_request_body.rb +95 -4
  57. data/lib/zernio-sdk/models/ctwa_ad_request_body_creatives_inner.rb +67 -21
  58. data/lib/zernio-sdk/models/ctwa_ad_request_body_creatives_inner_video.rb +1 -1
  59. data/lib/zernio-sdk/models/ctwa_ad_request_body_video.rb +1 -1
  60. data/lib/zernio-sdk/models/{ad_campaign_campaign_budget.rb → delete_ad_negative_keyword_list200_response.rb} +35 -48
  61. data/lib/zernio-sdk/models/get_ad_analytics202_response.rb +1 -1
  62. data/lib/zernio-sdk/models/get_ad_negative_keyword_list200_response.rb +199 -0
  63. data/lib/zernio-sdk/models/get_ad_negative_keyword_list200_response_list.rb +227 -0
  64. data/lib/zernio-sdk/models/list_ad_negative_keyword_lists200_response.rb +201 -0
  65. data/lib/zernio-sdk/models/media_item.rb +1 -0
  66. data/lib/zernio-sdk/models/replace_ad_negative_keyword_list_keywords200_response.rb +189 -0
  67. data/lib/zernio-sdk/models/replace_ad_negative_keyword_list_keywords_request.rb +289 -0
  68. data/lib/zernio-sdk/models/replace_campaign_negative_keyword_lists_request.rb +219 -0
  69. data/lib/zernio-sdk/models/update_ad_campaign200_response.rb +1 -1
  70. data/lib/zernio-sdk/models/update_ad_campaign_request.rb +13 -1
  71. data/lib/zernio-sdk/models/update_ad_campaign_request_budget.rb +1 -1
  72. data/lib/zernio-sdk/models/update_ad_negative_keyword_list200_response.rb +178 -0
  73. data/lib/zernio-sdk/models/update_ad_negative_keyword_list_request.rb +296 -0
  74. data/lib/zernio-sdk/version.rb +1 -1
  75. data/lib/zernio-sdk.rb +16 -1
  76. data/openapi.yaml +981 -43
  77. data/spec/api/ad_accounts_api_spec.rb +82 -0
  78. data/spec/api/ad_campaigns_api_spec.rb +29 -3
  79. data/spec/api/ad_insights_api_spec.rb +1 -1
  80. data/spec/api/messaging_ads_api_spec.rb +4 -4
  81. data/spec/models/ad_analytics_response_analytics_spec.rb +48 -0
  82. data/spec/models/ad_campaign_budget_spec.rb +24 -0
  83. data/spec/models/ad_negative_keyword_list_keyword_spec.rb +52 -0
  84. data/spec/models/ad_negative_keyword_list_spec.rb +60 -0
  85. data/spec/models/boost_post_request_spec.rb +7 -1
  86. data/spec/models/campaign_analytics_response_analytics_impression_share_cache_spec.rb +42 -0
  87. data/spec/models/campaign_analytics_response_analytics_spec.rb +6 -0
  88. data/spec/models/campaign_analytics_response_analytics_summary_spec.rb +270 -0
  89. data/spec/models/campaign_analytics_response_campaign_spec.rb +6 -0
  90. data/spec/models/create_ad_negative_keyword_list201_response_spec.rb +54 -0
  91. data/spec/models/create_ad_negative_keyword_list_request_spec.rb +64 -0
  92. data/spec/models/create_call_ad_request_spec.rb +18 -0
  93. data/spec/models/create_messaging_ad_request_spec.rb +18 -0
  94. data/spec/models/ctwa_ad_request_body_creatives_inner_spec.rb +12 -0
  95. data/spec/models/ctwa_ad_request_body_spec.rb +18 -0
  96. data/spec/models/delete_ad_negative_keyword_list200_response_spec.rb +42 -0
  97. data/spec/models/get_ad_negative_keyword_list200_response_list_spec.rb +66 -0
  98. data/spec/models/get_ad_negative_keyword_list200_response_spec.rb +54 -0
  99. data/spec/models/list_ad_negative_keyword_lists200_response_spec.rb +54 -0
  100. data/spec/models/replace_ad_negative_keyword_list_keywords200_response_spec.rb +48 -0
  101. data/spec/models/replace_ad_negative_keyword_list_keywords_request_spec.rb +58 -0
  102. data/spec/models/{ad_campaign_campaign_budget_spec.rb → replace_campaign_negative_keyword_lists_request_spec.rb} +12 -12
  103. data/spec/models/update_ad_campaign_request_spec.rb +6 -0
  104. data/spec/models/update_ad_negative_keyword_list200_response_spec.rb +42 -0
  105. data/spec/models/update_ad_negative_keyword_list_request_spec.rb +58 -0
  106. data/zernio-sdk-0.0.896.gem +0 -0
  107. metadata +66 -6
  108. data/docs/AdCampaignCampaignBudget.md +0 -20
  109. data/zernio-sdk-0.0.894.gem +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1a259a945fd594c1bfd23c498200a393510990150bb85ef7210f75d794135653
4
- data.tar.gz: 9bad15db0867ff463396268d05a9ae5f7f2ad7e73a9b6f7bcf1fa3a5f3f873a6
3
+ metadata.gz: a441d29d10b8466fc4ea5c48800a5b73f4ab968636dff6fd5f4213d44424a66e
4
+ data.tar.gz: a5a92eb3397fead1067f59c2f84b823be002ad1fee30f85b7fad61ffc7e45334
5
5
  SHA512:
6
- metadata.gz: b07fc0e34514baffe3396fa954fa8adc57e2f9e7567eb388e7f44b0e50c9f627b258c1c50f722a50bb18924f1c98ce53bb705e014639f4f6aec590a3208a5230
7
- data.tar.gz: d5b8b011bbdc443ac0692f028ccd05749965f73e63a1ecb0fd884d736dd74558c5dd42b02f196c425a709a72a5e1af2ff5dda5b67532a8188574f523416ce768
6
+ metadata.gz: bfb7b059a8c8ca57243256e5750febbe3f1a46e8a807bb6df7d40212eda2ce046ba96d713ca49f8f0c9b29e51cd29e4531bec9b5c91cc63538098fee6ab6f06b
7
+ data.tar.gz: 2de5981606e9596f7b498acd7b0ea80a587964271a0669f15300a5dd81905e991101100e3d38ab2e0225e7abeff16d0295771aedea8d56c053e9d08a238474c8
data/README.md CHANGED
@@ -107,12 +107,15 @@ Class | Method | HTTP request | Description
107
107
  *Zernio::AccountsApi* | [**update_bluesky_settings**](docs/AccountsApi.md#update_bluesky_settings) | **PATCH** /v1/accounts/{accountId}/bluesky-settings | Update Bluesky account settings
108
108
  *Zernio::AccountsApi* | [**update_slack_settings**](docs/AccountsApi.md#update_slack_settings) | **PATCH** /v1/accounts/{accountId}/slack-settings | Update Slack account settings
109
109
  *Zernio::AdAccountsApi* | [**add_account_callouts**](docs/AdAccountsApi.md#add_account_callouts) | **POST** /v1/ads/accounts/callouts | Add account-level callout extensions
110
+ *Zernio::AdAccountsApi* | [**create_ad_negative_keyword_list**](docs/AdAccountsApi.md#create_ad_negative_keyword_list) | **POST** /v1/ads/accounts/negative-keyword-lists | Create a negative keyword list
110
111
  *Zernio::AdAccountsApi* | [**create_custom_conversion**](docs/AdAccountsApi.md#create_custom_conversion) | **POST** /v1/accounts/{accountId}/custom-conversions | Create or reuse a custom conversion
111
112
  *Zernio::AdAccountsApi* | [**create_high_demand_period**](docs/AdAccountsApi.md#create_high_demand_period) | **POST** /v1/ads/high-demand-periods | Schedule a budget increase
112
113
  *Zernio::AdAccountsApi* | [**create_value_rule_set**](docs/AdAccountsApi.md#create_value_rule_set) | **POST** /v1/ads/value-rule-sets | Create a value rule set
114
+ *Zernio::AdAccountsApi* | [**delete_ad_negative_keyword_list**](docs/AdAccountsApi.md#delete_ad_negative_keyword_list) | **DELETE** /v1/ads/accounts/negative-keyword-lists/{listId} | Delete a negative keyword list
113
115
  *Zernio::AdAccountsApi* | [**delete_value_rule_set**](docs/AdAccountsApi.md#delete_value_rule_set) | **DELETE** /v1/ads/value-rule-sets/{valueRuleSetId} | Delete a value rule set
114
116
  *Zernio::AdAccountsApi* | [**get_ad_account_finance**](docs/AdAccountsApi.md#get_ad_account_finance) | **GET** /v1/ads/accounts/finance | Ad account finances
115
117
  *Zernio::AdAccountsApi* | [**get_ad_comments**](docs/AdAccountsApi.md#get_ad_comments) | **GET** /v1/ads/{adId}/comments | List comments on an ad
118
+ *Zernio::AdAccountsApi* | [**get_ad_negative_keyword_list**](docs/AdAccountsApi.md#get_ad_negative_keyword_list) | **GET** /v1/ads/accounts/negative-keyword-lists/{listId} | Get a negative keyword list
116
119
  *Zernio::AdAccountsApi* | [**get_ads_activity_log**](docs/AdAccountsApi.md#get_ads_activity_log) | **GET** /v1/ads/activity | Ad account change / audit log
117
120
  *Zernio::AdAccountsApi* | [**get_dsa_defaults**](docs/AdAccountsApi.md#get_dsa_defaults) | **GET** /v1/ads/dsa-defaults | Get ad account DSA defaults
118
121
  *Zernio::AdAccountsApi* | [**get_dsa_recommendations**](docs/AdAccountsApi.md#get_dsa_recommendations) | **GET** /v1/ads/dsa-recommendations | List DSA beneficiary/payor suggestions
@@ -120,6 +123,7 @@ Class | Method | HTTP request | Description
120
123
  *Zernio::AdAccountsApi* | [**list_account_callouts**](docs/AdAccountsApi.md#list_account_callouts) | **GET** /v1/ads/accounts/callouts | List account-level callout extensions
121
124
  *Zernio::AdAccountsApi* | [**list_ad_accounts**](docs/AdAccountsApi.md#list_ad_accounts) | **GET** /v1/ads/accounts | List ad accounts
122
125
  *Zernio::AdAccountsApi* | [**list_ad_labels**](docs/AdAccountsApi.md#list_ad_labels) | **GET** /v1/ads/labels | Ad labels
126
+ *Zernio::AdAccountsApi* | [**list_ad_negative_keyword_lists**](docs/AdAccountsApi.md#list_ad_negative_keyword_lists) | **GET** /v1/ads/accounts/negative-keyword-lists | List negative keyword lists
123
127
  *Zernio::AdAccountsApi* | [**list_ad_studies**](docs/AdAccountsApi.md#list_ad_studies) | **GET** /v1/ads/studies | A/B tests and lift studies
124
128
  *Zernio::AdAccountsApi* | [**list_ads_business_centers**](docs/AdAccountsApi.md#list_ads_business_centers) | **GET** /v1/ads/business-centers | List TikTok Business Centers
125
129
  *Zernio::AdAccountsApi* | [**list_custom_conversions**](docs/AdAccountsApi.md#list_custom_conversions) | **GET** /v1/accounts/{accountId}/custom-conversions | List custom conversions
@@ -127,7 +131,9 @@ Class | Method | HTTP request | Description
127
131
  *Zernio::AdAccountsApi* | [**list_meta_businesses**](docs/AdAccountsApi.md#list_meta_businesses) | **GET** /v1/ads/businesses | Businesses list
128
132
  *Zernio::AdAccountsApi* | [**list_value_rule_sets**](docs/AdAccountsApi.md#list_value_rule_sets) | **GET** /v1/ads/value-rule-sets | List value rule sets
129
133
  *Zernio::AdAccountsApi* | [**remove_account_callout**](docs/AdAccountsApi.md#remove_account_callout) | **DELETE** /v1/ads/accounts/callouts | Remove an account-level callout extension
134
+ *Zernio::AdAccountsApi* | [**replace_ad_negative_keyword_list_keywords**](docs/AdAccountsApi.md#replace_ad_negative_keyword_list_keywords) | **PUT** /v1/ads/accounts/negative-keyword-lists/{listId}/keywords | Replace negative list keywords
130
135
  *Zernio::AdAccountsApi* | [**update_ad_account**](docs/AdAccountsApi.md#update_ad_account) | **PATCH** /v1/ads/accounts | Update ad account settings
136
+ *Zernio::AdAccountsApi* | [**update_ad_negative_keyword_list**](docs/AdAccountsApi.md#update_ad_negative_keyword_list) | **PUT** /v1/ads/accounts/negative-keyword-lists/{listId} | Rename a negative keyword list
131
137
  *Zernio::AdAccountsApi* | [**update_value_rule_set**](docs/AdAccountsApi.md#update_value_rule_set) | **PUT** /v1/ads/value-rule-sets/{valueRuleSetId} | Replace a value rule set
132
138
  *Zernio::AdAudiencesApi* | [**add_users_to_ad_audience**](docs/AdAudiencesApi.md#add_users_to_ad_audience) | **POST** /v1/ads/audiences/{audienceId}/users | Add users to audience
133
139
  *Zernio::AdAudiencesApi* | [**create_ad_audience**](docs/AdAudiencesApi.md#create_ad_audience) | **POST** /v1/ads/audiences | Create custom audience
@@ -161,8 +167,10 @@ Class | Method | HTTP request | Description
161
167
  *Zernio::AdCampaignsApi* | [**list_ad_sets**](docs/AdCampaignsApi.md#list_ad_sets) | **GET** /v1/ads/ad-sets | List ad sets
162
168
  *Zernio::AdCampaignsApi* | [**list_ads**](docs/AdCampaignsApi.md#list_ads) | **GET** /v1/ads | List ads
163
169
  *Zernio::AdCampaignsApi* | [**list_bid_strategies**](docs/AdCampaignsApi.md#list_bid_strategies) | **GET** /v1/ads/bid-strategies | List Google Ads portfolio bid strategies
170
+ *Zernio::AdCampaignsApi* | [**list_campaign_negative_keyword_lists**](docs/AdCampaignsApi.md#list_campaign_negative_keyword_lists) | **GET** /v1/ads/campaigns/{campaignId}/negative-keyword-lists | List campaign negative lists
164
171
  *Zernio::AdCampaignsApi* | [**list_campaign_negative_keywords**](docs/AdCampaignsApi.md#list_campaign_negative_keywords) | **GET** /v1/ads/campaigns/{campaignId}/negative-keywords | List campaign-level negative keywords
165
172
  *Zernio::AdCampaignsApi* | [**remove_ad_keyword**](docs/AdCampaignsApi.md#remove_ad_keyword) | **DELETE** /v1/ads/keywords/{keywordId} | Remove a Search keyword
173
+ *Zernio::AdCampaignsApi* | [**replace_campaign_negative_keyword_lists**](docs/AdCampaignsApi.md#replace_campaign_negative_keyword_lists) | **PUT** /v1/ads/campaigns/{campaignId}/negative-keyword-lists | Replace campaign negative lists
166
174
  *Zernio::AdCampaignsApi* | [**replace_campaign_negative_keywords**](docs/AdCampaignsApi.md#replace_campaign_negative_keywords) | **PUT** /v1/ads/campaigns/{campaignId}/negative-keywords | Replace campaign-level negative keywords
167
175
  *Zernio::AdCampaignsApi* | [**update_ad**](docs/AdCampaignsApi.md#update_ad) | **PUT** /v1/ads/{adId} | Update ad
168
176
  *Zernio::AdCampaignsApi* | [**update_ad_campaign**](docs/AdCampaignsApi.md#update_ad_campaign) | **PUT** /v1/ads/campaigns/{campaignId} | Update a campaign
@@ -498,8 +506,8 @@ Class | Method | HTTP request | Description
498
506
  *Zernio::MessagesApi* | [**update_inbox_conversation**](docs/MessagesApi.md#update_inbox_conversation) | **PUT** /v1/inbox/conversations/{conversationId} | Update conversation status
499
507
  *Zernio::MessagesApi* | [**upload_media_direct**](docs/MessagesApi.md#upload_media_direct) | **POST** /v1/media/upload-direct | Upload media file
500
508
  *Zernio::MessagingAdsApi* | [**create_call_ad**](docs/MessagingAdsApi.md#create_call_ad) | **POST** /v1/ads/call | Create Click-to-Call ad
501
- *Zernio::MessagingAdsApi* | [**create_ctwa_ad**](docs/MessagingAdsApi.md#create_ctwa_ad) | **POST** /v1/ads/ctwa | Create Click-to-WhatsApp ad (deprecated)
502
- *Zernio::MessagingAdsApi* | [**create_messaging_ad**](docs/MessagingAdsApi.md#create_messaging_ad) | **POST** /v1/ads/messaging | Create click-to-message ad (WhatsApp / Messenger / Instagram Direct)
509
+ *Zernio::MessagingAdsApi* | [**create_ctwa_ad**](docs/MessagingAdsApi.md#create_ctwa_ad) | **POST** /v1/ads/ctwa | Create CTWA ad (deprecated)
510
+ *Zernio::MessagingAdsApi* | [**create_messaging_ad**](docs/MessagingAdsApi.md#create_messaging_ad) | **POST** /v1/ads/messaging | Create messaging ad
503
511
  *Zernio::PhoneNumbersApi* | [**cancel_phone_number_port_in**](docs/PhoneNumbersApi.md#cancel_phone_number_port_in) | **DELETE** /v1/phone-numbers/port-in/{id} | Cancel a port-in
504
512
  *Zernio::PhoneNumbersApi* | [**check_phone_number_availability**](docs/PhoneNumbersApi.md#check_phone_number_availability) | **GET** /v1/phone-numbers/availability | Check country availability
505
513
  *Zernio::PhoneNumbersApi* | [**check_phone_number_portability**](docs/PhoneNumbersApi.md#check_phone_number_portability) | **POST** /v1/phone-numbers/port-in/check | Check portability
@@ -768,10 +776,10 @@ Class | Method | HTTP request | Description
768
776
  - [Zernio::Ad](docs/Ad.md)
769
777
  - [Zernio::AdAnalyticsResponse](docs/AdAnalyticsResponse.md)
770
778
  - [Zernio::AdAnalyticsResponseAd](docs/AdAnalyticsResponseAd.md)
779
+ - [Zernio::AdAnalyticsResponseAnalytics](docs/AdAnalyticsResponseAnalytics.md)
771
780
  - [Zernio::AdBudget](docs/AdBudget.md)
772
781
  - [Zernio::AdCampaign](docs/AdCampaign.md)
773
782
  - [Zernio::AdCampaignBudget](docs/AdCampaignBudget.md)
774
- - [Zernio::AdCampaignCampaignBudget](docs/AdCampaignCampaignBudget.md)
775
783
  - [Zernio::AdCreative](docs/AdCreative.md)
776
784
  - [Zernio::AdDailyMetrics](docs/AdDailyMetrics.md)
777
785
  - [Zernio::AdEngagementCounts](docs/AdEngagementCounts.md)
@@ -779,6 +787,8 @@ Class | Method | HTTP request | Description
779
787
  - [Zernio::AdKeyword](docs/AdKeyword.md)
780
788
  - [Zernio::AdKeywordMetrics](docs/AdKeywordMetrics.md)
781
789
  - [Zernio::AdMetrics](docs/AdMetrics.md)
790
+ - [Zernio::AdNegativeKeywordList](docs/AdNegativeKeywordList.md)
791
+ - [Zernio::AdNegativeKeywordListKeyword](docs/AdNegativeKeywordListKeyword.md)
782
792
  - [Zernio::AdPromotedObject](docs/AdPromotedObject.md)
783
793
  - [Zernio::AdReviewStatus](docs/AdReviewStatus.md)
784
794
  - [Zernio::AdSchedule](docs/AdSchedule.md)
@@ -930,6 +940,8 @@ Class | Method | HTTP request | Description
930
940
  - [Zernio::CampaignAnalyticsResponse](docs/CampaignAnalyticsResponse.md)
931
941
  - [Zernio::CampaignAnalyticsResponseAnalytics](docs/CampaignAnalyticsResponseAnalytics.md)
932
942
  - [Zernio::CampaignAnalyticsResponseAnalyticsDailyInner](docs/CampaignAnalyticsResponseAnalyticsDailyInner.md)
943
+ - [Zernio::CampaignAnalyticsResponseAnalyticsImpressionShareCache](docs/CampaignAnalyticsResponseAnalyticsImpressionShareCache.md)
944
+ - [Zernio::CampaignAnalyticsResponseAnalyticsSummary](docs/CampaignAnalyticsResponseAnalyticsSummary.md)
933
945
  - [Zernio::CampaignAnalyticsResponseCampaign](docs/CampaignAnalyticsResponseCampaign.md)
934
946
  - [Zernio::CampaignBidding](docs/CampaignBidding.md)
935
947
  - [Zernio::CampaignBiddingBidSpec](docs/CampaignBiddingBidSpec.md)
@@ -1000,6 +1012,8 @@ Class | Method | HTTP request | Description
1000
1012
  - [Zernio::CreateAdInsightsReportRequest](docs/CreateAdInsightsReportRequest.md)
1001
1013
  - [Zernio::CreateAdInsightsReportRequestFilteringInner](docs/CreateAdInsightsReportRequestFilteringInner.md)
1002
1014
  - [Zernio::CreateAdInsightsReportRequestTimeIncrement](docs/CreateAdInsightsReportRequestTimeIncrement.md)
1015
+ - [Zernio::CreateAdNegativeKeywordList201Response](docs/CreateAdNegativeKeywordList201Response.md)
1016
+ - [Zernio::CreateAdNegativeKeywordListRequest](docs/CreateAdNegativeKeywordListRequest.md)
1003
1017
  - [Zernio::CreateAdSet201Response](docs/CreateAdSet201Response.md)
1004
1018
  - [Zernio::CreateAdSetRequest](docs/CreateAdSetRequest.md)
1005
1019
  - [Zernio::CreateApiKey201Response](docs/CreateApiKey201Response.md)
@@ -1188,6 +1202,7 @@ Class | Method | HTTP request | Description
1188
1202
  - [Zernio::DeleteAdCampaign200Response](docs/DeleteAdCampaign200Response.md)
1189
1203
  - [Zernio::DeleteAdCampaignRequest](docs/DeleteAdCampaignRequest.md)
1190
1204
  - [Zernio::DeleteAdCreative200Response](docs/DeleteAdCreative200Response.md)
1205
+ - [Zernio::DeleteAdNegativeKeywordList200Response](docs/DeleteAdNegativeKeywordList200Response.md)
1191
1206
  - [Zernio::DeleteAdSet200Response](docs/DeleteAdSet200Response.md)
1192
1207
  - [Zernio::DeleteAdVideo200Response](docs/DeleteAdVideo200Response.md)
1193
1208
  - [Zernio::DeleteDiscordScheduledEvent200Response](docs/DeleteDiscordScheduledEvent200Response.md)
@@ -1317,6 +1332,8 @@ Class | Method | HTTP request | Description
1317
1332
  - [Zernio::GetAdInsightsReport200ResponsePaging](docs/GetAdInsightsReport200ResponsePaging.md)
1318
1333
  - [Zernio::GetAdMedia200Response](docs/GetAdMedia200Response.md)
1319
1334
  - [Zernio::GetAdMedia200ResponseMediaInner](docs/GetAdMedia200ResponseMediaInner.md)
1335
+ - [Zernio::GetAdNegativeKeywordList200Response](docs/GetAdNegativeKeywordList200Response.md)
1336
+ - [Zernio::GetAdNegativeKeywordList200ResponseList](docs/GetAdNegativeKeywordList200ResponseList.md)
1320
1337
  - [Zernio::GetAdPreviews200Response](docs/GetAdPreviews200Response.md)
1321
1338
  - [Zernio::GetAdSetDetails200Response](docs/GetAdSetDetails200Response.md)
1322
1339
  - [Zernio::GetAdTrackingTags200Response](docs/GetAdTrackingTags200Response.md)
@@ -1736,6 +1753,7 @@ Class | Method | HTTP request | Description
1736
1753
  - [Zernio::ListAdImages200Response](docs/ListAdImages200Response.md)
1737
1754
  - [Zernio::ListAdKeywords200Response](docs/ListAdKeywords200Response.md)
1738
1755
  - [Zernio::ListAdLabels200Response](docs/ListAdLabels200Response.md)
1756
+ - [Zernio::ListAdNegativeKeywordLists200Response](docs/ListAdNegativeKeywordLists200Response.md)
1739
1757
  - [Zernio::ListAdSets200Response](docs/ListAdSets200Response.md)
1740
1758
  - [Zernio::ListAdSets200ResponseAdSetsInner](docs/ListAdSets200ResponseAdSetsInner.md)
1741
1759
  - [Zernio::ListAdStudies200Response](docs/ListAdStudies200Response.md)
@@ -2033,6 +2051,9 @@ Class | Method | HTTP request | Description
2033
2051
  - [Zernio::ReplaceAdAudienceCompanies200Response](docs/ReplaceAdAudienceCompanies200Response.md)
2034
2052
  - [Zernio::ReplaceAdAudienceCompaniesRequest](docs/ReplaceAdAudienceCompaniesRequest.md)
2035
2053
  - [Zernio::ReplaceAdAudienceCompaniesRequestCompaniesInner](docs/ReplaceAdAudienceCompaniesRequestCompaniesInner.md)
2054
+ - [Zernio::ReplaceAdNegativeKeywordListKeywords200Response](docs/ReplaceAdNegativeKeywordListKeywords200Response.md)
2055
+ - [Zernio::ReplaceAdNegativeKeywordListKeywordsRequest](docs/ReplaceAdNegativeKeywordListKeywordsRequest.md)
2056
+ - [Zernio::ReplaceCampaignNegativeKeywordListsRequest](docs/ReplaceCampaignNegativeKeywordListsRequest.md)
2036
2057
  - [Zernio::ReplaceCampaignNegativeKeywords200Response](docs/ReplaceCampaignNegativeKeywords200Response.md)
2037
2058
  - [Zernio::ReplaceCampaignNegativeKeywordsRequest](docs/ReplaceCampaignNegativeKeywordsRequest.md)
2038
2059
  - [Zernio::ReplyToGoogleBusinessReview200Response](docs/ReplyToGoogleBusinessReview200Response.md)
@@ -2310,6 +2331,8 @@ Class | Method | HTTP request | Description
2310
2331
  - [Zernio::UpdateAdCreativeRequest](docs/UpdateAdCreativeRequest.md)
2311
2332
  - [Zernio::UpdateAdKeyword200Response](docs/UpdateAdKeyword200Response.md)
2312
2333
  - [Zernio::UpdateAdKeywordRequest](docs/UpdateAdKeywordRequest.md)
2334
+ - [Zernio::UpdateAdNegativeKeywordList200Response](docs/UpdateAdNegativeKeywordList200Response.md)
2335
+ - [Zernio::UpdateAdNegativeKeywordListRequest](docs/UpdateAdNegativeKeywordListRequest.md)
2313
2336
  - [Zernio::UpdateAdRequest](docs/UpdateAdRequest.md)
2314
2337
  - [Zernio::UpdateAdRequestBudget](docs/UpdateAdRequestBudget.md)
2315
2338
  - [Zernio::UpdateAdRequestCreative](docs/UpdateAdRequestCreative.md)
@@ -5,12 +5,15 @@ All URIs are relative to *https://zernio.com/api*
5
5
  | Method | HTTP request | Description |
6
6
  | ------ | ------------ | ----------- |
7
7
  | [**add_account_callouts**](AdAccountsApi.md#add_account_callouts) | **POST** /v1/ads/accounts/callouts | Add account-level callout extensions |
8
+ | [**create_ad_negative_keyword_list**](AdAccountsApi.md#create_ad_negative_keyword_list) | **POST** /v1/ads/accounts/negative-keyword-lists | Create a negative keyword list |
8
9
  | [**create_custom_conversion**](AdAccountsApi.md#create_custom_conversion) | **POST** /v1/accounts/{accountId}/custom-conversions | Create or reuse a custom conversion |
9
10
  | [**create_high_demand_period**](AdAccountsApi.md#create_high_demand_period) | **POST** /v1/ads/high-demand-periods | Schedule a budget increase |
10
11
  | [**create_value_rule_set**](AdAccountsApi.md#create_value_rule_set) | **POST** /v1/ads/value-rule-sets | Create a value rule set |
12
+ | [**delete_ad_negative_keyword_list**](AdAccountsApi.md#delete_ad_negative_keyword_list) | **DELETE** /v1/ads/accounts/negative-keyword-lists/{listId} | Delete a negative keyword list |
11
13
  | [**delete_value_rule_set**](AdAccountsApi.md#delete_value_rule_set) | **DELETE** /v1/ads/value-rule-sets/{valueRuleSetId} | Delete a value rule set |
12
14
  | [**get_ad_account_finance**](AdAccountsApi.md#get_ad_account_finance) | **GET** /v1/ads/accounts/finance | Ad account finances |
13
15
  | [**get_ad_comments**](AdAccountsApi.md#get_ad_comments) | **GET** /v1/ads/{adId}/comments | List comments on an ad |
16
+ | [**get_ad_negative_keyword_list**](AdAccountsApi.md#get_ad_negative_keyword_list) | **GET** /v1/ads/accounts/negative-keyword-lists/{listId} | Get a negative keyword list |
14
17
  | [**get_ads_activity_log**](AdAccountsApi.md#get_ads_activity_log) | **GET** /v1/ads/activity | Ad account change / audit log |
15
18
  | [**get_dsa_defaults**](AdAccountsApi.md#get_dsa_defaults) | **GET** /v1/ads/dsa-defaults | Get ad account DSA defaults |
16
19
  | [**get_dsa_recommendations**](AdAccountsApi.md#get_dsa_recommendations) | **GET** /v1/ads/dsa-recommendations | List DSA beneficiary/payor suggestions |
@@ -18,6 +21,7 @@ All URIs are relative to *https://zernio.com/api*
18
21
  | [**list_account_callouts**](AdAccountsApi.md#list_account_callouts) | **GET** /v1/ads/accounts/callouts | List account-level callout extensions |
19
22
  | [**list_ad_accounts**](AdAccountsApi.md#list_ad_accounts) | **GET** /v1/ads/accounts | List ad accounts |
20
23
  | [**list_ad_labels**](AdAccountsApi.md#list_ad_labels) | **GET** /v1/ads/labels | Ad labels |
24
+ | [**list_ad_negative_keyword_lists**](AdAccountsApi.md#list_ad_negative_keyword_lists) | **GET** /v1/ads/accounts/negative-keyword-lists | List negative keyword lists |
21
25
  | [**list_ad_studies**](AdAccountsApi.md#list_ad_studies) | **GET** /v1/ads/studies | A/B tests and lift studies |
22
26
  | [**list_ads_business_centers**](AdAccountsApi.md#list_ads_business_centers) | **GET** /v1/ads/business-centers | List TikTok Business Centers |
23
27
  | [**list_custom_conversions**](AdAccountsApi.md#list_custom_conversions) | **GET** /v1/accounts/{accountId}/custom-conversions | List custom conversions |
@@ -25,7 +29,9 @@ All URIs are relative to *https://zernio.com/api*
25
29
  | [**list_meta_businesses**](AdAccountsApi.md#list_meta_businesses) | **GET** /v1/ads/businesses | Businesses list |
26
30
  | [**list_value_rule_sets**](AdAccountsApi.md#list_value_rule_sets) | **GET** /v1/ads/value-rule-sets | List value rule sets |
27
31
  | [**remove_account_callout**](AdAccountsApi.md#remove_account_callout) | **DELETE** /v1/ads/accounts/callouts | Remove an account-level callout extension |
32
+ | [**replace_ad_negative_keyword_list_keywords**](AdAccountsApi.md#replace_ad_negative_keyword_list_keywords) | **PUT** /v1/ads/accounts/negative-keyword-lists/{listId}/keywords | Replace negative list keywords |
28
33
  | [**update_ad_account**](AdAccountsApi.md#update_ad_account) | **PATCH** /v1/ads/accounts | Update ad account settings |
34
+ | [**update_ad_negative_keyword_list**](AdAccountsApi.md#update_ad_negative_keyword_list) | **PUT** /v1/ads/accounts/negative-keyword-lists/{listId} | Rename a negative keyword list |
29
35
  | [**update_value_rule_set**](AdAccountsApi.md#update_value_rule_set) | **PUT** /v1/ads/value-rule-sets/{valueRuleSetId} | Replace a value rule set |
30
36
 
31
37
 
@@ -98,6 +104,75 @@ end
98
104
  - **Accept**: application/json
99
105
 
100
106
 
107
+ ## create_ad_negative_keyword_list
108
+
109
+ > <CreateAdNegativeKeywordList201Response> create_ad_negative_keyword_list(create_ad_negative_keyword_list_request)
110
+
111
+ Create a negative keyword list
112
+
113
+ Creates one Google Ads shared negative keyword list with optional initial keywords in a single atomic mutation. Daily quota is reserved for every mutate item, so large batches may return 429 before any change. This operation is not idempotent. The list is not attached to any campaign.
114
+
115
+ ### Examples
116
+
117
+ ```ruby
118
+ require 'time'
119
+ require 'zernio-sdk'
120
+ # setup authorization
121
+ Zernio.configure do |config|
122
+ # Configure Bearer authorization (JWT): bearerAuth
123
+ config.access_token = 'YOUR_BEARER_TOKEN'
124
+ end
125
+
126
+ api_instance = Zernio::AdAccountsApi.new
127
+ create_ad_negative_keyword_list_request = Zernio::CreateAdNegativeKeywordListRequest.new({account_id: 'account_id_example', name: 'name_example'}) # CreateAdNegativeKeywordListRequest |
128
+
129
+ begin
130
+ # Create a negative keyword list
131
+ result = api_instance.create_ad_negative_keyword_list(create_ad_negative_keyword_list_request)
132
+ p result
133
+ rescue Zernio::ApiError => e
134
+ puts "Error when calling AdAccountsApi->create_ad_negative_keyword_list: #{e}"
135
+ end
136
+ ```
137
+
138
+ #### Using the create_ad_negative_keyword_list_with_http_info variant
139
+
140
+ This returns an Array which contains the response data, status code and headers.
141
+
142
+ > <Array(<CreateAdNegativeKeywordList201Response>, Integer, Hash)> create_ad_negative_keyword_list_with_http_info(create_ad_negative_keyword_list_request)
143
+
144
+ ```ruby
145
+ begin
146
+ # Create a negative keyword list
147
+ data, status_code, headers = api_instance.create_ad_negative_keyword_list_with_http_info(create_ad_negative_keyword_list_request)
148
+ p status_code # => 2xx
149
+ p headers # => { ... }
150
+ p data # => <CreateAdNegativeKeywordList201Response>
151
+ rescue Zernio::ApiError => e
152
+ puts "Error when calling AdAccountsApi->create_ad_negative_keyword_list_with_http_info: #{e}"
153
+ end
154
+ ```
155
+
156
+ ### Parameters
157
+
158
+ | Name | Type | Description | Notes |
159
+ | ---- | ---- | ----------- | ----- |
160
+ | **create_ad_negative_keyword_list_request** | [**CreateAdNegativeKeywordListRequest**](CreateAdNegativeKeywordListRequest.md) | | |
161
+
162
+ ### Return type
163
+
164
+ [**CreateAdNegativeKeywordList201Response**](CreateAdNegativeKeywordList201Response.md)
165
+
166
+ ### Authorization
167
+
168
+ [bearerAuth](../README.md#bearerAuth)
169
+
170
+ ### HTTP request headers
171
+
172
+ - **Content-Type**: application/json
173
+ - **Accept**: application/json
174
+
175
+
101
176
  ## create_custom_conversion
102
177
 
103
178
  > <CustomConversionResult> create_custom_conversion(account_id, create_custom_conversion_request)
@@ -307,6 +382,83 @@ end
307
382
  - **Accept**: application/json
308
383
 
309
384
 
385
+ ## delete_ad_negative_keyword_list
386
+
387
+ > <DeleteAdNegativeKeywordList200Response> delete_ad_negative_keyword_list(list_id, account_id, opts)
388
+
389
+ Delete a negative keyword list
390
+
391
+ Removes the Google shared negative keyword list. Detach it from all campaigns first; an in-use list is rejected. Only NEGATIVE_KEYWORDS shared sets are supported.
392
+
393
+ ### Examples
394
+
395
+ ```ruby
396
+ require 'time'
397
+ require 'zernio-sdk'
398
+ # setup authorization
399
+ Zernio.configure do |config|
400
+ # Configure Bearer authorization (JWT): bearerAuth
401
+ config.access_token = 'YOUR_BEARER_TOKEN'
402
+ end
403
+
404
+ api_instance = Zernio::AdAccountsApi.new
405
+ list_id = 'list_id_example' # String |
406
+ account_id = 'account_id_example' # String |
407
+ opts = {
408
+ customer_id: 'customer_id_example', # String |
409
+ platform: 'facebook' # String |
410
+ }
411
+
412
+ begin
413
+ # Delete a negative keyword list
414
+ result = api_instance.delete_ad_negative_keyword_list(list_id, account_id, opts)
415
+ p result
416
+ rescue Zernio::ApiError => e
417
+ puts "Error when calling AdAccountsApi->delete_ad_negative_keyword_list: #{e}"
418
+ end
419
+ ```
420
+
421
+ #### Using the delete_ad_negative_keyword_list_with_http_info variant
422
+
423
+ This returns an Array which contains the response data, status code and headers.
424
+
425
+ > <Array(<DeleteAdNegativeKeywordList200Response>, Integer, Hash)> delete_ad_negative_keyword_list_with_http_info(list_id, account_id, opts)
426
+
427
+ ```ruby
428
+ begin
429
+ # Delete a negative keyword list
430
+ data, status_code, headers = api_instance.delete_ad_negative_keyword_list_with_http_info(list_id, account_id, opts)
431
+ p status_code # => 2xx
432
+ p headers # => { ... }
433
+ p data # => <DeleteAdNegativeKeywordList200Response>
434
+ rescue Zernio::ApiError => e
435
+ puts "Error when calling AdAccountsApi->delete_ad_negative_keyword_list_with_http_info: #{e}"
436
+ end
437
+ ```
438
+
439
+ ### Parameters
440
+
441
+ | Name | Type | Description | Notes |
442
+ | ---- | ---- | ----------- | ----- |
443
+ | **list_id** | **String** | | |
444
+ | **account_id** | **String** | | |
445
+ | **customer_id** | **String** | | [optional] |
446
+ | **platform** | **String** | | [optional] |
447
+
448
+ ### Return type
449
+
450
+ [**DeleteAdNegativeKeywordList200Response**](DeleteAdNegativeKeywordList200Response.md)
451
+
452
+ ### Authorization
453
+
454
+ [bearerAuth](../README.md#bearerAuth)
455
+
456
+ ### HTTP request headers
457
+
458
+ - **Content-Type**: Not defined
459
+ - **Accept**: application/json
460
+
461
+
310
462
  ## delete_value_rule_set
311
463
 
312
464
  > <DeleteValueRuleSet200Response> delete_value_rule_set(value_rule_set_id, account_id)
@@ -526,6 +678,83 @@ end
526
678
  - **Accept**: application/json
527
679
 
528
680
 
681
+ ## get_ad_negative_keyword_list
682
+
683
+ > <GetAdNegativeKeywordList200Response> get_ad_negative_keyword_list(list_id, account_id, opts)
684
+
685
+ Get a negative keyword list
686
+
687
+ Google Ads shared negative keyword lists (shared_set type NEGATIVE_KEYWORDS). Reads are cached for 10 minutes; quota exhaustion may return the last successful result for up to 7 days with stale=true. Customer selection is limited to this connection and its account scope. Includes the keywords and their criterion ids.
688
+
689
+ ### Examples
690
+
691
+ ```ruby
692
+ require 'time'
693
+ require 'zernio-sdk'
694
+ # setup authorization
695
+ Zernio.configure do |config|
696
+ # Configure Bearer authorization (JWT): bearerAuth
697
+ config.access_token = 'YOUR_BEARER_TOKEN'
698
+ end
699
+
700
+ api_instance = Zernio::AdAccountsApi.new
701
+ list_id = 'list_id_example' # String |
702
+ account_id = 'account_id_example' # String |
703
+ opts = {
704
+ customer_id: 'customer_id_example', # String |
705
+ platform: 'facebook' # String |
706
+ }
707
+
708
+ begin
709
+ # Get a negative keyword list
710
+ result = api_instance.get_ad_negative_keyword_list(list_id, account_id, opts)
711
+ p result
712
+ rescue Zernio::ApiError => e
713
+ puts "Error when calling AdAccountsApi->get_ad_negative_keyword_list: #{e}"
714
+ end
715
+ ```
716
+
717
+ #### Using the get_ad_negative_keyword_list_with_http_info variant
718
+
719
+ This returns an Array which contains the response data, status code and headers.
720
+
721
+ > <Array(<GetAdNegativeKeywordList200Response>, Integer, Hash)> get_ad_negative_keyword_list_with_http_info(list_id, account_id, opts)
722
+
723
+ ```ruby
724
+ begin
725
+ # Get a negative keyword list
726
+ data, status_code, headers = api_instance.get_ad_negative_keyword_list_with_http_info(list_id, account_id, opts)
727
+ p status_code # => 2xx
728
+ p headers # => { ... }
729
+ p data # => <GetAdNegativeKeywordList200Response>
730
+ rescue Zernio::ApiError => e
731
+ puts "Error when calling AdAccountsApi->get_ad_negative_keyword_list_with_http_info: #{e}"
732
+ end
733
+ ```
734
+
735
+ ### Parameters
736
+
737
+ | Name | Type | Description | Notes |
738
+ | ---- | ---- | ----------- | ----- |
739
+ | **list_id** | **String** | | |
740
+ | **account_id** | **String** | | |
741
+ | **customer_id** | **String** | | [optional] |
742
+ | **platform** | **String** | | [optional] |
743
+
744
+ ### Return type
745
+
746
+ [**GetAdNegativeKeywordList200Response**](GetAdNegativeKeywordList200Response.md)
747
+
748
+ ### Authorization
749
+
750
+ [bearerAuth](../README.md#bearerAuth)
751
+
752
+ ### HTTP request headers
753
+
754
+ - **Content-Type**: Not defined
755
+ - **Accept**: application/json
756
+
757
+
529
758
  ## get_ads_activity_log
530
759
 
531
760
  > <GetAdsActivityLog200Response> get_ads_activity_log(account_id, ad_account_id, opts)
@@ -1047,6 +1276,81 @@ end
1047
1276
  - **Accept**: application/json
1048
1277
 
1049
1278
 
1279
+ ## list_ad_negative_keyword_lists
1280
+
1281
+ > <ListAdNegativeKeywordLists200Response> list_ad_negative_keyword_lists(account_id, opts)
1282
+
1283
+ List negative keyword lists
1284
+
1285
+ Google Ads shared negative keyword lists (shared_set type NEGATIVE_KEYWORDS). Reads are cached for 10 minutes; quota exhaustion may return the last successful result for up to 7 days with stale=true. Customer selection is limited to this connection and its account scope.
1286
+
1287
+ ### Examples
1288
+
1289
+ ```ruby
1290
+ require 'time'
1291
+ require 'zernio-sdk'
1292
+ # setup authorization
1293
+ Zernio.configure do |config|
1294
+ # Configure Bearer authorization (JWT): bearerAuth
1295
+ config.access_token = 'YOUR_BEARER_TOKEN'
1296
+ end
1297
+
1298
+ api_instance = Zernio::AdAccountsApi.new
1299
+ account_id = 'account_id_example' # String |
1300
+ opts = {
1301
+ customer_id: 'customer_id_example', # String |
1302
+ platform: 'facebook' # String |
1303
+ }
1304
+
1305
+ begin
1306
+ # List negative keyword lists
1307
+ result = api_instance.list_ad_negative_keyword_lists(account_id, opts)
1308
+ p result
1309
+ rescue Zernio::ApiError => e
1310
+ puts "Error when calling AdAccountsApi->list_ad_negative_keyword_lists: #{e}"
1311
+ end
1312
+ ```
1313
+
1314
+ #### Using the list_ad_negative_keyword_lists_with_http_info variant
1315
+
1316
+ This returns an Array which contains the response data, status code and headers.
1317
+
1318
+ > <Array(<ListAdNegativeKeywordLists200Response>, Integer, Hash)> list_ad_negative_keyword_lists_with_http_info(account_id, opts)
1319
+
1320
+ ```ruby
1321
+ begin
1322
+ # List negative keyword lists
1323
+ data, status_code, headers = api_instance.list_ad_negative_keyword_lists_with_http_info(account_id, opts)
1324
+ p status_code # => 2xx
1325
+ p headers # => { ... }
1326
+ p data # => <ListAdNegativeKeywordLists200Response>
1327
+ rescue Zernio::ApiError => e
1328
+ puts "Error when calling AdAccountsApi->list_ad_negative_keyword_lists_with_http_info: #{e}"
1329
+ end
1330
+ ```
1331
+
1332
+ ### Parameters
1333
+
1334
+ | Name | Type | Description | Notes |
1335
+ | ---- | ---- | ----------- | ----- |
1336
+ | **account_id** | **String** | | |
1337
+ | **customer_id** | **String** | | [optional] |
1338
+ | **platform** | **String** | | [optional] |
1339
+
1340
+ ### Return type
1341
+
1342
+ [**ListAdNegativeKeywordLists200Response**](ListAdNegativeKeywordLists200Response.md)
1343
+
1344
+ ### Authorization
1345
+
1346
+ [bearerAuth](../README.md#bearerAuth)
1347
+
1348
+ ### HTTP request headers
1349
+
1350
+ - **Content-Type**: Not defined
1351
+ - **Accept**: application/json
1352
+
1353
+
1050
1354
  ## list_ad_studies
1051
1355
 
1052
1356
  > <ListAdStudies200Response> list_ad_studies(account_id, ad_account_id, opts)
@@ -1566,6 +1870,77 @@ end
1566
1870
  - **Accept**: application/json
1567
1871
 
1568
1872
 
1873
+ ## replace_ad_negative_keyword_list_keywords
1874
+
1875
+ > <ReplaceAdNegativeKeywordListKeywords200Response> replace_ad_negative_keyword_list_keywords(list_id, replace_ad_negative_keyword_list_keywords_request)
1876
+
1877
+ Replace negative list keywords
1878
+
1879
+ Replaces the full desired keyword set. Existing keywords are diffed by normalized text and match type; creates and removals are applied atomically in one mutation. Unchanged criteria retain their ids. Send an empty keywords array to clear the list. Changes affect every campaign using this list. Each create or removal consumes one daily operation; the entire batch must fit the remaining quota.
1880
+
1881
+ ### Examples
1882
+
1883
+ ```ruby
1884
+ require 'time'
1885
+ require 'zernio-sdk'
1886
+ # setup authorization
1887
+ Zernio.configure do |config|
1888
+ # Configure Bearer authorization (JWT): bearerAuth
1889
+ config.access_token = 'YOUR_BEARER_TOKEN'
1890
+ end
1891
+
1892
+ api_instance = Zernio::AdAccountsApi.new
1893
+ list_id = 'list_id_example' # String |
1894
+ replace_ad_negative_keyword_list_keywords_request = Zernio::ReplaceAdNegativeKeywordListKeywordsRequest.new({account_id: 'account_id_example', keywords: [Zernio::AddAdKeywordsRequestKeywordsInnerAnyOf.new({text: 'text_example'})]}) # ReplaceAdNegativeKeywordListKeywordsRequest |
1895
+
1896
+ begin
1897
+ # Replace negative list keywords
1898
+ result = api_instance.replace_ad_negative_keyword_list_keywords(list_id, replace_ad_negative_keyword_list_keywords_request)
1899
+ p result
1900
+ rescue Zernio::ApiError => e
1901
+ puts "Error when calling AdAccountsApi->replace_ad_negative_keyword_list_keywords: #{e}"
1902
+ end
1903
+ ```
1904
+
1905
+ #### Using the replace_ad_negative_keyword_list_keywords_with_http_info variant
1906
+
1907
+ This returns an Array which contains the response data, status code and headers.
1908
+
1909
+ > <Array(<ReplaceAdNegativeKeywordListKeywords200Response>, Integer, Hash)> replace_ad_negative_keyword_list_keywords_with_http_info(list_id, replace_ad_negative_keyword_list_keywords_request)
1910
+
1911
+ ```ruby
1912
+ begin
1913
+ # Replace negative list keywords
1914
+ data, status_code, headers = api_instance.replace_ad_negative_keyword_list_keywords_with_http_info(list_id, replace_ad_negative_keyword_list_keywords_request)
1915
+ p status_code # => 2xx
1916
+ p headers # => { ... }
1917
+ p data # => <ReplaceAdNegativeKeywordListKeywords200Response>
1918
+ rescue Zernio::ApiError => e
1919
+ puts "Error when calling AdAccountsApi->replace_ad_negative_keyword_list_keywords_with_http_info: #{e}"
1920
+ end
1921
+ ```
1922
+
1923
+ ### Parameters
1924
+
1925
+ | Name | Type | Description | Notes |
1926
+ | ---- | ---- | ----------- | ----- |
1927
+ | **list_id** | **String** | | |
1928
+ | **replace_ad_negative_keyword_list_keywords_request** | [**ReplaceAdNegativeKeywordListKeywordsRequest**](ReplaceAdNegativeKeywordListKeywordsRequest.md) | | |
1929
+
1930
+ ### Return type
1931
+
1932
+ [**ReplaceAdNegativeKeywordListKeywords200Response**](ReplaceAdNegativeKeywordListKeywords200Response.md)
1933
+
1934
+ ### Authorization
1935
+
1936
+ [bearerAuth](../README.md#bearerAuth)
1937
+
1938
+ ### HTTP request headers
1939
+
1940
+ - **Content-Type**: application/json
1941
+ - **Accept**: application/json
1942
+
1943
+
1569
1944
  ## update_ad_account
1570
1945
 
1571
1946
  > <UpdateAdAccount200Response> update_ad_account(update_ad_account_request)
@@ -1635,6 +2010,77 @@ end
1635
2010
  - **Accept**: application/json
1636
2011
 
1637
2012
 
2013
+ ## update_ad_negative_keyword_list
2014
+
2015
+ > <UpdateAdNegativeKeywordList200Response> update_ad_negative_keyword_list(list_id, update_ad_negative_keyword_list_request)
2016
+
2017
+ Rename a negative keyword list
2018
+
2019
+ Renames a shared negative keyword list. Keywords and campaign associations are unchanged. Use the keywords endpoint to edit the desired keyword set.
2020
+
2021
+ ### Examples
2022
+
2023
+ ```ruby
2024
+ require 'time'
2025
+ require 'zernio-sdk'
2026
+ # setup authorization
2027
+ Zernio.configure do |config|
2028
+ # Configure Bearer authorization (JWT): bearerAuth
2029
+ config.access_token = 'YOUR_BEARER_TOKEN'
2030
+ end
2031
+
2032
+ api_instance = Zernio::AdAccountsApi.new
2033
+ list_id = 'list_id_example' # String |
2034
+ update_ad_negative_keyword_list_request = Zernio::UpdateAdNegativeKeywordListRequest.new({account_id: 'account_id_example', name: 'name_example'}) # UpdateAdNegativeKeywordListRequest |
2035
+
2036
+ begin
2037
+ # Rename a negative keyword list
2038
+ result = api_instance.update_ad_negative_keyword_list(list_id, update_ad_negative_keyword_list_request)
2039
+ p result
2040
+ rescue Zernio::ApiError => e
2041
+ puts "Error when calling AdAccountsApi->update_ad_negative_keyword_list: #{e}"
2042
+ end
2043
+ ```
2044
+
2045
+ #### Using the update_ad_negative_keyword_list_with_http_info variant
2046
+
2047
+ This returns an Array which contains the response data, status code and headers.
2048
+
2049
+ > <Array(<UpdateAdNegativeKeywordList200Response>, Integer, Hash)> update_ad_negative_keyword_list_with_http_info(list_id, update_ad_negative_keyword_list_request)
2050
+
2051
+ ```ruby
2052
+ begin
2053
+ # Rename a negative keyword list
2054
+ data, status_code, headers = api_instance.update_ad_negative_keyword_list_with_http_info(list_id, update_ad_negative_keyword_list_request)
2055
+ p status_code # => 2xx
2056
+ p headers # => { ... }
2057
+ p data # => <UpdateAdNegativeKeywordList200Response>
2058
+ rescue Zernio::ApiError => e
2059
+ puts "Error when calling AdAccountsApi->update_ad_negative_keyword_list_with_http_info: #{e}"
2060
+ end
2061
+ ```
2062
+
2063
+ ### Parameters
2064
+
2065
+ | Name | Type | Description | Notes |
2066
+ | ---- | ---- | ----------- | ----- |
2067
+ | **list_id** | **String** | | |
2068
+ | **update_ad_negative_keyword_list_request** | [**UpdateAdNegativeKeywordListRequest**](UpdateAdNegativeKeywordListRequest.md) | | |
2069
+
2070
+ ### Return type
2071
+
2072
+ [**UpdateAdNegativeKeywordList200Response**](UpdateAdNegativeKeywordList200Response.md)
2073
+
2074
+ ### Authorization
2075
+
2076
+ [bearerAuth](../README.md#bearerAuth)
2077
+
2078
+ ### HTTP request headers
2079
+
2080
+ - **Content-Type**: application/json
2081
+ - **Accept**: application/json
2082
+
2083
+
1638
2084
  ## update_value_rule_set
1639
2085
 
1640
2086
  > <UpdateValueRuleSet200Response> update_value_rule_set(value_rule_set_id, update_value_rule_set_request)