late-sdk 0.0.899 → 0.0.900
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.
- checksums.yaml +4 -4
- data/README.md +21 -2
- data/docs/AdAccountsApi.md +463 -3
- data/docs/AdCampaignsApi.md +4 -4
- data/docs/AdTracking.md +20 -0
- data/docs/CreateAdCampaign200Response.md +26 -0
- data/docs/CreateAdCampaignRequest.md +8 -0
- data/docs/CreateCallAdRequest.md +2 -0
- data/docs/CreateMessagingAdRequest.md +2 -0
- data/docs/CreateStandaloneAdRequest.md +11 -3
- data/docs/CtwaAdRequestBody.md +2 -0
- data/docs/GetAdComments200ResponseMeta.md +10 -4
- data/docs/GetIosFourteenCampaignLimits200Response.md +18 -0
- data/docs/GetIosFourteenCampaignLimits200ResponseLimits.md +22 -0
- data/docs/HideAdComment200Response.md +22 -0
- data/docs/HideAdCommentRequest.md +18 -0
- data/docs/ListAdsInstagramAccounts200Response.md +22 -0
- data/docs/ListAdsInstagramAccounts200ResponseAccountsInner.md +26 -0
- data/docs/ListAdsInstagramAccounts200ResponsePagesInner.md +24 -0
- data/docs/ListAdsInstagramAccounts200ResponseResolved.md +22 -0
- data/docs/ListAdvertisableApplications200Response.md +18 -0
- data/docs/ListAdvertisableApplications200ResponseApplicationsInner.md +24 -0
- data/docs/MetaInstagramIdentityRef.md +22 -0
- data/docs/ReplyToAdComment200Response.md +20 -0
- data/docs/ReplyToAdCommentRequest.md +18 -0
- data/docs/TargetingSpec.md +4 -0
- data/lib/zernio-sdk/api/ad_accounts_api.rb +512 -4
- data/lib/zernio-sdk/api/ad_campaigns_api.rb +3 -3
- data/lib/zernio-sdk/models/{create_standalone_ad_request_tracking.rb → ad_tracking.rb} +5 -5
- data/lib/zernio-sdk/models/create_ad_campaign200_response.rb +231 -0
- data/lib/zernio-sdk/models/create_ad_campaign_request.rb +52 -1
- data/lib/zernio-sdk/models/create_call_ad_request.rb +10 -1
- data/lib/zernio-sdk/models/create_messaging_ad_request.rb +10 -1
- data/lib/zernio-sdk/models/create_standalone_ad_request.rb +98 -4
- data/lib/zernio-sdk/models/ctwa_ad_request_body.rb +10 -1
- data/lib/zernio-sdk/models/get_ad_comments200_response_meta.rb +36 -46
- data/lib/zernio-sdk/models/get_ios_fourteen_campaign_limits200_response.rb +164 -0
- data/lib/zernio-sdk/models/get_ios_fourteen_campaign_limits200_response_limits.rb +172 -0
- data/lib/zernio-sdk/models/hide_ad_comment200_response.rb +225 -0
- data/lib/zernio-sdk/models/hide_ad_comment_request.rb +165 -0
- data/lib/zernio-sdk/models/list_ads_instagram_accounts200_response.rb +220 -0
- data/lib/zernio-sdk/models/list_ads_instagram_accounts200_response_accounts_inner.rb +287 -0
- data/lib/zernio-sdk/models/list_ads_instagram_accounts200_response_pages_inner.rb +210 -0
- data/lib/zernio-sdk/models/list_ads_instagram_accounts200_response_resolved.rb +211 -0
- data/lib/zernio-sdk/models/list_advertisable_applications200_response.rb +166 -0
- data/lib/zernio-sdk/models/list_advertisable_applications200_response_applications_inner.rb +250 -0
- data/lib/zernio-sdk/models/meta_instagram_identity_ref.rb +202 -0
- data/lib/zernio-sdk/models/reply_to_ad_comment200_response.rb +215 -0
- data/lib/zernio-sdk/models/reply_to_ad_comment_request.rb +174 -0
- data/lib/zernio-sdk/models/targeting_spec.rb +63 -1
- data/lib/zernio-sdk/version.rb +1 -1
- data/lib/zernio-sdk.rb +15 -2
- data/openapi.yaml +618 -143
- data/spec/api/ad_accounts_api_spec.rb +91 -2
- data/spec/api/ad_campaigns_api_spec.rb +1 -1
- data/spec/models/{create_standalone_ad_request_tracking_spec.rb → ad_tracking_spec.rb} +6 -6
- data/spec/models/create_ad_campaign200_response_spec.rb +68 -0
- data/spec/models/create_ad_campaign_request_spec.rb +28 -0
- data/spec/models/create_call_ad_request_spec.rb +6 -0
- data/spec/models/create_messaging_ad_request_spec.rb +6 -0
- data/spec/models/create_standalone_ad_request_spec.rb +28 -0
- data/spec/models/ctwa_ad_request_body_spec.rb +6 -0
- data/spec/models/get_ad_comments200_response_meta_spec.rb +19 -1
- data/spec/models/get_ios_fourteen_campaign_limits200_response_limits_spec.rb +48 -0
- data/spec/models/get_ios_fourteen_campaign_limits200_response_spec.rb +36 -0
- data/spec/models/hide_ad_comment200_response_spec.rb +52 -0
- data/spec/models/hide_ad_comment_request_spec.rb +36 -0
- data/spec/models/list_ads_instagram_accounts200_response_accounts_inner_spec.rb +64 -0
- data/spec/models/list_ads_instagram_accounts200_response_pages_inner_spec.rb +54 -0
- data/spec/models/list_ads_instagram_accounts200_response_resolved_spec.rb +52 -0
- data/spec/models/list_ads_instagram_accounts200_response_spec.rb +48 -0
- data/spec/models/list_advertisable_applications200_response_applications_inner_spec.rb +54 -0
- data/spec/models/list_advertisable_applications200_response_spec.rb +36 -0
- data/spec/models/meta_instagram_identity_ref_spec.rb +48 -0
- data/spec/models/reply_to_ad_comment200_response_spec.rb +46 -0
- data/spec/models/reply_to_ad_comment_request_spec.rb +36 -0
- data/spec/models/targeting_spec_spec.rb +12 -0
- data/zernio-sdk-0.0.900.gem +0 -0
- metadata +62 -10
- data/docs/CreateStandaloneAdRequestPromotedObject.md +0 -38
- data/docs/CreateStandaloneAdRequestTracking.md +0 -20
- data/lib/zernio-sdk/models/create_standalone_ad_request_promoted_object.rb +0 -249
- data/spec/models/create_standalone_ad_request_promoted_object_spec.rb +0 -96
- data/zernio-sdk-0.0.899.gem +0 -0
data/docs/AdAccountsApi.md
CHANGED
|
@@ -9,6 +9,7 @@ All URIs are relative to *https://zernio.com/api*
|
|
|
9
9
|
| [**create_custom_conversion**](AdAccountsApi.md#create_custom_conversion) | **POST** /v1/accounts/{accountId}/custom-conversions | Create or reuse a custom conversion |
|
|
10
10
|
| [**create_high_demand_period**](AdAccountsApi.md#create_high_demand_period) | **POST** /v1/ads/high-demand-periods | Schedule a budget increase |
|
|
11
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_comment**](AdAccountsApi.md#delete_ad_comment) | **DELETE** /v1/ads/{adId}/comments/{commentId} | Delete an ad comment |
|
|
12
13
|
| [**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 |
|
|
13
14
|
| [**delete_value_rule_set**](AdAccountsApi.md#delete_value_rule_set) | **DELETE** /v1/ads/value-rule-sets/{valueRuleSetId} | Delete a value rule set |
|
|
14
15
|
| [**get_ad_account_finance**](AdAccountsApi.md#get_ad_account_finance) | **GET** /v1/ads/accounts/finance | Ad account finances |
|
|
@@ -17,19 +18,24 @@ All URIs are relative to *https://zernio.com/api*
|
|
|
17
18
|
| [**get_ads_activity_log**](AdAccountsApi.md#get_ads_activity_log) | **GET** /v1/ads/activity | Ad account change / audit log |
|
|
18
19
|
| [**get_dsa_defaults**](AdAccountsApi.md#get_dsa_defaults) | **GET** /v1/ads/dsa-defaults | Get ad account DSA defaults |
|
|
19
20
|
| [**get_dsa_recommendations**](AdAccountsApi.md#get_dsa_recommendations) | **GET** /v1/ads/dsa-recommendations | List DSA beneficiary/payor suggestions |
|
|
21
|
+
| [**get_ios_fourteen_campaign_limits**](AdAccountsApi.md#get_ios_fourteen_campaign_limits) | **GET** /v1/ads/ios-fourteen-campaign-limits | Get iOS 14 campaign limits |
|
|
20
22
|
| [**get_value_rule_set**](AdAccountsApi.md#get_value_rule_set) | **GET** /v1/ads/value-rule-sets/{valueRuleSetId} | Read a value rule set |
|
|
23
|
+
| [**hide_ad_comment**](AdAccountsApi.md#hide_ad_comment) | **POST** /v1/ads/{adId}/comments/{commentId}/hide | Hide or unhide an ad comment |
|
|
21
24
|
| [**list_account_callouts**](AdAccountsApi.md#list_account_callouts) | **GET** /v1/ads/accounts/callouts | List account-level callout extensions |
|
|
22
25
|
| [**list_ad_accounts**](AdAccountsApi.md#list_ad_accounts) | **GET** /v1/ads/accounts | List ad accounts |
|
|
23
26
|
| [**list_ad_labels**](AdAccountsApi.md#list_ad_labels) | **GET** /v1/ads/labels | Ad labels |
|
|
24
27
|
| [**list_ad_negative_keyword_lists**](AdAccountsApi.md#list_ad_negative_keyword_lists) | **GET** /v1/ads/accounts/negative-keyword-lists | List negative keyword lists |
|
|
25
28
|
| [**list_ad_studies**](AdAccountsApi.md#list_ad_studies) | **GET** /v1/ads/studies | A/B tests and lift studies |
|
|
26
29
|
| [**list_ads_business_centers**](AdAccountsApi.md#list_ads_business_centers) | **GET** /v1/ads/business-centers | List TikTok Business Centers |
|
|
30
|
+
| [**list_ads_instagram_accounts**](AdAccountsApi.md#list_ads_instagram_accounts) | **GET** /v1/ads/instagram-accounts | List Instagram ad identities |
|
|
31
|
+
| [**list_advertisable_applications**](AdAccountsApi.md#list_advertisable_applications) | **GET** /v1/ads/advertisable-applications | List advertisable apps |
|
|
27
32
|
| [**list_custom_conversions**](AdAccountsApi.md#list_custom_conversions) | **GET** /v1/accounts/{accountId}/custom-conversions | List custom conversions |
|
|
28
33
|
| [**list_high_demand_periods**](AdAccountsApi.md#list_high_demand_periods) | **GET** /v1/ads/high-demand-periods | High demand periods / budget schedules |
|
|
29
34
|
| [**list_meta_businesses**](AdAccountsApi.md#list_meta_businesses) | **GET** /v1/ads/businesses | Businesses list |
|
|
30
35
|
| [**list_value_rule_sets**](AdAccountsApi.md#list_value_rule_sets) | **GET** /v1/ads/value-rule-sets | List value rule sets |
|
|
31
36
|
| [**remove_account_callout**](AdAccountsApi.md#remove_account_callout) | **DELETE** /v1/ads/accounts/callouts | Remove an account-level callout extension |
|
|
32
37
|
| [**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 |
|
|
38
|
+
| [**reply_to_ad_comment**](AdAccountsApi.md#reply_to_ad_comment) | **POST** /v1/ads/{adId}/comments/{commentId}/reply | Reply to an ad comment |
|
|
33
39
|
| [**update_ad_account**](AdAccountsApi.md#update_ad_account) | **PATCH** /v1/ads/accounts | Update ad account settings |
|
|
34
40
|
| [**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 |
|
|
35
41
|
| [**update_value_rule_set**](AdAccountsApi.md#update_value_rule_set) | **PUT** /v1/ads/value-rule-sets/{valueRuleSetId} | Replace a value rule set |
|
|
@@ -382,6 +388,83 @@ end
|
|
|
382
388
|
- **Accept**: application/json
|
|
383
389
|
|
|
384
390
|
|
|
391
|
+
## delete_ad_comment
|
|
392
|
+
|
|
393
|
+
> <ReplyToAdComment200Response> delete_ad_comment(ad_id, comment_id, opts)
|
|
394
|
+
|
|
395
|
+
Delete an ad comment
|
|
396
|
+
|
|
397
|
+
Delete your own TikTok ad comment or reply. TikTok must return can_delete=true for the comment. Other users' comments can be hidden instead. Requires Ads access. The ad is resolved within the caller's accessible profiles. Before moderation, Zernio verifies that the comment belongs to this ad using TikTok's ad-group comment listing. The default search window is the last 30 days. Use since/until for older comments, with at most 30 days between the dates. Lookups scan at most 2,000 ad-group comments; narrow the date window if exceeded. Meta returns 501 feature_not_available with guidance to use the existing inbox comment endpoints and the account/post IDs from GET /v1/ads/{adId}/comments.
|
|
398
|
+
|
|
399
|
+
### Examples
|
|
400
|
+
|
|
401
|
+
```ruby
|
|
402
|
+
require 'time'
|
|
403
|
+
require 'zernio-sdk'
|
|
404
|
+
# setup authorization
|
|
405
|
+
Zernio.configure do |config|
|
|
406
|
+
# Configure Bearer authorization (JWT): bearerAuth
|
|
407
|
+
config.access_token = 'YOUR_BEARER_TOKEN'
|
|
408
|
+
end
|
|
409
|
+
|
|
410
|
+
api_instance = Zernio::AdAccountsApi.new
|
|
411
|
+
ad_id = 'ad_id_example' # String | Internal Zernio ad ID or indexed platform ad ID.
|
|
412
|
+
comment_id = 'comment_id_example' # String | TikTok comment ID from the ad comment listing.
|
|
413
|
+
opts = {
|
|
414
|
+
since: Date.parse('2013-10-20'), # Date | Start date of the comment lookup window. Defaults to 30 days before until.
|
|
415
|
+
_until: Date.parse('2013-10-20') # Date | End date of the comment lookup window. Defaults to today in UTC.
|
|
416
|
+
}
|
|
417
|
+
|
|
418
|
+
begin
|
|
419
|
+
# Delete an ad comment
|
|
420
|
+
result = api_instance.delete_ad_comment(ad_id, comment_id, opts)
|
|
421
|
+
p result
|
|
422
|
+
rescue Zernio::ApiError => e
|
|
423
|
+
puts "Error when calling AdAccountsApi->delete_ad_comment: #{e}"
|
|
424
|
+
end
|
|
425
|
+
```
|
|
426
|
+
|
|
427
|
+
#### Using the delete_ad_comment_with_http_info variant
|
|
428
|
+
|
|
429
|
+
This returns an Array which contains the response data, status code and headers.
|
|
430
|
+
|
|
431
|
+
> <Array(<ReplyToAdComment200Response>, Integer, Hash)> delete_ad_comment_with_http_info(ad_id, comment_id, opts)
|
|
432
|
+
|
|
433
|
+
```ruby
|
|
434
|
+
begin
|
|
435
|
+
# Delete an ad comment
|
|
436
|
+
data, status_code, headers = api_instance.delete_ad_comment_with_http_info(ad_id, comment_id, opts)
|
|
437
|
+
p status_code # => 2xx
|
|
438
|
+
p headers # => { ... }
|
|
439
|
+
p data # => <ReplyToAdComment200Response>
|
|
440
|
+
rescue Zernio::ApiError => e
|
|
441
|
+
puts "Error when calling AdAccountsApi->delete_ad_comment_with_http_info: #{e}"
|
|
442
|
+
end
|
|
443
|
+
```
|
|
444
|
+
|
|
445
|
+
### Parameters
|
|
446
|
+
|
|
447
|
+
| Name | Type | Description | Notes |
|
|
448
|
+
| ---- | ---- | ----------- | ----- |
|
|
449
|
+
| **ad_id** | **String** | Internal Zernio ad ID or indexed platform ad ID. | |
|
|
450
|
+
| **comment_id** | **String** | TikTok comment ID from the ad comment listing. | |
|
|
451
|
+
| **since** | **Date** | Start date of the comment lookup window. Defaults to 30 days before until. | [optional] |
|
|
452
|
+
| **_until** | **Date** | End date of the comment lookup window. Defaults to today in UTC. | [optional] |
|
|
453
|
+
|
|
454
|
+
### Return type
|
|
455
|
+
|
|
456
|
+
[**ReplyToAdComment200Response**](ReplyToAdComment200Response.md)
|
|
457
|
+
|
|
458
|
+
### Authorization
|
|
459
|
+
|
|
460
|
+
[bearerAuth](../README.md#bearerAuth)
|
|
461
|
+
|
|
462
|
+
### HTTP request headers
|
|
463
|
+
|
|
464
|
+
- **Content-Type**: Not defined
|
|
465
|
+
- **Accept**: application/json
|
|
466
|
+
|
|
467
|
+
|
|
385
468
|
## delete_ad_negative_keyword_list
|
|
386
469
|
|
|
387
470
|
> <DeleteAdNegativeKeywordList200Response> delete_ad_negative_keyword_list(list_id, account_id, opts)
|
|
@@ -607,7 +690,7 @@ end
|
|
|
607
690
|
|
|
608
691
|
List comments on an ad
|
|
609
692
|
|
|
610
|
-
Returns comments on an ad's underlying creative post. Useful for moderating or analyzing engagement on dark posts (ad creatives that never went live organically), which the regular GET /v1/inbox/comments/{postId} endpoint cannot serve because dark posts are not in Zernio's post database. An ad that runs on both Facebook feed and Instagram feed has two separate underlying posts with separate comment threads (the creative's effective_object_story_id and effective_instagram_media_id). Use the `placement` query param to pick one; with no param the Instagram side is returned when it exists, otherwise Facebook. The identifiers are read from the ad record (persisted during sync) with a Marketing-API fallback for ads that predate the field. For Instagram-placed comments, the Instagram account that runs the ad must be connected to Zernio, because those comments are read through that account's token. If no connected Instagram account on the profile can read the ad's media, the call returns ads_connection_required (the Facebook side, if any, is still readable via ?placement=facebook). Meta-only for
|
|
693
|
+
Returns comments on an ad's underlying creative post. Useful for moderating or analyzing engagement on dark posts (ad creatives that never went live organically), which the regular GET /v1/inbox/comments/{postId} endpoint cannot serve because dark posts are not in Zernio's post database. An ad that runs on both Facebook feed and Instagram feed has two separate underlying posts with separate comment threads (the creative's effective_object_story_id and effective_instagram_media_id). Use the `placement` query param to pick one; with no param the Instagram side is returned when it exists, otherwise Facebook. The identifiers are read from the ad record (persisted during sync) with a Marketing-API fallback for ads that predate the field. For Instagram-placed comments, the Instagram account that runs the ad must be connected to Zernio, because those comments are read through that account's token. If no connected Instagram account on the profile can read the ad's media, the call returns ads_connection_required (the Facebook side, if any, is still readable via ?placement=facebook). TikTok uses the connected TikTok Ads advertiser token and supports both paid video ads and Spark Ads. `since` and `until` select a date window of at most 30 days; the default is the last 30 days. TikTok searches by ad group, so Zernio filters each page to this ad. A page can be empty while `pagination.hasMore` is true. Reuse `pagination.cursor` with the same `limit`; the cursor retains the date window. `placement` is Meta-only and returns a 400 for TikTok. TikTok returns replies as separate comments with `parentId`; nested reply fetching is not supported. `canReply` requires a first-level comment and an identity with comment-management permission. `canDelete` reflects TikTok's own-comment deletion capability. `canHide` is supported and `canLike` is false. Use the ad comment reply, hide and delete operations below to moderate TikTok comments. Other platforms return feature_not_available. Requires the Ads add-on. Response shape matches GET /v1/inbox/comments/{postId}. The `{adId}` path segment accepts any identifier dialect Zernio indexes for the ad: Zernio internal `_id` (24-char hex), the numeric `platformAdId` (the value shipped in `comment.received` webhooks as `comment.ad.id`), or the creative's `effective_object_story_id` / `effective_instagram_media_id`. Caller doesn't need a translation step.
|
|
611
694
|
|
|
612
695
|
### Examples
|
|
613
696
|
|
|
@@ -621,10 +704,12 @@ Zernio.configure do |config|
|
|
|
621
704
|
end
|
|
622
705
|
|
|
623
706
|
api_instance = Zernio::AdAccountsApi.new
|
|
624
|
-
ad_id = 'ad_id_example' # String | Internal Zernio ad ID
|
|
707
|
+
ad_id = 'ad_id_example' # String | Internal Zernio ad ID or indexed platform ad/post ID.
|
|
625
708
|
opts = {
|
|
626
709
|
placement: 'facebook', # String | Which side of the ad to return comments for. Omit to default to the Instagram side when present, else Facebook. Returns ad_not_commentable if the ad has no such placement.
|
|
627
710
|
limit: 56, # Integer |
|
|
711
|
+
since: Date.parse('2013-10-20'), # Date | TikTok-only start date. Defaults to 30 days before until. Maximum window is 30 days.
|
|
712
|
+
_until: Date.parse('2013-10-20'), # Date | TikTok-only end date. Defaults to today in UTC.
|
|
628
713
|
cursor: 'cursor_example' # String | Pagination cursor from a previous response.
|
|
629
714
|
}
|
|
630
715
|
|
|
@@ -659,9 +744,11 @@ end
|
|
|
659
744
|
|
|
660
745
|
| Name | Type | Description | Notes |
|
|
661
746
|
| ---- | ---- | ----------- | ----- |
|
|
662
|
-
| **ad_id** | **String** | Internal Zernio ad ID
|
|
747
|
+
| **ad_id** | **String** | Internal Zernio ad ID or indexed platform ad/post ID. | |
|
|
663
748
|
| **placement** | **String** | Which side of the ad to return comments for. Omit to default to the Instagram side when present, else Facebook. Returns ad_not_commentable if the ad has no such placement. | [optional] |
|
|
664
749
|
| **limit** | **Integer** | | [optional][default to 25] |
|
|
750
|
+
| **since** | **Date** | TikTok-only start date. Defaults to 30 days before until. Maximum window is 30 days. | [optional] |
|
|
751
|
+
| **_until** | **Date** | TikTok-only end date. Defaults to today in UTC. | [optional] |
|
|
665
752
|
| **cursor** | **String** | Pagination cursor from a previous response. | [optional] |
|
|
666
753
|
|
|
667
754
|
### Return type
|
|
@@ -980,6 +1067,79 @@ end
|
|
|
980
1067
|
- **Accept**: application/json
|
|
981
1068
|
|
|
982
1069
|
|
|
1070
|
+
## get_ios_fourteen_campaign_limits
|
|
1071
|
+
|
|
1072
|
+
> <GetIosFourteenCampaignLimits200Response> get_ios_fourteen_campaign_limits(account_id, ad_account_id, application_id)
|
|
1073
|
+
|
|
1074
|
+
Get iOS 14 campaign limits
|
|
1075
|
+
|
|
1076
|
+
Reads Meta iOS 14 campaign limits for an application on an ad account. applicationId is sent as Meta app_id. This read does not establish that the application is configured for iOS promotion.
|
|
1077
|
+
|
|
1078
|
+
### Examples
|
|
1079
|
+
|
|
1080
|
+
```ruby
|
|
1081
|
+
require 'time'
|
|
1082
|
+
require 'zernio-sdk'
|
|
1083
|
+
# setup authorization
|
|
1084
|
+
Zernio.configure do |config|
|
|
1085
|
+
# Configure Bearer authorization (JWT): bearerAuth
|
|
1086
|
+
config.access_token = 'YOUR_BEARER_TOKEN'
|
|
1087
|
+
end
|
|
1088
|
+
|
|
1089
|
+
api_instance = Zernio::AdAccountsApi.new
|
|
1090
|
+
account_id = 'account_id_example' # String | Zernio Meta Ads or Facebook SocialAccount ID.
|
|
1091
|
+
ad_account_id = 'ad_account_id_example' # String | Meta ad account ID including the act_ prefix.
|
|
1092
|
+
application_id = 'application_id_example' # String | Meta application ID from advertisable-applications.
|
|
1093
|
+
|
|
1094
|
+
begin
|
|
1095
|
+
# Get iOS 14 campaign limits
|
|
1096
|
+
result = api_instance.get_ios_fourteen_campaign_limits(account_id, ad_account_id, application_id)
|
|
1097
|
+
p result
|
|
1098
|
+
rescue Zernio::ApiError => e
|
|
1099
|
+
puts "Error when calling AdAccountsApi->get_ios_fourteen_campaign_limits: #{e}"
|
|
1100
|
+
end
|
|
1101
|
+
```
|
|
1102
|
+
|
|
1103
|
+
#### Using the get_ios_fourteen_campaign_limits_with_http_info variant
|
|
1104
|
+
|
|
1105
|
+
This returns an Array which contains the response data, status code and headers.
|
|
1106
|
+
|
|
1107
|
+
> <Array(<GetIosFourteenCampaignLimits200Response>, Integer, Hash)> get_ios_fourteen_campaign_limits_with_http_info(account_id, ad_account_id, application_id)
|
|
1108
|
+
|
|
1109
|
+
```ruby
|
|
1110
|
+
begin
|
|
1111
|
+
# Get iOS 14 campaign limits
|
|
1112
|
+
data, status_code, headers = api_instance.get_ios_fourteen_campaign_limits_with_http_info(account_id, ad_account_id, application_id)
|
|
1113
|
+
p status_code # => 2xx
|
|
1114
|
+
p headers # => { ... }
|
|
1115
|
+
p data # => <GetIosFourteenCampaignLimits200Response>
|
|
1116
|
+
rescue Zernio::ApiError => e
|
|
1117
|
+
puts "Error when calling AdAccountsApi->get_ios_fourteen_campaign_limits_with_http_info: #{e}"
|
|
1118
|
+
end
|
|
1119
|
+
```
|
|
1120
|
+
|
|
1121
|
+
### Parameters
|
|
1122
|
+
|
|
1123
|
+
| Name | Type | Description | Notes |
|
|
1124
|
+
| ---- | ---- | ----------- | ----- |
|
|
1125
|
+
| **account_id** | **String** | Zernio Meta Ads or Facebook SocialAccount ID. | |
|
|
1126
|
+
| **ad_account_id** | **String** | Meta ad account ID including the act_ prefix. | |
|
|
1127
|
+
| **application_id** | **String** | Meta application ID from advertisable-applications. | |
|
|
1128
|
+
|
|
1129
|
+
### Return type
|
|
1130
|
+
|
|
1131
|
+
[**GetIosFourteenCampaignLimits200Response**](GetIosFourteenCampaignLimits200Response.md)
|
|
1132
|
+
|
|
1133
|
+
### Authorization
|
|
1134
|
+
|
|
1135
|
+
[bearerAuth](../README.md#bearerAuth)
|
|
1136
|
+
|
|
1137
|
+
### HTTP request headers
|
|
1138
|
+
|
|
1139
|
+
- **Content-Type**: Not defined
|
|
1140
|
+
- **Accept**: application/json
|
|
1141
|
+
|
|
1142
|
+
|
|
983
1143
|
## get_value_rule_set
|
|
984
1144
|
|
|
985
1145
|
> <GetValueRuleSet200Response> get_value_rule_set(value_rule_set_id, account_id)
|
|
@@ -1051,6 +1211,85 @@ end
|
|
|
1051
1211
|
- **Accept**: application/json
|
|
1052
1212
|
|
|
1053
1213
|
|
|
1214
|
+
## hide_ad_comment
|
|
1215
|
+
|
|
1216
|
+
> <HideAdComment200Response> hide_ad_comment(ad_id, comment_id, hide_ad_comment_request, opts)
|
|
1217
|
+
|
|
1218
|
+
Hide or unhide an ad comment
|
|
1219
|
+
|
|
1220
|
+
Hide or restore a TikTok ad comment. Send hidden=true to hide it or hidden=false to make it public again. Requires Ads access. The ad is resolved within the caller's accessible profiles. Before moderation, Zernio verifies that the comment belongs to this ad using TikTok's ad-group comment listing. The default search window is the last 30 days. Use since/until for older comments, with at most 30 days between the dates. Lookups scan at most 2,000 ad-group comments; narrow the date window if exceeded. Meta returns 501 feature_not_available with guidance to use the existing inbox comment endpoints and the account/post IDs from GET /v1/ads/{adId}/comments.
|
|
1221
|
+
|
|
1222
|
+
### Examples
|
|
1223
|
+
|
|
1224
|
+
```ruby
|
|
1225
|
+
require 'time'
|
|
1226
|
+
require 'zernio-sdk'
|
|
1227
|
+
# setup authorization
|
|
1228
|
+
Zernio.configure do |config|
|
|
1229
|
+
# Configure Bearer authorization (JWT): bearerAuth
|
|
1230
|
+
config.access_token = 'YOUR_BEARER_TOKEN'
|
|
1231
|
+
end
|
|
1232
|
+
|
|
1233
|
+
api_instance = Zernio::AdAccountsApi.new
|
|
1234
|
+
ad_id = 'ad_id_example' # String | Internal Zernio ad ID or indexed platform ad ID.
|
|
1235
|
+
comment_id = 'comment_id_example' # String | TikTok comment ID from the ad comment listing.
|
|
1236
|
+
hide_ad_comment_request = Zernio::HideAdCommentRequest.new({hidden: false}) # HideAdCommentRequest |
|
|
1237
|
+
opts = {
|
|
1238
|
+
since: Date.parse('2013-10-20'), # Date | Start date of the comment lookup window. Defaults to 30 days before until.
|
|
1239
|
+
_until: Date.parse('2013-10-20') # Date | End date of the comment lookup window. Defaults to today in UTC.
|
|
1240
|
+
}
|
|
1241
|
+
|
|
1242
|
+
begin
|
|
1243
|
+
# Hide or unhide an ad comment
|
|
1244
|
+
result = api_instance.hide_ad_comment(ad_id, comment_id, hide_ad_comment_request, opts)
|
|
1245
|
+
p result
|
|
1246
|
+
rescue Zernio::ApiError => e
|
|
1247
|
+
puts "Error when calling AdAccountsApi->hide_ad_comment: #{e}"
|
|
1248
|
+
end
|
|
1249
|
+
```
|
|
1250
|
+
|
|
1251
|
+
#### Using the hide_ad_comment_with_http_info variant
|
|
1252
|
+
|
|
1253
|
+
This returns an Array which contains the response data, status code and headers.
|
|
1254
|
+
|
|
1255
|
+
> <Array(<HideAdComment200Response>, Integer, Hash)> hide_ad_comment_with_http_info(ad_id, comment_id, hide_ad_comment_request, opts)
|
|
1256
|
+
|
|
1257
|
+
```ruby
|
|
1258
|
+
begin
|
|
1259
|
+
# Hide or unhide an ad comment
|
|
1260
|
+
data, status_code, headers = api_instance.hide_ad_comment_with_http_info(ad_id, comment_id, hide_ad_comment_request, opts)
|
|
1261
|
+
p status_code # => 2xx
|
|
1262
|
+
p headers # => { ... }
|
|
1263
|
+
p data # => <HideAdComment200Response>
|
|
1264
|
+
rescue Zernio::ApiError => e
|
|
1265
|
+
puts "Error when calling AdAccountsApi->hide_ad_comment_with_http_info: #{e}"
|
|
1266
|
+
end
|
|
1267
|
+
```
|
|
1268
|
+
|
|
1269
|
+
### Parameters
|
|
1270
|
+
|
|
1271
|
+
| Name | Type | Description | Notes |
|
|
1272
|
+
| ---- | ---- | ----------- | ----- |
|
|
1273
|
+
| **ad_id** | **String** | Internal Zernio ad ID or indexed platform ad ID. | |
|
|
1274
|
+
| **comment_id** | **String** | TikTok comment ID from the ad comment listing. | |
|
|
1275
|
+
| **hide_ad_comment_request** | [**HideAdCommentRequest**](HideAdCommentRequest.md) | | |
|
|
1276
|
+
| **since** | **Date** | Start date of the comment lookup window. Defaults to 30 days before until. | [optional] |
|
|
1277
|
+
| **_until** | **Date** | End date of the comment lookup window. Defaults to today in UTC. | [optional] |
|
|
1278
|
+
|
|
1279
|
+
### Return type
|
|
1280
|
+
|
|
1281
|
+
[**HideAdComment200Response**](HideAdComment200Response.md)
|
|
1282
|
+
|
|
1283
|
+
### Authorization
|
|
1284
|
+
|
|
1285
|
+
[bearerAuth](../README.md#bearerAuth)
|
|
1286
|
+
|
|
1287
|
+
### HTTP request headers
|
|
1288
|
+
|
|
1289
|
+
- **Content-Type**: application/json
|
|
1290
|
+
- **Accept**: application/json
|
|
1291
|
+
|
|
1292
|
+
|
|
1054
1293
|
## list_account_callouts
|
|
1055
1294
|
|
|
1056
1295
|
> <ListAccountCallouts200Response> list_account_callouts(account_id, opts)
|
|
@@ -1499,6 +1738,148 @@ end
|
|
|
1499
1738
|
- **Accept**: application/json
|
|
1500
1739
|
|
|
1501
1740
|
|
|
1741
|
+
## list_ads_instagram_accounts
|
|
1742
|
+
|
|
1743
|
+
> <ListAdsInstagramAccounts200Response> list_ads_instagram_accounts(account_id, ad_account_id)
|
|
1744
|
+
|
|
1745
|
+
List Instagram ad identities
|
|
1746
|
+
|
|
1747
|
+
Discovers identities through connected_instagram_accounts, Page linkage and Page-backed identities, with a best-effort business fallback. Business permission errors do not fail discovery. The resolved object uses the same profile-scoped resolver as ad creation; null means no identity was resolved. Format-specific observed-actor fallbacks at creative creation are not predicted.
|
|
1748
|
+
|
|
1749
|
+
### Examples
|
|
1750
|
+
|
|
1751
|
+
```ruby
|
|
1752
|
+
require 'time'
|
|
1753
|
+
require 'zernio-sdk'
|
|
1754
|
+
# setup authorization
|
|
1755
|
+
Zernio.configure do |config|
|
|
1756
|
+
# Configure Bearer authorization (JWT): bearerAuth
|
|
1757
|
+
config.access_token = 'YOUR_BEARER_TOKEN'
|
|
1758
|
+
end
|
|
1759
|
+
|
|
1760
|
+
api_instance = Zernio::AdAccountsApi.new
|
|
1761
|
+
account_id = 'account_id_example' # String | Zernio Meta Ads or Facebook SocialAccount ID.
|
|
1762
|
+
ad_account_id = 'ad_account_id_example' # String | Meta ad account ID including the act_ prefix.
|
|
1763
|
+
|
|
1764
|
+
begin
|
|
1765
|
+
# List Instagram ad identities
|
|
1766
|
+
result = api_instance.list_ads_instagram_accounts(account_id, ad_account_id)
|
|
1767
|
+
p result
|
|
1768
|
+
rescue Zernio::ApiError => e
|
|
1769
|
+
puts "Error when calling AdAccountsApi->list_ads_instagram_accounts: #{e}"
|
|
1770
|
+
end
|
|
1771
|
+
```
|
|
1772
|
+
|
|
1773
|
+
#### Using the list_ads_instagram_accounts_with_http_info variant
|
|
1774
|
+
|
|
1775
|
+
This returns an Array which contains the response data, status code and headers.
|
|
1776
|
+
|
|
1777
|
+
> <Array(<ListAdsInstagramAccounts200Response>, Integer, Hash)> list_ads_instagram_accounts_with_http_info(account_id, ad_account_id)
|
|
1778
|
+
|
|
1779
|
+
```ruby
|
|
1780
|
+
begin
|
|
1781
|
+
# List Instagram ad identities
|
|
1782
|
+
data, status_code, headers = api_instance.list_ads_instagram_accounts_with_http_info(account_id, ad_account_id)
|
|
1783
|
+
p status_code # => 2xx
|
|
1784
|
+
p headers # => { ... }
|
|
1785
|
+
p data # => <ListAdsInstagramAccounts200Response>
|
|
1786
|
+
rescue Zernio::ApiError => e
|
|
1787
|
+
puts "Error when calling AdAccountsApi->list_ads_instagram_accounts_with_http_info: #{e}"
|
|
1788
|
+
end
|
|
1789
|
+
```
|
|
1790
|
+
|
|
1791
|
+
### Parameters
|
|
1792
|
+
|
|
1793
|
+
| Name | Type | Description | Notes |
|
|
1794
|
+
| ---- | ---- | ----------- | ----- |
|
|
1795
|
+
| **account_id** | **String** | Zernio Meta Ads or Facebook SocialAccount ID. | |
|
|
1796
|
+
| **ad_account_id** | **String** | Meta ad account ID including the act_ prefix. | |
|
|
1797
|
+
|
|
1798
|
+
### Return type
|
|
1799
|
+
|
|
1800
|
+
[**ListAdsInstagramAccounts200Response**](ListAdsInstagramAccounts200Response.md)
|
|
1801
|
+
|
|
1802
|
+
### Authorization
|
|
1803
|
+
|
|
1804
|
+
[bearerAuth](../README.md#bearerAuth)
|
|
1805
|
+
|
|
1806
|
+
### HTTP request headers
|
|
1807
|
+
|
|
1808
|
+
- **Content-Type**: Not defined
|
|
1809
|
+
- **Accept**: application/json
|
|
1810
|
+
|
|
1811
|
+
|
|
1812
|
+
## list_advertisable_applications
|
|
1813
|
+
|
|
1814
|
+
> <ListAdvertisableApplications200Response> list_advertisable_applications(account_id, ad_account_id)
|
|
1815
|
+
|
|
1816
|
+
List advertisable apps
|
|
1817
|
+
|
|
1818
|
+
Lists applications available to a Meta ad account, their supported platforms and unmodified object store URLs. A listed app still needs a configured mobile platform and store URL to run install promotion.
|
|
1819
|
+
|
|
1820
|
+
### Examples
|
|
1821
|
+
|
|
1822
|
+
```ruby
|
|
1823
|
+
require 'time'
|
|
1824
|
+
require 'zernio-sdk'
|
|
1825
|
+
# setup authorization
|
|
1826
|
+
Zernio.configure do |config|
|
|
1827
|
+
# Configure Bearer authorization (JWT): bearerAuth
|
|
1828
|
+
config.access_token = 'YOUR_BEARER_TOKEN'
|
|
1829
|
+
end
|
|
1830
|
+
|
|
1831
|
+
api_instance = Zernio::AdAccountsApi.new
|
|
1832
|
+
account_id = 'account_id_example' # String | Zernio Meta Ads or Facebook SocialAccount ID.
|
|
1833
|
+
ad_account_id = 'ad_account_id_example' # String | Meta ad account ID including the act_ prefix.
|
|
1834
|
+
|
|
1835
|
+
begin
|
|
1836
|
+
# List advertisable apps
|
|
1837
|
+
result = api_instance.list_advertisable_applications(account_id, ad_account_id)
|
|
1838
|
+
p result
|
|
1839
|
+
rescue Zernio::ApiError => e
|
|
1840
|
+
puts "Error when calling AdAccountsApi->list_advertisable_applications: #{e}"
|
|
1841
|
+
end
|
|
1842
|
+
```
|
|
1843
|
+
|
|
1844
|
+
#### Using the list_advertisable_applications_with_http_info variant
|
|
1845
|
+
|
|
1846
|
+
This returns an Array which contains the response data, status code and headers.
|
|
1847
|
+
|
|
1848
|
+
> <Array(<ListAdvertisableApplications200Response>, Integer, Hash)> list_advertisable_applications_with_http_info(account_id, ad_account_id)
|
|
1849
|
+
|
|
1850
|
+
```ruby
|
|
1851
|
+
begin
|
|
1852
|
+
# List advertisable apps
|
|
1853
|
+
data, status_code, headers = api_instance.list_advertisable_applications_with_http_info(account_id, ad_account_id)
|
|
1854
|
+
p status_code # => 2xx
|
|
1855
|
+
p headers # => { ... }
|
|
1856
|
+
p data # => <ListAdvertisableApplications200Response>
|
|
1857
|
+
rescue Zernio::ApiError => e
|
|
1858
|
+
puts "Error when calling AdAccountsApi->list_advertisable_applications_with_http_info: #{e}"
|
|
1859
|
+
end
|
|
1860
|
+
```
|
|
1861
|
+
|
|
1862
|
+
### Parameters
|
|
1863
|
+
|
|
1864
|
+
| Name | Type | Description | Notes |
|
|
1865
|
+
| ---- | ---- | ----------- | ----- |
|
|
1866
|
+
| **account_id** | **String** | Zernio Meta Ads or Facebook SocialAccount ID. | |
|
|
1867
|
+
| **ad_account_id** | **String** | Meta ad account ID including the act_ prefix. | |
|
|
1868
|
+
|
|
1869
|
+
### Return type
|
|
1870
|
+
|
|
1871
|
+
[**ListAdvertisableApplications200Response**](ListAdvertisableApplications200Response.md)
|
|
1872
|
+
|
|
1873
|
+
### Authorization
|
|
1874
|
+
|
|
1875
|
+
[bearerAuth](../README.md#bearerAuth)
|
|
1876
|
+
|
|
1877
|
+
### HTTP request headers
|
|
1878
|
+
|
|
1879
|
+
- **Content-Type**: Not defined
|
|
1880
|
+
- **Accept**: application/json
|
|
1881
|
+
|
|
1882
|
+
|
|
1502
1883
|
## list_custom_conversions
|
|
1503
1884
|
|
|
1504
1885
|
> <ListCustomConversions200Response> list_custom_conversions(account_id, ad_account_id)
|
|
@@ -1941,6 +2322,85 @@ end
|
|
|
1941
2322
|
- **Accept**: application/json
|
|
1942
2323
|
|
|
1943
2324
|
|
|
2325
|
+
## reply_to_ad_comment
|
|
2326
|
+
|
|
2327
|
+
> <ReplyToAdComment200Response> reply_to_ad_comment(ad_id, comment_id, reply_to_ad_comment_request, opts)
|
|
2328
|
+
|
|
2329
|
+
Reply to an ad comment
|
|
2330
|
+
|
|
2331
|
+
Reply to a first-level TikTok ad comment. Requires a TT_USER or CUSTOMIZED_USER identity with comment-management permission. Replies to replies are rejected. The response commentId identifies the new reply. This operation is not idempotent; do not blindly retry an uncertain response. Requires Ads access. The ad is resolved within the caller's accessible profiles. Before moderation, Zernio verifies that the comment belongs to this ad using TikTok's ad-group comment listing. The default search window is the last 30 days. Use since/until for older comments, with at most 30 days between the dates. Lookups scan at most 2,000 ad-group comments; narrow the date window if exceeded. Meta returns 501 feature_not_available with guidance to use the existing inbox comment endpoints and the account/post IDs from GET /v1/ads/{adId}/comments.
|
|
2332
|
+
|
|
2333
|
+
### Examples
|
|
2334
|
+
|
|
2335
|
+
```ruby
|
|
2336
|
+
require 'time'
|
|
2337
|
+
require 'zernio-sdk'
|
|
2338
|
+
# setup authorization
|
|
2339
|
+
Zernio.configure do |config|
|
|
2340
|
+
# Configure Bearer authorization (JWT): bearerAuth
|
|
2341
|
+
config.access_token = 'YOUR_BEARER_TOKEN'
|
|
2342
|
+
end
|
|
2343
|
+
|
|
2344
|
+
api_instance = Zernio::AdAccountsApi.new
|
|
2345
|
+
ad_id = 'ad_id_example' # String | Internal Zernio ad ID or indexed platform ad ID.
|
|
2346
|
+
comment_id = 'comment_id_example' # String | TikTok comment ID from the ad comment listing.
|
|
2347
|
+
reply_to_ad_comment_request = Zernio::ReplyToAdCommentRequest.new({text: 'text_example'}) # ReplyToAdCommentRequest |
|
|
2348
|
+
opts = {
|
|
2349
|
+
since: Date.parse('2013-10-20'), # Date | Start date of the comment lookup window. Defaults to 30 days before until.
|
|
2350
|
+
_until: Date.parse('2013-10-20') # Date | End date of the comment lookup window. Defaults to today in UTC.
|
|
2351
|
+
}
|
|
2352
|
+
|
|
2353
|
+
begin
|
|
2354
|
+
# Reply to an ad comment
|
|
2355
|
+
result = api_instance.reply_to_ad_comment(ad_id, comment_id, reply_to_ad_comment_request, opts)
|
|
2356
|
+
p result
|
|
2357
|
+
rescue Zernio::ApiError => e
|
|
2358
|
+
puts "Error when calling AdAccountsApi->reply_to_ad_comment: #{e}"
|
|
2359
|
+
end
|
|
2360
|
+
```
|
|
2361
|
+
|
|
2362
|
+
#### Using the reply_to_ad_comment_with_http_info variant
|
|
2363
|
+
|
|
2364
|
+
This returns an Array which contains the response data, status code and headers.
|
|
2365
|
+
|
|
2366
|
+
> <Array(<ReplyToAdComment200Response>, Integer, Hash)> reply_to_ad_comment_with_http_info(ad_id, comment_id, reply_to_ad_comment_request, opts)
|
|
2367
|
+
|
|
2368
|
+
```ruby
|
|
2369
|
+
begin
|
|
2370
|
+
# Reply to an ad comment
|
|
2371
|
+
data, status_code, headers = api_instance.reply_to_ad_comment_with_http_info(ad_id, comment_id, reply_to_ad_comment_request, opts)
|
|
2372
|
+
p status_code # => 2xx
|
|
2373
|
+
p headers # => { ... }
|
|
2374
|
+
p data # => <ReplyToAdComment200Response>
|
|
2375
|
+
rescue Zernio::ApiError => e
|
|
2376
|
+
puts "Error when calling AdAccountsApi->reply_to_ad_comment_with_http_info: #{e}"
|
|
2377
|
+
end
|
|
2378
|
+
```
|
|
2379
|
+
|
|
2380
|
+
### Parameters
|
|
2381
|
+
|
|
2382
|
+
| Name | Type | Description | Notes |
|
|
2383
|
+
| ---- | ---- | ----------- | ----- |
|
|
2384
|
+
| **ad_id** | **String** | Internal Zernio ad ID or indexed platform ad ID. | |
|
|
2385
|
+
| **comment_id** | **String** | TikTok comment ID from the ad comment listing. | |
|
|
2386
|
+
| **reply_to_ad_comment_request** | [**ReplyToAdCommentRequest**](ReplyToAdCommentRequest.md) | | |
|
|
2387
|
+
| **since** | **Date** | Start date of the comment lookup window. Defaults to 30 days before until. | [optional] |
|
|
2388
|
+
| **_until** | **Date** | End date of the comment lookup window. Defaults to today in UTC. | [optional] |
|
|
2389
|
+
|
|
2390
|
+
### Return type
|
|
2391
|
+
|
|
2392
|
+
[**ReplyToAdComment200Response**](ReplyToAdComment200Response.md)
|
|
2393
|
+
|
|
2394
|
+
### Authorization
|
|
2395
|
+
|
|
2396
|
+
[bearerAuth](../README.md#bearerAuth)
|
|
2397
|
+
|
|
2398
|
+
### HTTP request headers
|
|
2399
|
+
|
|
2400
|
+
- **Content-Type**: application/json
|
|
2401
|
+
- **Accept**: application/json
|
|
2402
|
+
|
|
2403
|
+
|
|
1944
2404
|
## update_ad_account
|
|
1945
2405
|
|
|
1946
2406
|
> <UpdateAdAccount200Response> update_ad_account(update_ad_account_request)
|
data/docs/AdCampaignsApi.md
CHANGED
|
@@ -329,7 +329,7 @@ end
|
|
|
329
329
|
|
|
330
330
|
## create_ad_campaign
|
|
331
331
|
|
|
332
|
-
> <
|
|
332
|
+
> <CreateAdCampaign200Response> create_ad_campaign(create_ad_campaign_request, opts)
|
|
333
333
|
|
|
334
334
|
Create a standalone campaign
|
|
335
335
|
|
|
@@ -365,7 +365,7 @@ end
|
|
|
365
365
|
|
|
366
366
|
This returns an Array which contains the response data, status code and headers.
|
|
367
367
|
|
|
368
|
-
> <Array(<
|
|
368
|
+
> <Array(<CreateAdCampaign200Response>, Integer, Hash)> create_ad_campaign_with_http_info(create_ad_campaign_request, opts)
|
|
369
369
|
|
|
370
370
|
```ruby
|
|
371
371
|
begin
|
|
@@ -373,7 +373,7 @@ begin
|
|
|
373
373
|
data, status_code, headers = api_instance.create_ad_campaign_with_http_info(create_ad_campaign_request, opts)
|
|
374
374
|
p status_code # => 2xx
|
|
375
375
|
p headers # => { ... }
|
|
376
|
-
p data # => <
|
|
376
|
+
p data # => <CreateAdCampaign200Response>
|
|
377
377
|
rescue Zernio::ApiError => e
|
|
378
378
|
puts "Error when calling AdCampaignsApi->create_ad_campaign_with_http_info: #{e}"
|
|
379
379
|
end
|
|
@@ -388,7 +388,7 @@ end
|
|
|
388
388
|
|
|
389
389
|
### Return type
|
|
390
390
|
|
|
391
|
-
[**
|
|
391
|
+
[**CreateAdCampaign200Response**](CreateAdCampaign200Response.md)
|
|
392
392
|
|
|
393
393
|
### Authorization
|
|
394
394
|
|
data/docs/AdTracking.md
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Zernio::AdTracking
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
| Name | Type | Description | Notes |
|
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
|
7
|
+
| **pixel_id** | **String** | Meta Pixel ID to attach for offsite-conversion measurement. | [optional] |
|
|
8
|
+
| **url_tags** | [**Array<UpdateAdTrackingTagsRequestUrlTagsInner>**](UpdateAdTrackingTagsRequestUrlTagsInner.md) | Click-URL params stored on the creative as `url_tags` and returned by GET /v1/ads/{adId}/tracking-tags. App-promotion linkUrl stays byte-identical to promotedObject.objectStoreUrl. Meta dynamic macros ({{ad.id}}, {{campaign.id}}, {{placement}}, ...) are sent through unescaped so Meta expands them; every other character is percent-encoded. | [optional] |
|
|
9
|
+
|
|
10
|
+
## Example
|
|
11
|
+
|
|
12
|
+
```ruby
|
|
13
|
+
require 'zernio-sdk'
|
|
14
|
+
|
|
15
|
+
instance = Zernio::AdTracking.new(
|
|
16
|
+
pixel_id: null,
|
|
17
|
+
url_tags: null
|
|
18
|
+
)
|
|
19
|
+
```
|
|
20
|
+
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# Zernio::CreateAdCampaign200Response
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
| Name | Type | Description | Notes |
|
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
|
7
|
+
| **validate_only** | **Boolean** | Always true. | [optional] |
|
|
8
|
+
| **ad_account_id** | **String** | | [optional] |
|
|
9
|
+
| **campaign_id** | **String** | Empty because no campaign was created. | [optional] |
|
|
10
|
+
| **objective** | **String** | | [optional] |
|
|
11
|
+
| **status** | **String** | | [optional] |
|
|
12
|
+
|
|
13
|
+
## Example
|
|
14
|
+
|
|
15
|
+
```ruby
|
|
16
|
+
require 'zernio-sdk'
|
|
17
|
+
|
|
18
|
+
instance = Zernio::CreateAdCampaign200Response.new(
|
|
19
|
+
validate_only: null,
|
|
20
|
+
ad_account_id: null,
|
|
21
|
+
campaign_id: null,
|
|
22
|
+
objective: null,
|
|
23
|
+
status: null
|
|
24
|
+
)
|
|
25
|
+
```
|
|
26
|
+
|
|
@@ -8,6 +8,10 @@
|
|
|
8
8
|
| **ad_account_id** | **String** | Platform ad account id (Meta act_<n>, Google customer id, LinkedIn account id, ...). | |
|
|
9
9
|
| **name** | **String** | | |
|
|
10
10
|
| **goal** | **String** | Mapped to the ODAX objective (same mapping as POST /v1/ads/create). | |
|
|
11
|
+
| **is_skadnetwork_attribution** | **Boolean** | Meta app promotion only. Immutable campaign flag. Set true for iOS 14+ SKAdNetwork campaigns and supply promotedObject.applicationId plus promotedObject.objectStoreUrl. The campaign receives promotedObject only when this flag is true. Cannot be changed on an existing campaign. | [optional] |
|
|
12
|
+
| **promoted_object** | [**AdPromotedObject**](AdPromotedObject.md) | | [optional] |
|
|
13
|
+
| **buying_type** | **String** | Meta only. SKAdNetwork app promotion requires AUCTION. | [optional] |
|
|
14
|
+
| **validate_only** | **Boolean** | Meta only. Runs campaign validation without creating or persisting a campaign; Idempotency-Key storage is bypassed. Returns HTTP 200 with validateOnly true and status VALIDATED. | [optional] |
|
|
11
15
|
| **special_ad_categories** | **Array<String>** | | [optional] |
|
|
12
16
|
| **budget_amount** | **Float** | Campaign-level (CBO) budget in WHOLE currency units (USD: 50 = $50.00), NOT cents. Meta's own Marketing API takes this same number in minor units, so it is an easy and expensive mix-up. Requires budgetType. | [optional] |
|
|
13
17
|
| **budget_type** | **String** | | [optional] |
|
|
@@ -27,6 +31,10 @@ instance = Zernio::CreateAdCampaignRequest.new(
|
|
|
27
31
|
ad_account_id: null,
|
|
28
32
|
name: null,
|
|
29
33
|
goal: null,
|
|
34
|
+
is_skadnetwork_attribution: null,
|
|
35
|
+
promoted_object: null,
|
|
36
|
+
buying_type: null,
|
|
37
|
+
validate_only: null,
|
|
30
38
|
special_ad_categories: null,
|
|
31
39
|
budget_amount: null,
|
|
32
40
|
budget_type: null,
|