whop_sdk 0.0.39 → 0.0.40

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 (313) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +7 -0
  3. data/README.md +1 -1
  4. data/lib/whop_sdk/client.rb +18 -2
  5. data/lib/whop_sdk/internal/transport/base_client.rb +2 -0
  6. data/lib/whop_sdk/internal/type/union.rb +6 -6
  7. data/lib/whop_sdk/models/account.rb +144 -0
  8. data/lib/whop_sdk/models/account_create_params.rb +34 -0
  9. data/lib/whop_sdk/models/account_list_params.rb +34 -0
  10. data/lib/whop_sdk/models/account_list_response.rb +66 -0
  11. data/lib/whop_sdk/models/account_me_params.rb +14 -0
  12. data/lib/whop_sdk/models/account_retrieve_params.rb +20 -0
  13. data/lib/whop_sdk/models/account_social_link.rb +60 -0
  14. data/lib/whop_sdk/models/account_update_params.rb +146 -0
  15. data/lib/whop_sdk/models/account_wallet.rb +46 -0
  16. data/lib/whop_sdk/models/{ad_retrieve_response.rb → ad.rb} +15 -45
  17. data/lib/whop_sdk/models/ad_budget_type.rb +16 -0
  18. data/lib/whop_sdk/models/{ad_campaign_pause_response.rb → ad_campaign.rb} +37 -86
  19. data/lib/whop_sdk/models/ad_campaign_list_params.rb +12 -27
  20. data/lib/whop_sdk/models/ad_campaign_list_response.rb +9 -52
  21. data/lib/whop_sdk/models/ad_campaign_platform.rb +16 -0
  22. data/lib/whop_sdk/models/ad_campaign_status.rb +20 -0
  23. data/lib/whop_sdk/models/ad_group.rb +97 -0
  24. data/lib/whop_sdk/models/ad_group_list_params.rb +16 -19
  25. data/lib/whop_sdk/models/ad_group_list_response.rb +30 -51
  26. data/lib/whop_sdk/models/ad_group_pause_params.rb +20 -0
  27. data/lib/whop_sdk/models/ad_group_status.rb +20 -0
  28. data/lib/whop_sdk/models/ad_group_unpause_params.rb +20 -0
  29. data/lib/whop_sdk/models/ad_group_update_params.rb +8 -32
  30. data/lib/whop_sdk/models/ad_list_params.rb +57 -12
  31. data/lib/whop_sdk/models/ad_list_response.rb +45 -31
  32. data/lib/whop_sdk/models/ad_pause_params.rb +20 -0
  33. data/lib/whop_sdk/models/ad_report_retrieve_params.rb +45 -15
  34. data/lib/whop_sdk/models/ad_report_retrieve_response.rb +378 -105
  35. data/lib/whop_sdk/models/ad_unpause_params.rb +20 -0
  36. data/lib/whop_sdk/models/checkout_configuration.rb +22 -1
  37. data/lib/whop_sdk/models/checkout_configuration_create_params.rb +26 -1
  38. data/lib/whop_sdk/models/checkout_configuration_list_response.rb +24 -1
  39. data/lib/whop_sdk/models/currency.rb +3 -0
  40. data/lib/whop_sdk/models/deposit_create_params.rb +85 -0
  41. data/lib/whop_sdk/models/deposit_create_response.rb +102 -0
  42. data/lib/whop_sdk/models/dispute.rb +6 -7
  43. data/lib/whop_sdk/models/dispute_alert_created_webhook_event.rb +4 -4
  44. data/lib/whop_sdk/models/dispute_alert_retrieve_response.rb +4 -4
  45. data/lib/whop_sdk/models/dispute_list_response.rb +2 -3
  46. data/lib/whop_sdk/models/external_ad_status.rb +20 -0
  47. data/lib/whop_sdk/models/file_create_params.rb +3 -15
  48. data/lib/whop_sdk/models/file_create_response.rb +3 -16
  49. data/lib/whop_sdk/models/file_retrieve_response.rb +3 -16
  50. data/lib/whop_sdk/models/file_visibility.rb +17 -0
  51. data/lib/whop_sdk/models/granularities.rb +16 -0
  52. data/lib/whop_sdk/models/identity_profile_approved_webhook_event.rb +431 -0
  53. data/lib/whop_sdk/models/identity_profile_needs_action_webhook_event.rb +432 -0
  54. data/lib/whop_sdk/models/identity_profile_rejected_webhook_event.rb +431 -0
  55. data/lib/whop_sdk/models/identity_profile_updated_webhook_event.rb +431 -0
  56. data/lib/whop_sdk/models/ledger_account_retrieve_response.rb +65 -1
  57. data/lib/whop_sdk/models/member_list_response.rb +3 -2
  58. data/lib/whop_sdk/models/member_retrieve_response.rb +3 -2
  59. data/lib/whop_sdk/models/membership.rb +23 -2
  60. data/lib/whop_sdk/models/membership_list_response.rb +23 -2
  61. data/lib/whop_sdk/models/payment.rb +47 -22
  62. data/lib/whop_sdk/models/payment_list_params.rb +9 -1
  63. data/lib/whop_sdk/models/payment_list_response.rb +40 -13
  64. data/lib/whop_sdk/models/plan.rb +31 -1
  65. data/lib/whop_sdk/models/plan_create_params.rb +30 -1
  66. data/lib/whop_sdk/models/plan_list_response.rb +31 -1
  67. data/lib/whop_sdk/models/plan_update_params.rb +30 -1
  68. data/lib/whop_sdk/models/product.rb +10 -1
  69. data/lib/whop_sdk/models/product_create_params.rb +11 -1
  70. data/lib/whop_sdk/models/product_list_item.rb +10 -1
  71. data/lib/whop_sdk/models/product_update_params.rb +11 -1
  72. data/lib/whop_sdk/models/refund_created_webhook_event.rb +84 -5
  73. data/lib/whop_sdk/models/refund_retrieve_response.rb +82 -5
  74. data/lib/whop_sdk/models/refund_updated_webhook_event.rb +84 -5
  75. data/lib/whop_sdk/models/resolution_center_case_platform_response.rb +0 -1
  76. data/lib/whop_sdk/models/result_label_keys.rb +38 -0
  77. data/lib/whop_sdk/models/swap_create_quote_params.rb +102 -0
  78. data/lib/whop_sdk/models/swap_create_quote_response.rb +104 -0
  79. data/lib/whop_sdk/models/transfer_create_params.rb +3 -1
  80. data/lib/whop_sdk/models/unwrap_webhook_event.rb +41 -33
  81. data/lib/whop_sdk/models/wallet_balance_params.rb +20 -0
  82. data/lib/whop_sdk/models/wallet_balance_response.rb +84 -0
  83. data/lib/whop_sdk/models/wallet_list_params.rb +14 -0
  84. data/lib/whop_sdk/models/wallet_list_response.rb +38 -0
  85. data/lib/whop_sdk/models/wallet_send_params.rb +37 -0
  86. data/lib/whop_sdk/models/wallet_send_response.rb +90 -0
  87. data/lib/whop_sdk/models/webhook_event.rb +4 -0
  88. data/lib/whop_sdk/models.rb +64 -0
  89. data/lib/whop_sdk/resources/accounts.rb +168 -0
  90. data/lib/whop_sdk/resources/ad_campaigns.rb +13 -13
  91. data/lib/whop_sdk/resources/ad_groups.rb +63 -8
  92. data/lib/whop_sdk/resources/ad_reports.rb +14 -8
  93. data/lib/whop_sdk/resources/ads.rb +66 -4
  94. data/lib/whop_sdk/resources/deposits.rb +46 -0
  95. data/lib/whop_sdk/resources/files.rb +1 -1
  96. data/lib/whop_sdk/resources/payments.rb +3 -1
  97. data/lib/whop_sdk/resources/plans.rb +10 -2
  98. data/lib/whop_sdk/resources/products.rb +6 -2
  99. data/lib/whop_sdk/resources/refunds.rb +2 -0
  100. data/lib/whop_sdk/resources/swaps.rb +52 -0
  101. data/lib/whop_sdk/resources/wallets.rb +78 -0
  102. data/lib/whop_sdk/resources/webhooks.rb +1 -1
  103. data/lib/whop_sdk/version.rb +1 -1
  104. data/lib/whop_sdk.rb +42 -7
  105. data/rbi/whop_sdk/client.rbi +14 -2
  106. data/rbi/whop_sdk/models/account.rbi +164 -0
  107. data/rbi/whop_sdk/models/account_create_params.rbi +59 -0
  108. data/rbi/whop_sdk/models/account_list_params.rbi +59 -0
  109. data/rbi/whop_sdk/models/account_list_response.rbi +115 -0
  110. data/rbi/whop_sdk/models/account_me_params.rbi +27 -0
  111. data/rbi/whop_sdk/models/account_retrieve_params.rbi +35 -0
  112. data/rbi/whop_sdk/models/account_social_link.rbi +96 -0
  113. data/rbi/whop_sdk/models/account_update_params.rbi +175 -0
  114. data/rbi/whop_sdk/models/account_wallet.rbi +75 -0
  115. data/rbi/whop_sdk/models/ad.rbi +143 -0
  116. data/rbi/whop_sdk/models/ad_budget_type.rbi +20 -0
  117. data/rbi/whop_sdk/models/{ad_campaign_pause_response.rbi → ad_campaign.rbi} +57 -245
  118. data/rbi/whop_sdk/models/ad_campaign_list_params.rbi +11 -46
  119. data/rbi/whop_sdk/models/ad_campaign_list_response.rbi +9 -143
  120. data/rbi/whop_sdk/models/ad_campaign_platform.rbi +22 -0
  121. data/rbi/whop_sdk/models/ad_campaign_status.rbi +27 -0
  122. data/rbi/whop_sdk/models/ad_group.rbi +126 -0
  123. data/rbi/whop_sdk/models/ad_group_list_params.rbi +13 -33
  124. data/rbi/whop_sdk/models/ad_group_list_response.rbi +41 -131
  125. data/rbi/whop_sdk/models/ad_group_pause_params.rbi +35 -0
  126. data/rbi/whop_sdk/models/ad_group_status.rbi +24 -0
  127. data/rbi/whop_sdk/models/ad_group_unpause_params.rbi +35 -0
  128. data/rbi/whop_sdk/models/ad_group_update_params.rbi +16 -67
  129. data/rbi/whop_sdk/models/ad_list_params.rbi +59 -14
  130. data/rbi/whop_sdk/models/ad_list_response.rbi +74 -62
  131. data/rbi/whop_sdk/models/ad_pause_params.rbi +35 -0
  132. data/rbi/whop_sdk/models/ad_report_retrieve_params.rbi +75 -19
  133. data/rbi/whop_sdk/models/ad_report_retrieve_response.rbi +537 -349
  134. data/rbi/whop_sdk/models/ad_unpause_params.rbi +35 -0
  135. data/rbi/whop_sdk/models/checkout_configuration.rbi +52 -0
  136. data/rbi/whop_sdk/models/checkout_configuration_create_params.rbi +56 -1
  137. data/rbi/whop_sdk/models/checkout_configuration_list_response.rbi +55 -0
  138. data/rbi/whop_sdk/models/currency.rbi +3 -0
  139. data/rbi/whop_sdk/models/deposit_create_params.rbi +152 -0
  140. data/rbi/whop_sdk/models/deposit_create_response.rbi +185 -0
  141. data/rbi/whop_sdk/models/dispute.rbi +7 -9
  142. data/rbi/whop_sdk/models/dispute_alert_created_webhook_event.rbi +5 -5
  143. data/rbi/whop_sdk/models/dispute_alert_retrieve_response.rbi +5 -5
  144. data/rbi/whop_sdk/models/dispute_list_response.rbi +2 -4
  145. data/rbi/whop_sdk/models/external_ad_status.rbi +26 -0
  146. data/rbi/whop_sdk/models/file_create_params.rbi +3 -30
  147. data/rbi/whop_sdk/models/file_create_response.rbi +3 -38
  148. data/rbi/whop_sdk/models/file_retrieve_response.rbi +3 -39
  149. data/rbi/whop_sdk/models/file_visibility.rbi +21 -0
  150. data/rbi/whop_sdk/models/granularities.rbi +20 -0
  151. data/rbi/whop_sdk/models/identity_profile_approved_webhook_event.rbi +669 -0
  152. data/rbi/whop_sdk/models/identity_profile_needs_action_webhook_event.rbi +669 -0
  153. data/rbi/whop_sdk/models/identity_profile_rejected_webhook_event.rbi +669 -0
  154. data/rbi/whop_sdk/models/identity_profile_updated_webhook_event.rbi +669 -0
  155. data/rbi/whop_sdk/models/ledger_account_retrieve_response.rbi +109 -3
  156. data/rbi/whop_sdk/models/member_list_response.rbi +4 -2
  157. data/rbi/whop_sdk/models/member_retrieve_response.rbi +4 -2
  158. data/rbi/whop_sdk/models/membership.rbi +44 -5
  159. data/rbi/whop_sdk/models/membership_list_response.rbi +44 -5
  160. data/rbi/whop_sdk/models/payment.rbi +75 -36
  161. data/rbi/whop_sdk/models/payment_list_params.rbi +8 -0
  162. data/rbi/whop_sdk/models/payment_list_response.rbi +67 -24
  163. data/rbi/whop_sdk/models/plan.rbi +39 -0
  164. data/rbi/whop_sdk/models/plan_create_params.rbi +54 -0
  165. data/rbi/whop_sdk/models/plan_list_response.rbi +62 -0
  166. data/rbi/whop_sdk/models/plan_update_params.rbi +54 -0
  167. data/rbi/whop_sdk/models/product.rbi +10 -0
  168. data/rbi/whop_sdk/models/product_create_params.rbi +12 -0
  169. data/rbi/whop_sdk/models/product_list_item.rbi +10 -0
  170. data/rbi/whop_sdk/models/product_update_params.rbi +12 -0
  171. data/rbi/whop_sdk/models/refund_created_webhook_event.rbi +159 -5
  172. data/rbi/whop_sdk/models/refund_retrieve_response.rbi +157 -5
  173. data/rbi/whop_sdk/models/refund_updated_webhook_event.rbi +159 -5
  174. data/rbi/whop_sdk/models/resolution_center_case_platform_response.rbi +0 -5
  175. data/rbi/whop_sdk/models/result_label_keys.rbi +64 -0
  176. data/rbi/whop_sdk/models/swap_create_quote_params.rbi +134 -0
  177. data/rbi/whop_sdk/models/swap_create_quote_response.rbi +148 -0
  178. data/rbi/whop_sdk/models/transfer_create_params.rbi +6 -2
  179. data/rbi/whop_sdk/models/unwrap_webhook_event.rbi +25 -21
  180. data/rbi/whop_sdk/models/wallet_balance_params.rbi +35 -0
  181. data/rbi/whop_sdk/models/wallet_balance_response.rbi +145 -0
  182. data/rbi/whop_sdk/models/wallet_list_params.rbi +27 -0
  183. data/rbi/whop_sdk/models/wallet_list_response.rbi +66 -0
  184. data/rbi/whop_sdk/models/wallet_send_params.rbi +57 -0
  185. data/rbi/whop_sdk/models/wallet_send_response.rbi +146 -0
  186. data/rbi/whop_sdk/models/webhook_event.rbi +11 -0
  187. data/rbi/whop_sdk/models.rbi +68 -0
  188. data/rbi/whop_sdk/resources/accounts.rbi +137 -0
  189. data/rbi/whop_sdk/resources/ad_campaigns.rbi +8 -8
  190. data/rbi/whop_sdk/resources/ad_groups.rbi +47 -6
  191. data/rbi/whop_sdk/resources/ad_reports.rbi +23 -12
  192. data/rbi/whop_sdk/resources/ads.rbi +59 -2
  193. data/rbi/whop_sdk/resources/deposits.rbi +41 -0
  194. data/rbi/whop_sdk/resources/files.rbi +1 -2
  195. data/rbi/whop_sdk/resources/payments.rbi +3 -0
  196. data/rbi/whop_sdk/resources/plans.rbi +18 -0
  197. data/rbi/whop_sdk/resources/products.rbi +10 -0
  198. data/rbi/whop_sdk/resources/refunds.rbi +2 -0
  199. data/rbi/whop_sdk/resources/swaps.rbi +46 -0
  200. data/rbi/whop_sdk/resources/transfers.rbi +3 -1
  201. data/rbi/whop_sdk/resources/wallets.rbi +55 -0
  202. data/rbi/whop_sdk/resources/webhooks.rbi +25 -21
  203. data/sig/whop_sdk/client.rbs +8 -0
  204. data/sig/whop_sdk/models/account.rbs +100 -0
  205. data/sig/whop_sdk/models/account_create_params.rbs +32 -0
  206. data/sig/whop_sdk/models/account_list_params.rbs +32 -0
  207. data/sig/whop_sdk/models/account_list_response.rbs +62 -0
  208. data/sig/whop_sdk/models/account_me_params.rbs +14 -0
  209. data/sig/whop_sdk/models/account_retrieve_params.rbs +23 -0
  210. data/sig/whop_sdk/models/account_social_link.rbs +62 -0
  211. data/sig/whop_sdk/models/account_update_params.rbs +111 -0
  212. data/sig/whop_sdk/models/account_wallet.rbs +42 -0
  213. data/sig/whop_sdk/models/ad.rbs +75 -0
  214. data/sig/whop_sdk/models/ad_budget_type.rbs +14 -0
  215. data/sig/whop_sdk/models/ad_campaign.rbs +194 -0
  216. data/sig/whop_sdk/models/ad_campaign_list_params.rbs +9 -25
  217. data/sig/whop_sdk/models/ad_campaign_list_response.rbs +12 -50
  218. data/sig/whop_sdk/models/ad_campaign_platform.rbs +14 -0
  219. data/sig/whop_sdk/models/ad_campaign_status.rbs +19 -0
  220. data/sig/whop_sdk/models/ad_group.rbs +70 -0
  221. data/sig/whop_sdk/models/ad_group_list_params.rbs +9 -20
  222. data/sig/whop_sdk/models/ad_group_list_response.rbs +22 -45
  223. data/sig/whop_sdk/models/ad_group_pause_params.rbs +20 -0
  224. data/sig/whop_sdk/models/ad_group_status.rbs +19 -0
  225. data/sig/whop_sdk/models/ad_group_unpause_params.rbs +20 -0
  226. data/sig/whop_sdk/models/ad_group_update_params.rbs +18 -36
  227. data/sig/whop_sdk/models/ad_list_params.rbs +39 -14
  228. data/sig/whop_sdk/models/ad_list_response.rbs +28 -25
  229. data/sig/whop_sdk/models/ad_pause_params.rbs +20 -0
  230. data/sig/whop_sdk/models/ad_report_retrieve_params.rbs +26 -4
  231. data/sig/whop_sdk/models/ad_report_retrieve_response.rbs +240 -131
  232. data/sig/whop_sdk/models/ad_unpause_params.rbs +20 -0
  233. data/sig/whop_sdk/models/checkout_configuration.rbs +16 -0
  234. data/sig/whop_sdk/models/checkout_configuration_create_params.rbs +18 -2
  235. data/sig/whop_sdk/models/checkout_configuration_list_response.rbs +16 -0
  236. data/sig/whop_sdk/models/currency.rbs +6 -0
  237. data/sig/whop_sdk/models/deposit_create_params.rbs +81 -0
  238. data/sig/whop_sdk/models/deposit_create_response.rbs +99 -0
  239. data/sig/whop_sdk/models/dispute.rbs +4 -4
  240. data/sig/whop_sdk/models/dispute_alert_created_webhook_event.rbs +4 -4
  241. data/sig/whop_sdk/models/dispute_alert_retrieve_response.rbs +4 -4
  242. data/sig/whop_sdk/models/external_ad_status.rbs +19 -0
  243. data/sig/whop_sdk/models/file_create_params.rbs +4 -18
  244. data/sig/whop_sdk/models/file_create_response.rbs +4 -15
  245. data/sig/whop_sdk/models/file_retrieve_response.rbs +4 -15
  246. data/sig/whop_sdk/models/file_visibility.rbs +14 -0
  247. data/sig/whop_sdk/models/granularities.rbs +14 -0
  248. data/sig/whop_sdk/models/identity_profile_approved_webhook_event.rbs +293 -0
  249. data/sig/whop_sdk/models/identity_profile_needs_action_webhook_event.rbs +293 -0
  250. data/sig/whop_sdk/models/identity_profile_rejected_webhook_event.rbs +293 -0
  251. data/sig/whop_sdk/models/identity_profile_updated_webhook_event.rbs +293 -0
  252. data/sig/whop_sdk/models/ledger_account_retrieve_response.rbs +50 -3
  253. data/sig/whop_sdk/models/membership.rbs +19 -6
  254. data/sig/whop_sdk/models/membership_list_response.rbs +19 -6
  255. data/sig/whop_sdk/models/payment.rbs +52 -15
  256. data/sig/whop_sdk/models/payment_list_params.rbs +5 -0
  257. data/sig/whop_sdk/models/payment_list_response.rbs +52 -15
  258. data/sig/whop_sdk/models/plan.rbs +21 -0
  259. data/sig/whop_sdk/models/plan_create_params.rbs +21 -0
  260. data/sig/whop_sdk/models/plan_list_response.rbs +21 -0
  261. data/sig/whop_sdk/models/plan_update_params.rbs +21 -0
  262. data/sig/whop_sdk/models/product.rbs +5 -0
  263. data/sig/whop_sdk/models/product_create_params.rbs +5 -0
  264. data/sig/whop_sdk/models/product_list_item.rbs +5 -0
  265. data/sig/whop_sdk/models/product_update_params.rbs +5 -0
  266. data/sig/whop_sdk/models/refund_created_webhook_event.rbs +43 -4
  267. data/sig/whop_sdk/models/refund_retrieve_response.rbs +43 -4
  268. data/sig/whop_sdk/models/refund_updated_webhook_event.rbs +43 -4
  269. data/sig/whop_sdk/models/resolution_center_case_platform_response.rbs +0 -2
  270. data/sig/whop_sdk/models/result_label_keys.rbs +60 -0
  271. data/sig/whop_sdk/models/swap_create_quote_params.rbs +84 -0
  272. data/sig/whop_sdk/models/swap_create_quote_response.rbs +97 -0
  273. data/sig/whop_sdk/models/unwrap_webhook_event.rbs +26 -22
  274. data/sig/whop_sdk/models/wallet_balance_params.rbs +23 -0
  275. data/sig/whop_sdk/models/wallet_balance_response.rbs +87 -0
  276. data/sig/whop_sdk/models/wallet_list_params.rbs +14 -0
  277. data/sig/whop_sdk/models/wallet_list_response.rbs +40 -0
  278. data/sig/whop_sdk/models/wallet_send_params.rbs +32 -0
  279. data/sig/whop_sdk/models/wallet_send_response.rbs +79 -0
  280. data/sig/whop_sdk/models/webhook_event.rbs +8 -0
  281. data/sig/whop_sdk/models.rbs +64 -0
  282. data/sig/whop_sdk/resources/accounts.rbs +46 -0
  283. data/sig/whop_sdk/resources/ad_campaigns.rbs +6 -6
  284. data/sig/whop_sdk/resources/ad_groups.rbs +16 -5
  285. data/sig/whop_sdk/resources/ad_reports.rbs +3 -1
  286. data/sig/whop_sdk/resources/ads.rbs +18 -2
  287. data/sig/whop_sdk/resources/deposits.rbs +15 -0
  288. data/sig/whop_sdk/resources/files.rbs +1 -1
  289. data/sig/whop_sdk/resources/payments.rbs +1 -0
  290. data/sig/whop_sdk/resources/plans.rbs +4 -0
  291. data/sig/whop_sdk/resources/products.rbs +2 -0
  292. data/sig/whop_sdk/resources/swaps.rbs +20 -0
  293. data/sig/whop_sdk/resources/wallets.rbs +23 -0
  294. data/sig/whop_sdk/resources/webhooks.rbs +26 -22
  295. metadata +128 -23
  296. data/lib/whop_sdk/models/ad_campaign_retrieve_response.rb +0 -328
  297. data/lib/whop_sdk/models/ad_campaign_unpause_response.rb +0 -328
  298. data/lib/whop_sdk/models/ad_campaign_update_response.rb +0 -328
  299. data/lib/whop_sdk/models/ad_group_retrieve_response.rb +0 -140
  300. data/lib/whop_sdk/models/ad_group_update_response.rb +0 -140
  301. data/rbi/whop_sdk/models/ad_campaign_retrieve_response.rbi +0 -679
  302. data/rbi/whop_sdk/models/ad_campaign_unpause_response.rbi +0 -675
  303. data/rbi/whop_sdk/models/ad_campaign_update_response.rbi +0 -670
  304. data/rbi/whop_sdk/models/ad_group_retrieve_response.rbi +0 -277
  305. data/rbi/whop_sdk/models/ad_group_update_response.rbi +0 -274
  306. data/rbi/whop_sdk/models/ad_retrieve_response.rbi +0 -245
  307. data/sig/whop_sdk/models/ad_campaign_pause_response.rbs +0 -232
  308. data/sig/whop_sdk/models/ad_campaign_retrieve_response.rbs +0 -232
  309. data/sig/whop_sdk/models/ad_campaign_unpause_response.rbs +0 -232
  310. data/sig/whop_sdk/models/ad_campaign_update_response.rbs +0 -232
  311. data/sig/whop_sdk/models/ad_group_retrieve_response.rbs +0 -108
  312. data/sig/whop_sdk/models/ad_group_update_response.rbs +0 -108
  313. data/sig/whop_sdk/models/ad_retrieve_response.rbs +0 -102
