onlyfans 0.2.0 → 0.3.0

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 (338) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +315 -0
  3. data/README.md +9 -4
  4. data/lib/onlyfans/client.rb +11 -3
  5. data/lib/onlyfans/internal/transport/base_client.rb +4 -1
  6. data/lib/onlyfans/models/analytics/financial/profitability_get_history_response.rb +114 -36
  7. data/lib/onlyfans/models/analytics/financial/profitability_get_profitability_response.rb +112 -46
  8. data/lib/onlyfans/models/authenticate_start_params.rb +1 -0
  9. data/lib/onlyfans/models/chat_list_media_params.rb +6 -2
  10. data/lib/onlyfans/models/chat_list_params.rb +8 -3
  11. data/lib/onlyfans/models/chats/message_list_params.rb +6 -6
  12. data/lib/onlyfans/models/chats/message_send_params.rb +41 -6
  13. data/lib/onlyfans/models/client_session_create_params.rb +1 -0
  14. data/lib/onlyfans/models/data_export_create_params.rb +36 -21
  15. data/lib/onlyfans/models/data_export_list_params.rb +5 -0
  16. data/lib/onlyfans/models/data_export_list_response.rb +7 -1
  17. data/lib/onlyfans/models/data_export_retrieve_response.rb +7 -1
  18. data/lib/onlyfans/models/engagement/message_get_message_buyers_params.rb +2 -2
  19. data/lib/onlyfans/models/engagement/message_get_top_message_params.rb +3 -3
  20. data/lib/onlyfans/models/engagement/messages/direct_message_chart_params.rb +2 -2
  21. data/lib/onlyfans/models/engagement/messages/direct_message_list_params.rb +3 -3
  22. data/lib/onlyfans/models/engagement/messages/mass_message_chart_params.rb +2 -2
  23. data/lib/onlyfans/models/engagement/messages/mass_message_list_params.rb +3 -3
  24. data/lib/onlyfans/models/fan_list_active_params.rb +55 -13
  25. data/lib/onlyfans/models/fan_list_all_params.rb +55 -13
  26. data/lib/onlyfans/models/fan_list_expired_params.rb +55 -13
  27. data/lib/onlyfans/models/fan_list_latest_params.rb +8 -8
  28. data/lib/onlyfans/models/fan_list_top_params.rb +6 -6
  29. data/lib/onlyfans/models/fans/summary_get_summary_response.rb +49 -2
  30. data/lib/onlyfans/models/following_list_active_params.rb +79 -1
  31. data/lib/onlyfans/models/following_list_all_params.rb +79 -1
  32. data/lib/onlyfans/models/following_list_expired_params.rb +79 -1
  33. data/lib/onlyfans/models/link_tag_list_params.rb +4 -3
  34. data/lib/onlyfans/models/mass_messaging_retrieve_overview_params.rb +3 -3
  35. data/lib/onlyfans/models/mass_messaging_send_params.rb +44 -6
  36. data/lib/onlyfans/models/mass_messaging_update_params.rb +34 -6
  37. data/lib/onlyfans/models/media/upload_get_status_response.rb +54 -27
  38. data/lib/onlyfans/models/media/vault/list_list_params.rb +14 -1
  39. data/lib/onlyfans/models/media/vault/list_list_response.rb +420 -202
  40. data/lib/onlyfans/models/media/vault/list_update_params.rb +11 -1
  41. data/lib/onlyfans/models/media/vault_upload_params.rb +3 -1
  42. data/lib/onlyfans/models/media_upload_params.rb +3 -1
  43. data/lib/onlyfans/models/notification_list_params.rb +3 -3
  44. data/lib/onlyfans/models/post_create_params.rb +29 -1
  45. data/lib/onlyfans/models/post_update_params.rb +29 -1
  46. data/lib/onlyfans/models/queue_list_params.rb +36 -15
  47. data/lib/onlyfans/models/release_form_list_taggable_users_response.rb +8 -8
  48. data/lib/onlyfans/models/shared_tracking_link_list_params.rb +75 -10
  49. data/lib/onlyfans/models/shared_trial_link_list_params.rb +26 -10
  50. data/lib/onlyfans/models/smart_link_create_response.rb +2 -2
  51. data/lib/onlyfans/models/smart_link_list_clicks_response.rb +19 -1
  52. data/lib/onlyfans/models/smart_link_list_conversions_params.rb +1 -0
  53. data/lib/onlyfans/models/smart_link_list_conversions_response.rb +19 -1
  54. data/lib/onlyfans/models/smart_link_list_fans_params.rb +21 -1
  55. data/lib/onlyfans/models/smart_link_list_fans_response.rb +99 -3
  56. data/lib/onlyfans/models/smart_link_list_params.rb +27 -9
  57. data/lib/onlyfans/models/smart_link_postback_create_params.rb +66 -4
  58. data/lib/onlyfans/models/smart_link_postback_create_response.rb +48 -1
  59. data/lib/onlyfans/models/smart_link_postback_list_response.rb +48 -1
  60. data/lib/onlyfans/models/smart_link_postback_retrieve_response.rb +48 -1
  61. data/lib/onlyfans/models/smart_link_postback_update_params.rb +65 -1
  62. data/lib/onlyfans/models/smart_link_postback_update_response.rb +48 -1
  63. data/lib/onlyfans/models/statistic_calculate_total_transactions_params.rb +5 -5
  64. data/lib/onlyfans/models/statistic_get_subscriber_metrics_params.rb +25 -1
  65. data/lib/onlyfans/models/statistics/reach_get_profile_visitors_params.rb +2 -2
  66. data/lib/onlyfans/models/statistics/statement_get_earnings_params.rb +10 -10
  67. data/lib/onlyfans/models/stored_list_tracking_links_response.rb +7 -1
  68. data/lib/onlyfans/models/stored_list_trial_links_response.rb +7 -1
  69. data/lib/onlyfans/models/story_create_params.rb +293 -6
  70. data/lib/onlyfans/models/story_create_response.rb +330 -7
  71. data/lib/onlyfans/models/tracking_link_get_stats_response.rb +7 -1
  72. data/lib/onlyfans/models/tracking_link_list_params.rb +58 -30
  73. data/lib/onlyfans/models/tracking_link_list_response.rb +7 -1
  74. data/lib/onlyfans/models/tracking_link_list_spenders_response.rb +7 -1
  75. data/lib/onlyfans/models/tracking_link_retrieve_response.rb +7 -1
  76. data/lib/onlyfans/models/transaction_list_params.rb +2 -2
  77. data/lib/onlyfans/models/trial_link_list_params.rb +44 -27
  78. data/lib/onlyfans/models/trial_link_list_response.rb +7 -1
  79. data/lib/onlyfans/models/trial_link_list_spenders_response.rb +7 -1
  80. data/lib/onlyfans/models/trial_link_retrieve_response.rb +7 -1
  81. data/lib/onlyfans/models/trial_link_retrieve_stats_response.rb +7 -1
  82. data/lib/onlyfans/models/user_list_list_params.rb +21 -1
  83. data/lib/onlyfans/models/user_lists/user_add_params.rb +18 -1
  84. data/lib/onlyfans/models/user_lists/user_add_response.rb +246 -88
  85. data/lib/onlyfans/models/webhook_create_params.rb +11 -7
  86. data/lib/onlyfans/models/webhook_update_params.rb +11 -7
  87. data/lib/onlyfans/models.rb +0 -2
  88. data/lib/onlyfans/resources/analytics/financial/profitability.rb +4 -4
  89. data/lib/onlyfans/resources/chats/messages.rb +47 -8
  90. data/lib/onlyfans/resources/chats.rb +7 -4
  91. data/lib/onlyfans/resources/data_exports.rb +1 -1
  92. data/lib/onlyfans/resources/engagement/messages/direct_messages.rb +2 -2
  93. data/lib/onlyfans/resources/engagement/messages/mass_messages.rb +2 -2
  94. data/lib/onlyfans/resources/engagement/messages.rb +2 -2
  95. data/lib/onlyfans/resources/fans.rb +43 -10
  96. data/lib/onlyfans/resources/following.rb +58 -12
  97. data/lib/onlyfans/resources/link_tags.rb +4 -4
  98. data/lib/onlyfans/resources/mass_messaging.rb +18 -9
  99. data/lib/onlyfans/resources/media/uploads.rb +6 -1
  100. data/lib/onlyfans/resources/media/vault/lists.rb +30 -5
  101. data/lib/onlyfans/resources/media.rb +14 -8
  102. data/lib/onlyfans/resources/messages.rb +0 -39
  103. data/lib/onlyfans/resources/notifications.rb +1 -1
  104. data/lib/onlyfans/resources/posts.rb +6 -2
  105. data/lib/onlyfans/resources/queue.rb +9 -6
  106. data/lib/onlyfans/resources/release_forms.rb +2 -1
  107. data/lib/onlyfans/resources/shared_tracking_links.rb +12 -5
  108. data/lib/onlyfans/resources/shared_trial_links.rb +6 -5
  109. data/lib/onlyfans/resources/smart_link_postbacks.rb +18 -3
  110. data/lib/onlyfans/resources/smart_links.rb +13 -4
  111. data/lib/onlyfans/resources/statistics/reach.rb +1 -1
  112. data/lib/onlyfans/resources/statistics/statements.rb +3 -3
  113. data/lib/onlyfans/resources/statistics.rb +5 -3
  114. data/lib/onlyfans/resources/stories.rb +13 -6
  115. data/lib/onlyfans/resources/tracking_links/tags.rb +5 -1
  116. data/lib/onlyfans/resources/tracking_links.rb +21 -11
  117. data/lib/onlyfans/resources/transactions.rb +1 -1
  118. data/lib/onlyfans/resources/trial_links/tags.rb +5 -1
  119. data/lib/onlyfans/resources/trial_links.rb +22 -10
  120. data/lib/onlyfans/resources/user_lists/users.rb +7 -2
  121. data/lib/onlyfans/resources/user_lists.rb +5 -2
  122. data/lib/onlyfans/resources/users.rb +4 -1
  123. data/lib/onlyfans/resources/webhooks.rb +6 -4
  124. data/lib/onlyfans/version.rb +1 -1
  125. data/lib/onlyfans.rb +0 -3
  126. data/rbi/onlyfans/client.rbi +11 -3
  127. data/rbi/onlyfans/models/analytics/financial/profitability_get_history_response.rbi +203 -63
  128. data/rbi/onlyfans/models/analytics/financial/profitability_get_profitability_response.rbi +201 -79
  129. data/rbi/onlyfans/models/authenticate_start_params.rbi +5 -0
  130. data/rbi/onlyfans/models/chat_list_media_params.rbi +4 -2
  131. data/rbi/onlyfans/models/chat_list_params.rbi +6 -3
  132. data/rbi/onlyfans/models/chats/message_list_params.rbi +8 -8
  133. data/rbi/onlyfans/models/chats/message_send_params.rbi +88 -6
  134. data/rbi/onlyfans/models/client_session_create_params.rbi +5 -0
  135. data/rbi/onlyfans/models/data_export_create_params.rbi +69 -37
  136. data/rbi/onlyfans/models/data_export_list_params.rbi +18 -0
  137. data/rbi/onlyfans/models/data_export_list_response.rbi +9 -0
  138. data/rbi/onlyfans/models/data_export_retrieve_response.rbi +9 -0
  139. data/rbi/onlyfans/models/engagement/message_get_message_buyers_params.rbi +2 -2
  140. data/rbi/onlyfans/models/engagement/message_get_top_message_params.rbi +4 -4
  141. data/rbi/onlyfans/models/engagement/messages/direct_message_chart_params.rbi +2 -2
  142. data/rbi/onlyfans/models/engagement/messages/direct_message_list_params.rbi +4 -4
  143. data/rbi/onlyfans/models/engagement/messages/mass_message_chart_params.rbi +2 -2
  144. data/rbi/onlyfans/models/engagement/messages/mass_message_list_params.rbi +4 -4
  145. data/rbi/onlyfans/models/fan_list_active_params.rbi +84 -13
  146. data/rbi/onlyfans/models/fan_list_all_params.rbi +84 -13
  147. data/rbi/onlyfans/models/fan_list_expired_params.rbi +84 -13
  148. data/rbi/onlyfans/models/fan_list_latest_params.rbi +10 -10
  149. data/rbi/onlyfans/models/fan_list_top_params.rbi +8 -8
  150. data/rbi/onlyfans/models/fans/summary_get_summary_response.rbi +96 -0
  151. data/rbi/onlyfans/models/following_list_active_params.rbi +160 -0
  152. data/rbi/onlyfans/models/following_list_all_params.rbi +155 -0
  153. data/rbi/onlyfans/models/following_list_expired_params.rbi +160 -0
  154. data/rbi/onlyfans/models/link_tag_list_params.rbi +5 -3
  155. data/rbi/onlyfans/models/mass_messaging_retrieve_overview_params.rbi +4 -4
  156. data/rbi/onlyfans/models/mass_messaging_send_params.rbi +91 -6
  157. data/rbi/onlyfans/models/mass_messaging_update_params.rbi +76 -6
  158. data/rbi/onlyfans/models/media/upload_get_status_response.rbi +79 -33
  159. data/rbi/onlyfans/models/media/vault/list_list_params.rbi +15 -0
  160. data/rbi/onlyfans/models/media/vault/list_list_response.rbi +972 -428
  161. data/rbi/onlyfans/models/media/vault/list_update_params.rbi +13 -1
  162. data/rbi/onlyfans/models/media/vault_upload_params.rbi +6 -2
  163. data/rbi/onlyfans/models/media_upload_params.rbi +6 -2
  164. data/rbi/onlyfans/models/notification_list_params.rbi +3 -3
  165. data/rbi/onlyfans/models/post_create_params.rbi +66 -0
  166. data/rbi/onlyfans/models/post_update_params.rbi +66 -0
  167. data/rbi/onlyfans/models/queue_list_params.rbi +59 -16
  168. data/rbi/onlyfans/models/release_form_list_taggable_users_response.rbi +12 -12
  169. data/rbi/onlyfans/models/shared_tracking_link_list_params.rbi +198 -11
  170. data/rbi/onlyfans/models/shared_trial_link_list_params.rbi +64 -11
  171. data/rbi/onlyfans/models/smart_link_create_response.rbi +6 -3
  172. data/rbi/onlyfans/models/smart_link_list_clicks_response.rbi +21 -3
  173. data/rbi/onlyfans/models/smart_link_list_conversions_params.rbi +5 -0
  174. data/rbi/onlyfans/models/smart_link_list_conversions_response.rbi +21 -3
  175. data/rbi/onlyfans/models/smart_link_list_fans_params.rbi +24 -0
  176. data/rbi/onlyfans/models/smart_link_list_fans_response.rbi +205 -3
  177. data/rbi/onlyfans/models/smart_link_list_params.rbi +45 -8
  178. data/rbi/onlyfans/models/smart_link_postback_create_params.rbi +139 -4
  179. data/rbi/onlyfans/models/smart_link_postback_create_response.rbi +96 -0
  180. data/rbi/onlyfans/models/smart_link_postback_list_response.rbi +96 -0
  181. data/rbi/onlyfans/models/smart_link_postback_retrieve_response.rbi +96 -0
  182. data/rbi/onlyfans/models/smart_link_postback_update_params.rbi +133 -0
  183. data/rbi/onlyfans/models/smart_link_postback_update_response.rbi +96 -0
  184. data/rbi/onlyfans/models/statistic_calculate_total_transactions_params.rbi +12 -6
  185. data/rbi/onlyfans/models/statistic_get_subscriber_metrics_params.rbi +63 -0
  186. data/rbi/onlyfans/models/statistics/reach_get_profile_visitors_params.rbi +2 -2
  187. data/rbi/onlyfans/models/statistics/statement_get_earnings_params.rbi +10 -13
  188. data/rbi/onlyfans/models/stored_list_tracking_links_response.rbi +9 -0
  189. data/rbi/onlyfans/models/stored_list_trial_links_response.rbi +9 -0
  190. data/rbi/onlyfans/models/story_create_params.rbi +548 -4
  191. data/rbi/onlyfans/models/story_create_response.rbi +670 -8
  192. data/rbi/onlyfans/models/tracking_link_get_stats_response.rbi +9 -0
  193. data/rbi/onlyfans/models/tracking_link_list_params.rbi +144 -45
  194. data/rbi/onlyfans/models/tracking_link_list_response.rbi +9 -0
  195. data/rbi/onlyfans/models/tracking_link_list_spenders_response.rbi +17 -5
  196. data/rbi/onlyfans/models/tracking_link_retrieve_response.rbi +9 -0
  197. data/rbi/onlyfans/models/transaction_list_params.rbi +2 -2
  198. data/rbi/onlyfans/models/trial_link_list_params.rbi +66 -33
  199. data/rbi/onlyfans/models/trial_link_list_response.rbi +9 -0
  200. data/rbi/onlyfans/models/trial_link_list_spenders_response.rbi +17 -5
  201. data/rbi/onlyfans/models/trial_link_retrieve_response.rbi +9 -0
  202. data/rbi/onlyfans/models/trial_link_retrieve_stats_response.rbi +9 -0
  203. data/rbi/onlyfans/models/user_list_list_params.rbi +33 -0
  204. data/rbi/onlyfans/models/user_lists/user_add_params.rbi +23 -0
  205. data/rbi/onlyfans/models/user_lists/user_add_response.rbi +596 -181
  206. data/rbi/onlyfans/models/webhook_create_params.rbi +16 -10
  207. data/rbi/onlyfans/models/webhook_update_params.rbi +16 -10
  208. data/rbi/onlyfans/models.rbi +0 -2
  209. data/rbi/onlyfans/resources/analytics/financial/profitability.rbi +2 -6
  210. data/rbi/onlyfans/resources/chats/messages.rbi +53 -10
  211. data/rbi/onlyfans/resources/chats.rbi +6 -5
  212. data/rbi/onlyfans/resources/data_exports.rbi +26 -17
  213. data/rbi/onlyfans/resources/engagement/messages/direct_messages.rbi +3 -3
  214. data/rbi/onlyfans/resources/engagement/messages/mass_messages.rbi +3 -3
  215. data/rbi/onlyfans/resources/engagement/messages.rbi +3 -3
  216. data/rbi/onlyfans/resources/fans.rbi +50 -17
  217. data/rbi/onlyfans/resources/following.rbi +122 -4
  218. data/rbi/onlyfans/resources/link_tags.rbi +4 -4
  219. data/rbi/onlyfans/resources/mass_messaging.rbi +32 -10
  220. data/rbi/onlyfans/resources/media/uploads.rbi +5 -0
  221. data/rbi/onlyfans/resources/media/vault/lists.rbi +28 -3
  222. data/rbi/onlyfans/resources/media/vault.rbi +3 -1
  223. data/rbi/onlyfans/resources/media.rbi +16 -7
  224. data/rbi/onlyfans/resources/messages.rbi +0 -29
  225. data/rbi/onlyfans/resources/notifications.rbi +1 -1
  226. data/rbi/onlyfans/resources/posts.rbi +14 -0
  227. data/rbi/onlyfans/resources/queue.rbi +15 -8
  228. data/rbi/onlyfans/resources/release_forms.rbi +2 -1
  229. data/rbi/onlyfans/resources/shared_tracking_links.rbi +21 -5
  230. data/rbi/onlyfans/resources/shared_trial_links.rbi +8 -5
  231. data/rbi/onlyfans/resources/smart_link_postbacks.rbi +27 -2
  232. data/rbi/onlyfans/resources/smart_links.rbi +12 -3
  233. data/rbi/onlyfans/resources/statistics/reach.rbi +1 -1
  234. data/rbi/onlyfans/resources/statistics/statements.rbi +4 -4
  235. data/rbi/onlyfans/resources/statistics.rbi +9 -2
  236. data/rbi/onlyfans/resources/stories.rbi +16 -3
  237. data/rbi/onlyfans/resources/tracking_links/tags.rbi +5 -1
  238. data/rbi/onlyfans/resources/tracking_links.rbi +30 -19
  239. data/rbi/onlyfans/resources/transactions.rbi +1 -1
  240. data/rbi/onlyfans/resources/trial_links/tags.rbi +5 -1
  241. data/rbi/onlyfans/resources/trial_links.rbi +29 -14
  242. data/rbi/onlyfans/resources/user_lists/users.rbi +10 -1
  243. data/rbi/onlyfans/resources/user_lists.rbi +6 -1
  244. data/rbi/onlyfans/resources/users.rbi +2 -1
  245. data/rbi/onlyfans/resources/webhooks.rbi +16 -10
  246. data/sig/onlyfans/models/analytics/financial/profitability_get_history_response.rbs +129 -40
  247. data/sig/onlyfans/models/analytics/financial/profitability_get_profitability_response.rbs +125 -50
  248. data/sig/onlyfans/models/authenticate_start_params.rbs +2 -1
  249. data/sig/onlyfans/models/chats/message_send_params.rbs +34 -6
  250. data/sig/onlyfans/models/client_session_create_params.rbs +2 -1
  251. data/sig/onlyfans/models/data_export_create_params.rbs +4 -0
  252. data/sig/onlyfans/models/data_export_list_params.rbs +10 -0
  253. data/sig/onlyfans/models/data_export_list_response.rbs +7 -0
  254. data/sig/onlyfans/models/data_export_retrieve_response.rbs +7 -0
  255. data/sig/onlyfans/models/fan_list_active_params.rbs +7 -0
  256. data/sig/onlyfans/models/fan_list_all_params.rbs +7 -0
  257. data/sig/onlyfans/models/fan_list_expired_params.rbs +7 -0
  258. data/sig/onlyfans/models/fans/summary_get_summary_response.rbs +53 -0
  259. data/sig/onlyfans/models/following_list_active_params.rbs +35 -1
  260. data/sig/onlyfans/models/following_list_all_params.rbs +35 -1
  261. data/sig/onlyfans/models/following_list_expired_params.rbs +35 -1
  262. data/sig/onlyfans/models/link_tag_list_params.rbs +2 -1
  263. data/sig/onlyfans/models/mass_messaging_send_params.rbs +33 -5
  264. data/sig/onlyfans/models/mass_messaging_update_params.rbs +26 -5
  265. data/sig/onlyfans/models/media/upload_get_status_response.rbs +65 -39
  266. data/sig/onlyfans/models/media/vault/list_list_params.rbs +13 -1
  267. data/sig/onlyfans/models/media/vault/list_list_response.rbs +519 -235
  268. data/sig/onlyfans/models/media/vault/list_update_params.rbs +5 -1
  269. data/sig/onlyfans/models/post_create_params.rbs +21 -0
  270. data/sig/onlyfans/models/post_update_params.rbs +21 -0
  271. data/sig/onlyfans/models/queue_list_params.rbs +28 -6
  272. data/sig/onlyfans/models/release_form_list_taggable_users_response.rbs +7 -10
  273. data/sig/onlyfans/models/shared_tracking_link_list_params.rbs +78 -4
  274. data/sig/onlyfans/models/shared_trial_link_list_params.rbs +31 -4
  275. data/sig/onlyfans/models/smart_link_create_response.rbs +6 -4
  276. data/sig/onlyfans/models/smart_link_list_clicks_response.rbs +18 -3
  277. data/sig/onlyfans/models/smart_link_list_conversions_params.rbs +2 -0
  278. data/sig/onlyfans/models/smart_link_list_conversions_response.rbs +18 -3
  279. data/sig/onlyfans/models/smart_link_list_fans_params.rbs +15 -1
  280. data/sig/onlyfans/models/smart_link_list_fans_response.rbs +125 -3
  281. data/sig/onlyfans/models/smart_link_list_params.rbs +27 -6
  282. data/sig/onlyfans/models/smart_link_postback_create_params.rbs +48 -0
  283. data/sig/onlyfans/models/smart_link_postback_create_response.rbs +53 -0
  284. data/sig/onlyfans/models/smart_link_postback_list_response.rbs +53 -0
  285. data/sig/onlyfans/models/smart_link_postback_retrieve_response.rbs +53 -0
  286. data/sig/onlyfans/models/smart_link_postback_update_params.rbs +48 -0
  287. data/sig/onlyfans/models/smart_link_postback_update_response.rbs +53 -0
  288. data/sig/onlyfans/models/statistic_calculate_total_transactions_params.rbs +8 -4
  289. data/sig/onlyfans/models/statistic_get_subscriber_metrics_params.rbs +23 -1
  290. data/sig/onlyfans/models/statistics/statement_get_earnings_params.rbs +5 -7
  291. data/sig/onlyfans/models/stored_list_tracking_links_response.rbs +7 -0
  292. data/sig/onlyfans/models/stored_list_trial_links_response.rbs +7 -0
  293. data/sig/onlyfans/models/story_create_params.rbs +271 -1
  294. data/sig/onlyfans/models/story_create_response.rbs +419 -9
  295. data/sig/onlyfans/models/tracking_link_get_stats_response.rbs +7 -0
  296. data/sig/onlyfans/models/tracking_link_list_params.rbs +75 -26
  297. data/sig/onlyfans/models/tracking_link_list_response.rbs +7 -0
  298. data/sig/onlyfans/models/tracking_link_list_spenders_response.rbs +16 -3
  299. data/sig/onlyfans/models/tracking_link_retrieve_response.rbs +7 -0
  300. data/sig/onlyfans/models/trial_link_list_params.rbs +42 -18
  301. data/sig/onlyfans/models/trial_link_list_response.rbs +7 -0
  302. data/sig/onlyfans/models/trial_link_list_spenders_response.rbs +16 -3
  303. data/sig/onlyfans/models/trial_link_retrieve_response.rbs +7 -0
  304. data/sig/onlyfans/models/trial_link_retrieve_stats_response.rbs +7 -0
  305. data/sig/onlyfans/models/user_list_list_params.rbs +24 -1
  306. data/sig/onlyfans/models/user_lists/user_add_params.rbs +12 -1
  307. data/sig/onlyfans/models/user_lists/user_add_response.rbs +300 -101
  308. data/sig/onlyfans/models.rbs +0 -2
  309. data/sig/onlyfans/resources/analytics/financial/profitability.rbs +2 -2
  310. data/sig/onlyfans/resources/chats/messages.rbs +3 -1
  311. data/sig/onlyfans/resources/following.rbs +6 -0
  312. data/sig/onlyfans/resources/mass_messaging.rbs +5 -2
  313. data/sig/onlyfans/resources/media/vault/lists.rbs +3 -1
  314. data/sig/onlyfans/resources/media.rbs +1 -1
  315. data/sig/onlyfans/resources/messages.rbs +0 -9
  316. data/sig/onlyfans/resources/posts.rbs +2 -0
  317. data/sig/onlyfans/resources/queue.rbs +2 -1
  318. data/sig/onlyfans/resources/shared_tracking_links.rbs +5 -1
  319. data/sig/onlyfans/resources/shared_trial_links.rbs +2 -1
  320. data/sig/onlyfans/resources/smart_link_postbacks.rbs +6 -0
  321. data/sig/onlyfans/resources/smart_links.rbs +4 -1
  322. data/sig/onlyfans/resources/statistics/statements.rbs +1 -1
  323. data/sig/onlyfans/resources/statistics.rbs +3 -2
  324. data/sig/onlyfans/resources/stories.rbs +4 -0
  325. data/sig/onlyfans/resources/tracking_links.rbs +7 -6
  326. data/sig/onlyfans/resources/trial_links.rbs +7 -5
  327. data/sig/onlyfans/resources/user_lists/users.rbs +2 -1
  328. data/sig/onlyfans/resources/user_lists.rbs +1 -0
  329. metadata +9 -15
  330. data/lib/onlyfans/models/media_download_response.rb +0 -7
  331. data/lib/onlyfans/models/message_attach_tags_params.rb +0 -52
  332. data/lib/onlyfans/models/message_attach_tags_response.rb +0 -125
  333. data/rbi/onlyfans/models/media_download_response.rbi +0 -7
  334. data/rbi/onlyfans/models/message_attach_tags_params.rbi +0 -80
  335. data/rbi/onlyfans/models/message_attach_tags_response.rbi +0 -308
  336. data/sig/onlyfans/models/media_download_response.rbs +0 -5
  337. data/sig/onlyfans/models/message_attach_tags_params.rbs +0 -52
  338. data/sig/onlyfans/models/message_attach_tags_response.rbs +0 -164
