zernio-sdk 0.0.536 → 0.0.537

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 (66) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +29 -1
  3. data/docs/AdAudiencesApi.md +5 -5
  4. data/docs/AdCampaignsApi.md +142 -0
  5. data/docs/AdsApi.md +715 -33
  6. data/docs/CreateAdCampaign201Response.md +24 -0
  7. data/docs/CreateAdCampaignRequest.md +32 -0
  8. data/docs/CreateAdCreative201Response.md +20 -0
  9. data/docs/CreateAdCreativeRequest.md +38 -0
  10. data/docs/CreateAdCreativeRequestCarouselCardsInner.md +26 -0
  11. data/docs/DeleteAdCreative200Response.md +20 -0
  12. data/docs/DuplicateAd200Response.md +22 -0
  13. data/docs/DuplicateAdRequest.md +28 -0
  14. data/docs/DuplicateAdSet200Response.md +22 -0
  15. data/docs/DuplicateAdSetRequest.md +36 -0
  16. data/docs/GetAdCreative200Response.md +18 -0
  17. data/docs/ListAdCreatives200Response.md +22 -0
  18. data/docs/ListAdImages200Response.md +22 -0
  19. data/docs/ListAdLabels200Response.md +22 -0
  20. data/docs/ListHighDemandPeriods200Response.md +22 -0
  21. data/docs/UpdateAdCreative200Response.md +22 -0
  22. data/docs/UpdateAdCreativeRequest.md +20 -0
  23. data/lib/zernio-sdk/api/ad_audiences_api.rb +4 -4
  24. data/lib/zernio-sdk/api/ad_campaigns_api.rb +142 -0
  25. data/lib/zernio-sdk/api/ads_api.rb +748 -48
  26. data/lib/zernio-sdk/models/create_ad_campaign201_response.rb +210 -0
  27. data/lib/zernio-sdk/models/create_ad_campaign_request.rb +343 -0
  28. data/lib/zernio-sdk/models/create_ad_creative201_response.rb +157 -0
  29. data/lib/zernio-sdk/models/create_ad_creative_request.rb +390 -0
  30. data/lib/zernio-sdk/models/create_ad_creative_request_carousel_cards_inner.rb +255 -0
  31. data/lib/zernio-sdk/models/delete_ad_creative200_response.rb +156 -0
  32. data/lib/zernio-sdk/models/duplicate_ad200_response.rb +200 -0
  33. data/lib/zernio-sdk/models/duplicate_ad_request.rb +243 -0
  34. data/lib/zernio-sdk/models/duplicate_ad_set200_response.rb +201 -0
  35. data/lib/zernio-sdk/models/duplicate_ad_set_request.rb +302 -0
  36. data/lib/zernio-sdk/models/get_ad_creative200_response.rb +148 -0
  37. data/lib/zernio-sdk/models/list_ad_creatives200_response.rb +167 -0
  38. data/lib/zernio-sdk/models/list_ad_images200_response.rb +167 -0
  39. data/lib/zernio-sdk/models/list_ad_labels200_response.rb +167 -0
  40. data/lib/zernio-sdk/models/list_high_demand_periods200_response.rb +168 -0
  41. data/lib/zernio-sdk/models/update_ad_creative200_response.rb +165 -0
  42. data/lib/zernio-sdk/models/update_ad_creative_request.rb +200 -0
  43. data/lib/zernio-sdk/version.rb +1 -1
  44. data/lib/zernio-sdk.rb +17 -0
  45. data/openapi.yaml +445 -7
  46. data/spec/api/ad_audiences_api_spec.rb +2 -2
  47. data/spec/api/ad_campaigns_api_spec.rb +25 -0
  48. data/spec/api/ads_api_spec.rb +128 -0
  49. data/spec/models/create_ad_campaign201_response_spec.rb +58 -0
  50. data/spec/models/create_ad_campaign_request_spec.rb +94 -0
  51. data/spec/models/create_ad_creative201_response_spec.rb +42 -0
  52. data/spec/models/create_ad_creative_request_carousel_cards_inner_spec.rb +60 -0
  53. data/spec/models/create_ad_creative_request_spec.rb +96 -0
  54. data/spec/models/delete_ad_creative200_response_spec.rb +42 -0
  55. data/spec/models/duplicate_ad200_response_spec.rb +52 -0
  56. data/spec/models/duplicate_ad_request_spec.rb +74 -0
  57. data/spec/models/duplicate_ad_set200_response_spec.rb +52 -0
  58. data/spec/models/duplicate_ad_set_request_spec.rb +102 -0
  59. data/spec/models/get_ad_creative200_response_spec.rb +36 -0
  60. data/spec/models/list_ad_creatives200_response_spec.rb +48 -0
  61. data/spec/models/list_ad_images200_response_spec.rb +48 -0
  62. data/spec/models/list_ad_labels200_response_spec.rb +48 -0
  63. data/spec/models/list_high_demand_periods200_response_spec.rb +48 -0
  64. data/spec/models/update_ad_creative200_response_spec.rb +48 -0
  65. data/spec/models/update_ad_creative_request_spec.rb +42 -0
  66. metadata +70 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 70e9d1a92bf1c5e910be06d4e956b1d59cfcf5161c47502d461f6a60c8cdca78