@@ -11,14 +11,29 @@ module WhopSDK
11
11
  )
12
12
  end
13
13
 
14
- # Per-day breakdown over the date range, ordered ascending. Null when
15
- # `includeDaily` is false.
14
+ # Per-entity rows over the date range. `null` when the `breakdown` arg on
15
+ # `adReport` is omitted; otherwise contains one row per ad campaign, ad group, or
16
+ # ad inside the requested scope at the requested level.
16
17
  sig do
17
18
  returns(
18
- T.nilable(T::Array[WhopSDK::Models::AdReportRetrieveResponse::Daily])
19
+ T.nilable(
20
+ T::Array[WhopSDK::Models::AdReportRetrieveResponse::Breakdown]
21
+ )
22
+ )
23
+ end
24
+ attr_accessor :breakdown
25
+
26
+ # Per-bucket time series over the date range, ordered ascending by `bucketStart`.
27
+ # `null` when the `granularity` arg on `adReport` is omitted; otherwise contains
28
+ # rows at the requested grain (`daily` or `hourly`).
29
+ sig do
30
+ returns(
31
+ T.nilable(
32
+ T::Array[WhopSDK::Models::AdReportRetrieveResponse::Granularity]
33
+ )
19
34
  )
20
35
  end
21
- attr_accessor :daily
36
+ attr_accessor :granularity
22
37
 