@@ -4,61 +4,127 @@ module Onlyfans
4
4
  module Models
5
5
  module Analytics
6
6
  module Financial
7
- class ProfitabilityGetProfitabilityResponseItem < Onlyfans::Internal::Type::BaseModel
8
- # @!attribute commission
7
+ # @see Onlyfans::Resources::Analytics::Financial::Profitability#get_profitability
8
+ class ProfitabilityGetProfitabilityResponse < Onlyfans::Internal::Type::BaseModel
9
+ # @!attribute data
9
10
  #
10
- # @return [Float, nil]
11
- optional :commission, Float
11
+ # @return [Array<Onlyfans::Models::Analytics::Financial::ProfitabilityGetProfitabilityResponse::Data>, nil]
12
+ optional :data,
13
+ -> { Onlyfans::Internal::Type::ArrayOf[Onlyfans::Models::Analytics::Financial::ProfitabilityGetProfitabilityResponse::Data] }
12
14
 
13
- # @!attribute creator_id
14
- #
15
- # @return [Integer, nil]
16
- optional :creator_id, Integer
15
+ # @!method initialize(data: nil)
16
+ # @param data [Array<Onlyfans::Models::Analytics::Financial::ProfitabilityGetProfitabilityResponse::Data>]
17
17
 
18
- # @!attribute gross_revenue
19
- #
20
- # @return [Float, nil]
21
- optional :gross_revenue, Float
18
+ class Data < Onlyfans::Internal::Type::BaseModel
19
+ # @!attribute active_milestones
20
+ #
21
+ # @return [String, nil]
22
+ optional :active_milestones, String, api_name: :activeMilestones, nil?: true
22
23
 
