late-sdk 0.0.859 → 0.0.860

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 (68) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +18 -0
  3. data/docs/AdCampaignsApi.md +301 -3
  4. data/docs/CampaignBidding.md +24 -0
  5. data/docs/CampaignBiddingBidSpec.md +24 -0
  6. data/docs/CampaignBiddingPortfolio.md +20 -0
  7. data/docs/CreateAdCampaignRequest.md +5 -3
  8. data/docs/CreateBidStrategy201Response.md +18 -0
  9. data/docs/CreateBidStrategy201ResponseStrategy.md +22 -0
  10. data/docs/CreateBidStrategyRequest.md +28 -0
  11. data/docs/CreateStandaloneAdRequest.md +3 -1
  12. data/docs/GetCampaignBidding200Response.md +26 -0
  13. data/docs/ListBidStrategies200Response.md +22 -0
  14. data/docs/PortfolioBidStrategy.md +42 -0
  15. data/docs/UpdateAdCampaign200Response.md +2 -0
  16. data/docs/UpdateAdCampaignRequest.md +3 -1
  17. data/docs/UpdateAdRequestTargeting.md +2 -0
  18. data/docs/UpdateAdRequestTargetingDevicesInner.md +49 -0
  19. data/docs/UpdateAdRequestTargetingDevicesInnerOneOf.md +20 -0
  20. data/docs/UpdateBidStrategy200Response.md +18 -0
  21. data/docs/UpdateBidStrategy200ResponseStrategy.md +18 -0
  22. data/docs/UpdateBidStrategyRequest.md +28 -0
  23. data/lib/zernio-sdk/api/ad_campaigns_api.rb +306 -6
  24. data/lib/zernio-sdk/models/campaign_bidding.rb +211 -0
  25. data/lib/zernio-sdk/models/campaign_bidding_bid_spec.rb +200 -0
  26. data/lib/zernio-sdk/models/campaign_bidding_portfolio.rb +157 -0
  27. data/lib/zernio-sdk/models/create_ad_campaign_request.rb +37 -6
  28. data/lib/zernio-sdk/models/create_bid_strategy201_response.rb +147 -0
  29. data/lib/zernio-sdk/models/create_bid_strategy201_response_strategy.rb +166 -0
  30. data/lib/zernio-sdk/models/create_bid_strategy_request.rb +289 -0
  31. data/lib/zernio-sdk/models/create_standalone_ad_request.rb +33 -2
  32. data/lib/zernio-sdk/models/get_campaign_bidding200_response.rb +226 -0
  33. data/lib/zernio-sdk/models/list_bid_strategies200_response.rb +168 -0
  34. data/lib/zernio-sdk/models/portfolio_bid_strategy.rb +300 -0
  35. data/lib/zernio-sdk/models/update_ad_campaign200_response.rb +11 -1
  36. data/lib/zernio-sdk/models/update_ad_campaign_request.rb +33 -2
  37. data/lib/zernio-sdk/models/update_ad_request_targeting.rb +14 -2
  38. data/lib/zernio-sdk/models/update_ad_request_targeting_devices_inner.rb +104 -0
  39. data/lib/zernio-sdk/models/update_ad_request_targeting_devices_inner_one_of.rb +226 -0
  40. data/lib/zernio-sdk/models/update_bid_strategy200_response.rb +147 -0
  41. data/lib/zernio-sdk/models/update_bid_strategy200_response_strategy.rb +147 -0
  42. data/lib/zernio-sdk/models/update_bid_strategy_request.rb +273 -0
  43. data/lib/zernio-sdk/version.rb +1 -1
  44. data/lib/zernio-sdk.rb +14 -0
  45. data/openapi.yaml +264 -21
  46. data/spec/api/ad_campaigns_api_spec.rb +58 -3
  47. data/spec/models/campaign_bidding_bid_spec_spec.rb +54 -0
  48. data/spec/models/campaign_bidding_portfolio_spec.rb +42 -0
  49. data/spec/models/campaign_bidding_spec.rb +58 -0
  50. data/spec/models/create_ad_campaign_request_spec.rb +6 -0
  51. data/spec/models/create_bid_strategy201_response_spec.rb +36 -0
  52. data/spec/models/create_bid_strategy201_response_strategy_spec.rb +48 -0
  53. data/spec/models/create_bid_strategy_request_spec.rb +70 -0
  54. data/spec/models/create_standalone_ad_request_spec.rb +6 -0
  55. data/spec/models/get_campaign_bidding200_response_spec.rb +64 -0
  56. data/spec/models/list_bid_strategies200_response_spec.rb +48 -0
  57. data/spec/models/portfolio_bid_strategy_spec.rb +112 -0
  58. data/spec/models/update_ad_campaign200_response_spec.rb +6 -0
  59. data/spec/models/update_ad_campaign_request_spec.rb +6 -0
  60. data/spec/models/update_ad_request_targeting_devices_inner_one_of_spec.rb +46 -0
  61. data/spec/models/update_ad_request_targeting_devices_inner_spec.rb +32 -0
  62. data/spec/models/update_ad_request_targeting_spec.rb +6 -0
  63. data/spec/models/update_bid_strategy200_response_spec.rb +36 -0
  64. data/spec/models/update_bid_strategy200_response_strategy_spec.rb +36 -0
  65. data/spec/models/update_bid_strategy_request_spec.rb +70 -0
  66. data/zernio-sdk-0.0.860.gem +0 -0
  67. metadata +58 -2
  68. data/zernio-sdk-0.0.859.gem +0 -0
