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,145 @@
1
+ # typed: strong
2
+
3
+ module WhopSDK
4
+ module Models
5
+ class AdGroupListParams < WhopSDK::Internal::Type::BaseModel
6
+ extend WhopSDK::Internal::Type::RequestParameters::Converter
7
+ include WhopSDK::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(WhopSDK::AdGroupListParams, WhopSDK::Internal::AnyHash)
12
+ end
13
+
14
+ # Returns the elements in the list that come after the specified cursor.
15
+ sig { returns(T.nilable(String)) }
16
+ attr_accessor :after
17
+
18
+ # Returns the elements in the list that come before the specified cursor.
19
+ sig { returns(T.nilable(String)) }
20
+ attr_accessor :before
21
+
22
+ # Filter by campaign. Provide exactly one of campaign_id or company_id.
23
+ sig { returns(T.nilable(String)) }
24
+ attr_accessor :campaign_id
25
+
26
+ # Filter by company. Provide exactly one of campaign_id or company_id.
27
+ sig { returns(T.nilable(String)) }
28
+ attr_accessor :company_id
29
+
30
+ # Only return ad groups created after this timestamp.
31
+ sig { returns(T.nilable(Time)) }
32
+ attr_accessor :created_after
33
+
34
+ # Only return ad groups created before this timestamp.
35
+ sig { returns(T.nilable(Time)) }
36
+ attr_accessor :created_before
37
+
38
+ # Returns the first _n_ elements from the list.
39
+ sig { returns(T.nilable(Integer)) }
40
+ attr_accessor :first
41
+
42
+ # Returns the last _n_ elements from the list.
43
+ sig { returns(T.nilable(Integer)) }
44
+ attr_accessor :last
45
+
46
+ # Case-insensitive substring match against the ad group name.
47
+ sig { returns(T.nilable(String)) }
48
+ attr_accessor :query
49
+
50
+ # The status of an external ad group.
51
+ sig { returns(T.nilable(WhopSDK::AdGroupListParams::Status::OrSymbol)) }
52
+ attr_accessor :status
53
+
54
+ sig do
55
+ params(
56
+ after: T.nilable(String),
57
+ before: T.nilable(String),
58
+ campaign_id: T.nilable(String),
59
+ company_id: T.nilable(String),
60
+ created_after: T.nilable(Time),
61
+ created_before: T.nilable(Time),
62
+ first: T.nilable(Integer),
63
+ last: T.nilable(Integer),
64
+ query: T.nilable(String),
65
+ status: T.nilable(WhopSDK::AdGroupListParams::Status::OrSymbol),
66
+ request_options: WhopSDK::RequestOptions::OrHash
67
+ ).returns(T.attached_class)
68
+ end
69
+ def self.new(
70
+ # Returns the elements in the list that come after the specified cursor.
71
+ after: nil,
72
+ # Returns the elements in the list that come before the specified cursor.
73
+ before: nil,
74
+ # Filter by campaign. Provide exactly one of campaign_id or company_id.
75
+ campaign_id: nil,
76
+ # Filter by company. Provide exactly one of campaign_id or company_id.
77
+ company_id: nil,
78
+ # Only return ad groups created after this timestamp.
79
+ created_after: nil,
80
+ # Only return ad groups created before this timestamp.
81
+ created_before: nil,
82
+ # Returns the first _n_ elements from the list.
83
+ first: nil,
84
+ # Returns the last _n_ elements from the list.
85
+ last: nil,
86
+ # Case-insensitive substring match against the ad group name.
87
+ query: nil,
88
+ # The status of an external ad group.
89
+ status: nil,
90
+ request_options: {}
91
+ )
92
+ end
93
+
94
+ sig do
95
+ override.returns(
96
+ {
97
+ after: T.nilable(String),
98
+ before: T.nilable(String),
99
+ campaign_id: T.nilable(String),
100
+ company_id: T.nilable(String),
101
+ created_after: T.nilable(Time),
102
+ created_before: T.nilable(Time),
103
+ first: T.nilable(Integer),
104
+ last: T.nilable(Integer),
105
+ query: T.nilable(String),
106
+ status: T.nilable(WhopSDK::AdGroupListParams::Status::OrSymbol),
107
+ request_options: WhopSDK::RequestOptions
108
+ }
109
+ )
110
+ end
111
+ def to_hash
112
+ end
113
+
114
+ # The status of an external ad group.
115
+ module Status
116
+ extend WhopSDK::Internal::Type::Enum
117
+
118
+ TaggedSymbol =
119
+ T.type_alias { T.all(Symbol, WhopSDK::AdGroupListParams::Status) }
120
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
121
+
122
+ ACTIVE =
123
+ T.let(:active, WhopSDK::AdGroupListParams::Status::TaggedSymbol)
124
+ PAUSED =
125
+ T.let(:paused, WhopSDK::AdGroupListParams::Status::TaggedSymbol)
126
+ INACTIVE =
127
+ T.let(:inactive, WhopSDK::AdGroupListParams::Status::TaggedSymbol)
128
+ IN_REVIEW =
129
+ T.let(:in_review, WhopSDK::AdGroupListParams::Status::TaggedSymbol)
130
+ REJECTED =
131
+ T.let(:rejected, WhopSDK::AdGroupListParams::Status::TaggedSymbol)
132
+ FLAGGED =
133
+ T.let(:flagged, WhopSDK::AdGroupListParams::Status::TaggedSymbol)
134
+
135
+ sig do
136
+ override.returns(
137
+ T::Array[WhopSDK::AdGroupListParams::Status::TaggedSymbol]
138
+ )
139
+ end
140
+ def self.values
141
+ end
142
+ end
143
+ end
144
+ end
145
+ end
@@ -0,0 +1,228 @@
1
+ # typed: strong
2
+
3
+ module WhopSDK
4
+ module Models
5
+ class AdGroupListResponse < WhopSDK::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ WhopSDK::Models::AdGroupListResponse,
10
+ WhopSDK::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # The unique identifier for this ad group.
15
+ sig { returns(String) }
16
+ attr_accessor :id
17
+
18
+ # Budget amount in dollars.
19
+ sig { returns(T.nilable(Float)) }
20
+ attr_accessor :budget
21
+
22
+ # The budget type for an ad campaign or ad group.
23
+ sig do
24
+ returns(
25
+ T.nilable(
26
+ WhopSDK::Models::AdGroupListResponse::BudgetType::TaggedSymbol
27
+ )
28
+ )
29
+ end
30
+ attr_accessor :budget_type
31
+
32
+ # When the ad group was created.
33
+ sig { returns(Time) }
34
+ attr_accessor :created_at
35
+
36
+ # The external ad platform this ad group is running on (e.g., meta, tiktok).
37
+ sig do
38
+ returns(WhopSDK::Models::AdGroupListResponse::Platform::TaggedSymbol)
39
+ end
40
+ attr_accessor :platform
41
+
42
+ # Current operational status of the ad group.
43
+ sig do
44
+ returns(WhopSDK::Models::AdGroupListResponse::Status::TaggedSymbol)
45
+ end
46
+ attr_accessor :status
47
+
48
+ # Human-readable name shown on the external platform.
49
+ sig { returns(T.nilable(String)) }
50
+ attr_accessor :title
51
+
52
+ # When the ad group was last updated.
53
+ sig { returns(Time) }
54
+ attr_accessor :updated_at
55
+
56
+ # An ad group (ad set) belonging to an ad campaign.
57
+ sig do
58
+ params(
59
+ id: String,
60
+ budget: T.nilable(Float),
61
+ budget_type:
62
+ T.nilable(
63
+ WhopSDK::Models::AdGroupListResponse::BudgetType::OrSymbol
64
+ ),
65
+ created_at: Time,
66
+ platform: WhopSDK::Models::AdGroupListResponse::Platform::OrSymbol,
67
+ status: WhopSDK::Models::AdGroupListResponse::Status::OrSymbol,
68
+ title: T.nilable(String),
69
+ updated_at: Time
70
+ ).returns(T.attached_class)
71
+ end
72
+ def self.new(
73
+ # The unique identifier for this ad group.
74
+ id:,
75
+ # Budget amount in dollars.
76
+ budget:,
77
+ # The budget type for an ad campaign or ad group.
78
+ budget_type:,
79
+ # When the ad group was created.
80
+ created_at:,
81
+ # The external ad platform this ad group is running on (e.g., meta, tiktok).
82
+ platform:,
83
+ # Current operational status of the ad group.
84
+ status:,
85
+ # Human-readable name shown on the external platform.
86
+ title:,
87
+ # When the ad group was last updated.
88
+ updated_at:
89
+ )
90
+ end
91
+
92
+ sig do
93
+ override.returns(
94
+ {
95
+ id: String,
96
+ budget: T.nilable(Float),
97
+ budget_type:
98
+ T.nilable(
99
+ WhopSDK::Models::AdGroupListResponse::BudgetType::TaggedSymbol
100
+ ),
101
+ created_at: Time,
102
+ platform:
103
+ WhopSDK::Models::AdGroupListResponse::Platform::TaggedSymbol,
104
+ status: WhopSDK::Models::AdGroupListResponse::Status::TaggedSymbol,
105
+ title: T.nilable(String),
106
+ updated_at: Time
107
+ }
108
+ )
109
+ end
110
+ def to_hash
111
+ end
112
+
113
+ # The budget type for an ad campaign or ad group.
114
+ module BudgetType
115
+ extend WhopSDK::Internal::Type::Enum
116
+
117
+ TaggedSymbol =
118
+ T.type_alias do
119
+ T.all(Symbol, WhopSDK::Models::AdGroupListResponse::BudgetType)
120
+ end
121
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
122
+
123
+ DAILY =
124
+ T.let(
125
+ :daily,
126
+ WhopSDK::Models::AdGroupListResponse::BudgetType::TaggedSymbol
127
+ )
128
+ LIFETIME =
129
+ T.let(
130
+ :lifetime,
131
+ WhopSDK::Models::AdGroupListResponse::BudgetType::TaggedSymbol
132
+ )
133
+
134
+ sig do
135
+ override.returns(
136
+ T::Array[
137
+ WhopSDK::Models::AdGroupListResponse::BudgetType::TaggedSymbol
138
+ ]
139
+ )
140
+ end
141
+ def self.values
142
+ end
143
+ end
144
+
145
+ # The external ad platform this ad group is running on (e.g., meta, tiktok).
146
+ module Platform
147
+ extend WhopSDK::Internal::Type::Enum
148
+
149
+ TaggedSymbol =
150
+ T.type_alias do
151
+ T.all(Symbol, WhopSDK::Models::AdGroupListResponse::Platform)
152
+ end
153
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
154
+
155
+ META =
156
+ T.let(
157
+ :meta,
158
+ WhopSDK::Models::AdGroupListResponse::Platform::TaggedSymbol
159
+ )
160
+ TIKTOK =
161
+ T.let(
162
+ :tiktok,
163
+ WhopSDK::Models::AdGroupListResponse::Platform::TaggedSymbol
164
+ )
165
+
166
+ sig do
167
+ override.returns(
168
+ T::Array[
169
+ WhopSDK::Models::AdGroupListResponse::Platform::TaggedSymbol
170
+ ]
171
+ )
172
+ end
173
+ def self.values
174
+ end
175
+ end
176
+
177
+ # Current operational status of the ad group.
178
+ module Status
179
+ extend WhopSDK::Internal::Type::Enum
180
+
181
+ TaggedSymbol =
182
+ T.type_alias do
183
+ T.all(Symbol, WhopSDK::Models::AdGroupListResponse::Status)
184
+ end
185
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
186
+
187
+ ACTIVE =
188
+ T.let(
189
+ :active,
190
+ WhopSDK::Models::AdGroupListResponse::Status::TaggedSymbol
191
+ )
192
+ PAUSED =
193
+ T.let(
194
+ :paused,
195
+ WhopSDK::Models::AdGroupListResponse::Status::TaggedSymbol
196
+ )
197
+ INACTIVE =
198
+ T.let(
199
+ :inactive,
200
+ WhopSDK::Models::AdGroupListResponse::Status::TaggedSymbol
201
+ )
202
+ IN_REVIEW =
203
+ T.let(
204
+ :in_review,
205
+ WhopSDK::Models::AdGroupListResponse::Status::TaggedSymbol
206
+ )
207
+ REJECTED =
208
+ T.let(
209
+ :rejected,
210
+ WhopSDK::Models::AdGroupListResponse::Status::TaggedSymbol
211
+ )
212
+ FLAGGED =
213
+ T.let(
214
+ :flagged,
215
+ WhopSDK::Models::AdGroupListResponse::Status::TaggedSymbol
216
+ )
217
+
218
+ sig do
219
+ override.returns(
220
+ T::Array[WhopSDK::Models::AdGroupListResponse::Status::TaggedSymbol]
221
+ )
222
+ end
223
+ def self.values
224
+ end
225
+ end
226
+ end
227
+ end
228
+ end
@@ -0,0 +1,35 @@
1
+ # typed: strong
2
+
3
+ module WhopSDK
4
+ module Models
5
+ class AdGroupRetrieveParams < WhopSDK::Internal::Type::BaseModel
6
+ extend WhopSDK::Internal::Type::RequestParameters::Converter
7
+ include WhopSDK::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(WhopSDK::AdGroupRetrieveParams, WhopSDK::Internal::AnyHash)
12
+ end
13
+
14
+ sig { returns(String) }
15
+ attr_accessor :id
16
+
17
+ sig do
18
+ params(
19
+ id: String,
20
+ request_options: WhopSDK::RequestOptions::OrHash
21
+ ).returns(T.attached_class)
22
+ end
23
+ def self.new(id:, request_options: {})
24
+ end
25
+
26
+ sig do
27
+ override.returns(
28
+ { id: String, request_options: WhopSDK::RequestOptions }
29
+ )
30
+ end
31
+ def to_hash
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,277 @@
1
+ # typed: strong
2
+
3
+ module WhopSDK
4
+ module Models
5
+ class AdGroupRetrieveResponse < WhopSDK::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ WhopSDK::Models::AdGroupRetrieveResponse,
10
+ WhopSDK::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # The unique identifier for this ad group.
15
+ sig { returns(String) }
16
+ attr_accessor :id
17
+
18
+ # The ad campaign this ad group belongs to.
19
+ sig { returns(WhopSDK::Models::AdGroupRetrieveResponse::AdCampaign) }
20
+ attr_reader :ad_campaign
21
+
22
+ sig do
23
+ params(
24
+ ad_campaign:
25
+ WhopSDK::Models::AdGroupRetrieveResponse::AdCampaign::OrHash
26
+ ).void
27
+ end
28
+ attr_writer :ad_campaign
29
+
30
+ # Budget amount in dollars.
31
+ sig { returns(T.nilable(Float)) }
32
+ attr_accessor :budget
33
+
34
+ # The budget type for an ad campaign or ad group.
35
+ sig do
36
+ returns(
37
+ T.nilable(
38
+ WhopSDK::Models::AdGroupRetrieveResponse::BudgetType::TaggedSymbol
39
+ )
40
+ )
41
+ end
42
+ attr_accessor :budget_type
43
+
44
+ # When the ad group was created.
45
+ sig { returns(Time) }
46
+ attr_accessor :created_at
47
+
48
+ # The external ad platform this ad group is running on (e.g., meta, tiktok).
49
+ sig do
50
+ returns(
51
+ WhopSDK::Models::AdGroupRetrieveResponse::Platform::TaggedSymbol
52
+ )
53
+ end
54
+ attr_accessor :platform
55
+
56
+ # Current operational status of the ad group.
57
+ sig do
58
+ returns(WhopSDK::Models::AdGroupRetrieveResponse::Status::TaggedSymbol)
59
+ end
60
+ attr_accessor :status
61
+
62
+ # Human-readable name shown on the external platform.
63
+ sig { returns(T.nilable(String)) }
64
+ attr_accessor :title
65
+
66
+ # When the ad group was last updated.
67
+ sig { returns(Time) }
68
+ attr_accessor :updated_at
69
+
70
+ # An ad group (ad set) belonging to an ad campaign.
71
+ sig do
72
+ params(
73
+ id: String,
74
+ ad_campaign:
75
+ WhopSDK::Models::AdGroupRetrieveResponse::AdCampaign::OrHash,
76
+ budget: T.nilable(Float),
77
+ budget_type:
78
+ T.nilable(
79
+ WhopSDK::Models::AdGroupRetrieveResponse::BudgetType::OrSymbol
80
+ ),
81
+ created_at: Time,
82
+ platform:
83
+ WhopSDK::Models::AdGroupRetrieveResponse::Platform::OrSymbol,
84
+ status: WhopSDK::Models::AdGroupRetrieveResponse::Status::OrSymbol,
85
+ title: T.nilable(String),
86
+ updated_at: Time
87
+ ).returns(T.attached_class)
88
+ end
89
+ def self.new(
90
+ # The unique identifier for this ad group.
91
+ id:,
92
+ # The ad campaign this ad group belongs to.
93
+ ad_campaign:,
94
+ # Budget amount in dollars.
95
+ budget:,
96
+ # The budget type for an ad campaign or ad group.
97
+ budget_type:,
98
+ # When the ad group was created.
99
+ created_at:,
100
+ # The external ad platform this ad group is running on (e.g., meta, tiktok).
101
+ platform:,
102
+ # Current operational status of the ad group.
103
+ status:,
104
+ # Human-readable name shown on the external platform.
105
+ title:,
106
+ # When the ad group was last updated.
107
+ updated_at:
108
+ )
109
+ end
110
+
111
+ sig do
112
+ override.returns(
113
+ {
114
+ id: String,
115
+ ad_campaign: WhopSDK::Models::AdGroupRetrieveResponse::AdCampaign,
116
+ budget: T.nilable(Float),
117
+ budget_type:
118
+ T.nilable(
119
+ WhopSDK::Models::AdGroupRetrieveResponse::BudgetType::TaggedSymbol
120
+ ),
121
+ created_at: Time,
122
+ platform:
123
+ WhopSDK::Models::AdGroupRetrieveResponse::Platform::TaggedSymbol,
124
+ status:
125
+ WhopSDK::Models::AdGroupRetrieveResponse::Status::TaggedSymbol,
126
+ title: T.nilable(String),
127
+ updated_at: Time
128
+ }
129
+ )
130
+ end
131
+ def to_hash
132
+ end
133
+
134
+ class AdCampaign < WhopSDK::Internal::Type::BaseModel
135
+ OrHash =
136
+ T.type_alias do
137
+ T.any(
138
+ WhopSDK::Models::AdGroupRetrieveResponse::AdCampaign,
139
+ WhopSDK::Internal::AnyHash
140
+ )
141
+ end
142
+
143
+ # The unique identifier for this ad campaign.
144
+ sig { returns(String) }
145
+ attr_accessor :id
146
+
147
+ # The ad campaign this ad group belongs to.
148
+ sig { params(id: String).returns(T.attached_class) }
149
+ def self.new(
150
+ # The unique identifier for this ad campaign.
151
+ id:
152
+ )
153
+ end
154
+
155
+ sig { override.returns({ id: String }) }
156
+ def to_hash
157
+ end
158
+ end
159
+
160
+ # The budget type for an ad campaign or ad group.
161
+ module BudgetType
162
+ extend WhopSDK::Internal::Type::Enum
163
+
164
+ TaggedSymbol =
165
+ T.type_alias do
166
+ T.all(Symbol, WhopSDK::Models::AdGroupRetrieveResponse::BudgetType)
167
+ end
168
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
169
+
170
+ DAILY =
171
+ T.let(
172
+ :daily,
173
+ WhopSDK::Models::AdGroupRetrieveResponse::BudgetType::TaggedSymbol
174
+ )
175
+ LIFETIME =
176
+ T.let(
177
+ :lifetime,
178
+ WhopSDK::Models::AdGroupRetrieveResponse::BudgetType::TaggedSymbol
179
+ )
180
+
181
+ sig do
182
+ override.returns(
183
+ T::Array[
184
+ WhopSDK::Models::AdGroupRetrieveResponse::BudgetType::TaggedSymbol
185
+ ]
186
+ )
187
+ end
188
+ def self.values
189
+ end
190
+ end
191
+
192
+ # The external ad platform this ad group is running on (e.g., meta, tiktok).
193
+ module Platform
194
+ extend WhopSDK::Internal::Type::Enum
195
+
196
+ TaggedSymbol =
197
+ T.type_alias do
198
+ T.all(Symbol, WhopSDK::Models::AdGroupRetrieveResponse::Platform)
199
+ end
200
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
201
+
202
+ META =
203
+ T.let(
204
+ :meta,
205
+ WhopSDK::Models::AdGroupRetrieveResponse::Platform::TaggedSymbol
206
+ )
207
+ TIKTOK =
208
+ T.let(
209
+ :tiktok,
210
+ WhopSDK::Models::AdGroupRetrieveResponse::Platform::TaggedSymbol
211
+ )
212
+
213
+ sig do
214
+ override.returns(
215
+ T::Array[
216
+ WhopSDK::Models::AdGroupRetrieveResponse::Platform::TaggedSymbol
217
+ ]
218
+ )
219
+ end
220
+ def self.values
221
+ end
222
+ end
223
+
224
+ # Current operational status of the ad group.
225
+ module Status
226
+ extend WhopSDK::Internal::Type::Enum
227
+
228
+ TaggedSymbol =
229
+ T.type_alias do
230
+ T.all(Symbol, WhopSDK::Models::AdGroupRetrieveResponse::Status)
231
+ end
232
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
233
+
234
+ ACTIVE =
235
+ T.let(
236
+ :active,
237
+ WhopSDK::Models::AdGroupRetrieveResponse::Status::TaggedSymbol
238
+ )
239
+ PAUSED =
240
+ T.let(
241
+ :paused,
242
+ WhopSDK::Models::AdGroupRetrieveResponse::Status::TaggedSymbol
243
+ )
244
+ INACTIVE =
245
+ T.let(
246
+ :inactive,
247
+ WhopSDK::Models::AdGroupRetrieveResponse::Status::TaggedSymbol
248
+ )
249
+ IN_REVIEW =
250
+ T.let(
251
+ :in_review,
252
+ WhopSDK::Models::AdGroupRetrieveResponse::Status::TaggedSymbol
253
+ )
254
+ REJECTED =
255
+ T.let(
256
+ :rejected,
257
+ WhopSDK::Models::AdGroupRetrieveResponse::Status::TaggedSymbol
258
+ )
259
+ FLAGGED =
260
+ T.let(
261
+ :flagged,
262
+ WhopSDK::Models::AdGroupRetrieveResponse::Status::TaggedSymbol
263
+ )
264
+
265
+ sig do
266
+ override.returns(
267
+ T::Array[
268
+ WhopSDK::Models::AdGroupRetrieveResponse::Status::TaggedSymbol
269
+ ]
270
+ )
271
+ end
272
+ def self.values
273
+ end
274
+ end
275
+ end
276
+ end
277
+ end