23
- # @!attribute margin
24
- #
25
- # @return [Float, nil]
26
- optional :margin, Float
24
+ # @!attribute agency_earnings
25
+ #
26
+ # @return [String, nil]
27
+ optional :agency_earnings, String, api_name: :agencyEarnings
27
28
 
28
- # @!attribute name
29
- #
30
- # @return [String, nil]
31
- optional :name, String
29
+ # @!attribute commission_amount
30
+ #
31
+ # @return [String, nil]
32
+ optional :commission_amount, String, api_name: :commissionAmount
32
33
 
33
- # @!attribute net_revenue
34
- #
35
- # @return [Float, nil]
36
- optional :net_revenue, Float
34
+ # @!attribute commission_rate
35
+ #
36
+ # @return [String, nil]
37
+ optional :commission_rate, String, api_name: :commissionRate
37
38
 
38
- # @!attribute profit
39
- #
40
- # @return [Float, nil]
41
- optional :profit, Float
39
+ # @!attribute costs
40
+ #
41
+ # @return [Array<Object>, nil]
42
+ optional :costs, Onlyfans::Internal::Type::ArrayOf[Onlyfans::Internal::Type::Unknown]
42
43
 
43
- # @!attribute total_costs
44
- #
45
- # @return [Float, nil]
46
- optional :total_costs, Float
47
-
48
- # @!method initialize(commission: nil, creator_id: nil, gross_revenue: nil, margin: nil, name: nil, net_revenue: nil, profit: nil, total_costs: nil)
49
- # @param commission [Float]
50
- # @param creator_id [Integer]
51
- # @param gross_revenue [Float]
52
- # @param margin [Float]
53
- # @param name [String]
54
- # @param net_revenue [Float]
55
- # @param profit [Float]
56
- # @param total_costs [Float]
57
- end
44
+ # @!attribute creator_name
45
+ #
46
+ # @return [String, nil]
47
+ optional :creator_name, String, api_name: :creatorName
48
+
49
+ # @!attribute has_commission_for_period
50
+ #
51
+ # @return [Boolean, nil]
52
+ optional :has_commission_for_period,
53
+ Onlyfans::Internal::Type::Boolean,
54
+ api_name: :hasCommissionForPeriod
55
+
56
+ # @!attribute has_costs_for_period
57
+ #
58
+ # @return [Boolean, nil]
59
+ optional :has_costs_for_period, Onlyfans::Internal::Type::Boolean, api_name: :hasCostsForPeriod
58
60
 