23
38
  # Aggregate totals and rates over the date range.
24
39
  sig { returns(WhopSDK::Models::AdReportRetrieveResponse::Summary) }
@@ -31,21 +46,35 @@ module WhopSDK
31
46
  end
32
47
  attr_writer :summary
33
48
 
34
- # An ads performance report. Returns a summary; daily breakdown is included when
35
- # `includeDaily` is true.
49
+ # An ads performance report. Always returns a summary. The `granularity` field
50
+ # contains a per-bucket time series when the `granularity` arg is set; the
51
+ # `breakdown` field contains per-entity rows when the `breakdown` arg is set.
36
52
  sig do
37
53
  params(
38
- daily:
54
+ breakdown:
39
55
  T.nilable(
40
- T::Array[WhopSDK::Models::AdReportRetrieveResponse::Daily::OrHash]
56
+ T::Array[
57
+ WhopSDK::Models::AdReportRetrieveResponse::Breakdown::OrHash
58
+ ]
59
+ ),
60
+ granularity:
61
+ T.nilable(
62
+ T::Array[
63
+ WhopSDK::Models::AdReportRetrieveResponse::Granularity::OrHash
64
+ ]
41
65
  ),
42
66
  summary: WhopSDK::Models::AdReportRetrieveResponse::Summary::OrHash
43
67
  ).returns(T.attached_class)
