whop_sdk 0.0.37 → 0.0.39

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 (248) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +61 -0
  3. data/README.md +1 -1
  4. data/lib/whop_sdk/client.rb +76 -10
  5. data/lib/whop_sdk/helpers/verify_user_token.rb +166 -34
  6. data/lib/whop_sdk/models/ad_campaign_list_params.rb +101 -0
  7. data/lib/whop_sdk/models/ad_campaign_list_response.rb +126 -0
  8. data/lib/whop_sdk/models/ad_campaign_pause_params.rb +20 -0
  9. data/lib/whop_sdk/models/ad_campaign_pause_response.rb +328 -0
  10. data/lib/whop_sdk/models/ad_campaign_retrieve_params.rb +20 -0
  11. data/lib/whop_sdk/models/ad_campaign_retrieve_response.rb +328 -0
  12. data/lib/whop_sdk/models/ad_campaign_unpause_params.rb +20 -0
  13. data/lib/whop_sdk/models/ad_campaign_unpause_response.rb +328 -0
  14. data/lib/whop_sdk/models/ad_campaign_update_params.rb +33 -0
  15. data/lib/whop_sdk/models/ad_campaign_update_response.rb +328 -0
  16. data/lib/whop_sdk/models/ad_group_delete_params.rb +20 -0
  17. data/lib/whop_sdk/models/ad_group_delete_response.rb +8 -0
  18. data/lib/whop_sdk/models/ad_group_list_params.rb +109 -0
  19. data/lib/whop_sdk/models/ad_group_list_response.rb +118 -0
  20. data/lib/whop_sdk/models/ad_group_retrieve_params.rb +20 -0
  21. data/lib/whop_sdk/models/ad_group_retrieve_response.rb +140 -0
  22. data/lib/whop_sdk/models/ad_group_update_params.rb +3207 -0
  23. data/lib/whop_sdk/models/ad_group_update_response.rb +140 -0
  24. data/lib/whop_sdk/models/ad_list_params.rb +115 -0
  25. data/lib/whop_sdk/models/ad_list_response.rb +89 -0
  26. data/lib/whop_sdk/models/ad_report_retrieve_params.rb +77 -0
  27. data/lib/whop_sdk/models/ad_report_retrieve_response.rb +312 -0
  28. data/lib/whop_sdk/models/ad_retrieve_params.rb +20 -0
  29. data/lib/whop_sdk/models/ad_retrieve_response.rb +133 -0
  30. data/lib/whop_sdk/models/authorized_user_roles.rb +1 -0
  31. data/lib/whop_sdk/models/bounty_create_params.rb +105 -0
  32. data/lib/whop_sdk/models/bounty_create_response.rb +126 -0
  33. data/lib/whop_sdk/models/bounty_list_params.rb +85 -0
  34. data/lib/whop_sdk/models/bounty_list_response.rb +126 -0
  35. data/lib/whop_sdk/models/bounty_retrieve_params.rb +20 -0
  36. data/lib/whop_sdk/models/bounty_retrieve_response.rb +126 -0
  37. data/lib/whop_sdk/models/checkout_configuration.rb +20 -2
  38. data/lib/whop_sdk/models/checkout_configuration_create_params.rb +97 -23
  39. data/lib/whop_sdk/models/checkout_configuration_list_response.rb +20 -2
  40. data/lib/whop_sdk/models/company_create_api_key_params.rb +109 -0
  41. data/lib/whop_sdk/models/company_create_api_key_response.rb +35 -0
  42. data/lib/whop_sdk/models/conversion_create_params.rb +462 -0
  43. data/lib/whop_sdk/models/conversion_create_response.rb +19 -0
  44. data/lib/whop_sdk/models/currency.rb +1 -0
  45. data/lib/whop_sdk/models/file_create_params.rb +22 -1
  46. data/lib/whop_sdk/models/file_create_response.rb +26 -3
  47. data/lib/whop_sdk/models/file_retrieve_response.rb +26 -3
  48. data/lib/whop_sdk/models/forum_post_list_params.rb +9 -1
  49. data/lib/whop_sdk/models/forum_update_params.rb +10 -1
  50. data/lib/whop_sdk/models/invoice_create_params.rb +36 -18
  51. data/lib/whop_sdk/models/invoice_update_params.rb +29 -7
  52. data/lib/whop_sdk/models/ledger_account_retrieve_response.rb +2 -2
  53. data/lib/whop_sdk/models/membership.rb +11 -1
  54. data/lib/whop_sdk/models/membership_list_response.rb +11 -1
  55. data/lib/whop_sdk/models/payment.rb +47 -2
  56. data/lib/whop_sdk/models/payment_list_response.rb +29 -2
  57. data/lib/whop_sdk/models/payment_method_types.rb +16 -0
  58. data/lib/whop_sdk/models/payment_refund_params.rb +4 -3
  59. data/lib/whop_sdk/models/payout_account_retrieve_response.rb +2 -2
  60. data/lib/whop_sdk/models/payout_account_status_updated_webhook_event.rb +2 -2
  61. data/lib/whop_sdk/models/plan.rb +12 -3
  62. data/lib/whop_sdk/models/plan_create_params.rb +26 -6
  63. data/lib/whop_sdk/models/plan_list_response.rb +12 -3
  64. data/lib/whop_sdk/models/plan_update_params.rb +26 -6
  65. data/lib/whop_sdk/models/support_channel_list_params.rb +31 -9
  66. data/lib/whop_sdk/models/user_retrieve_params.rb +14 -1
  67. data/lib/whop_sdk/models/{user_update_profile_params.rb → user_update_params.rb} +24 -7
  68. data/lib/whop_sdk/models/verification_list_response.rb +2 -2
  69. data/lib/whop_sdk/models/verification_retrieve_response.rb +2 -2
  70. data/lib/whop_sdk/models/verification_status.rb +1 -0
  71. data/lib/whop_sdk/models/verification_succeeded_webhook_event.rb +2 -2
  72. data/lib/whop_sdk/models.rb +35 -1
  73. data/lib/whop_sdk/resources/ad_campaigns.rb +163 -0
  74. data/lib/whop_sdk/resources/ad_groups.rb +151 -0
  75. data/lib/whop_sdk/resources/ad_reports.rb +59 -0
  76. data/lib/whop_sdk/resources/ads.rb +88 -0
  77. data/lib/whop_sdk/resources/bounties.rb +124 -0
  78. data/lib/whop_sdk/resources/companies.rb +34 -0
  79. data/lib/whop_sdk/resources/conversions.rb +67 -0
  80. data/lib/whop_sdk/resources/files.rb +3 -1
  81. data/lib/whop_sdk/resources/forum_posts.rb +3 -1
  82. data/lib/whop_sdk/resources/forums.rb +3 -1
  83. data/lib/whop_sdk/resources/invoices.rb +9 -2
  84. data/lib/whop_sdk/resources/payments.rb +1 -1
  85. data/lib/whop_sdk/resources/plans.rb +6 -2
  86. data/lib/whop_sdk/resources/support_channels.rb +6 -4
  87. data/lib/whop_sdk/resources/users.rb +49 -37
  88. data/lib/whop_sdk/version.rb +1 -1
  89. data/lib/whop_sdk.rb +41 -1
  90. data/rbi/whop_sdk/client.rbi +24 -0
  91. data/rbi/whop_sdk/models/ad_campaign_list_params.rbi +142 -0
  92. data/rbi/whop_sdk/models/ad_campaign_list_response.rbi +239 -0
  93. data/rbi/whop_sdk/models/ad_campaign_pause_params.rbi +35 -0
  94. data/rbi/whop_sdk/models/ad_campaign_pause_response.rbi +668 -0
  95. data/rbi/whop_sdk/models/ad_campaign_retrieve_params.rbi +35 -0
  96. data/rbi/whop_sdk/models/ad_campaign_retrieve_response.rbi +679 -0
  97. data/rbi/whop_sdk/models/ad_campaign_unpause_params.rbi +35 -0
  98. data/rbi/whop_sdk/models/ad_campaign_unpause_response.rbi +675 -0
  99. data/rbi/whop_sdk/models/ad_campaign_update_params.rbi +51 -0
  100. data/rbi/whop_sdk/models/ad_campaign_update_response.rbi +670 -0
  101. data/rbi/whop_sdk/models/ad_group_delete_params.rbi +35 -0
  102. data/rbi/whop_sdk/models/ad_group_delete_response.rbi +8 -0
  103. data/rbi/whop_sdk/models/ad_group_list_params.rbi +145 -0
  104. data/rbi/whop_sdk/models/ad_group_list_response.rbi +228 -0
  105. data/rbi/whop_sdk/models/ad_group_retrieve_params.rbi +35 -0
  106. data/rbi/whop_sdk/models/ad_group_retrieve_response.rbi +277 -0
  107. data/rbi/whop_sdk/models/ad_group_update_params.rbi +6133 -0
  108. data/rbi/whop_sdk/models/ad_group_update_response.rbi +274 -0
  109. data/rbi/whop_sdk/models/ad_list_params.rbi +146 -0
  110. data/rbi/whop_sdk/models/ad_list_response.rbi +146 -0
  111. data/rbi/whop_sdk/models/ad_report_retrieve_params.rbi +99 -0
  112. data/rbi/whop_sdk/models/ad_report_retrieve_response.rbi +629 -0
  113. data/rbi/whop_sdk/models/ad_retrieve_params.rbi +35 -0
  114. data/rbi/whop_sdk/models/ad_retrieve_response.rbi +245 -0
  115. data/rbi/whop_sdk/models/authorized_user_roles.rbi +2 -0
  116. data/rbi/whop_sdk/models/bounty_create_params.rbi +129 -0
  117. data/rbi/whop_sdk/models/bounty_create_response.rbi +196 -0
  118. data/rbi/whop_sdk/models/bounty_list_params.rbi +115 -0
  119. data/rbi/whop_sdk/models/bounty_list_response.rbi +189 -0
  120. data/rbi/whop_sdk/models/bounty_retrieve_params.rbi +35 -0
  121. data/rbi/whop_sdk/models/bounty_retrieve_response.rbi +199 -0
  122. data/rbi/whop_sdk/models/checkout_configuration.rbi +20 -0
  123. data/rbi/whop_sdk/models/checkout_configuration_create_params.rbi +84 -16
  124. data/rbi/whop_sdk/models/checkout_configuration_list_response.rbi +20 -0
  125. data/rbi/whop_sdk/models/company_create_api_key_params.rbi +184 -0
  126. data/rbi/whop_sdk/models/company_create_api_key_response.rbi +51 -0
  127. data/rbi/whop_sdk/models/conversion_create_params.rbi +661 -0
  128. data/rbi/whop_sdk/models/conversion_create_response.rbi +31 -0
  129. data/rbi/whop_sdk/models/currency.rbi +1 -0
  130. data/rbi/whop_sdk/models/file_create_params.rbi +41 -1
  131. data/rbi/whop_sdk/models/file_create_response.rbi +52 -5
  132. data/rbi/whop_sdk/models/file_retrieve_response.rbi +53 -5
  133. data/rbi/whop_sdk/models/forum_post_list_params.rbi +8 -0
  134. data/rbi/whop_sdk/models/forum_update_params.rbi +10 -0
  135. data/rbi/whop_sdk/models/invoice_create_params.rbi +46 -26
  136. data/rbi/whop_sdk/models/invoice_update_params.rbi +28 -6
  137. data/rbi/whop_sdk/models/ledger_account_retrieve_response.rbi +2 -2
  138. data/rbi/whop_sdk/models/membership.rbi +12 -0
  139. data/rbi/whop_sdk/models/membership_list_response.rbi +12 -0
  140. data/rbi/whop_sdk/models/payment.rbi +57 -3
  141. data/rbi/whop_sdk/models/payment_list_response.rbi +37 -3
  142. data/rbi/whop_sdk/models/payment_method_types.rbi +31 -0
  143. data/rbi/whop_sdk/models/payment_refund_params.rbi +6 -4
  144. data/rbi/whop_sdk/models/payout_account_retrieve_response.rbi +2 -2
  145. data/rbi/whop_sdk/models/payout_account_status_updated_webhook_event.rbi +2 -2
  146. data/rbi/whop_sdk/models/plan.rbi +12 -2
  147. data/rbi/whop_sdk/models/plan_create_params.rbi +22 -4
  148. data/rbi/whop_sdk/models/plan_list_response.rbi +12 -2
  149. data/rbi/whop_sdk/models/plan_update_params.rbi +22 -4
  150. data/rbi/whop_sdk/models/support_channel_list_params.rbi +50 -8
  151. data/rbi/whop_sdk/models/user_retrieve_params.rbi +18 -2
  152. data/rbi/whop_sdk/models/{user_update_profile_params.rbi → user_update_params.rbi} +25 -9
  153. data/rbi/whop_sdk/models/verification_list_response.rbi +2 -2
  154. data/rbi/whop_sdk/models/verification_retrieve_response.rbi +2 -2
  155. data/rbi/whop_sdk/models/verification_status.rbi +2 -0
  156. data/rbi/whop_sdk/models/verification_succeeded_webhook_event.rbi +2 -2
  157. data/rbi/whop_sdk/models.rbi +35 -1
  158. data/rbi/whop_sdk/resources/ad_campaigns.rbi +134 -0
  159. data/rbi/whop_sdk/resources/ad_groups.rbi +139 -0
  160. data/rbi/whop_sdk/resources/ad_reports.rbi +55 -0
  161. data/rbi/whop_sdk/resources/ads.rbi +81 -0
  162. data/rbi/whop_sdk/resources/bounties.rbi +116 -0
  163. data/rbi/whop_sdk/resources/companies.rbi +32 -0
  164. data/rbi/whop_sdk/resources/conversions.rbi +71 -0
  165. data/rbi/whop_sdk/resources/files.rbi +5 -0
  166. data/rbi/whop_sdk/resources/forum_posts.rbi +3 -0
  167. data/rbi/whop_sdk/resources/forums.rbi +4 -0
  168. data/rbi/whop_sdk/resources/invoices.rbi +10 -1
  169. data/rbi/whop_sdk/resources/payments.rbi +3 -2
  170. data/rbi/whop_sdk/resources/plans.rbi +6 -0
  171. data/rbi/whop_sdk/resources/support_channels.rbi +8 -3
  172. data/rbi/whop_sdk/resources/users.rbi +42 -29
  173. data/sig/whop_sdk/client.rbs +12 -0
  174. data/sig/whop_sdk/models/ad_campaign_list_params.rbs +82 -0
  175. data/sig/whop_sdk/models/ad_campaign_list_response.rbs +98 -0
  176. data/sig/whop_sdk/models/ad_campaign_pause_params.rbs +20 -0
  177. data/sig/whop_sdk/models/ad_campaign_pause_response.rbs +232 -0
  178. data/sig/whop_sdk/models/ad_campaign_retrieve_params.rbs +20 -0
  179. data/sig/whop_sdk/models/ad_campaign_retrieve_response.rbs +232 -0
  180. data/sig/whop_sdk/models/ad_campaign_unpause_params.rbs +20 -0
  181. data/sig/whop_sdk/models/ad_campaign_unpause_response.rbs +232 -0
  182. data/sig/whop_sdk/models/ad_campaign_update_params.rbs +28 -0
  183. data/sig/whop_sdk/models/ad_campaign_update_response.rbs +232 -0
  184. data/sig/whop_sdk/models/ad_group_delete_params.rbs +20 -0
  185. data/sig/whop_sdk/models/ad_group_delete_response.rbs +5 -0
  186. data/sig/whop_sdk/models/ad_group_list_params.rbs +87 -0
  187. data/sig/whop_sdk/models/ad_group_list_response.rbs +93 -0
  188. data/sig/whop_sdk/models/ad_group_retrieve_params.rbs +20 -0
  189. data/sig/whop_sdk/models/ad_group_retrieve_response.rbs +108 -0
  190. data/sig/whop_sdk/models/ad_group_update_params.rbs +2439 -0
  191. data/sig/whop_sdk/models/ad_group_update_response.rbs +108 -0
  192. data/sig/whop_sdk/models/ad_list_params.rbs +87 -0
  193. data/sig/whop_sdk/models/ad_list_response.rbs +72 -0
  194. data/sig/whop_sdk/models/ad_report_retrieve_params.rbs +56 -0
  195. data/sig/whop_sdk/models/ad_report_retrieve_response.rbs +278 -0
  196. data/sig/whop_sdk/models/ad_retrieve_params.rbs +20 -0
  197. data/sig/whop_sdk/models/ad_retrieve_response.rbs +102 -0
  198. data/sig/whop_sdk/models/authorized_user_roles.rbs +2 -0
  199. data/sig/whop_sdk/models/bounty_create_params.rbs +71 -0
  200. data/sig/whop_sdk/models/bounty_create_response.rbs +93 -0
  201. data/sig/whop_sdk/models/bounty_list_params.rbs +67 -0
  202. data/sig/whop_sdk/models/bounty_list_response.rbs +93 -0
  203. data/sig/whop_sdk/models/bounty_retrieve_params.rbs +20 -0
  204. data/sig/whop_sdk/models/bounty_retrieve_response.rbs +93 -0
  205. data/sig/whop_sdk/models/checkout_configuration.rbs +10 -0
  206. data/sig/whop_sdk/models/checkout_configuration_create_params.rbs +51 -16
  207. data/sig/whop_sdk/models/checkout_configuration_list_response.rbs +10 -0
  208. data/sig/whop_sdk/models/company_create_api_key_params.rbs +83 -0
  209. data/sig/whop_sdk/models/company_create_api_key_response.rbs +18 -0
  210. data/sig/whop_sdk/models/conversion_create_params.rbs +349 -0
  211. data/sig/whop_sdk/models/conversion_create_response.rbs +13 -0
  212. data/sig/whop_sdk/models/currency.rbs +2 -0
  213. data/sig/whop_sdk/models/file_create_params.rbs +20 -1
  214. data/sig/whop_sdk/models/file_create_response.rbs +19 -3
  215. data/sig/whop_sdk/models/file_retrieve_response.rbs +19 -3
  216. data/sig/whop_sdk/models/forum_post_list_params.rbs +5 -0
  217. data/sig/whop_sdk/models/forum_update_params.rbs +5 -0
  218. data/sig/whop_sdk/models/invoice_create_params.rbs +24 -14
  219. data/sig/whop_sdk/models/invoice_update_params.rbs +15 -5
  220. data/sig/whop_sdk/models/membership.rbs +5 -0
  221. data/sig/whop_sdk/models/membership_list_response.rbs +5 -0
  222. data/sig/whop_sdk/models/payment.rbs +25 -3
  223. data/sig/whop_sdk/models/payment_list_response.rbs +15 -3
  224. data/sig/whop_sdk/models/payment_method_types.rbs +32 -0
  225. data/sig/whop_sdk/models/plan.rbs +5 -0
  226. data/sig/whop_sdk/models/plan_create_params.rbs +14 -4
  227. data/sig/whop_sdk/models/plan_list_response.rbs +5 -0
  228. data/sig/whop_sdk/models/plan_update_params.rbs +14 -4
  229. data/sig/whop_sdk/models/support_channel_list_params.rbs +23 -6
  230. data/sig/whop_sdk/models/user_retrieve_params.rbs +10 -2
  231. data/sig/whop_sdk/models/{user_update_profile_params.rbs → user_update_params.rbs} +16 -6
  232. data/sig/whop_sdk/models/verification_status.rbs +2 -0
  233. data/sig/whop_sdk/models.rbs +35 -1
  234. data/sig/whop_sdk/resources/ad_campaigns.rbs +41 -0
  235. data/sig/whop_sdk/resources/ad_groups.rbs +40 -0
  236. data/sig/whop_sdk/resources/ad_reports.rbs +18 -0
  237. data/sig/whop_sdk/resources/ads.rbs +26 -0
  238. data/sig/whop_sdk/resources/bounties.rbs +37 -0
  239. data/sig/whop_sdk/resources/companies.rbs +9 -0
  240. data/sig/whop_sdk/resources/conversions.rbs +25 -0
  241. data/sig/whop_sdk/resources/files.rbs +1 -0
  242. data/sig/whop_sdk/resources/forum_posts.rbs +1 -0
  243. data/sig/whop_sdk/resources/forums.rbs +1 -0
  244. data/sig/whop_sdk/resources/invoices.rbs +2 -0
  245. data/sig/whop_sdk/resources/plans.rbs +2 -0
  246. data/sig/whop_sdk/resources/support_channels.rbs +2 -1
  247. data/sig/whop_sdk/resources/users.rbs +11 -8
  248. metadata +125 -5