59
- # @type [Onlyfans::Internal::Type::Converter]
60
- ProfitabilityGetProfitabilityResponse =
61
- Onlyfans::Internal::Type::ArrayOf[-> { Onlyfans::Models::Analytics::Financial::ProfitabilityGetProfitabilityResponseItem }]
61
+ # @!attribute margin_percentage
62
+ #
63
+ # @return [String, nil]
64
+ optional :margin_percentage, String, api_name: :marginPercentage
65
+
66
+ # @!attribute month
67
+ #
68
+ # @return [Integer, nil]
69
+ optional :month, Integer
70
+
71
+ # @!attribute only_fans_user_id
72
+ #
73
+ # @return [Integer, nil]
74
+ optional :only_fans_user_id, Integer, api_name: :onlyFansUserId
75
+
76
+ # @!attribute profit
77
+ #
78
+ # @return [String, nil]
79
+ optional :profit, String
80
+
81
+ # @!attribute projected_net
82
+ #
83
+ # @return [String, nil]
84
+ optional :projected_net, String, api_name: :projectedNet
85
+
86
+ # @!attribute rate_periods
87
+ #
88
+ # @return [Array<Object>, nil]
89
+ optional :rate_periods,
90
+ Onlyfans::Internal::Type::ArrayOf[Onlyfans::Internal::Type::Unknown],
91
+ api_name: :ratePeriods
92
+
93
+ # @!attribute referral_note
94
+ #
95
+ # @return [String, nil]
96
+ optional :referral_note, String, api_name: :referralNote, nil?: true
97
+
98
+ # @!attribute total_costs
99
+ #
100
+ # @return [String, nil]
101
+ optional :total_costs, String, api_name: :totalCosts
102
+
103
+ # @!attribute year
104
+ #
105
+ # @return [Integer, nil]
106
+ optional :year, Integer
107
+
108
+ # @!method initialize(active_milestones: nil, agency_earnings: nil, commission_amount: nil, commission_rate: nil, costs: nil, creator_name: nil, has_commission_for_period: nil, has_costs_for_period: nil, margin_percentage: nil, month: nil, only_fans_user_id: nil, profit: nil, projected_net: nil, rate_periods: nil, referral_note: nil, total_costs: nil, year: nil)
109
+ # @param active_milestones [String, nil]
110
+ # @param agency_earnings [String]
111
+ # @param commission_amount [String]
112
+ # @param commission_rate [String]
113
+ # @param costs [Array<Object>]
114
+ # @param creator_name [String]
115
+ # @param has_commission_for_period [Boolean]
116
+ # @param has_costs_for_period [Boolean]
117
+ # @param margin_percentage [String]
118
+ # @param month [Integer]
119
+ # @param only_fans_user_id [Integer]
120
+ # @param profit [String]
121
+ # @param projected_net [String]
122
+ # @param rate_periods [Array<Object>]
123
+ # @param referral_note [String, nil]
124
+ # @param total_costs [String]
125
+ # @param year [Integer]
126
+ end
127
+ end
62
128
  end