4
- data.tar.gz: d28c78ab8c781d9d669dd468d0e4bf65d9dd47613ed39e06ed12c0aa48be5857
3
+ metadata.gz: 4734e2f1d0de3863bd3d7c2f0f0a8f372e113d2848c4b9bd708faba81a76b5d8
4
+ data.tar.gz: 727eaa2d9605c68701cc043445e205e9e9084a4a7dba07fa64a2ea14869bd5d2
5
5
  SHA512:
6
- metadata.gz: 8f0f26f1d3a9d96a76bfb176f3bda2ba1664ee87f54d867d80c4f3ab45ce07e56598232d913e58b5cb28dec06b4dd350e34da80e32f246b947d791556dbc05ab
7
- data.tar.gz: b8889fc5b4799a8459e50b335c26e38ed3d49ad77ea3e1e3fa0a9f76fa7f1100e3039361d1cedf60a9e8fe046c2cdd7e7b785fb8c8cd2b93ae9e7924032fc918
6
+ metadata.gz: 2eeee0f6a4049a7f21b7f6f49adc87cf2516bf2afb06e9ca26afa7230dcf740db1fead80630dda0ed49834713e8606be2e952ec59fd3cfa295fb83de1ed3c033
7
+ data.tar.gz: 1e928cce094be1c039aa4fd6908d508c3b55e6a68c1e431a5f776e6370607b529d7a95e73389da56c3e67190068614b164402a19579dca57ae162f2b06051459
data/README.md CHANGED
@@ -95,10 +95,12 @@ Class | Method | HTTP request | Description
95
95
  *Zernio::AdAudiencesApi* | [**delete_ad_audience**](docs/AdAudiencesApi.md#delete_ad_audience) | **DELETE** /v1/ads/audiences/{audienceId} | Delete custom audience
96
96
  *Zernio::AdAudiencesApi* | [**get_ad_audience**](docs/AdAudiencesApi.md#get_ad_audience) | **GET** /v1/ads/audiences/{audienceId} | Get audience details
97
97
  *Zernio::AdAudiencesApi* | [**list_ad_audiences**](docs/AdAudiencesApi.md#list_ad_audiences) | **GET** /v1/ads/audiences | List custom audiences
98
- *Zernio::AdAudiencesApi* | [**update_ad_audience**](docs/AdAudiencesApi.md#update_ad_audience) | **PUT** /v1/ads/audiences/{audienceId} | Update saved targeting audience
98
+ *Zernio::AdAudiencesApi* | [**update_ad_audience**](docs/AdAudiencesApi.md#update_ad_audience) | **PUT** /v1/ads/audiences/{audienceId} | Update an audience
99
99
  *Zernio::AdCampaignsApi* | [**bulk_update_ad_campaign_status**](docs/AdCampaignsApi.md#bulk_update_ad_campaign_status) | **POST** /v1/ads/campaigns/bulk-status | Pause or resume many campaigns
100
+ *Zernio::AdCampaignsApi* | [**create_ad_campaign**](docs/AdCampaignsApi.md#create_ad_campaign) | **POST** /v1/ads/campaigns | Create a standalone campaign (Meta)
100
101
  *Zernio::AdCampaignsApi* | [**delete_ad_campaign**](docs/AdCampaignsApi.md#delete_ad_campaign) | **DELETE** /v1/ads/campaigns/{campaignId} | Delete a campaign
101
102
  *Zernio::AdCampaignsApi* | [**duplicate_ad_campaign**](docs/AdCampaignsApi.md#duplicate_ad_campaign) | **POST** /v1/ads/campaigns/{campaignId}/duplicate | Duplicate a campaign
103
+ *Zernio::AdCampaignsApi* | [**duplicate_ad_set**](docs/AdCampaignsApi.md#duplicate_ad_set) | **POST** /v1/ads/ad-sets/{adSetId}/duplicate | Duplicate an ad set (Meta)
102
104
  *Zernio::AdCampaignsApi* | [**get_ad_set_details**](docs/AdCampaignsApi.md#get_ad_set_details) | **GET** /v1/ads/ad-sets/{adSetId} | Live ad-set details incl. learning phase (Meta)
103
105
  *Zernio::AdCampaignsApi* | [**get_ad_tree**](docs/AdCampaignsApi.md#get_ad_tree) | **GET** /v1/ads/tree | Get campaign tree
104
106
  *Zernio::AdCampaignsApi* | [**get_ads_timeline**](docs/AdCampaignsApi.md#get_ads_timeline) | **GET** /v1/ads/timeline | Get daily account metrics
@@ -112,6 +114,7 @@ Class | Method | HTTP request | Description
112
114
  *Zernio::AdsApi* | [**archive_lead_form**](docs/AdsApi.md#archive_lead_form) | **DELETE** /v1/ads/lead-forms/{formId} | Archive a lead form
113
115
  *Zernio::AdsApi* | [**boost_post**](docs/AdsApi.md#boost_post) | **POST** /v1/ads/boost | Boost post as ad
114
116
  *Zernio::AdsApi* | [**cancel_rf_reservation**](docs/AdsApi.md#cancel_rf_reservation) | **DELETE** /v1/ads/rf-predictions/{predictionId} | Cancel a Reach & Frequency reservation (Meta)
117
+ *Zernio::AdsApi* | [**create_ad_creative**](docs/AdsApi.md#create_ad_creative) | **POST** /v1/ads/creatives | Create a standalone creative (Meta)
115
118
  *Zernio::AdsApi* | [**create_ad_insights_report**](docs/AdsApi.md#create_ad_insights_report) | **POST** /v1/ads/insights/reports | Submit an async insights report run (Meta)
116
119
  *Zernio::AdsApi* | [**create_call_ad**](docs/AdsApi.md#create_call_ad) | **POST** /v1/ads/call | Create Click-to-Call ad
117
120
  *Zernio::AdsApi* | [**create_conversion_destination**](docs/AdsApi.md#create_conversion_destination) | **POST** /v1/accounts/{accountId}/conversion-destinations | Create a conversion destination
@@ -122,13 +125,16 @@ Class | Method | HTTP request | Description
122
125
  *Zernio::AdsApi* | [**create_standalone_ad**](docs/AdsApi.md#create_standalone_ad) | **POST** /v1/ads/create | Create standalone ad
123
126
  *Zernio::AdsApi* | [**create_test_lead**](docs/AdsApi.md#create_test_lead) | **POST** /v1/ads/lead-forms/{formId}/test-leads | Create a test lead
124
127
  *Zernio::AdsApi* | [**delete_ad**](docs/AdsApi.md#delete_ad) | **DELETE** /v1/ads/{adId} | Cancel an ad
128
+ *Zernio::AdsApi* | [**delete_ad_creative**](docs/AdsApi.md#delete_ad_creative) | **DELETE** /v1/ads/creatives/{creativeId} | Delete a creative (Meta)
125
129
  *Zernio::AdsApi* | [**delete_conversion_destination**](docs/AdsApi.md#delete_conversion_destination) | **DELETE** /v1/accounts/{accountId}/conversion-destinations/{destinationId} | Delete a conversion destination
130
+ *Zernio::AdsApi* | [**duplicate_ad**](docs/AdsApi.md#duplicate_ad) | **POST** /v1/ads/{adId}/duplicate | Duplicate an ad (Meta)
126
131
  *Zernio::AdsApi* | [**estimate_ad_reach**](docs/AdsApi.md#estimate_ad_reach) | **POST** /v1/ads/targeting/reach-estimate | Estimate audience reach
127
132
  *Zernio::AdsApi* | [**generate_ad_previews**](docs/AdsApi.md#generate_ad_previews) | **POST** /v1/ads/preview | Render pre-create ad previews (Meta)
128
133
  *Zernio::AdsApi* | [**get_ad**](docs/AdsApi.md#get_ad) | **GET** /v1/ads/{adId} | Get ad details
129
134
  *Zernio::AdsApi* | [**get_ad_account_finance**](docs/AdsApi.md#get_ad_account_finance) | **GET** /v1/ads/accounts/finance | Ad account finances (Meta)
130
135
  *Zernio::AdsApi* | [**get_ad_analytics**](docs/AdsApi.md#get_ad_analytics) | **GET** /v1/ads/{adId}/analytics | Get ad analytics
131
136
  *Zernio::AdsApi* | [**get_ad_comments**](docs/AdsApi.md#get_ad_comments) | **GET** /v1/ads/{adId}/comments | List comments on an ad
137
+ *Zernio::AdsApi* | [**get_ad_creative**](docs/AdsApi.md#get_ad_creative) | **GET** /v1/ads/creatives/{creativeId} | Creative details (Meta)
132
138
  *Zernio::AdsApi* | [**get_ad_insights_report**](docs/AdsApi.md#get_ad_insights_report) | **GET** /v1/ads/insights/reports/{reportRunId} | Poll an async insights report run (Meta)
133
139
  *Zernio::AdsApi* | [**get_ad_previews**](docs/AdsApi.md#get_ad_previews) | **GET** /v1/ads/{adId}/preview | Render previews of an existing ad (Meta)
134
140
  *Zernio::AdsApi* | [**get_ad_tracking_tags**](docs/AdsApi.md#get_ad_tracking_tags) | **GET** /v1/ads/{adId}/tracking-tags | Get ad tracking tags
@@ -146,12 +152,16 @@ Class | Method | HTTP request | Description
146
152
  *Zernio::AdsApi* | [**list_ad_accounts**](docs/AdsApi.md#list_ad_accounts) | **GET** /v1/ads/accounts | List ad accounts
147
153
  *Zernio::AdsApi* | [**list_ad_catalog_product_sets**](docs/AdsApi.md#list_ad_catalog_product_sets) | **GET** /v1/ads/catalogs/{catalogId}/product-sets | List a catalog's product sets
148
154
  *Zernio::AdsApi* | [**list_ad_catalogs**](docs/AdsApi.md#list_ad_catalogs) | **GET** /v1/ads/catalogs | List Meta product catalogs
155
+ *Zernio::AdsApi* | [**list_ad_creatives**](docs/AdsApi.md#list_ad_creatives) | **GET** /v1/ads/creatives | Creative library (Meta)
156
+ *Zernio::AdsApi* | [**list_ad_images**](docs/AdsApi.md#list_ad_images) | **GET** /v1/ads/images | Ad image library (Meta)
157
+ *Zernio::AdsApi* | [**list_ad_labels**](docs/AdsApi.md#list_ad_labels) | **GET** /v1/ads/labels | Ad labels (Meta)
149
158
  *Zernio::AdsApi* | [**list_ad_studies**](docs/AdsApi.md#list_ad_studies) | **GET** /v1/ads/studies | A/B tests and lift studies (Meta)
150
159
  *Zernio::AdsApi* | [**list_ads**](docs/AdsApi.md#list_ads) | **GET** /v1/ads | List ads
151
160
  *Zernio::AdsApi* | [**list_ads_business_centers**](docs/AdsApi.md#list_ads_business_centers) | **GET** /v1/ads/business-centers | List TikTok Business Centers
152
161
  *Zernio::AdsApi* | [**list_conversion_associations**](docs/AdsApi.md#list_conversion_associations) | **GET** /v1/accounts/{accountId}/conversion-destinations/{destinationId}/associations | List associated campaigns
153
162
  *Zernio::AdsApi* | [**list_conversion_destinations**](docs/AdsApi.md#list_conversion_destinations) | **GET** /v1/accounts/{accountId}/conversion-destinations | List conversion destinations
154
163
  *Zernio::AdsApi* | [**list_form_leads**](docs/AdsApi.md#list_form_leads) | **GET** /v1/ads/lead-forms/{formId}/leads | List leads for a single form
164
+ *Zernio::AdsApi* | [**list_high_demand_periods**](docs/AdsApi.md#list_high_demand_periods) | **GET** /v1/ads/high-demand-periods | High demand periods / budget schedules (Meta)
155
165
  *Zernio::AdsApi* | [**list_lead_forms**](docs/AdsApi.md#list_lead_forms) | **GET** /v1/ads/lead-forms | List lead forms
156
166
  *Zernio::AdsApi* | [**list_leads**](docs/AdsApi.md#list_leads) | **GET** /v1/ads/leads | List submitted leads
157
167
  *Zernio::AdsApi* | [**list_whats_app_conversions**](docs/AdsApi.md#list_whats_app_conversions) | **GET** /v1/whatsapp/conversions | List conversion events
@@ -164,6 +174,7 @@ Class | Method | HTTP request | Description
164
174
  *Zernio::AdsApi* | [**send_whats_app_conversion**](docs/AdsApi.md#send_whats_app_conversion) | **POST** /v1/whatsapp/conversions | Send WhatsApp conversion event
165
175
  *Zernio::AdsApi* | [**update_ad**](docs/AdsApi.md#update_ad) | **PUT** /v1/ads/{adId} | Update ad
166
176
  *Zernio::AdsApi* | [**update_ad_account**](docs/AdsApi.md#update_ad_account) | **PATCH** /v1/ads/accounts | Update ad account settings
177
+ *Zernio::AdsApi* | [**update_ad_creative**](docs/AdsApi.md#update_ad_creative) | **PUT** /v1/ads/creatives/{creativeId} | Rename a creative (Meta)
167
178
  *Zernio::AdsApi* | [**update_ad_status**](docs/AdsApi.md#update_ad_status) | **PUT** /v1/ads/{adId}/status | Pause or resume a single ad
168
179
  *Zernio::AdsApi* | [**update_ad_tracking_tags**](docs/AdsApi.md#update_ad_tracking_tags) | **PATCH** /v1/ads/{adId}/tracking-tags | Set ad tracking tags
169
180
  *Zernio::AdsApi* | [**update_conversion_destination**](docs/AdsApi.md#update_conversion_destination) | **PATCH** /v1/accounts/{accountId}/conversion-destinations/{destinationId} | Update a conversion destination
@@ -703,6 +714,11 @@ Class | Method | HTTP request | Description
703
714
  - [Zernio::CreateAccountGroupRequest](docs/CreateAccountGroupRequest.md)
704
715
  - [Zernio::CreateAdAudience201Response](docs/CreateAdAudience201Response.md)
705
716
  - [Zernio::CreateAdAudienceRequest](docs/CreateAdAudienceRequest.md)
717
+ - [Zernio::CreateAdCampaign201Response](docs/CreateAdCampaign201Response.md)
718
+ - [Zernio::CreateAdCampaignRequest](docs/CreateAdCampaignRequest.md)
719
+ - [Zernio::CreateAdCreative201Response](docs/CreateAdCreative201Response.md)
720
+ - [Zernio::CreateAdCreativeRequest](docs/CreateAdCreativeRequest.md)
721
+ - [Zernio::CreateAdCreativeRequestCarouselCardsInner](docs/CreateAdCreativeRequestCarouselCardsInner.md)
706
722
  - [Zernio::CreateAdInsightsReport202Response](docs/CreateAdInsightsReport202Response.md)
707
723
  - [Zernio::CreateAdInsightsReportRequest](docs/CreateAdInsightsReportRequest.md)
708
724
  - [Zernio::CreateAdInsightsReportRequestFilteringInner](docs/CreateAdInsightsReportRequestFilteringInner.md)
@@ -856,6 +872,7 @@ Class | Method | HTTP request | Description
856
872
  - [Zernio::DeleteAccountGroup200Response](docs/DeleteAccountGroup200Response.md)
857
873
  - [Zernio::DeleteAdCampaign200Response](docs/DeleteAdCampaign200Response.md)
858
874
  - [Zernio::DeleteAdCampaignRequest](docs/DeleteAdCampaignRequest.md)
875
+ - [Zernio::DeleteAdCreative200Response](docs/DeleteAdCreative200Response.md)
859
876
  - [Zernio::DeleteDiscordScheduledEvent200Response](docs/DeleteDiscordScheduledEvent200Response.md)
860
877
  - [Zernio::DeleteGoogleBusinessMedia200Response](docs/DeleteGoogleBusinessMedia200Response.md)
861
878
  - [Zernio::DeleteGoogleBusinessPlaceAction200Response](docs/DeleteGoogleBusinessPlaceAction200Response.md)
@@ -883,8 +900,12 @@ Class | Method | HTTP request | Description
883
900
  - [Zernio::DiscordScheduledEvent](docs/DiscordScheduledEvent.md)
884
901
  - [Zernio::DiscordScheduledEventEntityMetadata](docs/DiscordScheduledEventEntityMetadata.md)
885
902
  - [Zernio::DmButton](docs/DmButton.md)
903
+ - [Zernio::DuplicateAd200Response](docs/DuplicateAd200Response.md)
886
904
  - [Zernio::DuplicateAdCampaign200Response](docs/DuplicateAdCampaign200Response.md)
887
905
  - [Zernio::DuplicateAdCampaignRequest](docs/DuplicateAdCampaignRequest.md)
906
+ - [Zernio::DuplicateAdRequest](docs/DuplicateAdRequest.md)
907
+ - [Zernio::DuplicateAdSet200Response](docs/DuplicateAdSet200Response.md)
908
+ - [Zernio::DuplicateAdSetRequest](docs/DuplicateAdSetRequest.md)
888
909
  - [Zernio::DuplicateWorkflow201Response](docs/DuplicateWorkflow201Response.md)
889
910
  - [Zernio::DuplicateWorkflow201ResponseWorkflow](docs/DuplicateWorkflow201ResponseWorkflow.md)
890
911
  - [Zernio::EditDiscordGuildRoleRequest](docs/EditDiscordGuildRoleRequest.md)
@@ -956,6 +977,7 @@ Class | Method | HTTP request | Description
956
977
  - [Zernio::GetAdComments200Response](docs/GetAdComments200Response.md)
957
978
  - [Zernio::GetAdComments200ResponseMeta](docs/GetAdComments200ResponseMeta.md)
958
979
  - [Zernio::GetAdComments200ResponsePagination](docs/GetAdComments200ResponsePagination.md)
980
+ - [Zernio::GetAdCreative200Response](docs/GetAdCreative200Response.md)
959
981
  - [Zernio::GetAdInsightsReport200Response](docs/GetAdInsightsReport200Response.md)
960
982
  - [Zernio::GetAdInsightsReport200ResponsePaging](docs/GetAdInsightsReport200ResponsePaging.md)
961
983
  - [Zernio::GetAdPreviews200Response](docs/GetAdPreviews200Response.md)
@@ -1319,6 +1341,9 @@ Class | Method | HTTP request | Description
1319
1341
  - [Zernio::ListAdCatalogProductSets200ResponseProductSetsInner](docs/ListAdCatalogProductSets200ResponseProductSetsInner.md)
1320
1342
  - [Zernio::ListAdCatalogs200Response](docs/ListAdCatalogs200Response.md)
1321
1343
  - [Zernio::ListAdCatalogs200ResponseCatalogsInner](docs/ListAdCatalogs200ResponseCatalogsInner.md)
1344
+ - [Zernio::ListAdCreatives200Response](docs/ListAdCreatives200Response.md)
1345
+ - [Zernio::ListAdImages200Response](docs/ListAdImages200Response.md)
1346
+ - [Zernio::ListAdLabels200Response](docs/ListAdLabels200Response.md)
1322
1347
  - [Zernio::ListAdStudies200Response](docs/ListAdStudies200Response.md)
1323
1348
  - [Zernio::ListAds200Response](docs/ListAds200Response.md)
1324
1349
  - [Zernio::ListAdsBusinessCenters200Response](docs/ListAdsBusinessCenters200Response.md)
@@ -1363,6 +1388,7 @@ Class | Method | HTTP request | Description
1363
1388
  - [Zernio::ListGoogleBusinessMedia200ResponseMediaItemsInnerLocationAssociation](docs/ListGoogleBusinessMedia200ResponseMediaItemsInnerLocationAssociation.md)
1364
1389
  - [Zernio::ListGoogleBusinessPlaceActions200Response](docs/ListGoogleBusinessPlaceActions200Response.md)
1365
1390
  - [Zernio::ListGoogleBusinessPlaceActions200ResponsePlaceActionLinksInner](docs/ListGoogleBusinessPlaceActions200ResponsePlaceActionLinksInner.md)
1391
+ - [Zernio::ListHighDemandPeriods200Response](docs/ListHighDemandPeriods200Response.md)
1366
1392
  - [Zernio::ListInboxComments200Response](docs/ListInboxComments200Response.md)
1367
1393
  - [Zernio::ListInboxComments200ResponseDataInner](docs/ListInboxComments200ResponseDataInner.md)
1368
1394
  - [Zernio::ListInboxConversationAnalytics200Response](docs/ListInboxConversationAnalytics200Response.md)
@@ -1752,6 +1778,8 @@ Class | Method | HTTP request | Description
1752
1778
  - [Zernio::UpdateAdCampaignRequestPlatformSpecificData](docs/UpdateAdCampaignRequestPlatformSpecificData.md)
1753
1779
  - [Zernio::UpdateAdCampaignStatus200Response](docs/UpdateAdCampaignStatus200Response.md)
1754
1780
  - [Zernio::UpdateAdCampaignStatusRequest](docs/UpdateAdCampaignStatusRequest.md)
1781
+ - [Zernio::UpdateAdCreative200Response](docs/UpdateAdCreative200Response.md)
1782
+ - [Zernio::UpdateAdCreativeRequest](docs/UpdateAdCreativeRequest.md)
1755
1783
  - [Zernio::UpdateAdRequest](docs/UpdateAdRequest.md)
1756
1784
  - [Zernio::UpdateAdRequestBudget](docs/UpdateAdRequestBudget.md)
1757
1785
  - [Zernio::UpdateAdRequestCreative](docs/UpdateAdRequestCreative.md)
@@ -9,7 +9,7 @@ All URIs are relative to *https://zernio.com/api*
9
9
  | [**delete_ad_audience**](AdAudiencesApi.md#delete_ad_audience) | **DELETE** /v1/ads/audiences/{audienceId} | Delete custom audience |
10
10
  | [**get_ad_audience**](AdAudiencesApi.md#get_ad_audience) | **GET** /v1/ads/audiences/{audienceId} | Get audience details |
11
11
  | [**list_ad_audiences**](AdAudiencesApi.md#list_ad_audiences) | **GET** /v1/ads/audiences | List custom audiences |
12
- | [**update_ad_audience**](AdAudiencesApi.md#update_ad_audience) | **PUT** /v1/ads/audiences/{audienceId} | Update saved targeting audience |
12
+ | [**update_ad_audience**](AdAudiencesApi.md#update_ad_audience) | **PUT** /v1/ads/audiences/{audienceId} | Update an audience |
13
13
 
14
14
 
15
15
  ## add_users_to_ad_audience
@@ -371,9 +371,9 @@ end
371
371
 
372
372
  > <CreateAdAudience201Response> update_ad_audience(audience_id, update_ad_audience_request)
373
373
 
374
- Update saved targeting audience
374
+ Update an audience
375
375
 
376
- Update a `saved_targeting` audience's name, description, or spec. Only `saved_targeting` audiences are updatable (they exist only on Zernio); uploaded/derived audiences return 422, delete and recreate those instead. `spec` replaces the stored spec wholesale (no merge). Ads already created from this audience are unaffected, they snapshot the targeting at creation.
376
+ Update an audience. `saved_targeting` audiences accept `name`, `description`, and `spec` (full replacement, no merge, Zernio-only, no platform call). Platform audiences (uploaded/website/lookalike) accept `name` and `description` only, updated on the platform first and then mirrored locally; their rules are immutable, so `spec` returns 400 for them. Platform audience updates are Meta-only for now (other platforms return 501). Ads already created from a saved_targeting audience are unaffected, they snapshot the targeting at creation.
377
377
 
378
378
  ### Examples
379
379
 
@@ -391,7 +391,7 @@ audience_id = 'audience_id_example' # String |
391
391
  update_ad_audience_request = Zernio::UpdateAdAudienceRequest.new # UpdateAdAudienceRequest |
392
392
 
393
393
  begin
394
- # Update saved targeting audience
394
+ # Update an audience
395
395
  result = api_instance.update_ad_audience(audience_id, update_ad_audience_request)
396
396
  p result
397
397
  rescue Zernio::ApiError => e
@@ -407,7 +407,7 @@ This returns an Array which contains the response data, status code and headers.
407
407
 
408
408
  ```ruby
409
409
  begin
410
- # Update saved targeting audience
410
+ # Update an audience
411
411
  data, status_code, headers = api_instance.update_ad_audience_with_http_info(audience_id, update_ad_audience_request)
412
412
  p status_code # => 2xx
413
413
  p headers # => { ... }
@@ -5,8 +5,10 @@ All URIs are relative to *https://zernio.com/api*
5
5
  | Method | HTTP request | Description |
6
6
  | ------ | ------------ | ----------- |
7
7
  | [**bulk_update_ad_campaign_status**](AdCampaignsApi.md#bulk_update_ad_campaign_status) | **POST** /v1/ads/campaigns/bulk-status | Pause or resume many campaigns |
8
+ | [**create_ad_campaign**](AdCampaignsApi.md#create_ad_campaign) | **POST** /v1/ads/campaigns | Create a standalone campaign (Meta) |
8
9
  | [**delete_ad_campaign**](AdCampaignsApi.md#delete_ad_campaign) | **DELETE** /v1/ads/campaigns/{campaignId} | Delete a campaign |
9
10
  | [**duplicate_ad_campaign**](AdCampaignsApi.md#duplicate_ad_campaign) | **POST** /v1/ads/campaigns/{campaignId}/duplicate | Duplicate a campaign |
11
+ | [**duplicate_ad_set**](AdCampaignsApi.md#duplicate_ad_set) | **POST** /v1/ads/ad-sets/{adSetId}/duplicate | Duplicate an ad set (Meta) |
10
12
  | [**get_ad_set_details**](AdCampaignsApi.md#get_ad_set_details) | **GET** /v1/ads/ad-sets/{adSetId} | Live ad-set details incl. learning phase (Meta) |
11
13
  | [**get_ad_tree**](AdCampaignsApi.md#get_ad_tree) | **GET** /v1/ads/tree | Get campaign tree |
12
14
  | [**get_ads_timeline**](AdCampaignsApi.md#get_ads_timeline) | **GET** /v1/ads/timeline | Get daily account metrics |
@@ -86,6 +88,75 @@ end
86
88
  - **Accept**: application/json
87
89
 
88
90
 
91
+ ## create_ad_campaign
92
+
93
+ > <CreateAdCampaign201Response> create_ad_campaign(create_ad_campaign_request)
94
+
95
+ Create a standalone campaign (Meta)
96
+
97
+ Creates a campaign WITHOUT its first ad set / ad (the ODAX shell only). Ad sets join it later via `existingCampaignId` on the create endpoints. A budget here is campaign-level (CBO) by definition; omit it for ABO (each ad set carries its own budget). Created `PAUSED` unless `status: ACTIVE`. The campaign materializes in `/v1/ads/tree` via the next sync discovery pass. Meta only.
98
+
99
+ ### Examples
100
+
101
+ ```ruby
102
+ require 'time'
103
+ require 'zernio-sdk'
104
+ # setup authorization
105
+ Zernio.configure do |config|
106
+ # Configure Bearer authorization (JWT): bearerAuth
107
+ config.access_token = 'YOUR_BEARER_TOKEN'
108
+ end
109
+
110
+ api_instance = Zernio::AdCampaignsApi.new
111
+ create_ad_campaign_request = Zernio::CreateAdCampaignRequest.new({account_id: 'account_id_example', ad_account_id: 'ad_account_id_example', name: 'name_example', goal: 'engagement'}) # CreateAdCampaignRequest |
112
+
113
+ begin
114
+ # Create a standalone campaign (Meta)
115
+ result = api_instance.create_ad_campaign(create_ad_campaign_request)
116
+ p result
117
+ rescue Zernio::ApiError => e
118
+ puts "Error when calling AdCampaignsApi->create_ad_campaign: #{e}"
119
+ end
120
+ ```
121
+
122
+ #### Using the create_ad_campaign_with_http_info variant
123
+
124
+ This returns an Array which contains the response data, status code and headers.
125
+
126
+ > <Array(<CreateAdCampaign201Response>, Integer, Hash)> create_ad_campaign_with_http_info(create_ad_campaign_request)
127
+
128
+ ```ruby
129
+ begin
130
+ # Create a standalone campaign (Meta)
131
+ data, status_code, headers = api_instance.create_ad_campaign_with_http_info(create_ad_campaign_request)
132
+ p status_code # => 2xx
133
+ p headers # => { ... }
134
+ p data # => <CreateAdCampaign201Response>
135
+ rescue Zernio::ApiError => e
136
+ puts "Error when calling AdCampaignsApi->create_ad_campaign_with_http_info: #{e}"
137
+ end
138
+ ```
139
+
140
+ ### Parameters
141
+
142
+ | Name | Type | Description | Notes |
143
+ | ---- | ---- | ----------- | ----- |
144
+ | **create_ad_campaign_request** | [**CreateAdCampaignRequest**](CreateAdCampaignRequest.md) | | |
145
+
146
+ ### Return type
147
+
148
+ [**CreateAdCampaign201Response**](CreateAdCampaign201Response.md)
149
+
150
+ ### Authorization
151
+
152
+ [bearerAuth](../README.md#bearerAuth)
153
+
154
+ ### HTTP request headers
155
+
156
+ - **Content-Type**: application/json
157
+ - **Accept**: application/json
158
+
159
+
89
160
  ## delete_ad_campaign
90
161
 
91
162
  > <DeleteAdCampaign200Response> delete_ad_campaign(campaign_id, delete_ad_campaign_request)
@@ -228,6 +299,77 @@ end
228
299
  - **Accept**: application/json
229
300
 
230
301
 
302
+ ## duplicate_ad_set
303
+
304
+ > <DuplicateAdSet200Response> duplicate_ad_set(ad_set_id, duplicate_ad_set_request)
305
+
306
+ Duplicate an ad set (Meta)
307
+
308
+ Duplicates an ad set, including its ads and creatives by default (`deepCopy: true`), via Meta's native `POST /{adset-id}/copies`. The copy is created paused so callers can review before launching. `campaignId` retargets the copy into another campaign; omitted = the source's own campaign. The new hierarchy materializes asynchronously — sync discovery is triggered automatically (`syncAfter: false` to skip). Meta only.
309
+
310
+ ### Examples
311
+
312
+ ```ruby
313
+ require 'time'
314
+ require 'zernio-sdk'
315
+ # setup authorization
316
+ Zernio.configure do |config|
317
+ # Configure Bearer authorization (JWT): bearerAuth
318
+ config.access_token = 'YOUR_BEARER_TOKEN'
319
+ end
320
+
321
+ api_instance = Zernio::AdCampaignsApi.new
322
+ ad_set_id = 'ad_set_id_example' # String | Source platform ad set ID
323
+ duplicate_ad_set_request = Zernio::DuplicateAdSetRequest.new({platform: 'facebook'}) # DuplicateAdSetRequest |
324
+
325
+ begin
326
+ # Duplicate an ad set (Meta)
327
+ result = api_instance.duplicate_ad_set(ad_set_id, duplicate_ad_set_request)
328
+ p result
329
+ rescue Zernio::ApiError => e
330
+ puts "Error when calling AdCampaignsApi->duplicate_ad_set: #{e}"
331
+ end
332
+ ```
333
+
334
+ #### Using the duplicate_ad_set_with_http_info variant
335
+
336
+ This returns an Array which contains the response data, status code and headers.
337
+
338
+ > <Array(<DuplicateAdSet200Response>, Integer, Hash)> duplicate_ad_set_with_http_info(ad_set_id, duplicate_ad_set_request)
339
+
340
+ ```ruby
341
+ begin
342
+ # Duplicate an ad set (Meta)
343
+ data, status_code, headers = api_instance.duplicate_ad_set_with_http_info(ad_set_id, duplicate_ad_set_request)
344
+ p status_code # => 2xx
345
+ p headers # => { ... }
346
+ p data # => <DuplicateAdSet200Response>
347
+ rescue Zernio::ApiError => e
348
+ puts "Error when calling AdCampaignsApi->duplicate_ad_set_with_http_info: #{e}"
349
+ end
350
+ ```
351
+
352
+ ### Parameters
353
+
354
+ | Name | Type | Description | Notes |
355
+ | ---- | ---- | ----------- | ----- |
356
+ | **ad_set_id** | **String** | Source platform ad set ID | |
357
+ | **duplicate_ad_set_request** | [**DuplicateAdSetRequest**](DuplicateAdSetRequest.md) | | |
358
+
359
+ ### Return type
360
+
361
+ [**DuplicateAdSet200Response**](DuplicateAdSet200Response.md)
362
+
363
+ ### Authorization
364
+
365
+ [bearerAuth](../README.md#bearerAuth)
366
+
367
+ ### HTTP request headers
368
+
369
+ - **Content-Type**: application/json
370
+ - **Accept**: application/json
371
+
372
+
231
373
  ## get_ad_set_details
232
374
 
233
375
  > <GetAdSetDetails200Response> get_ad_set_details(ad_set_id, account_id, opts)