@@ -0,0 +1,28 @@
1
+ # Zernio::CreateBidStrategyRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **account_id** | **String** | Google ads SocialAccount id. | |
8
+ | **customer_id** | **String** | Numeric Google Ads customer id (no dashes). Defaults to the account's connected customer. | [optional] |
9
+ | **name** | **String** | | |
10
+ | **type** | **String** | | |
11
+ | **target_cpa** | **Float** | Required when type is TARGET_CPA, in the account's currency units. | [optional] |
12
+ | **target_roas** | **Float** | Required when type is TARGET_ROAS; a multiplier (2.0 = 2.0x). | [optional] |
13
+
14
+ ## Example
15
+
16
+ ```ruby
17
+ require 'zernio-sdk'
18
+
19
+ instance = Zernio::CreateBidStrategyRequest.new(
20
+ account_id: null,
21
+ customer_id: null,
22
+ name: null,
23
+ type: null,
24
+ target_cpa: null,
25
+ target_roas: null
26
+ )
27
+ ```
28
+
@@ -89,9 +89,10 @@
89
89
  | **advantage_audience** | **Integer** | Meta only. Controls the Advantage audience feature (targeting_automation). 0 = disabled (default), 1 = enabled. Meta Marketing API requires this field on all ad set creation requests. | [optional] |
90
90
  | **attribution_spec** | [**Array<CreateStandaloneAdRequestAttributionSpecInner>**](CreateStandaloneAdRequestAttributionSpecInner.md) | Meta only. Conversion attribution window for the ad set — maps 1:1 to Meta's ad-set `attribution_spec`. Only honored for conversion goals (`conversions`, `lead_generation`, `app_promotion`); ignored for awareness/traffic/engagement. Omit to use Meta's default (`7-day click` + `1-day view`). Meta enforces the valid combinations: `VIEW_THROUGH` only allows `windowDays: 1` (7d/28d view windows were removed Jan 2026); `ENGAGED_VIDEO_VIEW` only `1` and only alongside `VIEW_THROUGH: 1`; `CLICK_THROUGH: 28` only on certain objectives. Invalid combos surface as a Meta 400. Example: `[{ \"eventType\": \"CLICK_THROUGH\", \"windowDays\": 7 }, { \"eventType\": \"VIEW_THROUGH\", \"windowDays\": 1 }]` | [optional] |
91
91
  | **gender** | **String** | Restrict the audience by gender. 'male' targets men only, 'female' targets women only, 'all' (default) targets everyone. Applied on Meta, TikTok and Pinterest. Ignored on Google, LinkedIn and X. | [optional][default to 'all'] |