63
129
  end
64
130
  end
@@ -169,6 +169,7 @@ module Onlyfans
169
169
 
170
170
  US = :us
171
171
  UK = :uk
172
+ GB = :gb
172
173
 
173
174
  # @!method self.values
174
175
  # @return [Array<Symbol>]
@@ -30,7 +30,8 @@ module Onlyfans
30
30
  optional :offset, String
31
31
 
32
32
  # @!attribute skip_users
33
- # Whether to skip user details in response (all or none). Default = all
33
+ # Whether to skip user details in the response (`all` or `none`). Defaults to
34
+ # `all`.
34
35
  #
35
36
  # @return [String, nil]
36
37
  optional :skip_users, String
@@ -42,6 +43,9 @@ module Onlyfans
42
43
  optional :type, enum: -> { Onlyfans::ChatListMediaParams::Type }, nil?: true
43
44
 
44
45
  # @!method initialize(account:, chat_id:, limit: nil, offset: nil, skip_users: nil, type: nil, request_options: {})
46
+ # Some parameter documentations has been truncated, see
47
+ # {Onlyfans::Models::ChatListMediaParams} for more details.
48
+ #
45
49
  # @param account [String]
46
50
  #
47
51
  # @param chat_id [String]
@@ -50,7 +54,7 @@ module Onlyfans
50
54
  #
51
55
  # @param offset [String] Number of medias to skip for pagination
52
56
  #
53
- # @param skip_users [String] Whether to skip user details in response (all or none). Default = all
57
+ # @param skip_users [String] Whether to skip user details in the response (`all` or `none`). Defaults to `all
54
58
  #
55
59
  # @param type [Symbol, Onlyfans::Models::ChatListMediaParams::Type, nil] Filter by specific media types. Keep empty to return all.
56
60
  #
@@ -43,12 +43,16 @@ module Onlyfans
43
43
  optional :query, String
44
44
 
45
45
  # @!attribute skip_users
46
- # Whether to skip user details in response (all or none). Default = all
46
+ # Whether to skip user details in the response (`all` or `none`). Defaults to
47
+ # `all`.
47
48
  #
48
49
  # @return [Symbol, Onlyfans::Models::ChatListParams::SkipUsers, nil]
49
50
  optional :skip_users, enum: -> { Onlyfans::ChatListParams::SkipUsers }
50
51
 
51
52
  # @!method initialize(account:, filter: nil, limit: nil, offset: nil, order: nil, query: nil, skip_users: nil, request_options: {})
53
+ # Some parameter documentations has been truncated, see
54
+ # {Onlyfans::Models::ChatListParams} for more details.
55
+ #
52
56
  # @param account [String]
53
57
  #