@@ -0,0 +1,2439 @@
1
+ module WhopSDK
2
+ module Models
3
+ type ad_group_update_params =
4
+ {
5
+ id: String,
6
+ budget: Float?,
7
+ budget_type: WhopSDK::Models::AdGroupUpdateParams::budget_type?,
8
+ config: WhopSDK::AdGroupUpdateParams::Config?,
9
+ daily_budget: Float?,
10
+ name: String?,
11
+ platform_config: WhopSDK::AdGroupUpdateParams::PlatformConfig?,
12
+ status: WhopSDK::Models::AdGroupUpdateParams::status?
13
+ }
14
+ & WhopSDK::Internal::Type::request_parameters
15
+
16
+ class AdGroupUpdateParams < WhopSDK::Internal::Type::BaseModel
17
+ extend WhopSDK::Internal::Type::RequestParameters::Converter
18
+ include WhopSDK::Internal::Type::RequestParameters
19
+
20
+ attr_accessor id: String
21
+
22
+ attr_accessor budget: Float?
23
+
24
+ attr_accessor budget_type: WhopSDK::Models::AdGroupUpdateParams::budget_type?
25
+
26
+ attr_accessor config: WhopSDK::AdGroupUpdateParams::Config?
27
+
28
+ attr_accessor daily_budget: Float?
29
+
30
+ attr_accessor name: String?
31
+
32
+ attr_accessor platform_config: WhopSDK::AdGroupUpdateParams::PlatformConfig?
33
+
34
+ attr_accessor status: WhopSDK::Models::AdGroupUpdateParams::status?
35
+
36
+ def initialize: (
37
+ id: String,
38
+ ?budget: Float?,
39
+ ?budget_type: WhopSDK::Models::AdGroupUpdateParams::budget_type?,
40
+ ?config: WhopSDK::AdGroupUpdateParams::Config?,
41
+ ?daily_budget: Float?,
42
+ ?name: String?,
43
+ ?platform_config: WhopSDK::AdGroupUpdateParams::PlatformConfig?,
44
+ ?status: WhopSDK::Models::AdGroupUpdateParams::status?,
45
+ ?request_options: WhopSDK::request_opts
46
+ ) -> void
47
+
48
+ def to_hash: -> {
49
+ id: String,
50
+ budget: Float?,
51
+ budget_type: WhopSDK::Models::AdGroupUpdateParams::budget_type?,
52
+ config: WhopSDK::AdGroupUpdateParams::Config?,
53
+ daily_budget: Float?,
54
+ name: String?,
55
+ platform_config: WhopSDK::AdGroupUpdateParams::PlatformConfig?,
56
+ status: WhopSDK::Models::AdGroupUpdateParams::status?,
57
+ request_options: WhopSDK::RequestOptions
58
+ }
59
+
60
+ type budget_type = :daily | :lifetime
61
+
62
+ module BudgetType
63
+ extend WhopSDK::Internal::Type::Enum
64
+
65
+ DAILY: :daily
66
+ LIFETIME: :lifetime
67
+
68
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::budget_type]
69
+ end
70
+
71
+ type config =
72
+ {
73
+ bid_amount: Integer?,
74
+ bid_strategy: WhopSDK::Models::AdGroupUpdateParams::Config::bid_strategy?,
75
+ billing_event: WhopSDK::Models::AdGroupUpdateParams::Config::billing_event?,
76
+ end_time: String?,
77
+ frequency_cap: Integer?,
78
+ frequency_cap_interval_days: Integer?,
79
+ optimization_goal: WhopSDK::Models::AdGroupUpdateParams::Config::optimization_goal?,
80
+ pacing: WhopSDK::Models::AdGroupUpdateParams::Config::pacing?,
81
+ start_time: String?,
82
+ targeting: WhopSDK::AdGroupUpdateParams::Config::Targeting?
83
+ }
84
+
85
+ class Config < WhopSDK::Internal::Type::BaseModel
86
+ attr_accessor bid_amount: Integer?
87
+
88
+ attr_accessor bid_strategy: WhopSDK::Models::AdGroupUpdateParams::Config::bid_strategy?
89
+
90
+ attr_accessor billing_event: WhopSDK::Models::AdGroupUpdateParams::Config::billing_event?
91
+
92
+ attr_accessor end_time: String?
93
+
94
+ attr_accessor frequency_cap: Integer?
95
+
96
+ attr_accessor frequency_cap_interval_days: Integer?
97
+
98
+ attr_accessor optimization_goal: WhopSDK::Models::AdGroupUpdateParams::Config::optimization_goal?
99
+
100
+ attr_accessor pacing: WhopSDK::Models::AdGroupUpdateParams::Config::pacing?
101
+
102
+ attr_accessor start_time: String?
103
+
104
+ attr_accessor targeting: WhopSDK::AdGroupUpdateParams::Config::Targeting?
105
+
106
+ def initialize: (
107
+ ?bid_amount: Integer?,
108
+ ?bid_strategy: WhopSDK::Models::AdGroupUpdateParams::Config::bid_strategy?,
109
+ ?billing_event: WhopSDK::Models::AdGroupUpdateParams::Config::billing_event?,
110
+ ?end_time: String?,
111
+ ?frequency_cap: Integer?,
112
+ ?frequency_cap_interval_days: Integer?,
113
+ ?optimization_goal: WhopSDK::Models::AdGroupUpdateParams::Config::optimization_goal?,
114
+ ?pacing: WhopSDK::Models::AdGroupUpdateParams::Config::pacing?,
115
+ ?start_time: String?,
116
+ ?targeting: WhopSDK::AdGroupUpdateParams::Config::Targeting?
117
+ ) -> void
118
+
119
+ def to_hash: -> {
120
+ bid_amount: Integer?,
121
+ bid_strategy: WhopSDK::Models::AdGroupUpdateParams::Config::bid_strategy?,
122
+ billing_event: WhopSDK::Models::AdGroupUpdateParams::Config::billing_event?,
123
+ end_time: String?,
124
+ frequency_cap: Integer?,
125
+ frequency_cap_interval_days: Integer?,
126
+ optimization_goal: WhopSDK::Models::AdGroupUpdateParams::Config::optimization_goal?,
127
+ pacing: WhopSDK::Models::AdGroupUpdateParams::Config::pacing?,
128
+ start_time: String?,
129
+ targeting: WhopSDK::AdGroupUpdateParams::Config::Targeting?
130
+ }
131
+
132
+ type bid_strategy = :lowest_cost | :bid_cap | :cost_cap
133
+
134
+ module BidStrategy
135
+ extend WhopSDK::Internal::Type::Enum
136
+
137
+ LOWEST_COST: :lowest_cost
138
+ BID_CAP: :bid_cap
139
+ COST_CAP: :cost_cap
140
+
141
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::Config::bid_strategy]
142
+ end
143
+
144
+ type billing_event =
145
+ :impressions | :clicks | :optimized_cpm | :video_views
146
+
147
+ module BillingEvent
148
+ extend WhopSDK::Internal::Type::Enum
149
+
150
+ IMPRESSIONS: :impressions
151
+ CLICKS: :clicks
152
+ OPTIMIZED_CPM: :optimized_cpm
153
+ VIDEO_VIEWS: :video_views
154
+
155
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::Config::billing_event]
156
+ end
157
+
158
+ type optimization_goal =
159
+ :conversions
160
+ | :link_clicks
161
+ | :landing_page_views
162
+ | :reach
163
+ | :impressions
164
+ | :app_installs
165
+ | :video_views
166
+ | :lead_generation
167
+ | :value
168
+ | :page_likes
169
+ | :conversations
170
+ | :ad_recall_lift
171
+ | :two_second_continuous_video_views
172
+ | :post_engagement
173
+ | :event_responses
174
+ | :reminders_set
175
+ | :quality_lead
176
+
177
+ module OptimizationGoal
178
+ extend WhopSDK::Internal::Type::Enum
179
+
180
+ CONVERSIONS: :conversions
181
+ LINK_CLICKS: :link_clicks
182
+ LANDING_PAGE_VIEWS: :landing_page_views
183
+ REACH: :reach
184
+ IMPRESSIONS: :impressions
185
+ APP_INSTALLS: :app_installs
186
+ VIDEO_VIEWS: :video_views
187
+ LEAD_GENERATION: :lead_generation
188
+ VALUE: :value
189
+ PAGE_LIKES: :page_likes
190
+ CONVERSATIONS: :conversations
191
+ AD_RECALL_LIFT: :ad_recall_lift
192
+ TWO_SECOND_CONTINUOUS_VIDEO_VIEWS: :two_second_continuous_video_views
193
+ POST_ENGAGEMENT: :post_engagement
194
+ EVENT_RESPONSES: :event_responses
195
+ REMINDERS_SET: :reminders_set
196
+ QUALITY_LEAD: :quality_lead
197
+
198
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::Config::optimization_goal]
199
+ end
200
+
201
+ type pacing = :standard | :accelerated
202
+
203
+ module Pacing
204
+ extend WhopSDK::Internal::Type::Enum
205
+
206
+ STANDARD: :standard
207
+ ACCELERATED: :accelerated
208
+
209
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::Config::pacing]
210
+ end
211
+
212
+ type targeting =
213
+ {
214
+ age_max: Integer?,
215
+ age_min: Integer?,
216
+ countries: ::Array[String]?,
217
+ device_platforms: ::Array[WhopSDK::Models::AdGroupUpdateParams::Config::Targeting::device_platform]?,
218
+ exclude_audience_ids: ::Array[String]?,
219
+ genders: ::Array[WhopSDK::Models::AdGroupUpdateParams::Config::Targeting::gender]?,
220
+ include_audience_ids: ::Array[String]?,
221
+ interest_ids: ::Array[String]?,
222
+ languages: ::Array[String]?,
223
+ placement_type: WhopSDK::Models::AdGroupUpdateParams::Config::Targeting::placement_type?
224
+ }
225
+
226
+ class Targeting < WhopSDK::Internal::Type::BaseModel
227
+ attr_accessor age_max: Integer?
228
+
229
+ attr_accessor age_min: Integer?
230
+
231
+ attr_accessor countries: ::Array[String]?
232
+
233
+ attr_accessor device_platforms: ::Array[WhopSDK::Models::AdGroupUpdateParams::Config::Targeting::device_platform]?
234
+
235
+ attr_accessor exclude_audience_ids: ::Array[String]?
236
+
237
+ attr_accessor genders: ::Array[WhopSDK::Models::AdGroupUpdateParams::Config::Targeting::gender]?
238
+
239
+ attr_accessor include_audience_ids: ::Array[String]?
240
+
241
+ attr_accessor interest_ids: ::Array[String]?
242
+
243
+ attr_accessor languages: ::Array[String]?
244
+
245
+ attr_accessor placement_type: WhopSDK::Models::AdGroupUpdateParams::Config::Targeting::placement_type?
246
+
247
+ def initialize: (
248
+ ?age_max: Integer?,
249
+ ?age_min: Integer?,
250
+ ?countries: ::Array[String]?,
251
+ ?device_platforms: ::Array[WhopSDK::Models::AdGroupUpdateParams::Config::Targeting::device_platform]?,
252
+ ?exclude_audience_ids: ::Array[String]?,
253
+ ?genders: ::Array[WhopSDK::Models::AdGroupUpdateParams::Config::Targeting::gender]?,
254
+ ?include_audience_ids: ::Array[String]?,
255
+ ?interest_ids: ::Array[String]?,
256
+ ?languages: ::Array[String]?,
257
+ ?placement_type: WhopSDK::Models::AdGroupUpdateParams::Config::Targeting::placement_type?
258
+ ) -> void
259
+
260
+ def to_hash: -> {
261
+ age_max: Integer?,
262
+ age_min: Integer?,
263
+ countries: ::Array[String]?,
264
+ device_platforms: ::Array[WhopSDK::Models::AdGroupUpdateParams::Config::Targeting::device_platform]?,
265
+ exclude_audience_ids: ::Array[String]?,
266
+ genders: ::Array[WhopSDK::Models::AdGroupUpdateParams::Config::Targeting::gender]?,
267
+ include_audience_ids: ::Array[String]?,
268
+ interest_ids: ::Array[String]?,
269
+ languages: ::Array[String]?,
270
+ placement_type: WhopSDK::Models::AdGroupUpdateParams::Config::Targeting::placement_type?
271
+ }
272
+
273
+ type device_platform = :mobile | :desktop
274
+
275
+ module DevicePlatform
276
+ extend WhopSDK::Internal::Type::Enum
277
+
278
+ MOBILE: :mobile
279
+ DESKTOP: :desktop
280
+
281
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::Config::Targeting::device_platform]
282
+ end
283
+
284
+ type gender = :male | :female | :all
285
+
286
+ module Gender
287
+ extend WhopSDK::Internal::Type::Enum
288
+
289
+ MALE: :male
290
+ FEMALE: :female
291
+ ALL: :all
292
+
293
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::Config::Targeting::gender]
294
+ end
295
+
296
+ type placement_type = :automatic | :manual
297
+
298
+ module PlacementType
299
+ extend WhopSDK::Internal::Type::Enum
300
+
301
+ AUTOMATIC: :automatic
302
+ MANUAL: :manual
303
+
304
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::Config::Targeting::placement_type]
305
+ end
306
+ end
307
+ end
308
+
309
+ type platform_config =
310
+ {
311
+ meta: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta?,
312
+ tiktok: WhopSDK::AdGroupUpdateParams::PlatformConfig::Tiktok?
313
+ }
314
+
315
+ class PlatformConfig < WhopSDK::Internal::Type::BaseModel
316
+ attr_accessor meta: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta?
317
+
318
+ attr_accessor tiktok: WhopSDK::AdGroupUpdateParams::PlatformConfig::Tiktok?
319
+
320
+ def initialize: (
321
+ ?meta: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta?,
322
+ ?tiktok: WhopSDK::AdGroupUpdateParams::PlatformConfig::Tiktok?
323
+ ) -> void
324
+
325
+ def to_hash: -> {
326
+ meta: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta?,
327
+ tiktok: WhopSDK::AdGroupUpdateParams::PlatformConfig::Tiktok?
328
+ }
329
+
330
+ type meta =
331
+ {
332
+ android_devices: ::Array[String]?,
333
+ attribution_setting: String?,
334
+ attribution_spec: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::AttributionSpec]?,
335
+ audience_network_positions: ::Array[String]?,
336
+ audience_type: String?,
337
+ bid_amount: Integer?,
338
+ bid_strategy: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::bid_strategy?,
339
+ billing_event: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::billing_event?,
340
+ brand_safety_content_filter_levels: ::Array[String]?,
341
+ budget_remaining: String?,
342
+ cost_per_result_goal: Float?,
343
+ created_time: String?,
344
+ daily_budget: Integer?,
345
+ daily_min_spend_target: String?,
346
+ daily_spend_cap: String?,
347
+ destination_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::destination_type?,
348
+ dsa_beneficiary: String?,
349
+ dsa_payor: String?,
350
+ end_time: String?,
351
+ excluded_geo_locations: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::ExcludedGeoLocations?,
352
+ facebook_positions: ::Array[String]?,
353
+ frequency_control_count: Integer?,
354
+ frequency_control_days: Integer?,
355
+ frequency_control_type: String?,
356
+ geo_cities: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoCity]?,
357
+ geo_locations: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoLocations?,
358
+ geo_regions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoRegion]?,
359
+ geo_zips: ::Array[String]?,
360
+ instagram_actor_id: String?,
361
+ instagram_positions: ::Array[String]?,
362
+ ios_devices: ::Array[String]?,
363
+ is_dynamic_creative: bool?,
364
+ lead_conversion_location: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::lead_conversion_location?,
365
+ lead_form_config: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig?,
366
+ lead_gen_form_id: String?,
367
+ lifetime_budget: Integer?,
368
+ lifetime_min_spend_target: String?,
369
+ lifetime_spend_cap: String?,
370
+ location_types: ::Array[String]?,
371
+ messenger_positions: ::Array[String]?,
372
+ optimization_goal: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::optimization_goal?,
373
+ page_id: String?,
374
+ pixel_id: String?,
375
+ promoted_object: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::PromotedObject?,
376
+ publisher_platforms: ::Array[String]?,
377
+ source_adset_id: String?,
378
+ start_time: String?,
379
+ status: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::status?,
380
+ targeting_automation: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::TargetingAutomation?,
381
+ threads_positions: ::Array[String]?,
382
+ updated_time: String?,
383
+ user_device: ::Array[String]?,
384
+ user_os: ::Array[String]?,
385
+ whatsapp_phone_number: String?,
386
+ whatsapp_positions: ::Array[String]?
387
+ }
388
+
389
+ class Meta < WhopSDK::Internal::Type::BaseModel
390
+ attr_accessor android_devices: ::Array[String]?
391
+
392
+ attr_accessor attribution_setting: String?
393
+
394
+ attr_accessor attribution_spec: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::AttributionSpec]?
395
+
396
+ attr_accessor audience_network_positions: ::Array[String]?
397
+
398
+ attr_accessor audience_type: String?
399
+
400
+ attr_accessor bid_amount: Integer?
401
+
402
+ attr_accessor bid_strategy: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::bid_strategy?
403
+
404
+ attr_accessor billing_event: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::billing_event?
405
+
406
+ attr_accessor brand_safety_content_filter_levels: ::Array[String]?
407
+
408
+ attr_accessor budget_remaining: String?
409
+
410
+ attr_accessor cost_per_result_goal: Float?
411
+
412
+ attr_accessor created_time: String?
413
+
414
+ attr_accessor daily_budget: Integer?
415
+
416
+ attr_accessor daily_min_spend_target: String?
417
+
418
+ attr_accessor daily_spend_cap: String?
419
+
420
+ attr_accessor destination_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::destination_type?
421
+
422
+ attr_accessor dsa_beneficiary: String?
423
+
424
+ attr_accessor dsa_payor: String?
425
+
426
+ attr_accessor end_time: String?
427
+
428
+ attr_accessor excluded_geo_locations: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::ExcludedGeoLocations?
429
+
430
+ attr_accessor facebook_positions: ::Array[String]?
431
+
432
+ attr_accessor frequency_control_count: Integer?
433
+
434
+ attr_accessor frequency_control_days: Integer?
435
+
436
+ attr_accessor frequency_control_type: String?
437
+
438
+ attr_accessor geo_cities: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoCity]?
439
+
440
+ attr_accessor geo_locations: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoLocations?
441
+
442
+ attr_accessor geo_regions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoRegion]?
443
+
444
+ attr_accessor geo_zips: ::Array[String]?
445
+
446
+ attr_accessor instagram_actor_id: String?
447
+
448
+ attr_accessor instagram_positions: ::Array[String]?
449
+
450
+ attr_accessor ios_devices: ::Array[String]?
451
+
452
+ attr_accessor is_dynamic_creative: bool?
453
+
454
+ attr_accessor lead_conversion_location: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::lead_conversion_location?
455
+
456
+ attr_accessor lead_form_config: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig?
457
+
458
+ attr_accessor lead_gen_form_id: String?
459
+
460
+ attr_accessor lifetime_budget: Integer?
461
+
462
+ attr_accessor lifetime_min_spend_target: String?
463
+
464
+ attr_accessor lifetime_spend_cap: String?
465
+
466
+ attr_accessor location_types: ::Array[String]?
467
+
468
+ attr_accessor messenger_positions: ::Array[String]?
469
+
470
+ attr_accessor optimization_goal: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::optimization_goal?
471
+
472
+ attr_accessor page_id: String?
473
+
474
+ attr_accessor pixel_id: String?
475
+
476
+ attr_accessor promoted_object: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::PromotedObject?
477
+
478
+ attr_accessor publisher_platforms: ::Array[String]?
479
+
480
+ attr_accessor source_adset_id: String?
481
+
482
+ attr_accessor start_time: String?
483
+
484
+ attr_accessor status: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::status?
485
+
486
+ attr_accessor targeting_automation: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::TargetingAutomation?
487
+
488
+ attr_accessor threads_positions: ::Array[String]?
489
+
490
+ attr_accessor updated_time: String?
491
+
492
+ attr_accessor user_device: ::Array[String]?
493
+
494
+ attr_accessor user_os: ::Array[String]?
495
+
496
+ attr_accessor whatsapp_phone_number: String?
497
+
498
+ attr_accessor whatsapp_positions: ::Array[String]?
499
+
500
+ def initialize: (
501
+ ?android_devices: ::Array[String]?,
502
+ ?attribution_setting: String?,
503
+ ?attribution_spec: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::AttributionSpec]?,
504
+ ?audience_network_positions: ::Array[String]?,
505
+ ?audience_type: String?,
506
+ ?bid_amount: Integer?,
507
+ ?bid_strategy: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::bid_strategy?,
508
+ ?billing_event: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::billing_event?,
509
+ ?brand_safety_content_filter_levels: ::Array[String]?,
510
+ ?budget_remaining: String?,
511
+ ?cost_per_result_goal: Float?,
512
+ ?created_time: String?,
513
+ ?daily_budget: Integer?,
514
+ ?daily_min_spend_target: String?,
515
+ ?daily_spend_cap: String?,
516
+ ?destination_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::destination_type?,
517
+ ?dsa_beneficiary: String?,
518
+ ?dsa_payor: String?,
519
+ ?end_time: String?,
520
+ ?excluded_geo_locations: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::ExcludedGeoLocations?,
521
+ ?facebook_positions: ::Array[String]?,
522
+ ?frequency_control_count: Integer?,
523
+ ?frequency_control_days: Integer?,
524
+ ?frequency_control_type: String?,
525
+ ?geo_cities: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoCity]?,
526
+ ?geo_locations: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoLocations?,
527
+ ?geo_regions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoRegion]?,
528
+ ?geo_zips: ::Array[String]?,
529
+ ?instagram_actor_id: String?,
530
+ ?instagram_positions: ::Array[String]?,
531
+ ?ios_devices: ::Array[String]?,
532
+ ?is_dynamic_creative: bool?,
533
+ ?lead_conversion_location: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::lead_conversion_location?,
534
+ ?lead_form_config: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig?,
535
+ ?lead_gen_form_id: String?,
536
+ ?lifetime_budget: Integer?,
537
+ ?lifetime_min_spend_target: String?,
538
+ ?lifetime_spend_cap: String?,
539
+ ?location_types: ::Array[String]?,
540
+ ?messenger_positions: ::Array[String]?,
541
+ ?optimization_goal: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::optimization_goal?,
542
+ ?page_id: String?,
543
+ ?pixel_id: String?,
544
+ ?promoted_object: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::PromotedObject?,
545
+ ?publisher_platforms: ::Array[String]?,
546
+ ?source_adset_id: String?,
547
+ ?start_time: String?,
548
+ ?status: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::status?,
549
+ ?targeting_automation: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::TargetingAutomation?,
550
+ ?threads_positions: ::Array[String]?,
551
+ ?updated_time: String?,
552
+ ?user_device: ::Array[String]?,
553
+ ?user_os: ::Array[String]?,
554
+ ?whatsapp_phone_number: String?,
555
+ ?whatsapp_positions: ::Array[String]?
556
+ ) -> void
557
+
558
+ def to_hash: -> {
559
+ android_devices: ::Array[String]?,
560
+ attribution_setting: String?,
561
+ attribution_spec: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::AttributionSpec]?,
562
+ audience_network_positions: ::Array[String]?,
563
+ audience_type: String?,
564
+ bid_amount: Integer?,
565
+ bid_strategy: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::bid_strategy?,
566
+ billing_event: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::billing_event?,
567
+ brand_safety_content_filter_levels: ::Array[String]?,
568
+ budget_remaining: String?,
569
+ cost_per_result_goal: Float?,
570
+ created_time: String?,
571
+ daily_budget: Integer?,
572
+ daily_min_spend_target: String?,
573
+ daily_spend_cap: String?,
574
+ destination_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::destination_type?,
575
+ dsa_beneficiary: String?,
576
+ dsa_payor: String?,
577
+ end_time: String?,
578
+ excluded_geo_locations: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::ExcludedGeoLocations?,
579
+ facebook_positions: ::Array[String]?,
580
+ frequency_control_count: Integer?,
581
+ frequency_control_days: Integer?,
582
+ frequency_control_type: String?,
583
+ geo_cities: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoCity]?,
584
+ geo_locations: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoLocations?,
585
+ geo_regions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoRegion]?,
586
+ geo_zips: ::Array[String]?,
587
+ instagram_actor_id: String?,
588
+ instagram_positions: ::Array[String]?,
589
+ ios_devices: ::Array[String]?,
590
+ is_dynamic_creative: bool?,
591
+ lead_conversion_location: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::lead_conversion_location?,
592
+ lead_form_config: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig?,
593
+ lead_gen_form_id: String?,
594
+ lifetime_budget: Integer?,
595
+ lifetime_min_spend_target: String?,
596
+ lifetime_spend_cap: String?,
597
+ location_types: ::Array[String]?,
598
+ messenger_positions: ::Array[String]?,
599
+ optimization_goal: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::optimization_goal?,
600
+ page_id: String?,
601
+ pixel_id: String?,
602
+ promoted_object: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::PromotedObject?,
603
+ publisher_platforms: ::Array[String]?,
604
+ source_adset_id: String?,
605
+ start_time: String?,
606
+ status: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::status?,
607
+ targeting_automation: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::TargetingAutomation?,
608
+ threads_positions: ::Array[String]?,
609
+ updated_time: String?,
610
+ user_device: ::Array[String]?,
611
+ user_os: ::Array[String]?,
612
+ whatsapp_phone_number: String?,
613
+ whatsapp_positions: ::Array[String]?
614
+ }
615
+
616
+ type attribution_spec = { event_type: String, window_days: Integer }
617
+
618
+ class AttributionSpec < WhopSDK::Internal::Type::BaseModel
619
+ attr_accessor event_type: String
620
+
621
+ attr_accessor window_days: Integer
622
+
623
+ def initialize: (event_type: String, window_days: Integer) -> void
624
+
625
+ def to_hash: -> { event_type: String, window_days: Integer }
626
+ end
627
+
628
+ type bid_strategy =
629
+ :LOWEST_COST_WITHOUT_CAP
630
+ | :LOWEST_COST_WITH_BID_CAP
631
+ | :COST_CAP
632
+ | :LOWEST_COST_WITH_MIN_ROAS
633
+
634
+ module BidStrategy
635
+ extend WhopSDK::Internal::Type::Enum
636
+
637
+ LOWEST_COST_WITHOUT_CAP: :LOWEST_COST_WITHOUT_CAP
638
+ LOWEST_COST_WITH_BID_CAP: :LOWEST_COST_WITH_BID_CAP
639
+ COST_CAP: :COST_CAP
640
+ LOWEST_COST_WITH_MIN_ROAS: :LOWEST_COST_WITH_MIN_ROAS
641
+
642
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::bid_strategy]
643
+ end
644
+
645
+ type billing_event =
646
+ :APP_INSTALLS
647
+ | :CLICKS
648
+ | :IMPRESSIONS
649
+ | :LINK_CLICKS
650
+ | :NONE
651
+ | :OFFER_CLAIMS
652
+ | :PAGE_LIKES
653
+ | :POST_ENGAGEMENT
654
+ | :THRUPLAY
655
+ | :PURCHASE
656
+ | :LISTING_INTERACTION
657
+
658
+ module BillingEvent
659
+ extend WhopSDK::Internal::Type::Enum
660
+
661
+ APP_INSTALLS: :APP_INSTALLS
662
+ CLICKS: :CLICKS
663
+ IMPRESSIONS: :IMPRESSIONS
664
+ LINK_CLICKS: :LINK_CLICKS
665
+ NONE: :NONE
666
+ OFFER_CLAIMS: :OFFER_CLAIMS
667
+ PAGE_LIKES: :PAGE_LIKES
668
+ POST_ENGAGEMENT: :POST_ENGAGEMENT
669
+ THRUPLAY: :THRUPLAY
670
+ PURCHASE: :PURCHASE
671
+ LISTING_INTERACTION: :LISTING_INTERACTION
672
+
673
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::billing_event]
674
+ end
675
+
676
+ type destination_type =
677
+ :UNDEFINED
678
+ | :WEBSITE
679
+ | :APP
680
+ | :FACEBOOK
681
+ | :MESSENGER
682
+ | :WHATSAPP
683
+ | :INSTAGRAM_DIRECT
684
+ | :INSTAGRAM_PROFILE
685
+ | :PHONE_CALL
686
+ | :SHOP_AUTOMATIC
687
+ | :APPLINKS_AUTOMATIC
688
+ | :ON_AD
689
+ | :ON_POST
690
+ | :ON_VIDEO
691
+ | :ON_PAGE
692
+ | :ON_EVENT
693
+ | :MESSAGING_MESSENGER_WHATSAPP
694
+ | :MESSAGING_INSTAGRAM_DIRECT_MESSENGER
695
+ | :MESSAGING_INSTAGRAM_DIRECT_WHATSAPP
696
+ | :MESSAGING_INSTAGRAM_DIRECT_MESSENGER_WHATSAPP
697
+ | :INSTAGRAM_PROFILE_AND_FACEBOOK_PAGE
698
+ | :FACEBOOK_PAGE
699
+ | :INSTAGRAM_LIVE
700
+ | :FACEBOOK_LIVE
701
+ | :IMAGINE
702
+ | :LEAD_FROM_IG_DIRECT
703
+ | :LEAD_FROM_MESSENGER
704
+ | :WEBSITE_AND_LEAD_FORM
705
+ | :WEBSITE_AND_PHONE_CALL
706
+ | :BROADCAST_CHANNEL
707
+
708
+ module DestinationType
709
+ extend WhopSDK::Internal::Type::Enum
710
+
711
+ UNDEFINED: :UNDEFINED
712
+ WEBSITE: :WEBSITE
713
+ APP: :APP
714
+ FACEBOOK: :FACEBOOK
715
+ MESSENGER: :MESSENGER
716
+ WHATSAPP: :WHATSAPP
717
+ INSTAGRAM_DIRECT: :INSTAGRAM_DIRECT
718
+ INSTAGRAM_PROFILE: :INSTAGRAM_PROFILE
719
+ PHONE_CALL: :PHONE_CALL
720
+ SHOP_AUTOMATIC: :SHOP_AUTOMATIC
721
+ APPLINKS_AUTOMATIC: :APPLINKS_AUTOMATIC
722
+ ON_AD: :ON_AD
723
+ ON_POST: :ON_POST
724
+ ON_VIDEO: :ON_VIDEO
725
+ ON_PAGE: :ON_PAGE
726
+ ON_EVENT: :ON_EVENT
727
+ MESSAGING_MESSENGER_WHATSAPP: :MESSAGING_MESSENGER_WHATSAPP
728
+ MESSAGING_INSTAGRAM_DIRECT_MESSENGER: :MESSAGING_INSTAGRAM_DIRECT_MESSENGER
729
+ MESSAGING_INSTAGRAM_DIRECT_WHATSAPP: :MESSAGING_INSTAGRAM_DIRECT_WHATSAPP
730
+ MESSAGING_INSTAGRAM_DIRECT_MESSENGER_WHATSAPP: :MESSAGING_INSTAGRAM_DIRECT_MESSENGER_WHATSAPP
731
+ INSTAGRAM_PROFILE_AND_FACEBOOK_PAGE: :INSTAGRAM_PROFILE_AND_FACEBOOK_PAGE
732
+ FACEBOOK_PAGE: :FACEBOOK_PAGE
733
+ INSTAGRAM_LIVE: :INSTAGRAM_LIVE
734
+ FACEBOOK_LIVE: :FACEBOOK_LIVE
735
+ IMAGINE: :IMAGINE
736
+ LEAD_FROM_IG_DIRECT: :LEAD_FROM_IG_DIRECT
737
+ LEAD_FROM_MESSENGER: :LEAD_FROM_MESSENGER
738
+ WEBSITE_AND_LEAD_FORM: :WEBSITE_AND_LEAD_FORM
739
+ WEBSITE_AND_PHONE_CALL: :WEBSITE_AND_PHONE_CALL
740
+ BROADCAST_CHANNEL: :BROADCAST_CHANNEL
741
+
742
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::destination_type]
743
+ end
744
+
745
+ type excluded_geo_locations =
746
+ {
747
+ cities: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::ExcludedGeoLocations::City]?,
748
+ countries: ::Array[String]?,
749
+ location_types: ::Array[String]?,
750
+ regions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::ExcludedGeoLocations::Region]?,
751
+ zips: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::ExcludedGeoLocations::Zip]?
752
+ }
753
+
754
+ class ExcludedGeoLocations < WhopSDK::Internal::Type::BaseModel
755
+ attr_accessor cities: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::ExcludedGeoLocations::City]?
756
+
757
+ attr_accessor countries: ::Array[String]?
758
+
759
+ attr_accessor location_types: ::Array[String]?
760
+
761
+ attr_accessor regions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::ExcludedGeoLocations::Region]?
762
+
763
+ attr_accessor zips: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::ExcludedGeoLocations::Zip]?
764
+
765
+ def initialize: (
766
+ ?cities: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::ExcludedGeoLocations::City]?,
767
+ ?countries: ::Array[String]?,
768
+ ?location_types: ::Array[String]?,
769
+ ?regions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::ExcludedGeoLocations::Region]?,
770
+ ?zips: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::ExcludedGeoLocations::Zip]?
771
+ ) -> void
772
+
773
+ def to_hash: -> {
774
+ cities: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::ExcludedGeoLocations::City]?,
775
+ countries: ::Array[String]?,
776
+ location_types: ::Array[String]?,
777
+ regions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::ExcludedGeoLocations::Region]?,
778
+ zips: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::ExcludedGeoLocations::Zip]?
779
+ }
780
+
781
+ type city =
782
+ { key: String, country: String?, name: String?, radius: Integer? }
783
+
784
+ class City < WhopSDK::Internal::Type::BaseModel
785
+ attr_accessor key: String
786
+
787
+ attr_accessor country: String?
788
+
789
+ attr_accessor name: String?
790
+
791
+ attr_accessor radius: Integer?
792
+
793
+ def initialize: (
794
+ key: String,
795
+ ?country: String?,
796
+ ?name: String?,
797
+ ?radius: Integer?
798
+ ) -> void
799
+
800
+ def to_hash: -> {
801
+ key: String,
802
+ country: String?,
803
+ name: String?,
804
+ radius: Integer?
805
+ }
806
+ end
807
+
808
+ type region =
809
+ { key: String, country: String?, name: String?, radius: Integer? }
810
+
811
+ class Region < WhopSDK::Internal::Type::BaseModel
812
+ attr_accessor key: String
813
+
814
+ attr_accessor country: String?
815
+
816
+ attr_accessor name: String?
817
+
818
+ attr_accessor radius: Integer?
819
+
820
+ def initialize: (
821
+ key: String,
822
+ ?country: String?,
823
+ ?name: String?,
824
+ ?radius: Integer?
825
+ ) -> void
826
+
827
+ def to_hash: -> {
828
+ key: String,
829
+ country: String?,
830
+ name: String?,
831
+ radius: Integer?
832
+ }
833
+ end
834
+
835
+ type zip =
836
+ { key: String, country: String?, name: String?, radius: Integer? }
837
+
838
+ class Zip < WhopSDK::Internal::Type::BaseModel
839
+ attr_accessor key: String
840
+
841
+ attr_accessor country: String?
842
+
843
+ attr_accessor name: String?
844
+
845
+ attr_accessor radius: Integer?
846
+
847
+ def initialize: (
848
+ key: String,
849
+ ?country: String?,
850
+ ?name: String?,
851
+ ?radius: Integer?
852
+ ) -> void
853
+
854
+ def to_hash: -> {
855
+ key: String,
856
+ country: String?,
857
+ name: String?,
858
+ radius: Integer?
859
+ }
860
+ end
861
+ end
862
+
863
+ type geo_city =
864
+ { key: String, country: String?, name: String?, radius: Integer? }
865
+
866
+ class GeoCity < WhopSDK::Internal::Type::BaseModel
867
+ attr_accessor key: String
868
+
869
+ attr_accessor country: String?
870
+
871
+ attr_accessor name: String?
872
+
873
+ attr_accessor radius: Integer?
874
+
875
+ def initialize: (
876
+ key: String,
877
+ ?country: String?,
878
+ ?name: String?,
879
+ ?radius: Integer?
880
+ ) -> void
881
+
882
+ def to_hash: -> {
883
+ key: String,
884
+ country: String?,
885
+ name: String?,
886
+ radius: Integer?
887
+ }
888
+ end
889
+
890
+ type geo_locations =
891
+ {
892
+ cities: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoLocations::City]?,
893
+ countries: ::Array[String]?,
894
+ location_types: ::Array[String]?,
895
+ regions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoLocations::Region]?,
896
+ zips: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoLocations::Zip]?
897
+ }
898
+
899
+ class GeoLocations < WhopSDK::Internal::Type::BaseModel
900
+ attr_accessor cities: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoLocations::City]?
901
+
902
+ attr_accessor countries: ::Array[String]?
903
+
904
+ attr_accessor location_types: ::Array[String]?
905
+
906
+ attr_accessor regions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoLocations::Region]?
907
+
908
+ attr_accessor zips: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoLocations::Zip]?
909
+
910
+ def initialize: (
911
+ ?cities: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoLocations::City]?,
912
+ ?countries: ::Array[String]?,
913
+ ?location_types: ::Array[String]?,
914
+ ?regions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoLocations::Region]?,
915
+ ?zips: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoLocations::Zip]?
916
+ ) -> void
917
+
918
+ def to_hash: -> {
919
+ cities: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoLocations::City]?,
920
+ countries: ::Array[String]?,
921
+ location_types: ::Array[String]?,
922
+ regions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoLocations::Region]?,
923
+ zips: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::GeoLocations::Zip]?
924
+ }
925
+
926
+ type city =
927
+ { key: String, country: String?, name: String?, radius: Integer? }
928
+
929
+ class City < WhopSDK::Internal::Type::BaseModel
930
+ attr_accessor key: String
931
+
932
+ attr_accessor country: String?
933
+
934
+ attr_accessor name: String?
935
+
936
+ attr_accessor radius: Integer?
937
+
938
+ def initialize: (
939
+ key: String,
940
+ ?country: String?,
941
+ ?name: String?,
942
+ ?radius: Integer?
943
+ ) -> void
944
+
945
+ def to_hash: -> {
946
+ key: String,
947
+ country: String?,
948
+ name: String?,
949
+ radius: Integer?
950
+ }
951
+ end
952
+
953
+ type region =
954
+ { key: String, country: String?, name: String?, radius: Integer? }
955
+
956
+ class Region < WhopSDK::Internal::Type::BaseModel
957
+ attr_accessor key: String
958
+
959
+ attr_accessor country: String?
960
+
961
+ attr_accessor name: String?
962
+
963
+ attr_accessor radius: Integer?
964
+
965
+ def initialize: (
966
+ key: String,
967
+ ?country: String?,
968
+ ?name: String?,
969
+ ?radius: Integer?
970
+ ) -> void
971
+
972
+ def to_hash: -> {
973
+ key: String,
974
+ country: String?,
975
+ name: String?,
976
+ radius: Integer?
977
+ }
978
+ end
979
+
980
+ type zip =
981
+ { key: String, country: String?, name: String?, radius: Integer? }
982
+
983
+ class Zip < WhopSDK::Internal::Type::BaseModel
984
+ attr_accessor key: String
985
+
986
+ attr_accessor country: String?
987
+
988
+ attr_accessor name: String?
989
+
990
+ attr_accessor radius: Integer?
991
+
992
+ def initialize: (
993
+ key: String,
994
+ ?country: String?,
995
+ ?name: String?,
996
+ ?radius: Integer?
997
+ ) -> void
998
+
999
+ def to_hash: -> {
1000
+ key: String,
1001
+ country: String?,
1002
+ name: String?,
1003
+ radius: Integer?
1004
+ }
1005
+ end
1006
+ end
1007
+
1008
+ type geo_region =
1009
+ { key: String, country: String?, name: String?, radius: Integer? }
1010
+
1011
+ class GeoRegion < WhopSDK::Internal::Type::BaseModel
1012
+ attr_accessor key: String
1013
+
1014
+ attr_accessor country: String?
1015
+
1016
+ attr_accessor name: String?
1017
+
1018
+ attr_accessor radius: Integer?
1019
+
1020
+ def initialize: (
1021
+ key: String,
1022
+ ?country: String?,
1023
+ ?name: String?,
1024
+ ?radius: Integer?
1025
+ ) -> void
1026
+
1027
+ def to_hash: -> {
1028
+ key: String,
1029
+ country: String?,
1030
+ name: String?,
1031
+ radius: Integer?
1032
+ }
1033
+ end
1034
+
1035
+ type lead_conversion_location =
1036
+ :website | :instant_forms | :messenger | :instagram | :calls | :app
1037
+
1038
+ module LeadConversionLocation
1039
+ extend WhopSDK::Internal::Type::Enum
1040
+
1041
+ WEBSITE: :website
1042
+ INSTANT_FORMS: :instant_forms
1043
+ MESSENGER: :messenger
1044
+ INSTAGRAM: :instagram
1045
+ CALLS: :calls
1046
+ APP: :app
1047
+
1048
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::lead_conversion_location]
1049
+ end
1050
+
1051
+ type lead_form_config =
1052
+ {
1053
+ name: String,
1054
+ privacy_policy_url: String,
1055
+ questions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question],
1056
+ background_image_source: String?,
1057
+ background_image_url: String?,
1058
+ conditional_logic_enabled: bool?,
1059
+ context_card_button_text: String?,
1060
+ context_card_content: ::Array[String]?,
1061
+ context_card_style: String?,
1062
+ context_card_title: String?,
1063
+ custom_disclaimer_body: String?,
1064
+ custom_disclaimer_checkboxes: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::CustomDisclaimerCheckbox]?,
1065
+ custom_disclaimer_title: String?,
1066
+ form_type: String?,
1067
+ messenger_enabled: bool?,
1068
+ phone_verification_enabled: bool?,
1069
+ privacy_policy_link_text: String?,
1070
+ question_page_custom_headline: String?,
1071
+ rich_creative_headline: String?,
1072
+ rich_creative_overview: String?,
1073
+ rich_creative_url: String?,
1074
+ thank_you_pages: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::ThankYouPage]?
1075
+ }
1076
+
1077
+ class LeadFormConfig < WhopSDK::Internal::Type::BaseModel
1078
+ attr_accessor name: String
1079
+
1080
+ attr_accessor privacy_policy_url: String
1081
+
1082
+ attr_accessor questions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question]
1083
+
1084
+ attr_accessor background_image_source: String?
1085
+
1086
+ attr_accessor background_image_url: String?
1087
+
1088
+ attr_accessor conditional_logic_enabled: bool?
1089
+
1090
+ attr_accessor context_card_button_text: String?
1091
+
1092
+ attr_accessor context_card_content: ::Array[String]?
1093
+
1094
+ attr_accessor context_card_style: String?
1095
+
1096
+ attr_accessor context_card_title: String?
1097
+
1098
+ attr_accessor custom_disclaimer_body: String?
1099
+
1100
+ attr_accessor custom_disclaimer_checkboxes: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::CustomDisclaimerCheckbox]?
1101
+
1102
+ attr_accessor custom_disclaimer_title: String?
1103
+
1104
+ attr_accessor form_type: String?
1105
+
1106
+ attr_accessor messenger_enabled: bool?
1107
+
1108
+ attr_accessor phone_verification_enabled: bool?
1109
+
1110
+ attr_accessor privacy_policy_link_text: String?
1111
+
1112
+ attr_accessor question_page_custom_headline: String?
1113
+
1114
+ attr_accessor rich_creative_headline: String?
1115
+
1116
+ attr_accessor rich_creative_overview: String?
1117
+
1118
+ attr_accessor rich_creative_url: String?
1119
+
1120
+ attr_accessor thank_you_pages: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::ThankYouPage]?
1121
+
1122
+ def initialize: (
1123
+ name: String,
1124
+ privacy_policy_url: String,
1125
+ questions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question],
1126
+ ?background_image_source: String?,
1127
+ ?background_image_url: String?,
1128
+ ?conditional_logic_enabled: bool?,
1129
+ ?context_card_button_text: String?,
1130
+ ?context_card_content: ::Array[String]?,
1131
+ ?context_card_style: String?,
1132
+ ?context_card_title: String?,
1133
+ ?custom_disclaimer_body: String?,
1134
+ ?custom_disclaimer_checkboxes: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::CustomDisclaimerCheckbox]?,
1135
+ ?custom_disclaimer_title: String?,
1136
+ ?form_type: String?,
1137
+ ?messenger_enabled: bool?,
1138
+ ?phone_verification_enabled: bool?,
1139
+ ?privacy_policy_link_text: String?,
1140
+ ?question_page_custom_headline: String?,
1141
+ ?rich_creative_headline: String?,
1142
+ ?rich_creative_overview: String?,
1143
+ ?rich_creative_url: String?,
1144
+ ?thank_you_pages: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::ThankYouPage]?
1145
+ ) -> void
1146
+
1147
+ def to_hash: -> {
1148
+ name: String,
1149
+ privacy_policy_url: String,
1150
+ questions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question],
1151
+ background_image_source: String?,
1152
+ background_image_url: String?,
1153
+ conditional_logic_enabled: bool?,
1154
+ context_card_button_text: String?,
1155
+ context_card_content: ::Array[String]?,
1156
+ context_card_style: String?,
1157
+ context_card_title: String?,
1158
+ custom_disclaimer_body: String?,
1159
+ custom_disclaimer_checkboxes: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::CustomDisclaimerCheckbox]?,
1160
+ custom_disclaimer_title: String?,
1161
+ form_type: String?,
1162
+ messenger_enabled: bool?,
1163
+ phone_verification_enabled: bool?,
1164
+ privacy_policy_link_text: String?,
1165
+ question_page_custom_headline: String?,
1166
+ rich_creative_headline: String?,
1167
+ rich_creative_overview: String?,
1168
+ rich_creative_url: String?,
1169
+ thank_you_pages: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::ThankYouPage]?
1170
+ }
1171
+
1172
+ type question =
1173
+ {
1174
+ type: String,
1175
+ conditional_questions_group_id: String?,
1176
+ dependent_conditional_questions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question::DependentConditionalQuestion]?,
1177
+ inline_context: String?,
1178
+ key: String?,
1179
+ label: String?,
1180
+ options: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question::Option]?,
1181
+ question_format: String?
1182
+ }
1183
+
1184
+ class Question < WhopSDK::Internal::Type::BaseModel
1185
+ attr_accessor type: String
1186
+
1187
+ attr_accessor conditional_questions_group_id: String?
1188
+
1189
+ attr_accessor dependent_conditional_questions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question::DependentConditionalQuestion]?
1190
+
1191
+ attr_accessor inline_context: String?
1192
+
1193
+ attr_accessor key: String?
1194
+
1195
+ attr_accessor label: String?
1196
+
1197
+ attr_accessor options: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question::Option]?
1198
+
1199
+ attr_accessor question_format: String?
1200
+
1201
+ def initialize: (
1202
+ type: String,
1203
+ ?conditional_questions_group_id: String?,
1204
+ ?dependent_conditional_questions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question::DependentConditionalQuestion]?,
1205
+ ?inline_context: String?,
1206
+ ?key: String?,
1207
+ ?label: String?,
1208
+ ?options: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question::Option]?,
1209
+ ?question_format: String?
1210
+ ) -> void
1211
+
1212
+ def to_hash: -> {
1213
+ type: String,
1214
+ conditional_questions_group_id: String?,
1215
+ dependent_conditional_questions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question::DependentConditionalQuestion]?,
1216
+ inline_context: String?,
1217
+ key: String?,
1218
+ label: String?,
1219
+ options: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question::Option]?,
1220
+ question_format: String?
1221
+ }
1222
+
1223
+ type dependent_conditional_question =
1224
+ {
1225
+ type: String,
1226
+ inline_context: String?,
1227
+ key: String?,
1228
+ label: String?,
1229
+ options: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question::DependentConditionalQuestion::Option]?
1230
+ }
1231
+
1232
+ class DependentConditionalQuestion < WhopSDK::Internal::Type::BaseModel
1233
+ attr_accessor type: String
1234
+
1235
+ attr_accessor inline_context: String?
1236
+
1237
+ attr_accessor key: String?
1238
+
1239
+ attr_accessor label: String?
1240
+
1241
+ attr_accessor options: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question::DependentConditionalQuestion::Option]?
1242
+
1243
+ def initialize: (
1244
+ type: String,
1245
+ ?inline_context: String?,
1246
+ ?key: String?,
1247
+ ?label: String?,
1248
+ ?options: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question::DependentConditionalQuestion::Option]?
1249
+ ) -> void
1250
+
1251
+ def to_hash: -> {
1252
+ type: String,
1253
+ inline_context: String?,
1254
+ key: String?,
1255
+ label: String?,
1256
+ options: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question::DependentConditionalQuestion::Option]?
1257
+ }
1258
+
1259
+ type option =
1260
+ {
1261
+ key: String,
1262
+ value: String,
1263
+ logic: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question::DependentConditionalQuestion::Option::Logic?
1264
+ }
1265
+
1266
+ class Option < WhopSDK::Internal::Type::BaseModel
1267
+ attr_accessor key: String
1268
+
1269
+ attr_accessor value: String
1270
+
1271
+ attr_accessor logic: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question::DependentConditionalQuestion::Option::Logic?
1272
+
1273
+ def initialize: (
1274
+ key: String,
1275
+ value: String,
1276
+ ?logic: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question::DependentConditionalQuestion::Option::Logic?
1277
+ ) -> void
1278
+
1279
+ def to_hash: -> {
1280
+ key: String,
1281
+ value: String,
1282
+ logic: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question::DependentConditionalQuestion::Option::Logic?
1283
+ }
1284
+
1285
+ type logic =
1286
+ {
1287
+ type: String,
1288
+ target_end_page_index: Integer?,
1289
+ target_question_index: Integer?
1290
+ }
1291
+
1292
+ class Logic < WhopSDK::Internal::Type::BaseModel
1293
+ attr_accessor type: String
1294
+
1295
+ attr_accessor target_end_page_index: Integer?
1296
+
1297
+ attr_accessor target_question_index: Integer?
1298
+
1299
+ def initialize: (
1300
+ type: String,
1301
+ ?target_end_page_index: Integer?,
1302
+ ?target_question_index: Integer?
1303
+ ) -> void
1304
+
1305
+ def to_hash: -> {
1306
+ type: String,
1307
+ target_end_page_index: Integer?,
1308
+ target_question_index: Integer?
1309
+ }
1310
+ end
1311
+ end
1312
+ end
1313
+
1314
+ type option =
1315
+ {
1316
+ key: String,
1317
+ value: String,
1318
+ logic: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question::Option::Logic?
1319
+ }
1320
+
1321
+ class Option < WhopSDK::Internal::Type::BaseModel
1322
+ attr_accessor key: String
1323
+
1324
+ attr_accessor value: String
1325
+
1326
+ attr_accessor logic: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question::Option::Logic?
1327
+
1328
+ def initialize: (
1329
+ key: String,
1330
+ value: String,
1331
+ ?logic: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question::Option::Logic?
1332
+ ) -> void
1333
+
1334
+ def to_hash: -> {
1335
+ key: String,
1336
+ value: String,
1337
+ logic: WhopSDK::AdGroupUpdateParams::PlatformConfig::Meta::LeadFormConfig::Question::Option::Logic?
1338
+ }
1339
+
1340
+ type logic =
1341
+ {
1342
+ type: String,
1343
+ target_end_page_index: Integer?,
1344
+ target_question_index: Integer?
1345
+ }
1346
+
1347
+ class Logic < WhopSDK::Internal::Type::BaseModel
1348
+ attr_accessor type: String
1349
+
1350
+ attr_accessor target_end_page_index: Integer?
1351
+
1352
+ attr_accessor target_question_index: Integer?
1353
+
1354
+ def initialize: (
1355
+ type: String,
1356
+ ?target_end_page_index: Integer?,
1357
+ ?target_question_index: Integer?
1358
+ ) -> void
1359
+
1360
+ def to_hash: -> {
1361
+ type: String,
1362
+ target_end_page_index: Integer?,
1363
+ target_question_index: Integer?
1364
+ }
1365
+ end
1366
+ end
1367
+ end
1368
+
1369
+ type custom_disclaimer_checkbox =
1370
+ {
1371
+ key: String,
1372
+ text: String,
1373
+ is_checked_by_default: bool?,
1374
+ is_required: bool?
1375
+ }
1376
+
1377
+ class CustomDisclaimerCheckbox < WhopSDK::Internal::Type::BaseModel
1378
+ attr_accessor key: String
1379
+
1380
+ attr_accessor text: String
1381
+
1382
+ attr_accessor is_checked_by_default: bool?
1383
+
1384
+ attr_accessor is_required: bool?
1385
+
1386
+ def initialize: (
1387
+ key: String,
1388
+ text: String,
1389
+ ?is_checked_by_default: bool?,
1390
+ ?is_required: bool?
1391
+ ) -> void
1392
+
1393
+ def to_hash: -> {
1394
+ key: String,
1395
+ text: String,
1396
+ is_checked_by_default: bool?,
1397
+ is_required: bool?
1398
+ }
1399
+ end
1400
+
1401
+ type thank_you_page =
1402
+ {
1403
+ body: String?,
1404
+ business_phone: String?,
1405
+ button_text: String?,
1406
+ button_type: String?,
1407
+ conditional_question_group_id: String?,
1408
+ enable_messenger: bool?,
1409
+ gated_file_url: String?,
1410
+ link: String?,
1411
+ name: String?,
1412
+ title: String?
1413
+ }
1414
+
1415
+ class ThankYouPage < WhopSDK::Internal::Type::BaseModel
1416
+ attr_accessor body: String?
1417
+
1418
+ attr_accessor business_phone: String?
1419
+
1420
+ attr_accessor button_text: String?
1421
+
1422
+ attr_accessor button_type: String?
1423
+
1424
+ attr_accessor conditional_question_group_id: String?
1425
+
1426
+ attr_accessor enable_messenger: bool?
1427
+
1428
+ attr_accessor gated_file_url: String?
1429
+
1430
+ attr_accessor link: String?
1431
+
1432
+ attr_accessor name: String?
1433
+
1434
+ attr_accessor title: String?
1435
+
1436
+ def initialize: (
1437
+ ?body: String?,
1438
+ ?business_phone: String?,
1439
+ ?button_text: String?,
1440
+ ?button_type: String?,
1441
+ ?conditional_question_group_id: String?,
1442
+ ?enable_messenger: bool?,
1443
+ ?gated_file_url: String?,
1444
+ ?link: String?,
1445
+ ?name: String?,
1446
+ ?title: String?
1447
+ ) -> void
1448
+
1449
+ def to_hash: -> {
1450
+ body: String?,
1451
+ business_phone: String?,
1452
+ button_text: String?,
1453
+ button_type: String?,
1454
+ conditional_question_group_id: String?,
1455
+ enable_messenger: bool?,
1456
+ gated_file_url: String?,
1457
+ link: String?,
1458
+ name: String?,
1459
+ title: String?
1460
+ }
1461
+ end
1462
+ end
1463
+
1464
+ type optimization_goal =
1465
+ :NONE
1466
+ | :APP_INSTALLS
1467
+ | :AD_RECALL_LIFT
1468
+ | :ENGAGED_USERS
1469
+ | :EVENT_RESPONSES
1470
+ | :IMPRESSIONS
1471
+ | :LEAD_GENERATION
1472
+ | :QUALITY_LEAD
1473
+ | :LINK_CLICKS
1474
+ | :OFFSITE_CONVERSIONS
1475
+ | :PAGE_LIKES
1476
+ | :POST_ENGAGEMENT
1477
+ | :QUALITY_CALL
1478
+ | :REACH
1479
+ | :LANDING_PAGE_VIEWS
1480
+ | :VISIT_INSTAGRAM_PROFILE
1481
+ | :VALUE
1482
+ | :THRUPLAY
1483
+ | :DERIVED_EVENTS
1484
+ | :APP_INSTALLS_AND_OFFSITE_CONVERSIONS
1485
+ | :CONVERSATIONS
1486
+ | :IN_APP_VALUE
1487
+ | :MESSAGING_PURCHASE_CONVERSION
1488
+ | :SUBSCRIBERS
1489
+ | :REMINDERS_SET
1490
+ | :MEANINGFUL_CALL_ATTEMPT
1491
+ | :PROFILE_VISIT
1492
+ | :PROFILE_AND_PAGE_ENGAGEMENT
1493
+ | :TWO_SECOND_CONTINUOUS_VIDEO_VIEWS
1494
+ | :ENGAGED_REACH
1495
+ | :ENGAGED_PAGE_VIEWS
1496
+ | :MESSAGING_DEEP_CONVERSATION_AND_FOLLOW
1497
+ | :ADVERTISER_SILOED_VALUE
1498
+ | :AUTOMATIC_OBJECTIVE
1499
+ | :MESSAGING_APPOINTMENT_CONVERSION
1500
+
1501
+ module OptimizationGoal
1502
+ extend WhopSDK::Internal::Type::Enum
1503
+
1504
+ NONE: :NONE
1505
+ APP_INSTALLS: :APP_INSTALLS
1506
+ AD_RECALL_LIFT: :AD_RECALL_LIFT
1507
+ ENGAGED_USERS: :ENGAGED_USERS
1508
+ EVENT_RESPONSES: :EVENT_RESPONSES
1509
+ IMPRESSIONS: :IMPRESSIONS
1510
+ LEAD_GENERATION: :LEAD_GENERATION
1511
+ QUALITY_LEAD: :QUALITY_LEAD
1512
+ LINK_CLICKS: :LINK_CLICKS
1513
+ OFFSITE_CONVERSIONS: :OFFSITE_CONVERSIONS
1514
+ PAGE_LIKES: :PAGE_LIKES
1515
+ POST_ENGAGEMENT: :POST_ENGAGEMENT
1516
+ QUALITY_CALL: :QUALITY_CALL
1517
+ REACH: :REACH
1518
+ LANDING_PAGE_VIEWS: :LANDING_PAGE_VIEWS
1519
+ VISIT_INSTAGRAM_PROFILE: :VISIT_INSTAGRAM_PROFILE
1520
+ VALUE: :VALUE
1521
+ THRUPLAY: :THRUPLAY
1522
+ DERIVED_EVENTS: :DERIVED_EVENTS
1523
+ APP_INSTALLS_AND_OFFSITE_CONVERSIONS: :APP_INSTALLS_AND_OFFSITE_CONVERSIONS
1524
+ CONVERSATIONS: :CONVERSATIONS
1525
+ IN_APP_VALUE: :IN_APP_VALUE
1526
+ MESSAGING_PURCHASE_CONVERSION: :MESSAGING_PURCHASE_CONVERSION
1527
+ SUBSCRIBERS: :SUBSCRIBERS
1528
+ REMINDERS_SET: :REMINDERS_SET
1529
+ MEANINGFUL_CALL_ATTEMPT: :MEANINGFUL_CALL_ATTEMPT
1530
+ PROFILE_VISIT: :PROFILE_VISIT
1531
+ PROFILE_AND_PAGE_ENGAGEMENT: :PROFILE_AND_PAGE_ENGAGEMENT
1532
+ TWO_SECOND_CONTINUOUS_VIDEO_VIEWS: :TWO_SECOND_CONTINUOUS_VIDEO_VIEWS
1533
+ ENGAGED_REACH: :ENGAGED_REACH
1534
+ ENGAGED_PAGE_VIEWS: :ENGAGED_PAGE_VIEWS
1535
+ MESSAGING_DEEP_CONVERSATION_AND_FOLLOW: :MESSAGING_DEEP_CONVERSATION_AND_FOLLOW
1536
+ ADVERTISER_SILOED_VALUE: :ADVERTISER_SILOED_VALUE
1537
+ AUTOMATIC_OBJECTIVE: :AUTOMATIC_OBJECTIVE
1538
+ MESSAGING_APPOINTMENT_CONVERSION: :MESSAGING_APPOINTMENT_CONVERSION
1539
+
1540
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::optimization_goal]
1541
+ end
1542
+
1543
+ type promoted_object =
1544
+ {
1545
+ custom_conversion_id: String?,
1546
+ custom_event_str: String?,
1547
+ custom_event_type: String?,
1548
+ page_id: String?,
1549
+ pixel_id: String?,
1550
+ whatsapp_phone_number: String?
1551
+ }
1552
+
1553
+ class PromotedObject < WhopSDK::Internal::Type::BaseModel
1554
+ attr_accessor custom_conversion_id: String?
1555
+
1556
+ attr_accessor custom_event_str: String?
1557
+
1558
+ attr_accessor custom_event_type: String?
1559
+
1560
+ attr_accessor page_id: String?
1561
+
1562
+ attr_accessor pixel_id: String?
1563
+
1564
+ attr_accessor whatsapp_phone_number: String?
1565
+
1566
+ def initialize: (
1567
+ ?custom_conversion_id: String?,
1568
+ ?custom_event_str: String?,
1569
+ ?custom_event_type: String?,
1570
+ ?page_id: String?,
1571
+ ?pixel_id: String?,
1572
+ ?whatsapp_phone_number: String?
1573
+ ) -> void
1574
+
1575
+ def to_hash: -> {
1576
+ custom_conversion_id: String?,
1577
+ custom_event_str: String?,
1578
+ custom_event_type: String?,
1579
+ page_id: String?,
1580
+ pixel_id: String?,
1581
+ whatsapp_phone_number: String?
1582
+ }
1583
+ end
1584
+
1585
+ type status = :ACTIVE | :PAUSED
1586
+
1587
+ module Status
1588
+ extend WhopSDK::Internal::Type::Enum
1589
+
1590
+ ACTIVE: :ACTIVE
1591
+ PAUSED: :PAUSED
1592
+
1593
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Meta::status]
1594
+ end
1595
+
1596
+ type targeting_automation = { advantage_audience: Integer? }
1597
+
1598
+ class TargetingAutomation < WhopSDK::Internal::Type::BaseModel
1599
+ attr_accessor advantage_audience: Integer?
1600
+
1601
+ def initialize: (?advantage_audience: Integer?) -> void
1602
+
1603
+ def to_hash: -> { advantage_audience: Integer? }
1604
+ end
1605
+ end
1606
+
1607
+ type tiktok =
1608
+ {
1609
+ actions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Tiktok::Action]?,
1610
+ age_groups: ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::age_group]?,
1611
+ app_id: String?,
1612
+ attribution_event_count: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::attribution_event_count?,
1613
+ audience_ids: ::Array[String]?,
1614
+ audience_rule: ::Hash[Symbol, top]?,
1615
+ audience_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::audience_type?,
1616
+ bid_price: Float?,
1617
+ bid_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::bid_type?,
1618
+ billing_event: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::billing_event?,
1619
+ brand_safety_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::brand_safety_type?,
1620
+ budget_mode: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::budget_mode?,
1621
+ carrier_ids: ::Array[String]?,
1622
+ category_exclusion_ids: ::Array[String]?,
1623
+ click_attribution_window: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::click_attribution_window?,
1624
+ comment_disabled: bool?,
1625
+ contextual_tag_ids: ::Array[String]?,
1626
+ conversion_bid_price: Float?,
1627
+ creative_material_mode: String?,
1628
+ dayparting: String?,
1629
+ deep_funnel_event_source: String?,
1630
+ deep_funnel_event_source_id: String?,
1631
+ deep_funnel_optimization_status: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::deep_funnel_optimization_status?,
1632
+ device_model_ids: ::Array[String]?,
1633
+ device_price_ranges: ::Array[String]?,
1634
+ engaged_view_attribution_window: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::engaged_view_attribution_window?,
1635
+ excluded_audience_ids: ::Array[String]?,
1636
+ excluded_location_ids: ::Array[String]?,
1637
+ frequency: Integer?,
1638
+ frequency_schedule: Integer?,
1639
+ gender: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::gender?,
1640
+ identity_authorized_bc_id: String?,
1641
+ identity_id: String?,
1642
+ identity_type: String?,
1643
+ instant_form_config: WhopSDK::AdGroupUpdateParams::PlatformConfig::Tiktok::InstantFormConfig?,
1644
+ instant_form_id: String?,
1645
+ interest_category_ids: ::Array[String]?,
1646
+ interest_keyword_ids: ::Array[String]?,
1647
+ inventory_filter_enabled: bool?,
1648
+ :ios14_targeting => WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::ios14_targeting?,
1649
+ isp_ids: ::Array[String]?,
1650
+ languages: ::Array[String]?,
1651
+ location_ids: ::Array[String]?,
1652
+ min_android_version: String?,
1653
+ min_ios_version: String?,
1654
+ network_types: ::Array[String]?,
1655
+ operating_systems: ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::operating_system]?,
1656
+ operation_status: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::operation_status?,
1657
+ optimization_event: String?,
1658
+ optimization_goal: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::optimization_goal?,
1659
+ pacing: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::pacing?,
1660
+ pangle_audience_package_exclude_ids: ::Array[String]?,
1661
+ pangle_audience_package_include_ids: ::Array[String]?,
1662
+ pangle_block_app_ids: ::Array[String]?,
1663
+ pixel_id: String?,
1664
+ placement_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::placement_type?,
1665
+ placements: ::Array[String]?,
1666
+ product_set_id: String?,
1667
+ product_source: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::product_source?,
1668
+ promotion_type: String?,
1669
+ schedule_end_time: String?,
1670
+ schedule_start_time: String?,
1671
+ schedule_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::schedule_type?,
1672
+ secondary_optimization_event: String?,
1673
+ shopping_ads_retargeting_actions_days: Integer?,
1674
+ shopping_ads_retargeting_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::shopping_ads_retargeting_type?,
1675
+ spending_power: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::spending_power?,
1676
+ tiktok_subplacements: ::Array[String]?,
1677
+ vertical_sensitivity_id: String?,
1678
+ video_download_disabled: bool?,
1679
+ video_user_actions: ::Array[String]?,
1680
+ view_attribution_window: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::view_attribution_window?
1681
+ }
1682
+
1683
+ class Tiktok < WhopSDK::Internal::Type::BaseModel
1684
+ attr_accessor actions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Tiktok::Action]?
1685
+
1686
+ attr_accessor age_groups: ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::age_group]?
1687
+
1688
+ attr_accessor app_id: String?
1689
+
1690
+ attr_accessor attribution_event_count: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::attribution_event_count?
1691
+
1692
+ attr_accessor audience_ids: ::Array[String]?
1693
+
1694
+ attr_accessor audience_rule: ::Hash[Symbol, top]?
1695
+
1696
+ attr_accessor audience_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::audience_type?
1697
+
1698
+ attr_accessor bid_price: Float?
1699
+
1700
+ attr_accessor bid_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::bid_type?
1701
+
1702
+ attr_accessor billing_event: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::billing_event?
1703
+
1704
+ attr_accessor brand_safety_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::brand_safety_type?
1705
+
1706
+ attr_accessor budget_mode: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::budget_mode?
1707
+
1708
+ attr_accessor carrier_ids: ::Array[String]?
1709
+
1710
+ attr_accessor category_exclusion_ids: ::Array[String]?
1711
+
1712
+ attr_accessor click_attribution_window: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::click_attribution_window?
1713
+
1714
+ attr_accessor comment_disabled: bool?
1715
+
1716
+ attr_accessor contextual_tag_ids: ::Array[String]?
1717
+
1718
+ attr_accessor conversion_bid_price: Float?
1719
+
1720
+ attr_accessor creative_material_mode: String?
1721
+
1722
+ attr_accessor dayparting: String?
1723
+
1724
+ attr_accessor deep_funnel_event_source: String?
1725
+
1726
+ attr_accessor deep_funnel_event_source_id: String?
1727
+
1728
+ attr_accessor deep_funnel_optimization_status: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::deep_funnel_optimization_status?
1729
+
1730
+ attr_accessor device_model_ids: ::Array[String]?
1731
+
1732
+ attr_accessor device_price_ranges: ::Array[String]?
1733
+
1734
+ attr_accessor engaged_view_attribution_window: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::engaged_view_attribution_window?
1735
+
1736
+ attr_accessor excluded_audience_ids: ::Array[String]?
1737
+
1738
+ attr_accessor excluded_location_ids: ::Array[String]?
1739
+
1740
+ attr_accessor frequency: Integer?
1741
+
1742
+ attr_accessor frequency_schedule: Integer?
1743
+
1744
+ attr_accessor gender: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::gender?
1745
+
1746
+ attr_accessor identity_authorized_bc_id: String?
1747
+
1748
+ attr_accessor identity_id: String?
1749
+
1750
+ attr_accessor identity_type: String?
1751
+
1752
+ attr_accessor instant_form_config: WhopSDK::AdGroupUpdateParams::PlatformConfig::Tiktok::InstantFormConfig?
1753
+
1754
+ attr_accessor instant_form_id: String?
1755
+
1756
+ attr_accessor interest_category_ids: ::Array[String]?
1757
+
1758
+ attr_accessor interest_keyword_ids: ::Array[String]?
1759
+
1760
+ attr_accessor inventory_filter_enabled: bool?
1761
+
1762
+ attr_accessor ios14_targeting: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::ios14_targeting?
1763
+
1764
+ attr_accessor isp_ids: ::Array[String]?
1765
+
1766
+ attr_accessor languages: ::Array[String]?
1767
+
1768
+ attr_accessor location_ids: ::Array[String]?
1769
+
1770
+ attr_accessor min_android_version: String?
1771
+
1772
+ attr_accessor min_ios_version: String?
1773
+
1774
+ attr_accessor network_types: ::Array[String]?
1775
+
1776
+ attr_accessor operating_systems: ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::operating_system]?
1777
+
1778
+ attr_accessor operation_status: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::operation_status?
1779
+
1780
+ attr_accessor optimization_event: String?
1781
+
1782
+ attr_accessor optimization_goal: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::optimization_goal?
1783
+
1784
+ attr_accessor pacing: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::pacing?
1785
+
1786
+ attr_accessor pangle_audience_package_exclude_ids: ::Array[String]?
1787
+
1788
+ attr_accessor pangle_audience_package_include_ids: ::Array[String]?
1789
+
1790
+ attr_accessor pangle_block_app_ids: ::Array[String]?
1791
+
1792
+ attr_accessor pixel_id: String?
1793
+
1794
+ attr_accessor placement_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::placement_type?
1795
+
1796
+ attr_accessor placements: ::Array[String]?
1797
+
1798
+ attr_accessor product_set_id: String?
1799
+
1800
+ attr_accessor product_source: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::product_source?
1801
+
1802
+ attr_accessor promotion_type: String?
1803
+
1804
+ attr_accessor schedule_end_time: String?
1805
+
1806
+ attr_accessor schedule_start_time: String?
1807
+
1808
+ attr_accessor schedule_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::schedule_type?
1809
+
1810
+ attr_accessor secondary_optimization_event: String?
1811
+
1812
+ attr_accessor shopping_ads_retargeting_actions_days: Integer?
1813
+
1814
+ attr_accessor shopping_ads_retargeting_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::shopping_ads_retargeting_type?
1815
+
1816
+ attr_accessor spending_power: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::spending_power?
1817
+
1818
+ attr_accessor tiktok_subplacements: ::Array[String]?
1819
+
1820
+ attr_accessor vertical_sensitivity_id: String?
1821
+
1822
+ attr_accessor video_download_disabled: bool?
1823
+
1824
+ attr_accessor video_user_actions: ::Array[String]?
1825
+
1826
+ attr_accessor view_attribution_window: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::view_attribution_window?
1827
+
1828
+ def initialize: (
1829
+ ?actions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Tiktok::Action]?,
1830
+ ?age_groups: ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::age_group]?,
1831
+ ?app_id: String?,
1832
+ ?attribution_event_count: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::attribution_event_count?,
1833
+ ?audience_ids: ::Array[String]?,
1834
+ ?audience_rule: ::Hash[Symbol, top]?,
1835
+ ?audience_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::audience_type?,
1836
+ ?bid_price: Float?,
1837
+ ?bid_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::bid_type?,
1838
+ ?billing_event: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::billing_event?,
1839
+ ?brand_safety_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::brand_safety_type?,
1840
+ ?budget_mode: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::budget_mode?,
1841
+ ?carrier_ids: ::Array[String]?,
1842
+ ?category_exclusion_ids: ::Array[String]?,
1843
+ ?click_attribution_window: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::click_attribution_window?,
1844
+ ?comment_disabled: bool?,
1845
+ ?contextual_tag_ids: ::Array[String]?,
1846
+ ?conversion_bid_price: Float?,
1847
+ ?creative_material_mode: String?,
1848
+ ?dayparting: String?,
1849
+ ?deep_funnel_event_source: String?,
1850
+ ?deep_funnel_event_source_id: String?,
1851
+ ?deep_funnel_optimization_status: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::deep_funnel_optimization_status?,
1852
+ ?device_model_ids: ::Array[String]?,
1853
+ ?device_price_ranges: ::Array[String]?,
1854
+ ?engaged_view_attribution_window: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::engaged_view_attribution_window?,
1855
+ ?excluded_audience_ids: ::Array[String]?,
1856
+ ?excluded_location_ids: ::Array[String]?,
1857
+ ?frequency: Integer?,
1858
+ ?frequency_schedule: Integer?,
1859
+ ?gender: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::gender?,
1860
+ ?identity_authorized_bc_id: String?,
1861
+ ?identity_id: String?,
1862
+ ?identity_type: String?,
1863
+ ?instant_form_config: WhopSDK::AdGroupUpdateParams::PlatformConfig::Tiktok::InstantFormConfig?,
1864
+ ?instant_form_id: String?,
1865
+ ?interest_category_ids: ::Array[String]?,
1866
+ ?interest_keyword_ids: ::Array[String]?,
1867
+ ?inventory_filter_enabled: bool?,
1868
+ ?ios14_targeting: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::ios14_targeting?,
1869
+ ?isp_ids: ::Array[String]?,
1870
+ ?languages: ::Array[String]?,
1871
+ ?location_ids: ::Array[String]?,
1872
+ ?min_android_version: String?,
1873
+ ?min_ios_version: String?,
1874
+ ?network_types: ::Array[String]?,
1875
+ ?operating_systems: ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::operating_system]?,
1876
+ ?operation_status: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::operation_status?,
1877
+ ?optimization_event: String?,
1878
+ ?optimization_goal: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::optimization_goal?,
1879
+ ?pacing: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::pacing?,
1880
+ ?pangle_audience_package_exclude_ids: ::Array[String]?,
1881
+ ?pangle_audience_package_include_ids: ::Array[String]?,
1882
+ ?pangle_block_app_ids: ::Array[String]?,
1883
+ ?pixel_id: String?,
1884
+ ?placement_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::placement_type?,
1885
+ ?placements: ::Array[String]?,
1886
+ ?product_set_id: String?,
1887
+ ?product_source: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::product_source?,
1888
+ ?promotion_type: String?,
1889
+ ?schedule_end_time: String?,
1890
+ ?schedule_start_time: String?,
1891
+ ?schedule_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::schedule_type?,
1892
+ ?secondary_optimization_event: String?,
1893
+ ?shopping_ads_retargeting_actions_days: Integer?,
1894
+ ?shopping_ads_retargeting_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::shopping_ads_retargeting_type?,
1895
+ ?spending_power: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::spending_power?,
1896
+ ?tiktok_subplacements: ::Array[String]?,
1897
+ ?vertical_sensitivity_id: String?,
1898
+ ?video_download_disabled: bool?,
1899
+ ?video_user_actions: ::Array[String]?,
1900
+ ?view_attribution_window: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::view_attribution_window?
1901
+ ) -> void
1902
+
1903
+ def to_hash: -> {
1904
+ actions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Tiktok::Action]?,
1905
+ age_groups: ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::age_group]?,
1906
+ app_id: String?,
1907
+ attribution_event_count: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::attribution_event_count?,
1908
+ audience_ids: ::Array[String]?,
1909
+ audience_rule: ::Hash[Symbol, top]?,
1910
+ audience_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::audience_type?,
1911
+ bid_price: Float?,
1912
+ bid_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::bid_type?,
1913
+ billing_event: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::billing_event?,
1914
+ brand_safety_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::brand_safety_type?,
1915
+ budget_mode: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::budget_mode?,
1916
+ carrier_ids: ::Array[String]?,
1917
+ category_exclusion_ids: ::Array[String]?,
1918
+ click_attribution_window: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::click_attribution_window?,
1919
+ comment_disabled: bool?,
1920
+ contextual_tag_ids: ::Array[String]?,
1921
+ conversion_bid_price: Float?,
1922
+ creative_material_mode: String?,
1923
+ dayparting: String?,
1924
+ deep_funnel_event_source: String?,
1925
+ deep_funnel_event_source_id: String?,
1926
+ deep_funnel_optimization_status: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::deep_funnel_optimization_status?,
1927
+ device_model_ids: ::Array[String]?,
1928
+ device_price_ranges: ::Array[String]?,
1929
+ engaged_view_attribution_window: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::engaged_view_attribution_window?,
1930
+ excluded_audience_ids: ::Array[String]?,
1931
+ excluded_location_ids: ::Array[String]?,
1932
+ frequency: Integer?,
1933
+ frequency_schedule: Integer?,
1934
+ gender: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::gender?,
1935
+ identity_authorized_bc_id: String?,
1936
+ identity_id: String?,
1937
+ identity_type: String?,
1938
+ instant_form_config: WhopSDK::AdGroupUpdateParams::PlatformConfig::Tiktok::InstantFormConfig?,
1939
+ instant_form_id: String?,
1940
+ interest_category_ids: ::Array[String]?,
1941
+ interest_keyword_ids: ::Array[String]?,
1942
+ inventory_filter_enabled: bool?,
1943
+ :ios14_targeting => WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::ios14_targeting?,
1944
+ isp_ids: ::Array[String]?,
1945
+ languages: ::Array[String]?,
1946
+ location_ids: ::Array[String]?,
1947
+ min_android_version: String?,
1948
+ min_ios_version: String?,
1949
+ network_types: ::Array[String]?,
1950
+ operating_systems: ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::operating_system]?,
1951
+ operation_status: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::operation_status?,
1952
+ optimization_event: String?,
1953
+ optimization_goal: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::optimization_goal?,
1954
+ pacing: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::pacing?,
1955
+ pangle_audience_package_exclude_ids: ::Array[String]?,
1956
+ pangle_audience_package_include_ids: ::Array[String]?,
1957
+ pangle_block_app_ids: ::Array[String]?,
1958
+ pixel_id: String?,
1959
+ placement_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::placement_type?,
1960
+ placements: ::Array[String]?,
1961
+ product_set_id: String?,
1962
+ product_source: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::product_source?,
1963
+ promotion_type: String?,
1964
+ schedule_end_time: String?,
1965
+ schedule_start_time: String?,
1966
+ schedule_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::schedule_type?,
1967
+ secondary_optimization_event: String?,
1968
+ shopping_ads_retargeting_actions_days: Integer?,
1969
+ shopping_ads_retargeting_type: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::shopping_ads_retargeting_type?,
1970
+ spending_power: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::spending_power?,
1971
+ tiktok_subplacements: ::Array[String]?,
1972
+ vertical_sensitivity_id: String?,
1973
+ video_download_disabled: bool?,
1974
+ video_user_actions: ::Array[String]?,
1975
+ view_attribution_window: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::view_attribution_window?
1976
+ }
1977
+
1978
+ type action =
1979
+ {
1980
+ action_category_ids: ::Array[String]?,
1981
+ action_period: Integer?,
1982
+ action_scene: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::Action::action_scene?,
1983
+ video_user_actions: ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::Action::video_user_action]?
1984
+ }
1985
+
1986
+ class Action < WhopSDK::Internal::Type::BaseModel
1987
+ attr_accessor action_category_ids: ::Array[String]?
1988
+
1989
+ attr_accessor action_period: Integer?
1990
+
1991
+ attr_accessor action_scene: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::Action::action_scene?
1992
+
1993
+ attr_accessor video_user_actions: ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::Action::video_user_action]?
1994
+
1995
+ def initialize: (
1996
+ ?action_category_ids: ::Array[String]?,
1997
+ ?action_period: Integer?,
1998
+ ?action_scene: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::Action::action_scene?,
1999
+ ?video_user_actions: ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::Action::video_user_action]?
2000
+ ) -> void
2001
+
2002
+ def to_hash: -> {
2003
+ action_category_ids: ::Array[String]?,
2004
+ action_period: Integer?,
2005
+ action_scene: WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::Action::action_scene?,
2006
+ video_user_actions: ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::Action::video_user_action]?
2007
+ }
2008
+
2009
+ type action_scene =
2010
+ :VIDEO_RELATED
2011
+ | :CREATOR_RELATED
2012
+ | :HASHTAG_RELATED
2013
+ | :LIVE_RELATED
2014
+
2015
+ module ActionScene
2016
+ extend WhopSDK::Internal::Type::Enum
2017
+
2018
+ VIDEO_RELATED: :VIDEO_RELATED
2019
+ CREATOR_RELATED: :CREATOR_RELATED
2020
+ HASHTAG_RELATED: :HASHTAG_RELATED
2021
+ LIVE_RELATED: :LIVE_RELATED
2022
+
2023
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::Action::action_scene]
2024
+ end
2025
+
2026
+ type video_user_action =
2027
+ :WATCHED_TO_END
2028
+ | :LIKED
2029
+ | :COMMENTED
2030
+ | :SHARED
2031
+ | :FOLLOWED
2032
+ | :PROFILE_VISITED
2033
+
2034
+ module VideoUserAction
2035
+ extend WhopSDK::Internal::Type::Enum
2036
+
2037
+ WATCHED_TO_END: :WATCHED_TO_END
2038
+ LIKED: :LIKED
2039
+ COMMENTED: :COMMENTED
2040
+ SHARED: :SHARED
2041
+ FOLLOWED: :FOLLOWED
2042
+ PROFILE_VISITED: :PROFILE_VISITED
2043
+
2044
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::Action::video_user_action]
2045
+ end
2046
+ end
2047
+
2048
+ type age_group =
2049
+ :AGE_13_17
2050
+ | :AGE_18_24
2051
+ | :AGE_25_34
2052
+ | :AGE_35_44
2053
+ | :AGE_45_54
2054
+ | :AGE_55_100
2055
+
2056
+ module AgeGroup
2057
+ extend WhopSDK::Internal::Type::Enum
2058
+
2059
+ AGE_13_17: :AGE_13_17
2060
+ AGE_18_24: :AGE_18_24
2061
+ AGE_25_34: :AGE_25_34
2062
+ AGE_35_44: :AGE_35_44
2063
+ AGE_45_54: :AGE_45_54
2064
+ AGE_55_100: :AGE_55_100
2065
+
2066
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::age_group]
2067
+ end
2068
+
2069
+ type attribution_event_count = :UNSET | :EVERY | :ONCE
2070
+
2071
+ module AttributionEventCount
2072
+ extend WhopSDK::Internal::Type::Enum
2073
+
2074
+ UNSET: :UNSET
2075
+ EVERY: :EVERY
2076
+ ONCE: :ONCE
2077
+
2078
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::attribution_event_count]
2079
+ end
2080
+
2081
+ type audience_type = :NORMAL | :SMART_INTERESTS_BEHAVIORS
2082
+
2083
+ module AudienceType
2084
+ extend WhopSDK::Internal::Type::Enum
2085
+
2086
+ NORMAL: :NORMAL
2087
+ SMART_INTERESTS_BEHAVIORS: :SMART_INTERESTS_BEHAVIORS
2088
+
2089
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::audience_type]
2090
+ end
2091
+
2092
+ type bid_type = :BID_TYPE_NO_BID | :BID_TYPE_CUSTOM
2093
+
2094
+ module BidType
2095
+ extend WhopSDK::Internal::Type::Enum
2096
+
2097
+ BID_TYPE_NO_BID: :BID_TYPE_NO_BID
2098
+ BID_TYPE_CUSTOM: :BID_TYPE_CUSTOM
2099
+
2100
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::bid_type]
2101
+ end
2102
+
2103
+ type billing_event = :CPC | :CPM | :OCPM | :CPV
2104
+
2105
+ module BillingEvent
2106
+ extend WhopSDK::Internal::Type::Enum
2107
+
2108
+ CPC: :CPC
2109
+ CPM: :CPM
2110
+ OCPM: :OCPM
2111
+ CPV: :CPV
2112
+
2113
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::billing_event]
2114
+ end
2115
+
2116
+ type brand_safety_type =
2117
+ :NO_BRAND_SAFETY
2118
+ | :STANDARD_INVENTORY
2119
+ | :LIMITED_INVENTORY
2120
+ | :FULL_INVENTORY
2121
+ | :EXPANDED_INVENTORY
2122
+
2123
+ module BrandSafetyType
2124
+ extend WhopSDK::Internal::Type::Enum
2125
+
2126
+ NO_BRAND_SAFETY: :NO_BRAND_SAFETY
2127
+ STANDARD_INVENTORY: :STANDARD_INVENTORY
2128
+ LIMITED_INVENTORY: :LIMITED_INVENTORY
2129
+ FULL_INVENTORY: :FULL_INVENTORY
2130
+ EXPANDED_INVENTORY: :EXPANDED_INVENTORY
2131
+
2132
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::brand_safety_type]
2133
+ end
2134
+
2135
+ type budget_mode =
2136
+ :BUDGET_MODE_DAY
2137
+ | :BUDGET_MODE_TOTAL
2138
+ | :BUDGET_MODE_DYNAMIC_DAILY_BUDGET
2139
+
2140
+ module BudgetMode
2141
+ extend WhopSDK::Internal::Type::Enum
2142
+
2143
+ BUDGET_MODE_DAY: :BUDGET_MODE_DAY
2144
+ BUDGET_MODE_TOTAL: :BUDGET_MODE_TOTAL
2145
+ BUDGET_MODE_DYNAMIC_DAILY_BUDGET: :BUDGET_MODE_DYNAMIC_DAILY_BUDGET
2146
+
2147
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::budget_mode]
2148
+ end
2149
+
2150
+ type click_attribution_window =
2151
+ :OFF | :ONE_DAY | :SEVEN_DAYS | :FOURTEEN_DAYS | :TWENTY_EIGHT_DAYS
2152
+
2153
+ module ClickAttributionWindow
2154
+ extend WhopSDK::Internal::Type::Enum
2155
+
2156
+ OFF: :OFF
2157
+ ONE_DAY: :ONE_DAY
2158
+ SEVEN_DAYS: :SEVEN_DAYS
2159
+ FOURTEEN_DAYS: :FOURTEEN_DAYS
2160
+ TWENTY_EIGHT_DAYS: :TWENTY_EIGHT_DAYS
2161
+
2162
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::click_attribution_window]
2163
+ end
2164
+
2165
+ type deep_funnel_optimization_status = :ON | :OFF
2166
+
2167
+ module DeepFunnelOptimizationStatus
2168
+ extend WhopSDK::Internal::Type::Enum
2169
+
2170
+ ON: :ON
2171
+ OFF: :OFF
2172
+
2173
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::deep_funnel_optimization_status]
2174
+ end
2175
+
2176
+ type engaged_view_attribution_window = :OFF | :ONE_DAY | :SEVEN_DAYS
2177
+
2178
+ module EngagedViewAttributionWindow
2179
+ extend WhopSDK::Internal::Type::Enum
2180
+
2181
+ OFF: :OFF
2182
+ ONE_DAY: :ONE_DAY
2183
+ SEVEN_DAYS: :SEVEN_DAYS
2184
+
2185
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::engaged_view_attribution_window]
2186
+ end
2187
+
2188
+ type gender = :GENDER_UNLIMITED | :GENDER_MALE | :GENDER_FEMALE
2189
+
2190
+ module Gender
2191
+ extend WhopSDK::Internal::Type::Enum
2192
+
2193
+ GENDER_UNLIMITED: :GENDER_UNLIMITED
2194
+ GENDER_MALE: :GENDER_MALE
2195
+ GENDER_FEMALE: :GENDER_FEMALE
2196
+
2197
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::gender]
2198
+ end
2199
+
2200
+ type instant_form_config =
2201
+ {
2202
+ privacy_policy_url: String,
2203
+ questions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Tiktok::InstantFormConfig::Question],
2204
+ button_text: String?,
2205
+ greeting: String?,
2206
+ name: String?
2207
+ }
2208
+
2209
+ class InstantFormConfig < WhopSDK::Internal::Type::BaseModel
2210
+ attr_accessor privacy_policy_url: String
2211
+
2212
+ attr_accessor questions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Tiktok::InstantFormConfig::Question]
2213
+
2214
+ attr_accessor button_text: String?
2215
+
2216
+ attr_accessor greeting: String?
2217
+
2218
+ attr_accessor name: String?
2219
+
2220
+ def initialize: (
2221
+ privacy_policy_url: String,
2222
+ questions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Tiktok::InstantFormConfig::Question],
2223
+ ?button_text: String?,
2224
+ ?greeting: String?,
2225
+ ?name: String?
2226
+ ) -> void
2227
+
2228
+ def to_hash: -> {
2229
+ privacy_policy_url: String,
2230
+ questions: ::Array[WhopSDK::AdGroupUpdateParams::PlatformConfig::Tiktok::InstantFormConfig::Question],
2231
+ button_text: String?,
2232
+ greeting: String?,
2233
+ name: String?
2234
+ }
2235
+
2236
+ type question = { field_type: String, label: String? }
2237
+
2238
+ class Question < WhopSDK::Internal::Type::BaseModel
2239
+ attr_accessor field_type: String
2240
+
2241
+ attr_accessor label: String?
2242
+
2243
+ def initialize: (field_type: String, ?label: String?) -> void
2244
+
2245
+ def to_hash: -> { field_type: String, label: String? }
2246
+ end
2247
+ end
2248
+
2249
+ type ios14_targeting = :UNSET | :IOS14_MINUS | :IOS14_PLUS | :ALL
2250
+
2251
+ module Ios14Targeting
2252
+ extend WhopSDK::Internal::Type::Enum
2253
+
2254
+ UNSET: :UNSET
2255
+ IOS14_MINUS: :IOS14_MINUS
2256
+ IOS14_PLUS: :IOS14_PLUS
2257
+ ALL: :ALL
2258
+
2259
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::ios14_targeting]
2260
+ end
2261
+
2262
+ type operating_system = :ANDROID | :IOS
2263
+
2264
+ module OperatingSystem
2265
+ extend WhopSDK::Internal::Type::Enum
2266
+
2267
+ ANDROID: :ANDROID
2268
+ IOS: :IOS
2269
+
2270
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::operating_system]
2271
+ end
2272
+
2273
+ type operation_status = :ENABLE | :DISABLE
2274
+
2275
+ module OperationStatus
2276
+ extend WhopSDK::Internal::Type::Enum
2277
+
2278
+ ENABLE: :ENABLE
2279
+ DISABLE: :DISABLE
2280
+
2281
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::operation_status]
2282
+ end
2283
+
2284
+ type optimization_goal =
2285
+ :CLICK
2286
+ | :CONVERT
2287
+ | :INSTALL
2288
+ | :IN_APP_EVENT
2289
+ | :REACH
2290
+ | :SHOW
2291
+ | :VIDEO_VIEW
2292
+ | :ENGAGED_VIEW
2293
+ | :ENGAGED_VIEW_FIFTEEN
2294
+ | :LEAD_GENERATION
2295
+ | :PREFERRED_LEAD
2296
+ | :CONVERSATION
2297
+ | :FOLLOWERS
2298
+ | :PROFILE_VIEWS
2299
+ | :PAGE_VISIT
2300
+ | :VALUE
2301
+ | :AUTOMATIC_VALUE_OPTIMIZATION
2302
+ | :TRAFFIC_LANDING_PAGE_VIEW
2303
+ | :DESTINATION_VISIT
2304
+ | :MT_LIVE_ROOM
2305
+ | :PRODUCT_CLICK_IN_LIVE
2306
+
2307
+ module OptimizationGoal
2308
+ extend WhopSDK::Internal::Type::Enum
2309
+
2310
+ CLICK: :CLICK
2311
+ CONVERT: :CONVERT
2312
+ INSTALL: :INSTALL
2313
+ IN_APP_EVENT: :IN_APP_EVENT
2314
+ REACH: :REACH
2315
+ SHOW: :SHOW
2316
+ VIDEO_VIEW: :VIDEO_VIEW
2317
+ ENGAGED_VIEW: :ENGAGED_VIEW
2318
+ ENGAGED_VIEW_FIFTEEN: :ENGAGED_VIEW_FIFTEEN
2319
+ LEAD_GENERATION: :LEAD_GENERATION
2320
+ PREFERRED_LEAD: :PREFERRED_LEAD
2321
+ CONVERSATION: :CONVERSATION
2322
+ FOLLOWERS: :FOLLOWERS
2323
+ PROFILE_VIEWS: :PROFILE_VIEWS
2324
+ PAGE_VISIT: :PAGE_VISIT
2325
+ VALUE: :VALUE
2326
+ AUTOMATIC_VALUE_OPTIMIZATION: :AUTOMATIC_VALUE_OPTIMIZATION
2327
+ TRAFFIC_LANDING_PAGE_VIEW: :TRAFFIC_LANDING_PAGE_VIEW
2328
+ DESTINATION_VISIT: :DESTINATION_VISIT
2329
+ MT_LIVE_ROOM: :MT_LIVE_ROOM
2330
+ PRODUCT_CLICK_IN_LIVE: :PRODUCT_CLICK_IN_LIVE
2331
+
2332
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::optimization_goal]
2333
+ end
2334
+
2335
+ type pacing = :PACING_MODE_SMOOTH | :PACING_MODE_FAST
2336
+
2337
+ module Pacing
2338
+ extend WhopSDK::Internal::Type::Enum
2339
+
2340
+ PACING_MODE_SMOOTH: :PACING_MODE_SMOOTH
2341
+ PACING_MODE_FAST: :PACING_MODE_FAST
2342
+
2343
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::pacing]
2344
+ end
2345
+
2346
+ type placement_type =
2347
+ :PLACEMENT_TYPE_AUTOMATIC | :PLACEMENT_TYPE_NORMAL
2348
+
2349
+ module PlacementType
2350
+ extend WhopSDK::Internal::Type::Enum
2351
+
2352
+ PLACEMENT_TYPE_AUTOMATIC: :PLACEMENT_TYPE_AUTOMATIC
2353
+ PLACEMENT_TYPE_NORMAL: :PLACEMENT_TYPE_NORMAL
2354
+
2355
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::placement_type]
2356
+ end
2357
+
2358
+ type product_source = :CATALOG | :STORE | :SHOWCASE
2359
+
2360
+ module ProductSource
2361
+ extend WhopSDK::Internal::Type::Enum
2362
+
2363
+ CATALOG: :CATALOG
2364
+ STORE: :STORE
2365
+ SHOWCASE: :SHOWCASE
2366
+
2367
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::product_source]
2368
+ end
2369
+
2370
+ type schedule_type = :SCHEDULE_START_END | :SCHEDULE_FROM_NOW
2371
+
2372
+ module ScheduleType
2373
+ extend WhopSDK::Internal::Type::Enum
2374
+
2375
+ SCHEDULE_START_END: :SCHEDULE_START_END
2376
+ SCHEDULE_FROM_NOW: :SCHEDULE_FROM_NOW
2377
+
2378
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::schedule_type]
2379
+ end
2380
+
2381
+ type shopping_ads_retargeting_type =
2382
+ :OFF | :LAB1 | :LAB2 | :LAB3 | :LAB4 | :LAB5
2383
+
2384
+ module ShoppingAdsRetargetingType
2385
+ extend WhopSDK::Internal::Type::Enum
2386
+
2387
+ OFF: :OFF
2388
+ LAB1: :LAB1
2389
+ LAB2: :LAB2
2390
+ LAB3: :LAB3
2391
+ LAB4: :LAB4
2392
+ LAB5: :LAB5
2393
+
2394
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::shopping_ads_retargeting_type]
2395
+ end
2396
+
2397
+ type spending_power = :ALL | :HIGH
2398
+
2399
+ module SpendingPower
2400
+ extend WhopSDK::Internal::Type::Enum
2401
+
2402
+ ALL: :ALL
2403
+ HIGH: :HIGH
2404
+
2405
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::spending_power]
2406
+ end
2407
+
2408
+ type view_attribution_window = :OFF | :ONE_DAY | :SEVEN_DAYS
2409
+
2410
+ module ViewAttributionWindow
2411
+ extend WhopSDK::Internal::Type::Enum
2412
+
2413
+ OFF: :OFF
2414
+ ONE_DAY: :ONE_DAY
2415
+ SEVEN_DAYS: :SEVEN_DAYS
2416
+
2417
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::PlatformConfig::Tiktok::view_attribution_window]
2418
+ end
2419
+ end
2420
+ end
2421
+
2422
+ type status =
2423
+ :active | :paused | :inactive | :in_review | :rejected | :flagged
2424
+
2425
+ module Status
2426
+ extend WhopSDK::Internal::Type::Enum
2427
+
2428
+ ACTIVE: :active
2429
+ PAUSED: :paused
2430
+ INACTIVE: :inactive
2431
+ IN_REVIEW: :in_review
2432
+ REJECTED: :rejected
2433
+ FLAGGED: :flagged
2434
+
2435
+ def self?.values: -> ::Array[WhopSDK::Models::AdGroupUpdateParams::status]
2436
+ end
2437
+ end
2438
+ end
2439
+ end