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