54
58
  # @param filter [Symbol, Onlyfans::Models::ChatListParams::Filter] Optionally, filter the chats by type.
@@ -61,7 +65,7 @@ module Onlyfans
61
65
  #
62
66
  # @param query [String] Search query to filter chats
63
67
  #
64
- # @param skip_users [Symbol, Onlyfans::Models::ChatListParams::SkipUsers] Whether to skip user details in response (all or none). Default = all
68
+ # @param skip_users [Symbol, Onlyfans::Models::ChatListParams::SkipUsers] Whether to skip user details in the response (`all` or `none`). Defaults to `all
65
69
  #
66
70
  # @param request_options [Onlyfans::RequestOptions, Hash{Symbol=>Object}]
67
71
 
@@ -90,7 +94,8 @@ module Onlyfans
90
94
  # @return [Array<Symbol>]
91
95
  end
92
96
 
93
- # Whether to skip user details in response (all or none). Default = all
97
+ # Whether to skip user details in the response (`all` or `none`). Defaults to
98
+ # `all`.
94
99
  module SkipUsers
95
100
  extend Onlyfans::Internal::Type::Enum
96
101
 
@@ -25,9 +25,9 @@ module Onlyfans
25
25
  optional :filter, enum: -> { Onlyfans::Chats::MessageListParams::Filter }
26
26
 
27
27
  # @!attribute first_id
28
- # Use for pagination when `order=desc` (newest to oldest). Include this message ID
29
- # as the first message in the results. Used to retrieve messages from e.g. the
30
- # Search Chat Messages endpoint IDs.
28
+ # Use for pagination when `order=desc` (newest to oldest). Pass the last message
29
+ # ID from the previous page to retrieve older messages, excluding that cursor
30
+ # message.
31
31
  #
32
32
  # @return [String, nil]
33
33
  optional :first_id, String, nil?: true
@@ -54,7 +54,7 @@ module Onlyfans
54
54
  optional :order, String
55
55
 
56
56
  # @!attribute skip_users
57
- # Whether to skip user details (all or none)
57
+ # Whether to skip user details (`all` or `none`).
58
58
  #
59
59
  # @return [String, nil]
60
60
  optional :skip_users, String
@@ -69,7 +69,7 @@ module Onlyfans
69
69
  #
70
70
  # @param filter [Symbol, Onlyfans::Models::Chats::MessageListParams::Filter] Filter by certain messages. Currently, only pins are filterable.
71
71
  #
72
- # @param first_id [String, nil] Use for pagination when `order=desc` (newest to oldest). Include this message ID
72
+ # @param first_id [String, nil] Use for pagination when `order=desc` (newest to oldest). Pass the last message I
73
73
  #
74
74
  # @param last_id [String, nil] Use for pagination when `order=asc` (oldest to newest). Include this message ID
75
75
  #
@@ -77,7 +77,7 @@ module Onlyfans
77
77
  #
78
78
  # @param order [String] Sort order for messages (desc or asc)
79
79
  #
80
- # @param skip_users [String] Whether to skip user details (all or none)
80
+ # @param skip_users [String] Whether to skip user details (`all` or `none`).
81
81
  #
82
82
  # @param request_options [Onlyfans::RequestOptions, Hash{Symbol=>Object}]
83
83
 
@@ -18,6 +18,17 @@ module Onlyfans
18
18
  # @return [String]
19
19
  required :chat_id, String
20
20
 
21
+ # @!attribute block_banned_words
22
+ # Screen `text` for OnlyFans banned words and block the send if any are found
23
+ # (returns a 422 listing the offending words). `strict_ban` blocks all tiers,
24
+ # `risky` blocks Risky + Replace/soften, `replace_soften` blocks Replace/soften
25
+ # only. Omit to disable screening.
26
+ #
27
+ # @return [Symbol, Onlyfans::Models::Chats::MessageSendParams::BlockBannedWords, nil]
28
+ optional :block_banned_words,
29
+ enum: -> { Onlyfans::Chats::MessageSendParams::BlockBannedWords },
30
+ api_name: :blockBannedWords
31
+
21
32
  # @!attribute giphy_id
22
33
  # The ID of the Giphy GIF to attach to the message. Get IDs from the Giphy listing
23
34
  # endpoints (`/giphy/trending`, `/giphy/search`).
@@ -49,11 +60,11 @@ module Onlyfans
49
60
  optional :previews, Onlyfans::Internal::Type::ArrayOf[Onlyfans::Internal::Type::Unknown]
50
61
 
51
62
  # @!attribute price
52
- # Price for paid content (0 or between 3-200). In case this is not zero,
63
+ # Price for paid content in USD (0 or between 3-200). In case this is not zero,
53
64
  # **mediaFiles** is required
54
65
  #
55
- # @return [Integer, nil]
56
- optional :price, Integer
66
+ # @return [Float, nil]
67
+ optional :price, Float
57
68
 
58
69
  # @!attribute reply_to_message_id
59
70
  # Mark this message as a reply to another (can be either your own, or the
@@ -86,7 +97,12 @@ module Onlyfans
86
97
  # @return [String, nil]
87
98
  optional :text, String
88
99
 
89
- # @!method initialize(account:, chat_id:, giphy_id: nil, locked_text: nil, media_files: nil, previews: nil, price: nil, reply_to_message_id: nil, rf_guest: nil, rf_partner: nil, rf_tag: nil, text: nil, request_options: {})
100
+ # @!attribute idempotency_key
101
+ #
102
+ # @return [String, nil]
103
+ optional :idempotency_key, String
104
+
105
+ # @!method initialize(account:, chat_id:, block_banned_words: nil, giphy_id: nil, locked_text: nil, media_files: nil, previews: nil, price: nil, reply_to_message_id: nil, rf_guest: nil, rf_partner: nil, rf_tag: nil, text: nil, idempotency_key: nil, request_options: {})
90
106
  # Some parameter documentations has been truncated, see
91
107
  # {Onlyfans::Models::Chats::MessageSendParams} for more details.
92
108
  #
@@ -94,6 +110,8 @@ module Onlyfans
94
110
  #
95
111
  # @param chat_id [String]
96
112
  #
113
+ # @param block_banned_words [Symbol, Onlyfans::Models::Chats::MessageSendParams::BlockBannedWords] Screen `text` for OnlyFans banned words and block the send if any are found (ret
114
+ #
97
115
  # @param giphy_id [String] The ID of the Giphy GIF to attach to the message. Get IDs from the Giphy listing
98
116
  #
99
117
  # @param locked_text [Boolean] Whether the text should be shown or hidden
@@ -102,8 +120,8 @@ module Onlyfans
102
120
  #
103
121
  # @param previews [Array<Object>] Direct file uploads, OFAPI `ofapi_media_` IDs, OF vault IDs, or integer indices
104
122
  #
105
- # @param price [Integer] Price for paid content (0 or between 3-200). In case this is not zero,
106
- # \*\*mediaFi
123
+ # @param price [Float] Price for paid content in USD (0 or between 3-200). In case this is not zero,
124
+ # \*\*
107
125
  #
108
126
  # @param reply_to_message_id [Integer] Mark this message as a reply to another (can be either your own, or the recipien
109
127
  #
@@ -115,7 +133,24 @@ module Onlyfans
115
133
  #
116
134
  # @param text [String] The message text content. Required unless a media file is present.
117
135
  #
136
+ # @param idempotency_key [String]
137
+ #
118
138
  # @param request_options [Onlyfans::RequestOptions, Hash{Symbol=>Object}]