92
- | **bid_strategy** | [**BidStrategy**](BidStrategy.md) | Deprecated: send it inside `platformSpecificData` instead (Meta today; TikTok's nested shape is planned). The flat field keeps working during the deprecation window; sending both shapes returns a 400. Meta bid strategy applied to the ad set. OpenAI Ads: required on every ad group via this flat field, the only channel it supports (`platformSpecificData` is Meta/LinkedIn-only and returns 400 for OpenAI). No auto-bid option exists; send `LOWEST_COST_WITH_BID_CAP` or `COST_CAP` together with `bidAmount`, omitting it returns 400. | [optional] |
92
+ | **bid_strategy** | [**BidStrategy**](BidStrategy.md) | Deprecated: send it inside `platformSpecificData` instead (Meta today; TikTok's nested shape is planned). The flat field keeps working during the deprecation window; sending both shapes returns a 400. Meta bid strategy applied to the ad set. OpenAI Ads: required on every ad group via this flat field, the only channel it supports (`platformSpecificData` is Meta/LinkedIn-only and returns 400 for OpenAI). No auto-bid option exists; send `LOWEST_COST_WITH_BID_CAP` or `COST_CAP` together with `bidAmount`, omitting it returns 400. Google (not deprecated there, this shared flat field is Google's only shape): applied to the campaign this call creates. On Google: LOWEST_COST_WITHOUT_CAP = Maximize Conversions, COST_CAP + bidAmount = Target CPA, LOWEST_COST_WITH_MIN_ROAS + roasAverageFloor = Target ROAS, LOWEST_COST_WITH_BID_CAP + bidAmount = Maximize Clicks with a CPC ceiling; portfolioBidStrategyId attaches a portfolio strategy instead. Omitted, the campaign falls back to a goal-based default. | [optional] |
93
93
  | **bid_amount** | **Float** | Deprecated: send it inside `platformSpecificData` instead (Meta today; TikTok's nested shape is planned). The flat field keeps working during the deprecation window; sending both shapes returns a 400. Bid cap in WHOLE currency units (USD: 5 = $5.00; JPY: 100 = ¥100). Required when `bidStrategy` is `LOWEST_COST_WITH_BID_CAP` or `COST_CAP`. Meta only: sending `bidAmount` WITHOUT `bidStrategy` requires `existingCampaignId` (400 otherwise), and sets the new ad set's cap under the joined campaign's COST_CAP / LOWEST_COST_WITH_BID_CAP parent. The strategy itself is inherited from the campaign. Restating bidStrategy here is accepted but has no effect on the ad set. Rejected with 400 in `adSetId` attach mode: that shape inherits its cap from the platform. Use `PUT /v1/ads/ad-sets/{adSetId}` there instead. | [optional] |
94
94
  | **roas_average_floor** | **Float** | Deprecated: send it inside `platformSpecificData` instead (Meta today; TikTok's nested shape is planned). The flat field keeps working during the deprecation window; sending both shapes returns a 400. Minimum ROAS as a decimal multiplier (e.g. 2.0 = 2.0x ROAS). Required when `bidStrategy` is `LOWEST_COST_WITH_MIN_ROAS`. Sending it without `bidStrategy` is a 400. Sent to Meta as `bid_constraints.roas_average_floor` × 10000. Known gap: a CBO campaign's ROAS floor lives on the campaign only (set via `POST /v1/ads/campaigns`); there is no supported way to set it while joining a CBO campaign here. | [optional] |
95
+ | **portfolio_bid_strategy_id** | **String** | Google only. Attach an existing portfolio bid strategy (numeric id from GET /v1/ads/bid-strategies) to the new campaign instead of a standard one. Exclusive with bidStrategy. | [optional] |
95
96
  | **value_rule_set_id** | **String** | Meta only (facebook, instagram; other platforms return 400). Value rule set to attach to the new ad set, from `/v1/ads/value-rule-sets`. Attachment is driven by this id, so `valueRulesApplied` is optional alongside it. Rejected with 400 in `adSetId` attach mode: that shape inherits the existing ad set's attachment, so the field would be silently ignored. Use `PUT /v1/ads/ad-sets/{adSetId}` there instead. Ignored (stripped before the ad-set create) when `buyingType` is `RESERVED`: value rules only apply to auction ad sets on `LOWEST_COST_WITHOUT_CAP` or `COST_CAP`, and a Reach & Frequency reservation has no auction bid strategy. Read back with `GET /v1/ads/ad-sets/{adSetId}?fields=value_rule_set_id`; the attachment is not mirrored onto Zernio's ad documents. | [optional] |
96
97
  | **value_rules_applied** | **Boolean** | Meta only (facebook, instagram; other platforms return 400). Optional when attaching, and requires `valueRuleSetId`. `false` is REJECTED here with 400: a newly created ad set has nothing to detach, so detaching lives on `PUT /v1/ads/ad-sets/{adSetId}`. | [optional] |
97
98
  | **platform_specific_data** | [**CreateStandaloneAdRequestPlatformSpecificData**](CreateStandaloneAdRequestPlatformSpecificData.md) | | [optional] |
@@ -196,6 +197,7 @@ instance = Zernio::CreateStandaloneAdRequest.new(
196
197
  bid_strategy: null,
197
198
  bid_amount: null,
198
199
  roas_average_floor: null,
200
+ portfolio_bid_strategy_id: null,
199
201
  value_rule_set_id: null,
200
202
  value_rules_applied: null,
201
203
  platform_specific_data: null,
@@ -0,0 +1,26 @@
1
+ # Zernio::GetCampaignBidding200Response
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **channel** | **String** | campaign.advertising_channel_type. COST_CAP's underlying Google field differs by channel; see bidStrategy on PUT. | [optional] |
8
+ | **bidding_strategy_type** | **String** | Google's raw enum: MAXIMIZE_CONVERSIONS, TARGET_CPA, MAXIMIZE_CONVERSION_VALUE, TARGET_ROAS, TARGET_SPEND, MANUAL_CPC, TARGET_IMPRESSION_SHARE, or another Google adds later. | [optional] |
9
+ | **bid_spec** | [**CampaignBiddingBidSpec**](CampaignBiddingBidSpec.md) | | [optional] |
10
+ | **portfolio** | [**CampaignBiddingPortfolio**](CampaignBiddingPortfolio.md) | | [optional] |
11
+ | **campaign_id** | **String** | | [optional] |
12
+
13
+ ## Example
14
+
15
+ ```ruby
16
+ require 'zernio-sdk'
17
+
18
+ instance = Zernio::GetCampaignBidding200Response.new(
19
+ channel: null,
20
+ bidding_strategy_type: null,
21
+ bid_spec: null,
22
+ portfolio: null,
23
+ campaign_id: null
24
+ )
25
+ ```
26
+
@@ -0,0 +1,22 @@
1
+ # Zernio::ListBidStrategies200Response
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **customer_id** | **String** | | [optional] |
8
+ | **currency** | **String** | Account currency code; money fields are in this currency's units. | [optional] |
9
+ | **strategies** | [**Array<PortfolioBidStrategy>**](PortfolioBidStrategy.md) | | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'zernio-sdk'
15
+
16
+ instance = Zernio::ListBidStrategies200Response.new(
17
+ customer_id: null,
18
+ currency: null,
19
+ strategies: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,42 @@
1
+ # Zernio::PortfolioBidStrategy
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | Numeric bid strategy id; pass as portfolioBidStrategyId or in the {strategyId} path. | [optional] |
8
+ | **name** | **String** | | [optional] |
9
+ | **type** | **String** | | [optional] |
10
+ | **status** | **String** | ENABLED or REMOVED. | [optional] |
11
+ | **campaign_count** | **Integer** | Number of campaigns currently attached. | [optional] |
12
+ | **clicks** | **Integer** | | [optional] |
13
+ | **cost** | **Float** | Cost in the account's currency units (converted from micros). | [optional] |
14
+ | **cost_per_conversion** | **Float** | Cost per conversion in the account's currency units. | [optional] |
15
+ | **impressions** | **Integer** | | [optional] |
16
+ | **average_cpc** | **Float** | Average CPC in the account's currency units. | [optional] |
17
+ | **conversions** | **Float** | | [optional] |
18
+ | **target_cpa** | **Float** | Current target, in the account's currency units. Null for a ROAS-family type (TARGET_ROAS, MAXIMIZE_CONVERSION_VALUE), or a Maximize type with no target set. Pre-fills the edit form's target field. | [optional] |
19
+ | **target_roas** | **Float** | Current target as a decimal multiplier (2.0 = 2.0x). Null for a CPA-family type (TARGET_CPA, MAXIMIZE_CONVERSIONS), or a Maximize type with no target set. | [optional] |
20
+
21
+ ## Example
22
+
23
+ ```ruby
24
+ require 'zernio-sdk'
25
+
26
+ instance = Zernio::PortfolioBidStrategy.new(
27
+ id: null,
28
+ name: null,
29
+ type: null,
30
+ status: null,
31
+ campaign_count: null,
32
+ clicks: null,
33
+ cost: null,
34
+ cost_per_conversion: null,
35
+ impressions: null,
36
+ average_cpc: null,
37
+ conversions: null,
38
+ target_cpa: null,
39
+ target_roas: null
40
+ )
41
+ ```
42
+
@@ -10,6 +10,7 @@
10
10
  | **bid_strategy** | [**BidStrategy**](BidStrategy.md) | | [optional] |
11
11
  | **bid_amount** | **Float** | | [optional] |
12
12
  | **roas_average_floor** | **Float** | | [optional] |
13
+ | **portfolio_bid_strategy_id** | **String** | Google only. Echoed back, but NOT mirrored onto local Ad documents (no column for it yet). | [optional] |
13
14
  | **platform_specific_data** | **Object** | | [optional] |
14
15
 
15
16
  ## Example
@@ -24,6 +25,7 @@ instance = Zernio::UpdateAdCampaign200Response.new(
24
25
  bid_strategy: null,
25
26
  bid_amount: null,
26
27
  roas_average_floor: null,
28
+ portfolio_bid_strategy_id: null,
27
29
  platform_specific_data: null
28
30
  )
29
31
  ```
@@ -6,9 +6,10 @@
6
6
  | ---- | ---- | ----------- | ----- |
7
7
  | **platform** | **String** | Required: platform campaign IDs are not globally unique. | |
8
8
  | **account_id** | **String** | **Meta only.** Zernio SocialAccount id owning the ad account. Needed only for an EMPTY campaign (zero ads); ignored otherwise. | [optional] |
9
- | **bid_strategy** | [**BidStrategy**](BidStrategy.md) | **Meta + Google.** On Meta, the campaign default that ad sets inherit unless they override it. On Google, the campaign's own bidding strategy. | [optional] |
9
+ | **bid_strategy** | [**BidStrategy**](BidStrategy.md) | **Meta + Google.** On Meta, the campaign default that ad sets inherit unless they override it. On Google, the campaign's own bidding strategy. On Google: LOWEST_COST_WITHOUT_CAP = Maximize Conversions, COST_CAP + bidAmount = Target CPA, LOWEST_COST_WITH_MIN_ROAS + roasAverageFloor = Target ROAS, LOWEST_COST_WITH_BID_CAP + bidAmount = Maximize Clicks with a CPC ceiling; portfolioBidStrategyId attaches a portfolio strategy instead. | [optional] |
10
10
  | **bid_amount** | **Float** | **Google only.** Whole currency units (USD: 12 = $12.00). Max CPC for LOWEST_COST_WITH_BID_CAP, CPA target for COST_CAP; required for both. | [optional] |
11
11
  | **roas_average_floor** | **Float** | **Google only.** Decimal ROAS multiplier (2.0 = 2.0x), required for LOWEST_COST_WITH_MIN_ROAS. | [optional] |
12
+ | **portfolio_bid_strategy_id** | **String** | **Google only.** Attach an existing portfolio bid strategy (numeric id from GET /v1/ads/bid-strategies) instead of setting bidStrategy. Exclusive with bidStrategy. | [optional] |
12
13
  | **budget** | [**UpdateAdCampaignRequestBudget**](UpdateAdCampaignRequestBudget.md) | | [optional] |
13
14
  | **name** | **String** | **Meta only.** Rename the campaign. | [optional] |
14
15
  | **platform_specific_data** | [**UpdateAdCampaignRequestPlatformSpecificData**](UpdateAdCampaignRequestPlatformSpecificData.md) | | [optional] |
@@ -24,6 +25,7 @@ instance = Zernio::UpdateAdCampaignRequest.new(
24
25
  bid_strategy: null,
25
26
  bid_amount: null,
26
27
  roas_average_floor: null,
28
+ portfolio_bid_strategy_id: null,
27
29
  budget: null,
28
30
  name: null,
29
31
  platform_specific_data: null
@@ -6,6 +6,7 @@
6
6
  | ---- | ---- | ----------- | ----- |
7
7
  | **keywords** | [**Array<UpdateAdRequestTargetingKeywordsInner>**](UpdateAdRequestTargetingKeywordsInner.md) | Google only. The FULL new set of positive keywords for the ad group; live keywords not listed are removed. Entries are strings (BROAD) or { text, matchType } with matchType exact | phrase | broad. Mirrored to GET /v1/ads/keywords immediately. | [optional] |
8
8
  | **negative_keywords** | [**Array<UpdateAdRequestTargetingKeywordsInner>**](UpdateAdRequestTargetingKeywordsInner.md) | Google only. Same declarative contract as keywords, for the ad group's negative keywords. | [optional] |
9
+ | **devices** | [**Array<UpdateAdRequestTargetingDevicesInner>**](UpdateAdRequestTargetingDevicesInner.md) | Google only. The FULL new set of device criteria for the campaign; devices not listed are excluded. Entries are a device name alone (included, no bid adjustment) or { device, bidModifier }. | [optional] |
9
10
  | **age_min** | **Integer** | | [optional] |
10
11
  | **age_max** | **Integer** | | [optional] |
11
12
  | **countries** | **Array<String>** | | [optional] |
@@ -20,6 +21,7 @@ require 'zernio-sdk'
20
21
  instance = Zernio::UpdateAdRequestTargeting.new(
21
22
  keywords: null,
22
23
  negative_keywords: null,
24
+ devices: null,
23
25
  age_min: null,
24
26
  age_max: null,
25
27
  countries: null,
@@ -0,0 +1,49 @@
1
+ # Zernio::UpdateAdRequestTargetingDevicesInner
2
+
3
+ ## Class instance methods
4
+
5
+ ### `openapi_one_of`
6
+
7
+ Returns the list of classes defined in oneOf.
8
+
9
+ #### Example
10
+
11
+ ```ruby
12
+ require 'zernio-sdk'
13
+
14
+ Zernio::UpdateAdRequestTargetingDevicesInner.openapi_one_of
15
+ # =>
16
+ # [
17
+ # :'String',
18
+ # :'UpdateAdRequestTargetingDevicesInnerOneOf'
19
+ # ]
20
+ ```
21
+
22
+ ### build
23
+
24
+ Find the appropriate object from the `openapi_one_of` list and casts the data into it.
25
+
26
+ #### Example
27
+
28
+ ```ruby
29
+ require 'zernio-sdk'
30
+
31
+ Zernio::UpdateAdRequestTargetingDevicesInner.build(data)
32
+ # => #<String:0x00007fdd4aab02a0>
33
+
34
+ Zernio::UpdateAdRequestTargetingDevicesInner.build(data_that_doesnt_match)
35
+ # => nil
36
+ ```
37
+
38
+ #### Parameters
39
+
40
+ | Name | Type | Description |
41
+ | ---- | ---- | ----------- |
42
+ | **data** | **Mixed** | data to be matched against the list of oneOf items |
43
+
44
+ #### Return type
45
+
46
+ - `String`
47
+ - `UpdateAdRequestTargetingDevicesInnerOneOf`
48
+ - `nil` (if no type matches)
49
+
@@ -0,0 +1,20 @@
1
+ # Zernio::UpdateAdRequestTargetingDevicesInnerOneOf
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **device** | **String** | | |
8
+ | **bid_modifier** | **Float** | Google device bid modifier, 0.1 to 10 (minus 90% to plus 900%). Omit a device to exclude it. | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'zernio-sdk'
14
+
15
+ instance = Zernio::UpdateAdRequestTargetingDevicesInnerOneOf.new(
16
+ device: null,
17
+ bid_modifier: null
18
+ )
19
+ ```
20
+
@@ -0,0 +1,18 @@
1
+ # Zernio::UpdateBidStrategy200Response
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **strategy** | [**UpdateBidStrategy200ResponseStrategy**](UpdateBidStrategy200ResponseStrategy.md) | | [optional] |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'zernio-sdk'
13
+
14
+ instance = Zernio::UpdateBidStrategy200Response.new(
15
+ strategy: null
16
+ )
17
+ ```
18
+
@@ -0,0 +1,18 @@
1
+ # Zernio::UpdateBidStrategy200ResponseStrategy
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **customer_id** | **String** | | [optional] |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'zernio-sdk'
13
+
14
+ instance = Zernio::UpdateBidStrategy200ResponseStrategy.new(
15
+ customer_id: null
16
+ )
17
+ ```
18
+
@@ -0,0 +1,28 @@
1
+ # Zernio::UpdateBidStrategyRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **account_id** | **String** | Google ads SocialAccount id. | |
8
+ | **customer_id** | **String** | Numeric Google Ads customer id (no dashes). Defaults to the account&#39;s connected customer. | [optional] |
9
+ | **name** | **String** | | [optional] |
10
+ | **type** | **String** | | [optional] |
11
+ | **target_cpa** | **Float** | | [optional] |
12
+ | **target_roas** | **Float** | | [optional] |
13
+
14
+ ## Example
15
+
16
+ ```ruby
17
+ require 'zernio-sdk'
18
+
19
+ instance = Zernio::UpdateBidStrategyRequest.new(
20
+ account_id: null,
21
+ customer_id: null,
22
+ name: null,
23
+ type: null,
24
+ target_cpa: null,
25
+ target_roas: null
26
+ )
27
+ ```
28
+