44
68
  end
45
69
  def self.new(
46
- # Per-day breakdown over the date range, ordered ascending. Null when
47
- # `includeDaily` is false.
48
- daily:,
70
+ # Per-entity rows over the date range. `null` when the `breakdown` arg on
71
+ # `adReport` is omitted; otherwise contains one row per ad campaign, ad group, or
72
+ # ad inside the requested scope at the requested level.
73
+ breakdown:,
74
+ # Per-bucket time series over the date range, ordered ascending by `bucketStart`.
75
+ # `null` when the `granularity` arg on `adReport` is omitted; otherwise contains
76
+ # rows at the requested grain (`daily` or `hourly`).
77
+ granularity:,
49
78
  # Aggregate totals and rates over the date range.
50
79
  summary:
51
80
  )
@@ -54,9 +83,13 @@ module WhopSDK
54
83
  sig do
55
84
  override.returns(
56
85
  {
57
- daily:
86
+ breakdown:
87
+ T.nilable(
88
+ T::Array[WhopSDK::Models::AdReportRetrieveResponse::Breakdown]
89
+ ),
90
+ granularity:
58
91
  T.nilable(
59
- T::Array[WhopSDK::Models::AdReportRetrieveResponse::Daily]
92
+ T::Array[WhopSDK::Models::AdReportRetrieveResponse::Granularity]
60
93
  ),
61
94
  summary: WhopSDK::Models::AdReportRetrieveResponse::Summary
62
95
  }
@@ -65,46 +98,483 @@ module WhopSDK
65
98
  def to_hash
66
99
  end
67
100
 
68
- class Daily < WhopSDK::Internal::Type::BaseModel
101
+ class Breakdown < WhopSDK::Internal::Type::BaseModel
102
+ OrHash =
103
+ T.type_alias do
104
+ T.any(
105
+ WhopSDK::Models::AdReportRetrieveResponse::Breakdown,
106
+ WhopSDK::Internal::AnyHash
107
+ )
108
+ end
109
+
110
+ # Tag of the entity (ad campaign, ad group, or ad).
111
+ sig { returns(String) }
112
+ attr_accessor :id
113
+
114
+ # Per-bucket time series for this entity over the date range, ordered ascending by
115
+ # `bucketStart`. `null` when the `granularity` arg on `adReport` is omitted;
116
+ # otherwise contains rows at the requested grain (`daily` or `hourly`).
117
+ sig do
118
+ returns(
119
+ T.nilable(
120
+ T::Array[
121
+ WhopSDK::Models::AdReportRetrieveResponse::Breakdown::Granularity
122
+ ]
123
+ )
124
+ )
125
+ end
126
+ attr_accessor :granularity
127
+
128
+ # The entity level of this row — matches the `breakdown` arg.
129
+ sig do
130
+ returns(
131
+ WhopSDK::Models::AdReportRetrieveResponse::Breakdown::Level::TaggedSymbol
132
+ )
133
+ end
134
+ attr_accessor :level
135
+
136
+ # Display name of the entity, when available.
137
+ sig { returns(T.nilable(String)) }
138
+ attr_accessor :name
139
+
140
+ # Aggregate totals and rates for this entity over the date range.
141
+ sig do
142
+ returns(WhopSDK::Models::AdReportRetrieveResponse::Breakdown::Summary)
143
+ end
144
+ attr_reader :summary
145
+
146
+ sig do
147
+ params(
148
+ summary:
149
+ WhopSDK::Models::AdReportRetrieveResponse::Breakdown::Summary::OrHash
150
+ ).void
151
+ end
152
+ attr_writer :summary
153
+
154
+ # Per-entity ad performance row. Returned when the `breakdown` arg on `adReport`
155
+ # is set.
156
+ sig do
157
+ params(
158
+ id: String,
159
+ granularity:
160
+ T.nilable(
161
+ T::Array[
162
+ WhopSDK::Models::AdReportRetrieveResponse::Breakdown::Granularity::OrHash
163
+ ]
164
+ ),
165
+ level:
166
+ WhopSDK::Models::AdReportRetrieveResponse::Breakdown::Level::OrSymbol,
167
+ name: T.nilable(String),
168
+ summary:
169
+ WhopSDK::Models::AdReportRetrieveResponse::Breakdown::Summary::OrHash
170
+ ).returns(T.attached_class)
171
+ end
172
+ def self.new(
173
+ # Tag of the entity (ad campaign, ad group, or ad).
174
+ id:,
175
+ # Per-bucket time series for this entity over the date range, ordered ascending by
176
+ # `bucketStart`. `null` when the `granularity` arg on `adReport` is omitted;
177
+ # otherwise contains rows at the requested grain (`daily` or `hourly`).
178
+ granularity:,
179
+ # The entity level of this row — matches the `breakdown` arg.
180
+ level:,
181
+ # Display name of the entity, when available.
182
+ name:,
183
+ # Aggregate totals and rates for this entity over the date range.
184
+ summary:
185
+ )
186
+ end
187
+
188
+ sig do
189
+ override.returns(
190
+ {
191
+ id: String,
192
+ granularity:
193
+ T.nilable(
194
+ T::Array[
195
+ WhopSDK::Models::AdReportRetrieveResponse::Breakdown::Granularity
196
+ ]
197
+ ),
198
+ level:
199
+ WhopSDK::Models::AdReportRetrieveResponse::Breakdown::Level::TaggedSymbol,
200
+ name: T.nilable(String),
201
+ summary:
202
+ WhopSDK::Models::AdReportRetrieveResponse::Breakdown::Summary
203
+ }
204
+ )
205
+ end
206
+ def to_hash
207
+ end
208
+
209
+ class Granularity < WhopSDK::Internal::Type::BaseModel
210
+ OrHash =
211
+ T.type_alias do
212
+ T.any(
213
+ WhopSDK::Models::AdReportRetrieveResponse::Breakdown::Granularity,
214
+ WhopSDK::Internal::AnyHash
215
+ )
216
+ end
217
+
218
+ # The bucket's start time as a real UTC instant. `(statDate, statHour)` resolved
219
+ # in the ad account's reporting timezone — render this in the viewer's local
220
+ # timezone.
221
+ sig { returns(Time) }
222
+ attr_accessor :bucket_start
223
+
224
+ # Clicks in this bucket.
225
+ sig { returns(Integer) }
226
+ attr_accessor :clicks
227
+
228
+ # The bucket size of this row (`daily` or `hourly`).
229
+ sig { returns(WhopSDK::Granularities::TaggedSymbol) }
230
+ attr_accessor :granularity
231
+
232
+ # Impressions in this bucket.
233
+ sig { returns(Integer) }
234
+ attr_accessor :impressions
235
+
236
+ # Unique users reached in this bucket. Always `0` for hourly rows (Meta does not
237
+ # return reach at hourly grain).
238
+ sig { returns(Integer) }
239
+ attr_accessor :reach
240
+
241
+ # Count of the primary optimization result in this bucket.
242
+ sig { returns(T.nilable(Integer)) }
243
+ attr_accessor :result_count
244
+
245
+ # Types of optimization results tracked from external ad platforms
246
+ sig { returns(T.nilable(WhopSDK::ResultLabelKeys::TaggedSymbol)) }
247
+ attr_accessor :result_label_key
248
+
249
+ # Advertiser-defined label for the result when `resultLabelKey` is `custom`.
250
+ sig { returns(T.nilable(String)) }
251
+ attr_accessor :result_label_override
252
+
253
+ # Charged spend in this bucket in the requested reporting currency — the amount
254
+ # billed including platform fees, not the platform-side net spend.
255
+ sig { returns(Float) }
256
+ attr_accessor :spend
257
+
258
+ # Currency of the `spend` value.
259
+ sig { returns(WhopSDK::Currency::TaggedSymbol) }
260
+ attr_accessor :spend_currency
261
+
262
+ # The date these stats cover (midnight UTC). For hourly rows, see `statHour` and
263
+ # `bucketStart`.
264
+ sig { returns(Time) }
265
+ attr_accessor :stat_date
266
+
267
+ # Hour of the day in the ad account's reporting timezone (0-23). `null` for daily
268
+ # rows.
269
+ sig { returns(T.nilable(Integer)) }
270
+ attr_accessor :stat_hour
271
+
272
+ # Per-bucket ad performance for an ad campaign, ad group, or ad. Bucket grain is
273
+ # set by the `ad_report` query's `granularity` argument.
274
+ sig do
275
+ params(
276
+ bucket_start: Time,
277
+ clicks: Integer,
278
+ granularity: WhopSDK::Granularities::OrSymbol,
279
+ impressions: Integer,
280
+ reach: Integer,
281
+ result_count: T.nilable(Integer),
282
+ result_label_key: T.nilable(WhopSDK::ResultLabelKeys::OrSymbol),
283
+ result_label_override: T.nilable(String),
284
+ spend: Float,
285
+ spend_currency: WhopSDK::Currency::OrSymbol,
286
+ stat_date: Time,
287
+ stat_hour: T.nilable(Integer)
288
+ ).returns(T.attached_class)
289
+ end
290
+ def self.new(
291
+ # The bucket's start time as a real UTC instant. `(statDate, statHour)` resolved
292
+ # in the ad account's reporting timezone — render this in the viewer's local
293
+ # timezone.
294
+ bucket_start:,
295
+ # Clicks in this bucket.
296
+ clicks:,
297
+ # The bucket size of this row (`daily` or `hourly`).
298
+ granularity:,
299
+ # Impressions in this bucket.
300
+ impressions:,
301
+ # Unique users reached in this bucket. Always `0` for hourly rows (Meta does not
302
+ # return reach at hourly grain).
303
+ reach:,
304
+ # Count of the primary optimization result in this bucket.
305
+ result_count:,
306
+ # Types of optimization results tracked from external ad platforms
307
+ result_label_key:,
308
+ # Advertiser-defined label for the result when `resultLabelKey` is `custom`.
309
+ result_label_override:,
310
+ # Charged spend in this bucket in the requested reporting currency — the amount
311
+ # billed including platform fees, not the platform-side net spend.
312
+ spend:,
313
+ # Currency of the `spend` value.
314
+ spend_currency:,
315
+ # The date these stats cover (midnight UTC). For hourly rows, see `statHour` and
316
+ # `bucketStart`.
317
+ stat_date:,
318
+ # Hour of the day in the ad account's reporting timezone (0-23). `null` for daily
319
+ # rows.
320
+ stat_hour:
321
+ )
322
+ end
323
+
324
+ sig do
325
+ override.returns(
326
+ {
327
+ bucket_start: Time,
328
+ clicks: Integer,
329
+ granularity: WhopSDK::Granularities::TaggedSymbol,
330
+ impressions: Integer,
331
+ reach: Integer,
332
+ result_count: T.nilable(Integer),
333
+ result_label_key:
334
+ T.nilable(WhopSDK::ResultLabelKeys::TaggedSymbol),
335
+ result_label_override: T.nilable(String),
336
+ spend: Float,
337
+ spend_currency: WhopSDK::Currency::TaggedSymbol,
338
+ stat_date: Time,
339
+ stat_hour: T.nilable(Integer)
340
+ }
341
+ )
342
+ end
343
+ def to_hash
344
+ end
345
+ end
346
+
347
+ # The entity level of this row — matches the `breakdown` arg.
348
+ module Level
349
+ extend WhopSDK::Internal::Type::Enum
350
+
351
+ TaggedSymbol =
352
+ T.type_alias do
353
+ T.all(
354
+ Symbol,
355
+ WhopSDK::Models::AdReportRetrieveResponse::Breakdown::Level
356
+ )
357
+ end
358
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
359
+
360
+ CAMPAIGN =
361
+ T.let(
362
+ :campaign,
363
+ WhopSDK::Models::AdReportRetrieveResponse::Breakdown::Level::TaggedSymbol
364
+ )
365
+ AD_GROUP =
366
+ T.let(
367
+ :ad_group,
368
+ WhopSDK::Models::AdReportRetrieveResponse::Breakdown::Level::TaggedSymbol
369
+ )
370
+ AD =
371
+ T.let(
372
+ :ad,
373
+ WhopSDK::Models::AdReportRetrieveResponse::Breakdown::Level::TaggedSymbol
374
+ )
375
+
376
+ sig do
377
+ override.returns(
378
+ T::Array[
379
+ WhopSDK::Models::AdReportRetrieveResponse::Breakdown::Level::TaggedSymbol
380
+ ]
381
+ )
382
+ end
383
+ def self.values
384
+ end
385
+ end
386
+
387
+ class Summary < WhopSDK::Internal::Type::BaseModel
388
+ OrHash =
389
+ T.type_alias do
390
+ T.any(
391
+ WhopSDK::Models::AdReportRetrieveResponse::Breakdown::Summary,
392
+ WhopSDK::Internal::AnyHash
393
+ )
394
+ end
395
+
396
+ # Total clicks over the date range.
397
+ sig { returns(Integer) }
398
+ attr_accessor :clicks
399
+
400
+ # Spend divided by `resultCount`. Null when there are no results.
401
+ sig { returns(T.nilable(Float)) }
402
+ attr_accessor :cost_per_result
403
+
404
+ # Cost per click in the requested reporting currency.
405
+ sig { returns(Float) }
406
+ attr_accessor :cpc
407
+
408
+ # Cost per thousand impressions in the requested reporting currency.
409
+ sig { returns(T.nilable(Float)) }
410
+ attr_accessor :cpm
411
+
412
+ # Click-through rate (clicks / impressions).
413
+ sig { returns(Float) }
414
+ attr_accessor :ctr
415
+
416
+ # Average number of times each reached user saw an ad.
417
+ sig { returns(T.nilable(Float)) }
418
+ attr_accessor :frequency
419
+
420
+ # Total impressions over the date range.
421
+ sig { returns(Integer) }
422
+ attr_accessor :impressions
423
+
424
+ # Unique users reached, deduplicated by the external ad platform.
425
+ sig { returns(Integer) }
426
+ attr_accessor :reach
427
+
428
+ # Count of the campaign's primary optimization result (purchases, clicks, etc.) —
429
+ # see `resultLabelKey`.
430
+ sig { returns(T.nilable(Integer)) }
431
+ attr_accessor :result_count
432
+
433
+ # Types of optimization results tracked from external ad platforms
434
+ sig { returns(T.nilable(WhopSDK::ResultLabelKeys::TaggedSymbol)) }
435
+ attr_accessor :result_label_key
436
+
437
+ # Advertiser-defined label for the result when `resultLabelKey` is `custom`.
438
+ sig { returns(T.nilable(String)) }
439
+ attr_accessor :result_label_override
440
+
441
+ # Alias for `purchaseRoas` — return on ad spend for purchases, as reported by the
442
+ # external ad platform.
443
+ sig { returns(T.nilable(Float)) }
444
+ attr_accessor :roas
445
+
446
+ # Total spend over the date range in the requested reporting currency.
447
+ sig { returns(Float) }
448
+ attr_accessor :spend
449
+
450
+ # The available currencies on the platform
451
+ sig { returns(T.nilable(WhopSDK::Currency::TaggedSymbol)) }
452
+ attr_accessor :spend_currency
453
+
454
+ # Aggregate totals and rates for this entity over the date range.
455
+ sig do
456
+ params(
457
+ clicks: Integer,
458
+ cost_per_result: T.nilable(Float),
459
+ cpc: Float,
460
+ cpm: T.nilable(Float),
461
+ ctr: Float,
462
+ frequency: T.nilable(Float),
463
+ impressions: Integer,
464
+ reach: Integer,
465
+ result_count: T.nilable(Integer),
466
+ result_label_key: T.nilable(WhopSDK::ResultLabelKeys::OrSymbol),
467
+ result_label_override: T.nilable(String),
468
+ roas: T.nilable(Float),
469
+ spend: Float,
470
+ spend_currency: T.nilable(WhopSDK::Currency::OrSymbol)
471
+ ).returns(T.attached_class)
472
+ end
473
+ def self.new(
474
+ # Total clicks over the date range.
475
+ clicks:,
476
+ # Spend divided by `resultCount`. Null when there are no results.
477
+ cost_per_result:,
478
+ # Cost per click in the requested reporting currency.
479
+ cpc:,
480
+ # Cost per thousand impressions in the requested reporting currency.
481
+ cpm:,
482
+ # Click-through rate (clicks / impressions).
483
+ ctr:,
484
+ # Average number of times each reached user saw an ad.
485
+ frequency:,
486
+ # Total impressions over the date range.
487
+ impressions:,
488
+ # Unique users reached, deduplicated by the external ad platform.
489
+ reach:,
490
+ # Count of the campaign's primary optimization result (purchases, clicks, etc.) —
491
+ # see `resultLabelKey`.
492
+ result_count:,
493
+ # Types of optimization results tracked from external ad platforms
494
+ result_label_key:,
495
+ # Advertiser-defined label for the result when `resultLabelKey` is `custom`.
496
+ result_label_override:,
497
+ # Alias for `purchaseRoas` — return on ad spend for purchases, as reported by the
498
+ # external ad platform.
499
+ roas:,
500
+ # Total spend over the date range in the requested reporting currency.
501
+ spend:,
502
+ # The available currencies on the platform
503
+ spend_currency:
504
+ )
505
+ end
506
+
507
+ sig do
508
+ override.returns(
509
+ {
510
+ clicks: Integer,
511
+ cost_per_result: T.nilable(Float),
512
+ cpc: Float,
513
+ cpm: T.nilable(Float),
514
+ ctr: Float,
515
+ frequency: T.nilable(Float),
516
+ impressions: Integer,
517
+ reach: Integer,
518
+ result_count: T.nilable(Integer),
519
+ result_label_key:
520
+ T.nilable(WhopSDK::ResultLabelKeys::TaggedSymbol),
521
+ result_label_override: T.nilable(String),
522
+ roas: T.nilable(Float),
523
+ spend: Float,
524
+ spend_currency: T.nilable(WhopSDK::Currency::TaggedSymbol)
525
+ }
526
+ )
527
+ end
528
+ def to_hash
529
+ end
530
+ end
531
+ end
532
+
533
+ class Granularity < WhopSDK::Internal::Type::BaseModel
69
534
  OrHash =
70
535
  T.type_alias do
71
536
  T.any(
72
- WhopSDK::Models::AdReportRetrieveResponse::Daily,
537
+ WhopSDK::Models::AdReportRetrieveResponse::Granularity,
73
538
  WhopSDK::Internal::AnyHash
74
539
  )
75
540
  end
76
541
 
77
- # Clicks on this date.
542
+ # The bucket's start time as a real UTC instant. `(statDate, statHour)` resolved
543
+ # in the ad account's reporting timezone — render this in the viewer's local
544
+ # timezone.
545
+ sig { returns(Time) }
546
+ attr_accessor :bucket_start
547
+
548
+ # Clicks in this bucket.
78
549
  sig { returns(Integer) }
79
550
  attr_accessor :clicks
80
551
 
81
- # Impressions on this date.
552
+ # The bucket size of this row (`daily` or `hourly`).
553
+ sig { returns(WhopSDK::Granularities::TaggedSymbol) }
554
+ attr_accessor :granularity
555
+
556
+ # Impressions in this bucket.
82
557
  sig { returns(Integer) }
83
558
  attr_accessor :impressions
84
559
 
85
- # Unique users reached on this date.
560
+ # Unique users reached in this bucket. Always `0` for hourly rows (Meta does not
561
+ # return reach at hourly grain).
86
562
  sig { returns(Integer) }
87
563
  attr_accessor :reach
88
564
 
89
- # Count of the primary optimization result on this date.
565
+ # Count of the primary optimization result in this bucket.
90
566
  sig { returns(T.nilable(Integer)) }
91
567
  attr_accessor :result_count
92
568
 
93
569
  # Types of optimization results tracked from external ad platforms
94
- sig do
95
- returns(
96
- T.nilable(
97
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
98
- )
99
- )
100
- end
570
+ sig { returns(T.nilable(WhopSDK::ResultLabelKeys::TaggedSymbol)) }
101
571
  attr_accessor :result_label_key
102
572
 
103
573
  # Advertiser-defined label for the result when `resultLabelKey` is `custom`.
104
574
  sig { returns(T.nilable(String)) }
105
575
  attr_accessor :result_label_override
106
576
 
107
- # Charged spend on this date in the requested reporting currency — the amount
577
+ # Charged spend in this bucket in the requested reporting currency — the amount
108
578
  # billed including platform fees, not the platform-side net spend.
109
579
  sig { returns(Float) }
110
580
  attr_accessor :spend
@@ -113,215 +583,89 @@ module WhopSDK
113
583
  sig { returns(WhopSDK::Currency::TaggedSymbol) }
114
584
  attr_accessor :spend_currency
115
585
 
116
- # The date these stats cover (midnight UTC).
586
+ # The date these stats cover (midnight UTC). For hourly rows, see `statHour` and
587
+ # `bucketStart`.
117
588
  sig { returns(Time) }
118
589
  attr_accessor :stat_date
119
590
 
120
- # Per-day ad performance for an ad campaign, ad group, or ad.
591
+ # Hour of the day in the ad account's reporting timezone (0-23). `null` for daily
592
+ # rows.
593
+ sig { returns(T.nilable(Integer)) }
594
+ attr_accessor :stat_hour
595
+
596
+ # Per-bucket ad performance for an ad campaign, ad group, or ad. Bucket grain is
597
+ # set by the `ad_report` query's `granularity` argument.
121
598
  sig do
122
599
  params(
600
+ bucket_start: Time,
123
601
  clicks: Integer,
602
+ granularity: WhopSDK::Granularities::OrSymbol,
124
603
  impressions: Integer,
125
604
  reach: Integer,
126
605
  result_count: T.nilable(Integer),
127
- result_label_key:
128
- T.nilable(
129
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::OrSymbol
130
- ),
606
+ result_label_key: T.nilable(WhopSDK::ResultLabelKeys::OrSymbol),
131
607
  result_label_override: T.nilable(String),
132
608
  spend: Float,
133
609
  spend_currency: WhopSDK::Currency::OrSymbol,
134
- stat_date: Time
610
+ stat_date: Time,
611
+ stat_hour: T.nilable(Integer)
135
612
  ).returns(T.attached_class)
136
613
  end
137
614
  def self.new(
138
- # Clicks on this date.
615
+ # The bucket's start time as a real UTC instant. `(statDate, statHour)` resolved
616
+ # in the ad account's reporting timezone — render this in the viewer's local
617
+ # timezone.
618
+ bucket_start:,
619
+ # Clicks in this bucket.
139
620
  clicks:,
140
- # Impressions on this date.
621
+ # The bucket size of this row (`daily` or `hourly`).
622
+ granularity:,
623
+ # Impressions in this bucket.
141
624
  impressions:,
142
- # Unique users reached on this date.
625
+ # Unique users reached in this bucket. Always `0` for hourly rows (Meta does not
626
+ # return reach at hourly grain).
143
627
  reach:,
144
- # Count of the primary optimization result on this date.
628
+ # Count of the primary optimization result in this bucket.
145
629
  result_count:,
146
630
  # Types of optimization results tracked from external ad platforms
147
631
  result_label_key:,
148
632
  # Advertiser-defined label for the result when `resultLabelKey` is `custom`.
149
633
  result_label_override:,
150
- # Charged spend on this date in the requested reporting currency — the amount
634
+ # Charged spend in this bucket in the requested reporting currency — the amount
151
635
  # billed including platform fees, not the platform-side net spend.
152
636
  spend:,
153
637
  # Currency of the `spend` value.
154
638
  spend_currency:,
155
- # The date these stats cover (midnight UTC).
156
- stat_date:
639
+ # The date these stats cover (midnight UTC). For hourly rows, see `statHour` and
640
+ # `bucketStart`.
641
+ stat_date:,
642
+ # Hour of the day in the ad account's reporting timezone (0-23). `null` for daily
643
+ # rows.
644
+ stat_hour:
157
645
  )
158
646
  end
159
647
 
160
648
  sig do
161
649
  override.returns(
162
650
  {
651
+ bucket_start: Time,
163
652
  clicks: Integer,
653
+ granularity: WhopSDK::Granularities::TaggedSymbol,
164
654
  impressions: Integer,
165
655
  reach: Integer,
166
656
  result_count: T.nilable(Integer),
167
657
  result_label_key:
168
- T.nilable(
169
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
170
- ),
658
+ T.nilable(WhopSDK::ResultLabelKeys::TaggedSymbol),
171
659
  result_label_override: T.nilable(String),
172
660
  spend: Float,
173
661
  spend_currency: WhopSDK::Currency::TaggedSymbol,
174
- stat_date: Time
662
+ stat_date: Time,
663
+ stat_hour: T.nilable(Integer)
175
664
  }
176
665
  )
177
666
  end
178
667
  def to_hash
179
668
  end
180
-
181
- # Types of optimization results tracked from external ad platforms
182
- module ResultLabelKey
183
- extend WhopSDK::Internal::Type::Enum
184
-
185
- TaggedSymbol =
186
- T.type_alias do
187
- T.all(
188
- Symbol,
189
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey
190
- )
191
- end
192
- OrSymbol = T.type_alias { T.any(Symbol, String) }
193
-
194
- APP_INSTALLS =
195
- T.let(
196
- :app_installs,
197
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
198
- )
199
- MESSAGING_CONVERSATIONS_STARTED =
200
- T.let(
201
- :messaging_conversations_started,
202
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
203
- )
204
- POST_ENGAGEMENT =
205
- T.let(
206
- :post_engagement,
207
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
208
- )
209
- EVENT_RESPONSES =
210
- T.let(
211
- :event_responses,
212
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
213
- )
214
- IMPRESSIONS =
215
- T.let(
216
- :impressions,
217
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
218
- )
219
- WEBSITE_PURCHASES =
220
- T.let(
221
- :website_purchases,
222
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
223
- )
224
- LANDING_PAGE_VIEWS =
225
- T.let(
226
- :landing_page_views,
227
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
228
- )
229
- LEADS =
230
- T.let(
231
- :leads,
232
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
233
- )
234
- LINK_CLICKS =
235
- T.let(
236
- :link_clicks,
237
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
238
- )
239
- QUALITY_CALLS =
240
- T.let(
241
- :quality_calls,
242
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
243
- )
244
- APPOINTMENTS_BOOKED =
245
- T.let(
246
- :appointments_booked,
247
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
248
- )
249
- MESSAGING_PURCHASES =
250
- T.let(
251
- :messaging_purchases,
252
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
253
- )
254
- PAGE_LIKES =
255
- T.let(
256
- :page_likes,
257
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
258
- )
259
- INSTAGRAM_PROFILE_VISITS =
260
- T.let(
261
- :instagram_profile_visits,
262
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
263
- )
264
- REACH =
265
- T.let(
266
- :reach,
267
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
268
- )
269
- REMINDERS_SET =
270
- T.let(
271
- :reminders_set,
272
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
273
- )
274
- NEW_SUBSCRIBERS =
275
- T.let(
276
- :new_subscribers,
277
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
278
- )
279
- VIDEO_VIEWS =
280
- T.let(
281
- :video_views,
282
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
283
- )
284
- REGISTRATIONS =
285
- T.let(
286
- :registrations,
287
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
288
- )
289
- CONTENT_VIEWS =
290
- T.let(
291
- :content_views,
292
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
293
- )
294
- SEARCHES =
295
- T.let(
296
- :searches,
297
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
298
- )
299
- WEBSITE_SCHEDULES =
300
- T.let(
301
- :website_schedules,
302
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
303
- )
304
- WEBSITE_SUBMIT_APPLICATIONS =
305
- T.let(
306
- :website_submit_applications,
307
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
308
- )
309
- CUSTOM =
310
- T.let(
311
- :custom,
312
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
313
- )
314
-
315
- sig do
316
- override.returns(
317
- T::Array[
318
- WhopSDK::Models::AdReportRetrieveResponse::Daily::ResultLabelKey::TaggedSymbol
319
- ]
320
- )
321
- end
322
- def self.values
323
- end
324
- end
325
669
  end
326
670
 
327
671
  class Summary < WhopSDK::Internal::Type::BaseModel
@@ -371,13 +715,7 @@ module WhopSDK
371
715
  attr_accessor :result_count
372
716
 
373
717
  # Types of optimization results tracked from external ad platforms
374
- sig do
375
- returns(
376
- T.nilable(
377
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
378
- )
379
- )
380
- end
718
+ sig { returns(T.nilable(WhopSDK::ResultLabelKeys::TaggedSymbol)) }
381
719
  attr_accessor :result_label_key
382
720
 
383
721
  # Advertiser-defined label for the result when `resultLabelKey` is `custom`.
@@ -409,10 +747,7 @@ module WhopSDK
409
747
  impressions: Integer,
410
748
  reach: Integer,
411
749
  result_count: T.nilable(Integer),
412
- result_label_key:
413
- T.nilable(
414
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::OrSymbol
415
- ),
750
+ result_label_key: T.nilable(WhopSDK::ResultLabelKeys::OrSymbol),
416
751
  result_label_override: T.nilable(String),
417
752
  roas: T.nilable(Float),
418
753
  spend: Float,
@@ -466,9 +801,7 @@ module WhopSDK
466
801
  reach: Integer,
467
802
  result_count: T.nilable(Integer),
468
803
  result_label_key:
469
- T.nilable(
470
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
471
- ),
804
+ T.nilable(WhopSDK::ResultLabelKeys::TaggedSymbol),
472
805
  result_label_override: T.nilable(String),
473
806
  roas: T.nilable(Float),
474
807
  spend: Float,
@@ -478,151 +811,6 @@ module WhopSDK
478
811
  end
479
812
  def to_hash
480
813
  end
481
-
482
- # Types of optimization results tracked from external ad platforms
483
- module ResultLabelKey
484
- extend WhopSDK::Internal::Type::Enum
485
-
486
- TaggedSymbol =
487
- T.type_alias do
488
- T.all(
489
- Symbol,
490
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey
491
- )
492
- end
493
- OrSymbol = T.type_alias { T.any(Symbol, String) }
494
-
495
- APP_INSTALLS =
496
- T.let(
497
- :app_installs,
498
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
499
- )
500
- MESSAGING_CONVERSATIONS_STARTED =
501
- T.let(
502
- :messaging_conversations_started,
503
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
504
- )
505
- POST_ENGAGEMENT =
506
- T.let(
507
- :post_engagement,
508
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
509
- )
510
- EVENT_RESPONSES =
511
- T.let(
512
- :event_responses,
513
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
514
- )
515
- IMPRESSIONS =
516
- T.let(
517
- :impressions,
518
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
519
- )
520
- WEBSITE_PURCHASES =
521
- T.let(
522
- :website_purchases,
523
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
524
- )
525
- LANDING_PAGE_VIEWS =
526
- T.let(
527
- :landing_page_views,
528
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
529
- )
530
- LEADS =
531
- T.let(
532
- :leads,
533
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
534
- )
535
- LINK_CLICKS =
536
- T.let(
537
- :link_clicks,
538
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
539
- )
540
- QUALITY_CALLS =
541
- T.let(
542
- :quality_calls,
543
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
544
- )
545
- APPOINTMENTS_BOOKED =
546
- T.let(
547
- :appointments_booked,
548
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
549
- )
550
- MESSAGING_PURCHASES =
551
- T.let(
552
- :messaging_purchases,
553
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
554
- )
555
- PAGE_LIKES =
556
- T.let(
557
- :page_likes,
558
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
559
- )
560
- INSTAGRAM_PROFILE_VISITS =
561
- T.let(
562
- :instagram_profile_visits,
563
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
564
- )
565
- REACH =
566
- T.let(
567
- :reach,
568
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
569
- )
570
- REMINDERS_SET =
571
- T.let(
572
- :reminders_set,
573
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
574
- )
575
- NEW_SUBSCRIBERS =
576
- T.let(
577
- :new_subscribers,
578
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
579
- )
580
- VIDEO_VIEWS =
581
- T.let(
582
- :video_views,
583
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
584
- )
585
- REGISTRATIONS =
586
- T.let(
587
- :registrations,
588
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
589
- )
590
- CONTENT_VIEWS =
591
- T.let(
592
- :content_views,
593
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
594
- )
595
- SEARCHES =
596
- T.let(
597
- :searches,
598
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
599
- )
600
- WEBSITE_SCHEDULES =
601
- T.let(
602
- :website_schedules,
603
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
604
- )
605
- WEBSITE_SUBMIT_APPLICATIONS =
606
- T.let(
607
- :website_submit_applications,
608
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
609
- )
610
- CUSTOM =
611
- T.let(
612
- :custom,
613
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
614
- )
615
-
616
- sig do
617
- override.returns(
618
- T::Array[
619
- WhopSDK::Models::AdReportRetrieveResponse::Summary::ResultLabelKey::TaggedSymbol
620
- ]
621
- )
622
- end
623
- def self.values
624
- end
625
- end
626
814
  end
627
815
  end
628
816
  end