139
+
140
+ # Screen `text` for OnlyFans banned words and block the send if any are found
141
+ # (returns a 422 listing the offending words). `strict_ban` blocks all tiers,
142
+ # `risky` blocks Risky + Replace/soften, `replace_soften` blocks Replace/soften
143
+ # only. Omit to disable screening.
144
+ module BlockBannedWords
145
+ extend Onlyfans::Internal::Type::Enum
146
+
147
+ STRICT_BAN = :strict_ban
148
+ RISKY = :risky
149
+ REPLACE_SOFTEN = :replace_soften
150
+
151
+ # @!method self.values
152
+ # @return [Array<Symbol>]
153
+ end
119
154
  end
120
155
  end
121
156
  end
@@ -38,6 +38,7 @@ module Onlyfans
38
38
 
39
39
  US = :us
40
40
  UK = :uk
41
+ GB = :gb
41
42
 
42
43
  # @!method self.values
43
44
  # @return [Array<Symbol>]
@@ -15,8 +15,9 @@ module Onlyfans
15
15
 
16
16
  # @!attribute file_type
17
17
  # The output file format. Supported formats vary by export type: `csv` or `xlsx`
18
- # for transactions, chat_messages, trial_links, tracking_links, smart_links,
19
- # payouts, chargebacks, public_profiles, fans, followings; `zip` for media_vault.
18
+ # for transactions, chat_messages, fansly_chat_messages, trial_links,
19
+ # tracking_links, smart_links, payouts, chargebacks, public_profiles, fans,
20
+ # followings, profile_visitors; `zip` for media_vault.
20
21
  #
21
22
  # @return [Symbol, Onlyfans::Models::DataExportCreateParams::FileType]
22
23
  required :file_type, enum: -> { Onlyfans::DataExportCreateParams::FileType }
@@ -28,14 +29,18 @@ module Onlyfans
28
29
  required :start_date, String
29
30
 
30
31
  # @!attribute type
31
- # The type of data to export
32
+ # The type of data to export. Use `fansly_chat_messages` to export Fansly chat
33
+ # messages (all other types are OnlyFans). `profile_visitors` returns one row per
34
+ # account per day, scraped one day at a time so the daily numbers are not
35
+ # aggregated away by OnlyFans.
32
36
  #
33
37
  # @return [Symbol, Onlyfans::Models::DataExportCreateParams::Type]
34
38
  required :type, enum: -> { Onlyfans::DataExportCreateParams::Type }
35
39
 
36
40
  # @!attribute account_ids
37
41
  # Array of account prefixed IDs to export data from. Not required for
38
- # `public_profiles` type.
42
+ # `public_profiles` type. For `fansly_chat_messages`, pass Fansly account prefixed
43
+ # IDs (`fansly_acct_...`); all other types take OnlyFans account IDs.
39
44
  #
40
45
  # @return [Array<String>, nil]
41
46
  optional :account_ids, Onlyfans::Internal::Type::ArrayOf[String]
@@ -58,19 +63,23 @@ module Onlyfans
58
63
  # account, max 10,000,000), `maxChats` (optional per-account chat scrape limit),
59
64
  # `skipMassMessages` (optional, bool), `chatIds` (optional array of numeric
60
65
  # fan/chat IDs; filters output and can drastically reduce totals). For
61
- # `media_vault`: `mediaType` (required, one of: `all`, `photo`, `gif`, `video`,
62
- # `audio`). For `fans`: `type` (required, one of: `all`, `active`, `expired`,
63
- # `latest`). For `followings`: `type` (required, one of: `all`, `active`,
64
- # `expired`). For `public_profiles`: `query` (optional, full-text search),
65
- # `gender` (optional, filter: male, female, trans, couple), `minSubscribePrice`
66
- # (optional, USD), `maxSubscribePrice` (optional, USD), `location` (optional),
67
- # `minPostsCount` (optional, minimum posts), `minPhotosCount` (optional, minimum
68
- # photos), `minVideosCount` (optional, minimum videos), `minSubscribersCount`
69
- # (optional, minimum subscribers), `minJoinDate` (optional, ISO 8601 date),
70
- # `minLastSeenAt` (optional, ISO 8601 date), `createdAtFrom` (optional, ISO 8601
71
- # date, profile added to DB after), `createdAtTo` (optional, ISO 8601 date,
72
- # profile added to DB before), `instagram` (optional), `twitter` (optional),
73
- # `tiktok` (optional), `maxResults` (optional, limit results).
66
+ # `fansly_chat_messages`: `maxMessages` (required per account, max 10,000,000),
67
+ # `maxChats` (optional per-account chat scrape limit), `chatIds` (optional array
68
+ # of Fansly group ID strings; filters output and can drastically reduce totals).
69
+ # For `media_vault`: `mediaType` (required, one of: `all`, `photo`, `gif`,
70
+ # `video`, `audio`). For `fans`: `type` (required, one of: `all`, `active`,
71
+ # `expired`, `latest`). For `followings`: `type` (required, one of: `all`,
72
+ # `active`, `expired`). For `public_profiles`: `query` (optional, full-text
73
+ # search), `gender` (optional, filter: male, female, trans, couple),
74
+ # `minSubscribePrice` (optional, USD), `maxSubscribePrice` (optional, USD),
75
+ # `location` (optional), `minPostsCount` (optional, minimum posts),
76
+ # `minPhotosCount` (optional, minimum photos), `minVideosCount` (optional, minimum
77
+ # videos), `minSubscribersCount` (optional, minimum subscribers),
78
+ # `maxSubscribersCount` (optional, maximum subscribers), `minJoinDate` (optional,
79
+ # ISO 8601 date), `minLastSeenAt` (optional, ISO 8601 date), `createdAtFrom`
80
+ # (optional, ISO 8601 date, profile added to DB after), `createdAtTo` (optional,
81
+ # ISO 8601 date, profile added to DB before), `instagram` (optional), `twitter`
82
+ # (optional), `tiktok` (optional), `maxResults` (optional, limit results).
74
83
  #
75
84
  # @return [Hash{Symbol=>Object}, nil]
76
85
  optional :options, Onlyfans::Internal::Type::HashOf[Onlyfans::Internal::Type::Unknown]
@@ -85,7 +94,7 @@ module Onlyfans
85
94
  #
86
95
  # @param start_date [String] The start date for the export (ISO 8601 format).
87
96
  #
88
- # @param type [Symbol, Onlyfans::Models::DataExportCreateParams::Type] The type of data to export
97
+ # @param type [Symbol, Onlyfans::Models::DataExportCreateParams::Type] The type of data to export. Use `fansly_chat_messages` to export Fansly chat mes
89
98
  #
90
99
  # @param account_ids [Array<String>] Array of account prefixed IDs to export data from. Not required for `public_prof
91
100
  #
@@ -98,8 +107,9 @@ module Onlyfans
98
107
  # @param request_options [Onlyfans::RequestOptions, Hash{Symbol=>Object}]
99
108
 
100
109
  # The output file format. Supported formats vary by export type: `csv` or `xlsx`
101
- # for transactions, chat_messages, trial_links, tracking_links, smart_links,
102
- # payouts, chargebacks, public_profiles, fans, followings; `zip` for media_vault.
110
+ # for transactions, chat_messages, fansly_chat_messages, trial_links,
111
+ # tracking_links, smart_links, payouts, chargebacks, public_profiles, fans,
112
+ # followings, profile_visitors; `zip` for media_vault.
103
113
  module FileType
104
114
  extend Onlyfans::Internal::Type::Enum
105
115
 
@@ -111,7 +121,10 @@ module Onlyfans
111
121
  # @return [Array<Symbol>]
112
122
  end
113
123
 
114
- # The type of data to export
124
+ # The type of data to export. Use `fansly_chat_messages` to export Fansly chat
125
+ # messages (all other types are OnlyFans). `profile_visitors` returns one row per
126
+ # account per day, scraped one day at a time so the daily numbers are not
127
+ # aggregated away by OnlyFans.
115
128
  module Type
116
129
  extend Onlyfans::Internal::Type::Enum
117
130
 
@@ -126,6 +139,8 @@ module Onlyfans
126
139
  PUBLIC_PROFILES = :public_profiles
127
140
  FANS = :fans
128
141
  FOLLOWINGS = :followings
142
+ PROFILE_VISITORS = :profile_visitors
143
+ FANSLY_CHAT_MESSAGES = :fansly_chat_messages
129
144
 
130
145
  # @!method self.values
131
146
  # @return [Array<Symbol>]
@@ -75,9 +75,14 @@ module Onlyfans
75
75
  MEDIA_VAULT = :media_vault
76
76
  TRIAL_LINKS = :trial_links
77
77
  TRACKING_LINKS = :tracking_links
78
+ SMART_LINKS = :smart_links
78
79
  PAYOUTS = :payouts
79
80
  CHARGEBACKS = :chargebacks
80
81
  PUBLIC_PROFILES = :public_profiles
82
+ FANS = :fans
83
+ FOLLOWINGS = :followings
84
+ PROFILE_VISITORS = :profile_visitors
85
+ FANSLY_CHAT_MESSAGES = :fansly_chat_messages
81
86
 
82
87
  # @!method self.values
83
88
  # @return [Array<Symbol>]
@@ -185,6 +185,11 @@ module Onlyfans
185
185
  # @return [String, nil]
186
186
  optional :failed_at, String, nil?: true
187
187
 
188
+ # @!attribute failed_downloads
189
+ #
190
+ # @return [Integer, nil]
191
+ optional :failed_downloads, Integer
192
+
188
193
  # @!attribute failed_reason
189
194
  #
190
195
  # @return [String, nil]
@@ -225,7 +230,7 @@ module Onlyfans
225
230
  # @return [String, nil]
226
231
  optional :type, String
227
232
 
228
- # @!method initialize(id: nil, accounts: nil, completed_at: nil, created_at: nil, credit_cost: nil, download_url: nil, download_url_expires_at: nil, end_date: nil, export_columns: nil, failed_at: nil, failed_reason: nil, file_type: nil, progress_percentage: nil, rows_processed: nil, start_date: nil, status: nil, total_rows: nil, type: nil)
233
+ # @!method initialize(id: nil, accounts: nil, completed_at: nil, created_at: nil, credit_cost: nil, download_url: nil, download_url_expires_at: nil, end_date: nil, export_columns: nil, failed_at: nil, failed_downloads: nil, failed_reason: nil, file_type: nil, progress_percentage: nil, rows_processed: nil, start_date: nil, status: nil, total_rows: nil, type: nil)
229
234
  # @param id [String]
230
235
  # @param accounts [Array<Onlyfans::Models::DataExportListResponse::Data::Data::Account>]
231
236
  # @param completed_at [String]
@@ -236,6 +241,7 @@ module Onlyfans
236
241
  # @param end_date [String]
237
242
  # @param export_columns [Array<String>]
238
243
  # @param failed_at [String, nil]
244
+ # @param failed_downloads [Integer]
239
245
  # @param failed_reason [String, nil]
240
246
  # @param file_type [String]
241
247
  # @param progress_percentage [Integer]
@@ -159,6 +159,11 @@ module Onlyfans
159
159
  # @return [String, nil]
160
160
  optional :failed_at, String, nil?: true
161
161
 
162
+ # @!attribute failed_downloads
163
+ #
164
+ # @return [Integer, nil]
165
+ optional :failed_downloads, Integer
166
+
162
167
  # @!attribute failed_reason
163
168
  #
164
169
  # @return [String, nil]
@@ -199,7 +204,7 @@ module Onlyfans
199
204
  # @return [String, nil]
200
205
  optional :type, String
201
206
 
202
- # @!method initialize(id: nil, accounts: nil, completed_at: nil, created_at: nil, credit_cost: nil, end_date: nil, export_columns: nil, failed_at: nil, failed_reason: nil, file_type: nil, progress_percentage: nil, rows_processed: nil, start_date: nil, status: nil, total_rows: nil, type: nil)
207
+ # @!method initialize(id: nil, accounts: nil, completed_at: nil, created_at: nil, credit_cost: nil, end_date: nil, export_columns: nil, failed_at: nil, failed_downloads: nil, failed_reason: nil, file_type: nil, progress_percentage: nil, rows_processed: nil, start_date: nil, status: nil, total_rows: nil, type: nil)
203
208
  # @param id [String]
204
209
  # @param accounts [Array<Onlyfans::Models::DataExportRetrieveResponse::Data::Account>]
205
210
  # @param completed_at [String, nil]
@@ -208,6 +213,7 @@ module Onlyfans
208
213
  # @param end_date [String]
209
214
  # @param export_columns [Array<String>]
210
215
  # @param failed_at [String, nil]
216
+ # @param failed_downloads [Integer]
211
217
  # @param failed_reason [String, nil]
212
218
  # @param file_type [String]
213
219
  # @param progress_percentage [Integer]
@@ -37,7 +37,7 @@ module Onlyfans
37
37
  optional :offset, Integer
38
38
 
39
39
  # @!attribute skip_users
40
- # Optional flag for subsequent pages (example: all)
40
+ # Optional flag for subsequent pages (example: all).
41
41
  #
42
42
  # @return [String, nil]
43
43
  optional :skip_users, String
@@ -59,7 +59,7 @@ module Onlyfans
59
59
  #
60
60
  # @param offset [Integer] Offset for pagination (default = 0)
61
61
  #
62
- # @param skip_users [String] Optional flag for subsequent pages (example: all)
62
+ # @param skip_users [String] Optional flag for subsequent pages (example: all).
63
63
  #
64
64
  # @param skip_users_dups [Integer] Skip duplicate users in results (0/1). Default = 1
65
65
  #
@@ -14,8 +14,8 @@ module Onlyfans
14
14
  required :account, String
15
15
 
16
16
  # @!attribute end_date
17
- # The end date for the period. Keep empty to retrieve until now. MUST BE DATE
18
- # AFTER `startDate`.
17
+ # The end date for the period. Keep empty to retrieve until now. It must be after
18
+ # `startDate`.
19
19
  #
20
20
  # @return [String, nil]
21
21
  optional :end_date, String
@@ -32,7 +32,7 @@ module Onlyfans
32
32
  #
33
33
  # @param account [String]
34
34
  #
35
- # @param end_date [String] The end date for the period. Keep empty to retrieve until now. MUST BE DATE AFTE
35
+ # @param end_date [String] The end date for the period. Keep empty to retrieve until now. It must be after
36
36
  #
37
37
  # @param start_date [String] The start date for the period. Keep empty to retrieve from the model start date.
38
38
  #
@@ -15,7 +15,7 @@ module Onlyfans
15
15
  required :account, String
16
16
 
17
17
  # @!attribute end_date
18
- # End of the chart window in `Y-m-d H:i:s` format. Must be after `startDate`.
18
+ # End of the chart window in `Y-m-d H:i:s` format. It must be after `startDate`.
19
19
  #
20
20
  # @return [String, nil]
21
21
  optional :end_date, String
@@ -35,7 +35,7 @@ module Onlyfans
35
35
  # @!method initialize(account:, end_date: nil, start_date: nil, with_total: nil, request_options: {})
36
36
  # @param account [String]
37
37
  #
38
- # @param end_date [String] End of the chart window in `Y-m-d H:i:s` format. Must be after `startDate`.
38
+ # @param end_date [String] End of the chart window in `Y-m-d H:i:s` format. It must be after `startDate`.
39
39
  #
40
40
  # @param start_date [String] Start of the chart window in `Y-m-d H:i:s` format.
41
41
  #