postboost 1.38.0 → 1.40.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 (740) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +5 -1
  3. data/docs/FreeToolCheckYoutubeThumbnailRequest.md +24 -0
  4. data/docs/FreeToolCheckYoutubeThumbnailResponse.md +20 -0
  5. data/docs/FreeToolCheckYoutubeThumbnailResponseChecksInner.md +24 -0
  6. data/docs/FreeToolGenerateHooksRequest.md +26 -0
  7. data/docs/FreeToolGenerateHooksResponse.md +24 -0
  8. data/docs/FreeToolGenerateHooksResponseHooksInner.md +20 -0
  9. data/docs/FreeToolGetHookTemplatesResponse.md +20 -0
  10. data/docs/FreeToolGetHookTemplatesResponseHooksInner.md +24 -0
  11. data/docs/FreeToolGetVideoSpecsResponse.md +22 -0
  12. data/docs/FreeToolGetVideoSpecsResponseSpecsInner.md +42 -0
  13. data/docs/FreeToolGetVideoSpecsResponseSpecsInnerLimits.md +30 -0
  14. data/docs/FreeToolsApi.md +275 -0
  15. data/lib/postboost/api/account_groups_api.rb +1 -1
  16. data/lib/postboost/api/accounts_api.rb +1 -1
  17. data/lib/postboost/api/activity_api.rb +1 -1
  18. data/lib/postboost/api/agents_api.rb +1 -1
  19. data/lib/postboost/api/ai_api.rb +1 -1
  20. data/lib/postboost/api/analytics_api.rb +1 -1
  21. data/lib/postboost/api/competitors_api.rb +1 -1
  22. data/lib/postboost/api/free_tools_api.rb +286 -1
  23. data/lib/postboost/api/hashtag_groups_api.rb +1 -1
  24. data/lib/postboost/api/inbox_api.rb +1 -1
  25. data/lib/postboost/api/media_api.rb +1 -1
  26. data/lib/postboost/api/mentions_api.rb +1 -1
  27. data/lib/postboost/api/posting_schedule_api.rb +1 -1
  28. data/lib/postboost/api/posts_api.rb +1 -1
  29. data/lib/postboost/api/receipts_api.rb +1 -1
  30. data/lib/postboost/api/subscriptions_api.rb +1 -1
  31. data/lib/postboost/api/tags_api.rb +1 -1
  32. data/lib/postboost/api/templates_api.rb +1 -1
  33. data/lib/postboost/api/users_api.rb +1 -1
  34. data/lib/postboost/api/webhooks_api.rb +1 -1
  35. data/lib/postboost/api/workspaces_api.rb +1 -1
  36. data/lib/postboost/api_client.rb +1 -1
  37. data/lib/postboost/api_error.rb +1 -1
  38. data/lib/postboost/configuration.rb +1 -1
  39. data/lib/postboost/models/account.rb +1 -1
  40. data/lib/postboost/models/account_analytics.rb +1 -1
  41. data/lib/postboost/models/account_analytics_initial_sync.rb +1 -1
  42. data/lib/postboost/models/account_connection_health.rb +1 -1
  43. data/lib/postboost/models/account_connection_health_reconnect_reason.rb +1 -1
  44. data/lib/postboost/models/account_errors_inner.rb +1 -1
  45. data/lib/postboost/models/account_errors_inner_one_of.rb +1 -1
  46. data/lib/postboost/models/account_group.rb +1 -1
  47. data/lib/postboost/models/account_group_input.rb +1 -1
  48. data/lib/postboost/models/account_health.rb +1 -1
  49. data/lib/postboost/models/account_health_daily_cap.rb +1 -1
  50. data/lib/postboost/models/account_schedule.rb +1 -1
  51. data/lib/postboost/models/add_competitor202_response.rb +1 -1
  52. data/lib/postboost/models/add_competitor409_response.rb +1 -1
  53. data/lib/postboost/models/add_generic_subscription_request.rb +1 -1
  54. data/lib/postboost/models/add_post_to_queue_request.rb +1 -1
  55. data/lib/postboost/models/agent_page_meta.rb +1 -1
  56. data/lib/postboost/models/agent_proposal.rb +1 -1
  57. data/lib/postboost/models/agent_proposal_decision.rb +1 -1
  58. data/lib/postboost/models/agent_run.rb +1 -1
  59. data/lib/postboost/models/ai_credits.rb +1 -1
  60. data/lib/postboost/models/ai_usage.rb +1 -1
  61. data/lib/postboost/models/ai_usage_text.rb +1 -1
  62. data/lib/postboost/models/analytics_period.rb +1 -1
  63. data/lib/postboost/models/analytics_summary.rb +1 -1
  64. data/lib/postboost/models/analytics_summary_data.rb +1 -1
  65. data/lib/postboost/models/api_activity.rb +1 -1
  66. data/lib/postboost/models/api_activity_outcome.rb +1 -1
  67. data/lib/postboost/models/api_key.rb +1 -1
  68. data/lib/postboost/models/api_key_ability.rb +1 -1
  69. data/lib/postboost/models/api_key_input.rb +1 -1
  70. data/lib/postboost/models/approve_agent_proposal200_response.rb +1 -1
  71. data/lib/postboost/models/approve_agent_proposal409_response.rb +1 -1
  72. data/lib/postboost/models/approve_inbox_reply_draft403_response.rb +1 -1
  73. data/lib/postboost/models/approve_post_request.rb +1 -1
  74. data/lib/postboost/models/best_posting_times.rb +1 -1
  75. data/lib/postboost/models/best_posting_times_times_inner.rb +1 -1
  76. data/lib/postboost/models/blog_to_social200_response.rb +1 -1
  77. data/lib/postboost/models/blog_to_social429_response.rb +1 -1
  78. data/lib/postboost/models/blog_to_social_caption.rb +1 -1
  79. data/lib/postboost/models/blog_to_social_input.rb +1 -1
  80. data/lib/postboost/models/blog_to_social_media.rb +1 -1
  81. data/lib/postboost/models/blog_to_social_response.rb +1 -1
  82. data/lib/postboost/models/brand_voice.rb +1 -1
  83. data/lib/postboost/models/brand_voice_input.rb +1 -1
  84. data/lib/postboost/models/brand_voice_meta.rb +1 -1
  85. data/lib/postboost/models/cancel_subscription422_response.rb +1 -1
  86. data/lib/postboost/models/cancel_subscription422_response_errors.rb +1 -1
  87. data/lib/postboost/models/cancel_subscription_request.rb +1 -1
  88. data/lib/postboost/models/change_subscription_plan_request.rb +1 -1
  89. data/lib/postboost/models/channel_account.rb +1 -1
  90. data/lib/postboost/models/checkout_subscription200_response.rb +1 -1
  91. data/lib/postboost/models/checkout_subscription_request.rb +1 -1
  92. data/lib/postboost/models/coded_error.rb +1 -1
  93. data/lib/postboost/models/competitor.rb +1 -1
  94. data/lib/postboost/models/competitor_detail.rb +1 -1
  95. data/lib/postboost/models/competitor_input.rb +1 -1
  96. data/lib/postboost/models/competitor_media.rb +1 -1
  97. data/lib/postboost/models/competitor_snapshot.rb +1 -1
  98. data/lib/postboost/models/complete_chunked_upload_request.rb +1 -1
  99. data/lib/postboost/models/connect_channel_input.rb +1 -1
  100. data/lib/postboost/models/connect_link.rb +1 -1
  101. data/lib/postboost/models/create_account_group201_response.rb +1 -1
  102. data/lib/postboost/models/create_agent201_response.rb +1 -1
  103. data/lib/postboost/models/create_api_key201_response.rb +1 -1
  104. data/lib/postboost/models/create_api_key201_response_data.rb +1 -1
  105. data/lib/postboost/models/create_connect_link_request.rb +1 -1
  106. data/lib/postboost/models/create_hashtag_group201_response.rb +1 -1
  107. data/lib/postboost/models/create_inbox_reply_draft201_response.rb +1 -1
  108. data/lib/postboost/models/create_media_folder_request.rb +1 -1
  109. data/lib/postboost/models/create_mention201_response.rb +1 -1
  110. data/lib/postboost/models/create_post201_response.rb +1 -1
  111. data/lib/postboost/models/create_recycling_rule201_response.rb +1 -1
  112. data/lib/postboost/models/create_report_export201_response.rb +1 -1
  113. data/lib/postboost/models/create_reseller_client201_response.rb +1 -1
  114. data/lib/postboost/models/create_rss_feed201_response.rb +1 -1
  115. data/lib/postboost/models/create_template201_response.rb +1 -1
  116. data/lib/postboost/models/create_webhook_subscription201_response.rb +1 -1
  117. data/lib/postboost/models/create_webhook_subscription201_response_data.rb +1 -1
  118. data/lib/postboost/models/delete_agent200_response.rb +1 -1
  119. data/lib/postboost/models/delete_media_bulk_request.rb +1 -1
  120. data/lib/postboost/models/delete_media_bulk_request_items_inner.rb +1 -1
  121. data/lib/postboost/models/delete_media_folder_request.rb +1 -1
  122. data/lib/postboost/models/delete_mode.rb +1 -1
  123. data/lib/postboost/models/delete_post_request.rb +1 -1
  124. data/lib/postboost/models/delete_posts_bulk_request.rb +1 -1
  125. data/lib/postboost/models/delete_receipts_bulk_request.rb +1 -1
  126. data/lib/postboost/models/delete_result.rb +1 -1
  127. data/lib/postboost/models/delete_user400_response.rb +1 -1
  128. data/lib/postboost/models/delete_users_bulk_request.rb +1 -1
  129. data/lib/postboost/models/delete_workspaces_bulk_request.rb +1 -1
  130. data/lib/postboost/models/free_tool_build_utm_url_request.rb +1 -1
  131. data/lib/postboost/models/free_tool_build_utm_url_response.rb +1 -1
  132. data/lib/postboost/models/free_tool_calculate_aspect_ratio_request.rb +1 -1
  133. data/lib/postboost/models/free_tool_calculate_aspect_ratio_response.rb +1 -1
  134. data/lib/postboost/models/free_tool_calculate_aspect_ratio_response_matches_inner.rb +1 -1
  135. data/lib/postboost/models/free_tool_calculate_aspect_ratio_response_rounding.rb +1 -1
  136. data/lib/postboost/models/free_tool_calculate_crop_request.rb +1 -1
  137. data/lib/postboost/models/free_tool_calculate_crop_response.rb +1 -1
  138. data/lib/postboost/models/free_tool_calculate_crop_response_crop.rb +1 -1
  139. data/lib/postboost/models/free_tool_calculate_crop_response_image.rb +1 -1
  140. data/lib/postboost/models/free_tool_calculate_crop_response_output.rb +1 -1
  141. data/lib/postboost/models/free_tool_calculate_engagement_rate_request.rb +1 -1
  142. data/lib/postboost/models/free_tool_calculate_engagement_rate_response.rb +1 -1
  143. data/lib/postboost/models/free_tool_check_link_preview_request.rb +1 -1
  144. data/lib/postboost/models/free_tool_check_link_preview_response.rb +1 -1
  145. data/lib/postboost/models/free_tool_check_link_preview_response_image.rb +1 -1
  146. data/lib/postboost/models/free_tool_check_link_preview_response_previews_value.rb +1 -1
  147. data/lib/postboost/models/free_tool_check_link_preview_response_redirects_inner.rb +1 -1
  148. data/lib/postboost/models/free_tool_check_link_preview_response_tags.rb +1 -1
  149. data/lib/postboost/models/free_tool_check_post_request.rb +1 -1
  150. data/lib/postboost/models/free_tool_check_post_request_media.rb +1 -1
  151. data/lib/postboost/models/free_tool_check_post_response.rb +1 -1
  152. data/lib/postboost/models/free_tool_check_post_response_networks_inner.rb +1 -1
  153. data/lib/postboost/models/free_tool_check_post_response_networks_inner_errors_inner.rb +1 -1
  154. data/lib/postboost/models/free_tool_check_youtube_thumbnail_request.rb +376 -0
  155. data/lib/postboost/models/free_tool_check_youtube_thumbnail_response.rb +226 -0
  156. data/lib/postboost/models/free_tool_check_youtube_thumbnail_response_checks_inner.rb +289 -0
  157. data/lib/postboost/models/free_tool_clean_text_request.rb +1 -1
  158. data/lib/postboost/models/free_tool_clean_text_response.rb +1 -1
  159. data/lib/postboost/models/free_tool_clean_text_response_changes_inner.rb +1 -1
  160. data/lib/postboost/models/free_tool_clean_text_response_flags_inner.rb +1 -1
  161. data/lib/postboost/models/free_tool_count_characters_request.rb +1 -1
  162. data/lib/postboost/models/free_tool_count_characters_response.rb +1 -1
  163. data/lib/postboost/models/free_tool_count_characters_response_networks_inner.rb +1 -1
  164. data/lib/postboost/models/free_tool_error.rb +1 -1
  165. data/lib/postboost/models/free_tool_format_linked_in_post_request.rb +1 -1
  166. data/lib/postboost/models/free_tool_format_linked_in_post_response.rb +1 -1
  167. data/lib/postboost/models/free_tool_generate_caption_request.rb +1 -1
  168. data/lib/postboost/models/free_tool_generate_caption_response.rb +1 -1
  169. data/lib/postboost/models/free_tool_generate_fancy_text_request.rb +1 -1
  170. data/lib/postboost/models/free_tool_generate_fancy_text_response.rb +1 -1
  171. data/lib/postboost/models/free_tool_generate_fancy_text_response_styles_inner.rb +1 -1
  172. data/lib/postboost/models/free_tool_generate_hashtags_request.rb +1 -1
  173. data/lib/postboost/models/free_tool_generate_hashtags_response.rb +1 -1
  174. data/lib/postboost/models/free_tool_generate_hooks_request.rb +389 -0
  175. data/lib/postboost/models/free_tool_generate_hooks_response.rb +247 -0
  176. data/lib/postboost/models/free_tool_generate_hooks_response_hooks_inner.rb +259 -0
  177. data/lib/postboost/models/free_tool_generate_qr_code_request.rb +1 -1
  178. data/lib/postboost/models/free_tool_generate_qr_code_request_utm.rb +1 -1
  179. data/lib/postboost/models/free_tool_generate_qr_code_response.rb +1 -1
  180. data/lib/postboost/models/free_tool_get_best_times_to_post_response.rb +1 -1
  181. data/lib/postboost/models/free_tool_get_best_times_to_post_response_networks_inner.rb +1 -1
  182. data/lib/postboost/models/free_tool_get_hook_templates_response.rb +226 -0
  183. data/lib/postboost/models/free_tool_get_hook_templates_response_hooks_inner.rb +281 -0
  184. data/lib/postboost/models/free_tool_get_image_sizes_response.rb +1 -1
  185. data/lib/postboost/models/free_tool_get_image_sizes_response_sizes_inner.rb +1 -1
  186. data/lib/postboost/models/free_tool_get_image_sizes_response_sources_inner.rb +1 -1
  187. data/lib/postboost/models/free_tool_get_video_specs_response.rb +239 -0
  188. data/lib/postboost/models/free_tool_get_video_specs_response_specs_inner.rb +336 -0
  189. data/lib/postboost/models/free_tool_get_video_specs_response_specs_inner_limits.rb +283 -0
  190. data/lib/postboost/models/free_tool_list.rb +1 -1
  191. data/lib/postboost/models/free_tool_list_item.rb +1 -1
  192. data/lib/postboost/models/free_tool_preview_post_request.rb +1 -1
  193. data/lib/postboost/models/free_tool_preview_post_response.rb +1 -1
  194. data/lib/postboost/models/free_tool_preview_post_response_networks_inner.rb +1 -1
  195. data/lib/postboost/models/free_tool_split_thread_request.rb +1 -1
  196. data/lib/postboost/models/free_tool_split_thread_response.rb +1 -1
  197. data/lib/postboost/models/free_tool_split_thread_response_posts_inner.rb +1 -1
  198. data/lib/postboost/models/get_account_health200_response.rb +1 -1
  199. data/lib/postboost/models/get_brand_voice200_response.rb +1 -1
  200. data/lib/postboost/models/get_competitor200_response.rb +1 -1
  201. data/lib/postboost/models/get_inbox_conversation200_response.rb +1 -1
  202. data/lib/postboost/models/get_posting_schedule200_response.rb +1 -1
  203. data/lib/postboost/models/get_remote_upload_status200_response.rb +1 -1
  204. data/lib/postboost/models/get_report_branding200_response.rb +1 -1
  205. data/lib/postboost/models/get_repurpose_run200_response.rb +1 -1
  206. data/lib/postboost/models/guardrail_error.rb +1 -1
  207. data/lib/postboost/models/hashtag_group.rb +1 -1
  208. data/lib/postboost/models/hashtag_group_input.rb +1 -1
  209. data/lib/postboost/models/image_alt_text200_response.rb +1 -1
  210. data/lib/postboost/models/image_alt_text_input.rb +1 -1
  211. data/lib/postboost/models/image_alt_text_response.rb +1 -1
  212. data/lib/postboost/models/image_credit_balance.rb +1 -1
  213. data/lib/postboost/models/image_edit_input.rb +1 -1
  214. data/lib/postboost/models/image_generate200_response.rb +1 -1
  215. data/lib/postboost/models/image_generate429_response.rb +1 -1
  216. data/lib/postboost/models/image_generate_input.rb +1 -1
  217. data/lib/postboost/models/image_generation_response.rb +1 -1
  218. data/lib/postboost/models/image_prompt200_response.rb +1 -1
  219. data/lib/postboost/models/image_prompt429_response.rb +1 -1
  220. data/lib/postboost/models/image_prompt_input.rb +1 -1
  221. data/lib/postboost/models/image_prompt_response.rb +1 -1
  222. data/lib/postboost/models/image_variations200_response.rb +1 -1
  223. data/lib/postboost/models/image_variations_input.rb +1 -1
  224. data/lib/postboost/models/image_variations_response.rb +1 -1
  225. data/lib/postboost/models/inbox_author.rb +1 -1
  226. data/lib/postboost/models/inbox_conversation.rb +1 -1
  227. data/lib/postboost/models/inbox_conversation_account.rb +1 -1
  228. data/lib/postboost/models/inbox_conversation_update.rb +1 -1
  229. data/lib/postboost/models/inbox_message.rb +1 -1
  230. data/lib/postboost/models/inbox_message_author.rb +1 -1
  231. data/lib/postboost/models/inbox_reply_draft.rb +1 -1
  232. data/lib/postboost/models/inbox_reply_draft_approve.rb +1 -1
  233. data/lib/postboost/models/inbox_reply_draft_edit.rb +1 -1
  234. data/lib/postboost/models/inbox_reply_draft_input.rb +1 -1
  235. data/lib/postboost/models/initiate_chunked_upload201_response.rb +1 -1
  236. data/lib/postboost/models/initiate_chunked_upload_request.rb +1 -1
  237. data/lib/postboost/models/initiate_remote_upload201_response.rb +1 -1
  238. data/lib/postboost/models/initiate_remote_upload201_response_one_of.rb +1 -1
  239. data/lib/postboost/models/initiate_remote_upload_request.rb +1 -1
  240. data/lib/postboost/models/learn_brand_voice_input.rb +1 -1
  241. data/lib/postboost/models/learn_brand_voice_response.rb +1 -1
  242. data/lib/postboost/models/learn_brand_voice_response_meta.rb +1 -1
  243. data/lib/postboost/models/list_account_groups200_response.rb +1 -1
  244. data/lib/postboost/models/list_accounts200_response.rb +1 -1
  245. data/lib/postboost/models/list_agent_proposals200_response.rb +1 -1
  246. data/lib/postboost/models/list_agent_runs200_response.rb +1 -1
  247. data/lib/postboost/models/list_agents200_response.rb +1 -1
  248. data/lib/postboost/models/list_api_activity200_response.rb +1 -1
  249. data/lib/postboost/models/list_api_keys200_response.rb +1 -1
  250. data/lib/postboost/models/list_competitors200_response.rb +1 -1
  251. data/lib/postboost/models/list_hashtag_groups200_response.rb +1 -1
  252. data/lib/postboost/models/list_inbox_conversations200_response.rb +1 -1
  253. data/lib/postboost/models/list_inbox_reply_drafts200_response.rb +1 -1
  254. data/lib/postboost/models/list_media200_response.rb +1 -1
  255. data/lib/postboost/models/list_media_folders200_response.rb +1 -1
  256. data/lib/postboost/models/list_mentions200_response.rb +1 -1
  257. data/lib/postboost/models/list_my_workspaces200_response.rb +1 -1
  258. data/lib/postboost/models/list_posts200_response.rb +1 -1
  259. data/lib/postboost/models/list_receipts200_response.rb +1 -1
  260. data/lib/postboost/models/list_recycling_rules200_response.rb +1 -1
  261. data/lib/postboost/models/list_recycling_runs200_response.rb +1 -1
  262. data/lib/postboost/models/list_report_exports200_response.rb +1 -1
  263. data/lib/postboost/models/list_reseller_clients200_response.rb +1 -1
  264. data/lib/postboost/models/list_rss_feeds200_response.rb +1 -1
  265. data/lib/postboost/models/list_tags200_response.rb +1 -1
  266. data/lib/postboost/models/list_templates200_response.rb +1 -1
  267. data/lib/postboost/models/list_users200_response.rb +1 -1
  268. data/lib/postboost/models/list_webhook_subscriptions200_response.rb +1 -1
  269. data/lib/postboost/models/list_workspaces200_response.rb +1 -1
  270. data/lib/postboost/models/media.rb +1 -1
  271. data/lib/postboost/models/media_base64_input.rb +1 -1
  272. data/lib/postboost/models/media_folder.rb +1 -1
  273. data/lib/postboost/models/media_folder_input.rb +1 -1
  274. data/lib/postboost/models/media_folder_ref.rb +1 -1
  275. data/lib/postboost/models/mention.rb +1 -1
  276. data/lib/postboost/models/mention_identity.rb +1 -1
  277. data/lib/postboost/models/mention_identity_input.rb +1 -1
  278. data/lib/postboost/models/mention_input.rb +1 -1
  279. data/lib/postboost/models/message_only.rb +1 -1
  280. data/lib/postboost/models/pagination_meta.rb +1 -1
  281. data/lib/postboost/models/pagination_meta_links.rb +1 -1
  282. data/lib/postboost/models/pagination_meta_meta.rb +1 -1
  283. data/lib/postboost/models/poll_rss_feed200_response.rb +1 -1
  284. data/lib/postboost/models/post.rb +1 -1
  285. data/lib/postboost/models/post_analytics.rb +1 -1
  286. data/lib/postboost/models/post_content.rb +1 -1
  287. data/lib/postboost/models/post_input.rb +1 -1
  288. data/lib/postboost/models/post_options_instagram.rb +1 -1
  289. data/lib/postboost/models/post_options_tik_tok.rb +1 -1
  290. data/lib/postboost/models/post_options_youtube.rb +1 -1
  291. data/lib/postboost/models/post_status.rb +1 -1
  292. data/lib/postboost/models/post_version.rb +1 -1
  293. data/lib/postboost/models/post_version_options.rb +1 -1
  294. data/lib/postboost/models/post_warning.rb +1 -1
  295. data/lib/postboost/models/post_warnings.rb +1 -1
  296. data/lib/postboost/models/posting_schedule.rb +1 -1
  297. data/lib/postboost/models/posting_schedule_day.rb +1 -1
  298. data/lib/postboost/models/posting_schedule_day_times_inner.rb +1 -1
  299. data/lib/postboost/models/posting_schedule_input.rb +1 -1
  300. data/lib/postboost/models/posting_time_slot.rb +1 -1
  301. data/lib/postboost/models/posting_times.rb +1 -1
  302. data/lib/postboost/models/posting_times_best_inner.rb +1 -1
  303. data/lib/postboost/models/posting_times_day_intervals_inner_inner.rb +1 -1
  304. data/lib/postboost/models/posting_times_days_inner.rb +1 -1
  305. data/lib/postboost/models/preflight_result.rb +1 -1
  306. data/lib/postboost/models/public_workspace.rb +1 -1
  307. data/lib/postboost/models/public_workspace_pivot.rb +1 -1
  308. data/lib/postboost/models/publish_progress.rb +1 -1
  309. data/lib/postboost/models/queue_slots.rb +1 -1
  310. data/lib/postboost/models/receipt.rb +1 -1
  311. data/lib/postboost/models/receipt_input.rb +1 -1
  312. data/lib/postboost/models/receipt_update_input.rb +1 -1
  313. data/lib/postboost/models/recommended_posting_times.rb +1 -1
  314. data/lib/postboost/models/reconnect_link.rb +1 -1
  315. data/lib/postboost/models/recycling_rule.rb +1 -1
  316. data/lib/postboost/models/recycling_rule_input.rb +1 -1
  317. data/lib/postboost/models/recycling_rule_settings.rb +1 -1
  318. data/lib/postboost/models/recycling_rule_update.rb +1 -1
  319. data/lib/postboost/models/recycling_run.rb +1 -1
  320. data/lib/postboost/models/remove_generic_subscription422_response.rb +1 -1
  321. data/lib/postboost/models/remove_user_from_workspace_request.rb +1 -1
  322. data/lib/postboost/models/report_branding.rb +1 -1
  323. data/lib/postboost/models/report_branding_input.rb +1 -1
  324. data/lib/postboost/models/report_export.rb +1 -1
  325. data/lib/postboost/models/report_export_input.rb +1 -1
  326. data/lib/postboost/models/repurpose_content200_response.rb +1 -1
  327. data/lib/postboost/models/repurpose_content202_response.rb +1 -1
  328. data/lib/postboost/models/repurpose_content500_response.rb +1 -1
  329. data/lib/postboost/models/repurpose_input.rb +1 -1
  330. data/lib/postboost/models/repurpose_input_theme.rb +1 -1
  331. data/lib/postboost/models/repurpose_result.rb +1 -1
  332. data/lib/postboost/models/repurpose_result_media.rb +1 -1
  333. data/lib/postboost/models/repurpose_result_source.rb +1 -1
  334. data/lib/postboost/models/repurpose_run.rb +1 -1
  335. data/lib/postboost/models/repurpose_run_accepted.rb +1 -1
  336. data/lib/postboost/models/repurpose_slide.rb +1 -1
  337. data/lib/postboost/models/reseller_client.rb +1 -1
  338. data/lib/postboost/models/reseller_client_input.rb +1 -1
  339. data/lib/postboost/models/reseller_client_usage.rb +1 -1
  340. data/lib/postboost/models/retry_post_account_result.rb +1 -1
  341. data/lib/postboost/models/rss_feed.rb +1 -1
  342. data/lib/postboost/models/rss_feed_input.rb +1 -1
  343. data/lib/postboost/models/rss_feed_update.rb +1 -1
  344. data/lib/postboost/models/run_agent202_response.rb +1 -1
  345. data/lib/postboost/models/schedule_post_request.rb +1 -1
  346. data/lib/postboost/models/schedule_result.rb +1 -1
  347. data/lib/postboost/models/subscription.rb +1 -1
  348. data/lib/postboost/models/subscription_input.rb +1 -1
  349. data/lib/postboost/models/subscription_status.rb +1 -1
  350. data/lib/postboost/models/subscription_update_input.rb +1 -1
  351. data/lib/postboost/models/tag.rb +1 -1
  352. data/lib/postboost/models/tag_input.rb +1 -1
  353. data/lib/postboost/models/template.rb +1 -1
  354. data/lib/postboost/models/template_content_item.rb +1 -1
  355. data/lib/postboost/models/template_input.rb +1 -1
  356. data/lib/postboost/models/template_input_content_inner.rb +1 -1
  357. data/lib/postboost/models/update_media_request.rb +1 -1
  358. data/lib/postboost/models/update_post200_response.rb +1 -1
  359. data/lib/postboost/models/upload_chunk201_response.rb +1 -1
  360. data/lib/postboost/models/user.rb +1 -1
  361. data/lib/postboost/models/user_input.rb +1 -1
  362. data/lib/postboost/models/user_update_input.rb +1 -1
  363. data/lib/postboost/models/webhook_envelope.rb +1 -1
  364. data/lib/postboost/models/webhook_event_name.rb +1 -1
  365. data/lib/postboost/models/webhook_event_payload.rb +1 -1
  366. data/lib/postboost/models/webhook_subscription.rb +1 -1
  367. data/lib/postboost/models/webhook_subscription_input.rb +1 -1
  368. data/lib/postboost/models/workspace.rb +1 -1
  369. data/lib/postboost/models/workspace_agent.rb +1 -1
  370. data/lib/postboost/models/workspace_agent_input.rb +1 -1
  371. data/lib/postboost/models/workspace_agent_settings.rb +1 -1
  372. data/lib/postboost/models/workspace_agent_update.rb +1 -1
  373. data/lib/postboost/models/workspace_input.rb +1 -1
  374. data/lib/postboost/models/workspace_user_input.rb +1 -1
  375. data/lib/postboost/models/x_usage.rb +1 -1
  376. data/lib/postboost/models/x_usage_counter.rb +1 -1
  377. data/lib/postboost/version.rb +2 -2
  378. data/lib/postboost.rb +12 -1
  379. data/postboost.gemspec +1 -1
  380. data/spec/api/account_groups_api_spec.rb +1 -1
  381. data/spec/api/accounts_api_spec.rb +1 -1
  382. data/spec/api/activity_api_spec.rb +1 -1
  383. data/spec/api/agents_api_spec.rb +1 -1
  384. data/spec/api/ai_api_spec.rb +1 -1
  385. data/spec/api/analytics_api_spec.rb +1 -1
  386. data/spec/api/competitors_api_spec.rb +1 -1
  387. data/spec/api/free_tools_api_spec.rb +52 -1
  388. data/spec/api/hashtag_groups_api_spec.rb +1 -1
  389. data/spec/api/inbox_api_spec.rb +1 -1
  390. data/spec/api/media_api_spec.rb +1 -1
  391. data/spec/api/mentions_api_spec.rb +1 -1
  392. data/spec/api/posting_schedule_api_spec.rb +1 -1
  393. data/spec/api/posts_api_spec.rb +1 -1
  394. data/spec/api/receipts_api_spec.rb +1 -1
  395. data/spec/api/subscriptions_api_spec.rb +1 -1
  396. data/spec/api/tags_api_spec.rb +1 -1
  397. data/spec/api/templates_api_spec.rb +1 -1
  398. data/spec/api/users_api_spec.rb +1 -1
  399. data/spec/api/webhooks_api_spec.rb +1 -1
  400. data/spec/api/workspaces_api_spec.rb +1 -1
  401. data/spec/models/account_analytics_initial_sync_spec.rb +1 -1
  402. data/spec/models/account_analytics_spec.rb +1 -1
  403. data/spec/models/account_connection_health_reconnect_reason_spec.rb +1 -1
  404. data/spec/models/account_connection_health_spec.rb +1 -1
  405. data/spec/models/account_errors_inner_one_of_spec.rb +1 -1
  406. data/spec/models/account_errors_inner_spec.rb +1 -1
  407. data/spec/models/account_group_input_spec.rb +1 -1
  408. data/spec/models/account_group_spec.rb +1 -1
  409. data/spec/models/account_health_daily_cap_spec.rb +1 -1
  410. data/spec/models/account_health_spec.rb +1 -1
  411. data/spec/models/account_schedule_spec.rb +1 -1
  412. data/spec/models/account_spec.rb +1 -1
  413. data/spec/models/add_competitor202_response_spec.rb +1 -1
  414. data/spec/models/add_competitor409_response_spec.rb +1 -1
  415. data/spec/models/add_generic_subscription_request_spec.rb +1 -1
  416. data/spec/models/add_post_to_queue_request_spec.rb +1 -1
  417. data/spec/models/agent_page_meta_spec.rb +1 -1
  418. data/spec/models/agent_proposal_decision_spec.rb +1 -1
  419. data/spec/models/agent_proposal_spec.rb +1 -1
  420. data/spec/models/agent_run_spec.rb +1 -1
  421. data/spec/models/ai_credits_spec.rb +1 -1
  422. data/spec/models/ai_usage_spec.rb +1 -1
  423. data/spec/models/ai_usage_text_spec.rb +1 -1
  424. data/spec/models/analytics_period_spec.rb +1 -1
  425. data/spec/models/analytics_summary_data_spec.rb +1 -1
  426. data/spec/models/analytics_summary_spec.rb +1 -1
  427. data/spec/models/api_activity_outcome_spec.rb +1 -1
  428. data/spec/models/api_activity_spec.rb +1 -1
  429. data/spec/models/api_key_ability_spec.rb +1 -1
  430. data/spec/models/api_key_input_spec.rb +1 -1
  431. data/spec/models/api_key_spec.rb +1 -1
  432. data/spec/models/approve_agent_proposal200_response_spec.rb +1 -1
  433. data/spec/models/approve_agent_proposal409_response_spec.rb +1 -1
  434. data/spec/models/approve_inbox_reply_draft403_response_spec.rb +1 -1
  435. data/spec/models/approve_post_request_spec.rb +1 -1
  436. data/spec/models/best_posting_times_spec.rb +1 -1
  437. data/spec/models/best_posting_times_times_inner_spec.rb +1 -1
  438. data/spec/models/blog_to_social200_response_spec.rb +1 -1
  439. data/spec/models/blog_to_social429_response_spec.rb +1 -1
  440. data/spec/models/blog_to_social_caption_spec.rb +1 -1
  441. data/spec/models/blog_to_social_input_spec.rb +1 -1
  442. data/spec/models/blog_to_social_media_spec.rb +1 -1
  443. data/spec/models/blog_to_social_response_spec.rb +1 -1
  444. data/spec/models/brand_voice_input_spec.rb +1 -1
  445. data/spec/models/brand_voice_meta_spec.rb +1 -1
  446. data/spec/models/brand_voice_spec.rb +1 -1
  447. data/spec/models/cancel_subscription422_response_errors_spec.rb +1 -1
  448. data/spec/models/cancel_subscription422_response_spec.rb +1 -1
  449. data/spec/models/cancel_subscription_request_spec.rb +1 -1
  450. data/spec/models/change_subscription_plan_request_spec.rb +1 -1
  451. data/spec/models/channel_account_spec.rb +1 -1
  452. data/spec/models/checkout_subscription200_response_spec.rb +1 -1
  453. data/spec/models/checkout_subscription_request_spec.rb +1 -1
  454. data/spec/models/coded_error_spec.rb +1 -1
  455. data/spec/models/competitor_detail_spec.rb +1 -1
  456. data/spec/models/competitor_input_spec.rb +1 -1
  457. data/spec/models/competitor_media_spec.rb +1 -1
  458. data/spec/models/competitor_snapshot_spec.rb +1 -1
  459. data/spec/models/competitor_spec.rb +1 -1
  460. data/spec/models/complete_chunked_upload_request_spec.rb +1 -1
  461. data/spec/models/connect_channel_input_spec.rb +1 -1
  462. data/spec/models/connect_link_spec.rb +1 -1
  463. data/spec/models/create_account_group201_response_spec.rb +1 -1
  464. data/spec/models/create_agent201_response_spec.rb +1 -1
  465. data/spec/models/create_api_key201_response_data_spec.rb +1 -1
  466. data/spec/models/create_api_key201_response_spec.rb +1 -1
  467. data/spec/models/create_connect_link_request_spec.rb +1 -1
  468. data/spec/models/create_hashtag_group201_response_spec.rb +1 -1
  469. data/spec/models/create_inbox_reply_draft201_response_spec.rb +1 -1
  470. data/spec/models/create_media_folder_request_spec.rb +1 -1
  471. data/spec/models/create_mention201_response_spec.rb +1 -1
  472. data/spec/models/create_post201_response_spec.rb +1 -1
  473. data/spec/models/create_recycling_rule201_response_spec.rb +1 -1
  474. data/spec/models/create_report_export201_response_spec.rb +1 -1
  475. data/spec/models/create_reseller_client201_response_spec.rb +1 -1
  476. data/spec/models/create_rss_feed201_response_spec.rb +1 -1
  477. data/spec/models/create_template201_response_spec.rb +1 -1
  478. data/spec/models/create_webhook_subscription201_response_data_spec.rb +1 -1
  479. data/spec/models/create_webhook_subscription201_response_spec.rb +1 -1
  480. data/spec/models/delete_agent200_response_spec.rb +1 -1
  481. data/spec/models/delete_media_bulk_request_items_inner_spec.rb +1 -1
  482. data/spec/models/delete_media_bulk_request_spec.rb +1 -1
  483. data/spec/models/delete_media_folder_request_spec.rb +1 -1
  484. data/spec/models/delete_mode_spec.rb +1 -1
  485. data/spec/models/delete_post_request_spec.rb +1 -1
  486. data/spec/models/delete_posts_bulk_request_spec.rb +1 -1
  487. data/spec/models/delete_receipts_bulk_request_spec.rb +1 -1
  488. data/spec/models/delete_result_spec.rb +1 -1
  489. data/spec/models/delete_user400_response_spec.rb +1 -1
  490. data/spec/models/delete_users_bulk_request_spec.rb +1 -1
  491. data/spec/models/delete_workspaces_bulk_request_spec.rb +1 -1
  492. data/spec/models/free_tool_build_utm_url_request_spec.rb +1 -1
  493. data/spec/models/free_tool_build_utm_url_response_spec.rb +1 -1
  494. data/spec/models/free_tool_calculate_aspect_ratio_request_spec.rb +1 -1
  495. data/spec/models/free_tool_calculate_aspect_ratio_response_matches_inner_spec.rb +1 -1
  496. data/spec/models/free_tool_calculate_aspect_ratio_response_rounding_spec.rb +1 -1
  497. data/spec/models/free_tool_calculate_aspect_ratio_response_spec.rb +1 -1
  498. data/spec/models/free_tool_calculate_crop_request_spec.rb +1 -1
  499. data/spec/models/free_tool_calculate_crop_response_crop_spec.rb +1 -1
  500. data/spec/models/free_tool_calculate_crop_response_image_spec.rb +1 -1
  501. data/spec/models/free_tool_calculate_crop_response_output_spec.rb +1 -1
  502. data/spec/models/free_tool_calculate_crop_response_spec.rb +1 -1
  503. data/spec/models/free_tool_calculate_engagement_rate_request_spec.rb +1 -1
  504. data/spec/models/free_tool_calculate_engagement_rate_response_spec.rb +1 -1
  505. data/spec/models/free_tool_check_link_preview_request_spec.rb +1 -1
  506. data/spec/models/free_tool_check_link_preview_response_image_spec.rb +1 -1
  507. data/spec/models/free_tool_check_link_preview_response_previews_value_spec.rb +1 -1
  508. data/spec/models/free_tool_check_link_preview_response_redirects_inner_spec.rb +1 -1
  509. data/spec/models/free_tool_check_link_preview_response_spec.rb +1 -1
  510. data/spec/models/free_tool_check_link_preview_response_tags_spec.rb +1 -1
  511. data/spec/models/free_tool_check_post_request_media_spec.rb +1 -1
  512. data/spec/models/free_tool_check_post_request_spec.rb +1 -1
  513. data/spec/models/free_tool_check_post_response_networks_inner_errors_inner_spec.rb +1 -1
  514. data/spec/models/free_tool_check_post_response_networks_inner_spec.rb +1 -1
  515. data/spec/models/free_tool_check_post_response_spec.rb +1 -1
  516. data/spec/models/free_tool_check_youtube_thumbnail_request_spec.rb +54 -0
  517. data/spec/models/free_tool_check_youtube_thumbnail_response_checks_inner_spec.rb +62 -0
  518. data/spec/models/free_tool_check_youtube_thumbnail_response_spec.rb +42 -0
  519. data/spec/models/free_tool_clean_text_request_spec.rb +1 -1
  520. data/spec/models/free_tool_clean_text_response_changes_inner_spec.rb +1 -1
  521. data/spec/models/free_tool_clean_text_response_flags_inner_spec.rb +1 -1
  522. data/spec/models/free_tool_clean_text_response_spec.rb +1 -1
  523. data/spec/models/free_tool_count_characters_request_spec.rb +1 -1
  524. data/spec/models/free_tool_count_characters_response_networks_inner_spec.rb +1 -1
  525. data/spec/models/free_tool_count_characters_response_spec.rb +1 -1
  526. data/spec/models/free_tool_error_spec.rb +1 -1
  527. data/spec/models/free_tool_format_linked_in_post_request_spec.rb +1 -1
  528. data/spec/models/free_tool_format_linked_in_post_response_spec.rb +1 -1
  529. data/spec/models/free_tool_generate_caption_request_spec.rb +1 -1
  530. data/spec/models/free_tool_generate_caption_response_spec.rb +1 -1
  531. data/spec/models/free_tool_generate_fancy_text_request_spec.rb +1 -1
  532. data/spec/models/free_tool_generate_fancy_text_response_spec.rb +1 -1
  533. data/spec/models/free_tool_generate_fancy_text_response_styles_inner_spec.rb +1 -1
  534. data/spec/models/free_tool_generate_hashtags_request_spec.rb +1 -1
  535. data/spec/models/free_tool_generate_hashtags_response_spec.rb +1 -1
  536. data/spec/models/free_tool_generate_hooks_request_spec.rb +68 -0
  537. data/spec/models/free_tool_generate_hooks_response_hooks_inner_spec.rb +46 -0
  538. data/spec/models/free_tool_generate_hooks_response_spec.rb +54 -0
  539. data/spec/models/free_tool_generate_qr_code_request_spec.rb +1 -1
  540. data/spec/models/free_tool_generate_qr_code_request_utm_spec.rb +1 -1
  541. data/spec/models/free_tool_generate_qr_code_response_spec.rb +1 -1
  542. data/spec/models/free_tool_get_best_times_to_post_response_networks_inner_spec.rb +1 -1
  543. data/spec/models/free_tool_get_best_times_to_post_response_spec.rb +1 -1
  544. data/spec/models/free_tool_get_hook_templates_response_hooks_inner_spec.rb +62 -0
  545. data/spec/models/free_tool_get_hook_templates_response_spec.rb +42 -0
  546. data/spec/models/free_tool_get_image_sizes_response_sizes_inner_spec.rb +1 -1
  547. data/spec/models/free_tool_get_image_sizes_response_sources_inner_spec.rb +1 -1
  548. data/spec/models/free_tool_get_image_sizes_response_spec.rb +1 -1
  549. data/spec/models/free_tool_get_video_specs_response_spec.rb +48 -0
  550. data/spec/models/free_tool_get_video_specs_response_specs_inner_limits_spec.rb +72 -0
  551. data/spec/models/free_tool_get_video_specs_response_specs_inner_spec.rb +108 -0
  552. data/spec/models/free_tool_list_item_spec.rb +1 -1
  553. data/spec/models/free_tool_list_spec.rb +1 -1
  554. data/spec/models/free_tool_preview_post_request_spec.rb +1 -1
  555. data/spec/models/free_tool_preview_post_response_networks_inner_spec.rb +1 -1
  556. data/spec/models/free_tool_preview_post_response_spec.rb +1 -1
  557. data/spec/models/free_tool_split_thread_request_spec.rb +1 -1
  558. data/spec/models/free_tool_split_thread_response_posts_inner_spec.rb +1 -1
  559. data/spec/models/free_tool_split_thread_response_spec.rb +1 -1
  560. data/spec/models/get_account_health200_response_spec.rb +1 -1
  561. data/spec/models/get_brand_voice200_response_spec.rb +1 -1
  562. data/spec/models/get_competitor200_response_spec.rb +1 -1
  563. data/spec/models/get_inbox_conversation200_response_spec.rb +1 -1
  564. data/spec/models/get_posting_schedule200_response_spec.rb +1 -1
  565. data/spec/models/get_remote_upload_status200_response_spec.rb +1 -1
  566. data/spec/models/get_report_branding200_response_spec.rb +1 -1
  567. data/spec/models/get_repurpose_run200_response_spec.rb +1 -1
  568. data/spec/models/guardrail_error_spec.rb +1 -1
  569. data/spec/models/hashtag_group_input_spec.rb +1 -1
  570. data/spec/models/hashtag_group_spec.rb +1 -1
  571. data/spec/models/image_alt_text200_response_spec.rb +1 -1
  572. data/spec/models/image_alt_text_input_spec.rb +1 -1
  573. data/spec/models/image_alt_text_response_spec.rb +1 -1
  574. data/spec/models/image_credit_balance_spec.rb +1 -1
  575. data/spec/models/image_edit_input_spec.rb +1 -1
  576. data/spec/models/image_generate200_response_spec.rb +1 -1
  577. data/spec/models/image_generate429_response_spec.rb +1 -1
  578. data/spec/models/image_generate_input_spec.rb +1 -1
  579. data/spec/models/image_generation_response_spec.rb +1 -1
  580. data/spec/models/image_prompt200_response_spec.rb +1 -1
  581. data/spec/models/image_prompt429_response_spec.rb +1 -1
  582. data/spec/models/image_prompt_input_spec.rb +1 -1
  583. data/spec/models/image_prompt_response_spec.rb +1 -1
  584. data/spec/models/image_variations200_response_spec.rb +1 -1
  585. data/spec/models/image_variations_input_spec.rb +1 -1
  586. data/spec/models/image_variations_response_spec.rb +1 -1
  587. data/spec/models/inbox_author_spec.rb +1 -1
  588. data/spec/models/inbox_conversation_account_spec.rb +1 -1
  589. data/spec/models/inbox_conversation_spec.rb +1 -1
  590. data/spec/models/inbox_conversation_update_spec.rb +1 -1
  591. data/spec/models/inbox_message_author_spec.rb +1 -1
  592. data/spec/models/inbox_message_spec.rb +1 -1
  593. data/spec/models/inbox_reply_draft_approve_spec.rb +1 -1
  594. data/spec/models/inbox_reply_draft_edit_spec.rb +1 -1
  595. data/spec/models/inbox_reply_draft_input_spec.rb +1 -1
  596. data/spec/models/inbox_reply_draft_spec.rb +1 -1
  597. data/spec/models/initiate_chunked_upload201_response_spec.rb +1 -1
  598. data/spec/models/initiate_chunked_upload_request_spec.rb +1 -1
  599. data/spec/models/initiate_remote_upload201_response_one_of_spec.rb +1 -1
  600. data/spec/models/initiate_remote_upload201_response_spec.rb +1 -1
  601. data/spec/models/initiate_remote_upload_request_spec.rb +1 -1
  602. data/spec/models/learn_brand_voice_input_spec.rb +1 -1
  603. data/spec/models/learn_brand_voice_response_meta_spec.rb +1 -1
  604. data/spec/models/learn_brand_voice_response_spec.rb +1 -1
  605. data/spec/models/list_account_groups200_response_spec.rb +1 -1
  606. data/spec/models/list_accounts200_response_spec.rb +1 -1
  607. data/spec/models/list_agent_proposals200_response_spec.rb +1 -1
  608. data/spec/models/list_agent_runs200_response_spec.rb +1 -1
  609. data/spec/models/list_agents200_response_spec.rb +1 -1
  610. data/spec/models/list_api_activity200_response_spec.rb +1 -1
  611. data/spec/models/list_api_keys200_response_spec.rb +1 -1
  612. data/spec/models/list_competitors200_response_spec.rb +1 -1
  613. data/spec/models/list_hashtag_groups200_response_spec.rb +1 -1
  614. data/spec/models/list_inbox_conversations200_response_spec.rb +1 -1
  615. data/spec/models/list_inbox_reply_drafts200_response_spec.rb +1 -1
  616. data/spec/models/list_media200_response_spec.rb +1 -1
  617. data/spec/models/list_media_folders200_response_spec.rb +1 -1
  618. data/spec/models/list_mentions200_response_spec.rb +1 -1
  619. data/spec/models/list_my_workspaces200_response_spec.rb +1 -1
  620. data/spec/models/list_posts200_response_spec.rb +1 -1
  621. data/spec/models/list_receipts200_response_spec.rb +1 -1
  622. data/spec/models/list_recycling_rules200_response_spec.rb +1 -1
  623. data/spec/models/list_recycling_runs200_response_spec.rb +1 -1
  624. data/spec/models/list_report_exports200_response_spec.rb +1 -1
  625. data/spec/models/list_reseller_clients200_response_spec.rb +1 -1
  626. data/spec/models/list_rss_feeds200_response_spec.rb +1 -1
  627. data/spec/models/list_tags200_response_spec.rb +1 -1
  628. data/spec/models/list_templates200_response_spec.rb +1 -1
  629. data/spec/models/list_users200_response_spec.rb +1 -1
  630. data/spec/models/list_webhook_subscriptions200_response_spec.rb +1 -1
  631. data/spec/models/list_workspaces200_response_spec.rb +1 -1
  632. data/spec/models/media_base64_input_spec.rb +1 -1
  633. data/spec/models/media_folder_input_spec.rb +1 -1
  634. data/spec/models/media_folder_ref_spec.rb +1 -1
  635. data/spec/models/media_folder_spec.rb +1 -1
  636. data/spec/models/media_spec.rb +1 -1
  637. data/spec/models/mention_identity_input_spec.rb +1 -1
  638. data/spec/models/mention_identity_spec.rb +1 -1
  639. data/spec/models/mention_input_spec.rb +1 -1
  640. data/spec/models/mention_spec.rb +1 -1
  641. data/spec/models/message_only_spec.rb +1 -1
  642. data/spec/models/pagination_meta_links_spec.rb +1 -1
  643. data/spec/models/pagination_meta_meta_spec.rb +1 -1
  644. data/spec/models/pagination_meta_spec.rb +1 -1
  645. data/spec/models/poll_rss_feed200_response_spec.rb +1 -1
  646. data/spec/models/post_analytics_spec.rb +1 -1
  647. data/spec/models/post_content_spec.rb +1 -1
  648. data/spec/models/post_input_spec.rb +1 -1
  649. data/spec/models/post_options_instagram_spec.rb +1 -1
  650. data/spec/models/post_options_tik_tok_spec.rb +1 -1
  651. data/spec/models/post_options_youtube_spec.rb +1 -1
  652. data/spec/models/post_spec.rb +1 -1
  653. data/spec/models/post_status_spec.rb +1 -1
  654. data/spec/models/post_version_options_spec.rb +1 -1
  655. data/spec/models/post_version_spec.rb +1 -1
  656. data/spec/models/post_warning_spec.rb +1 -1
  657. data/spec/models/post_warnings_spec.rb +1 -1
  658. data/spec/models/posting_schedule_day_spec.rb +1 -1
  659. data/spec/models/posting_schedule_day_times_inner_spec.rb +1 -1
  660. data/spec/models/posting_schedule_input_spec.rb +1 -1
  661. data/spec/models/posting_schedule_spec.rb +1 -1
  662. data/spec/models/posting_time_slot_spec.rb +1 -1
  663. data/spec/models/posting_times_best_inner_spec.rb +1 -1
  664. data/spec/models/posting_times_day_intervals_inner_inner_spec.rb +1 -1
  665. data/spec/models/posting_times_days_inner_spec.rb +1 -1
  666. data/spec/models/posting_times_spec.rb +1 -1
  667. data/spec/models/preflight_result_spec.rb +1 -1
  668. data/spec/models/public_workspace_pivot_spec.rb +1 -1
  669. data/spec/models/public_workspace_spec.rb +1 -1
  670. data/spec/models/publish_progress_spec.rb +1 -1
  671. data/spec/models/queue_slots_spec.rb +1 -1
  672. data/spec/models/receipt_input_spec.rb +1 -1
  673. data/spec/models/receipt_spec.rb +1 -1
  674. data/spec/models/receipt_update_input_spec.rb +1 -1
  675. data/spec/models/recommended_posting_times_spec.rb +1 -1
  676. data/spec/models/reconnect_link_spec.rb +1 -1
  677. data/spec/models/recycling_rule_input_spec.rb +1 -1
  678. data/spec/models/recycling_rule_settings_spec.rb +1 -1
  679. data/spec/models/recycling_rule_spec.rb +1 -1
  680. data/spec/models/recycling_rule_update_spec.rb +1 -1
  681. data/spec/models/recycling_run_spec.rb +1 -1
  682. data/spec/models/remove_generic_subscription422_response_spec.rb +1 -1
  683. data/spec/models/remove_user_from_workspace_request_spec.rb +1 -1
  684. data/spec/models/report_branding_input_spec.rb +1 -1
  685. data/spec/models/report_branding_spec.rb +1 -1
  686. data/spec/models/report_export_input_spec.rb +1 -1
  687. data/spec/models/report_export_spec.rb +1 -1
  688. data/spec/models/repurpose_content200_response_spec.rb +1 -1
  689. data/spec/models/repurpose_content202_response_spec.rb +1 -1
  690. data/spec/models/repurpose_content500_response_spec.rb +1 -1
  691. data/spec/models/repurpose_input_spec.rb +1 -1
  692. data/spec/models/repurpose_input_theme_spec.rb +1 -1
  693. data/spec/models/repurpose_result_media_spec.rb +1 -1
  694. data/spec/models/repurpose_result_source_spec.rb +1 -1
  695. data/spec/models/repurpose_result_spec.rb +1 -1
  696. data/spec/models/repurpose_run_accepted_spec.rb +1 -1
  697. data/spec/models/repurpose_run_spec.rb +1 -1
  698. data/spec/models/repurpose_slide_spec.rb +1 -1
  699. data/spec/models/reseller_client_input_spec.rb +1 -1
  700. data/spec/models/reseller_client_spec.rb +1 -1
  701. data/spec/models/reseller_client_usage_spec.rb +1 -1
  702. data/spec/models/retry_post_account_result_spec.rb +1 -1
  703. data/spec/models/rss_feed_input_spec.rb +1 -1
  704. data/spec/models/rss_feed_spec.rb +1 -1
  705. data/spec/models/rss_feed_update_spec.rb +1 -1
  706. data/spec/models/run_agent202_response_spec.rb +1 -1
  707. data/spec/models/schedule_post_request_spec.rb +1 -1
  708. data/spec/models/schedule_result_spec.rb +1 -1
  709. data/spec/models/subscription_input_spec.rb +1 -1
  710. data/spec/models/subscription_spec.rb +1 -1
  711. data/spec/models/subscription_status_spec.rb +1 -1
  712. data/spec/models/subscription_update_input_spec.rb +1 -1
  713. data/spec/models/tag_input_spec.rb +1 -1
  714. data/spec/models/tag_spec.rb +1 -1
  715. data/spec/models/template_content_item_spec.rb +1 -1
  716. data/spec/models/template_input_content_inner_spec.rb +1 -1
  717. data/spec/models/template_input_spec.rb +1 -1
  718. data/spec/models/template_spec.rb +1 -1
  719. data/spec/models/update_media_request_spec.rb +1 -1
  720. data/spec/models/update_post200_response_spec.rb +1 -1
  721. data/spec/models/upload_chunk201_response_spec.rb +1 -1
  722. data/spec/models/user_input_spec.rb +1 -1
  723. data/spec/models/user_spec.rb +1 -1
  724. data/spec/models/user_update_input_spec.rb +1 -1
  725. data/spec/models/webhook_envelope_spec.rb +1 -1
  726. data/spec/models/webhook_event_name_spec.rb +1 -1
  727. data/spec/models/webhook_event_payload_spec.rb +1 -1
  728. data/spec/models/webhook_subscription_input_spec.rb +1 -1
  729. data/spec/models/webhook_subscription_spec.rb +1 -1
  730. data/spec/models/workspace_agent_input_spec.rb +1 -1
  731. data/spec/models/workspace_agent_settings_spec.rb +1 -1
  732. data/spec/models/workspace_agent_spec.rb +1 -1
  733. data/spec/models/workspace_agent_update_spec.rb +1 -1
  734. data/spec/models/workspace_input_spec.rb +1 -1
  735. data/spec/models/workspace_spec.rb +1 -1
  736. data/spec/models/workspace_user_input_spec.rb +1 -1
  737. data/spec/models/x_usage_counter_spec.rb +1 -1
  738. data/spec/models/x_usage_spec.rb +1 -1
  739. data/spec/spec_helper.rb +1 -1
  740. metadata +45 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bfe6b979842e32665d73a1dc7b29b35167f1fa78821cdd4c1d9c944333432dd5
4
- data.tar.gz: d3d223cf8f07b1556792fac94b8c38506c4c48a01662a8d79a42b22cc09a6188
3
+ metadata.gz: 968b5251aaee3298d0c871697258f34f620bd4a4a7267462c56608d614088de4
4
+ data.tar.gz: f6c9cd7f2e9e50ae9e499d04a0d810e75992c2e496e6c174bcb9db32f40ea528
5
5
  SHA512:
6
- metadata.gz: 7917babad61807f05fdd1bb5702936bd10072a57d1e433f7a06dee816ff98deab5bda7692ec816d31b7703caf11684a95a7ec486042b0e0a8eb33ce42c2cb6e0
7
- data.tar.gz: d9f01db778613fad79251f236a834d76c137309ac112067d9d329aed7f32238c85a16fbc8b7f0d29367e8a3346b32ecd49d56940b1efe816300b963735bd57c8
6
+ metadata.gz: b96d9f749409ca72e84997c497988badf6c6e759a563a6cace83dfce2e963b442b2a010ca17adeadfe6baaf21e621e4a7fe9887f39ad56044738f3cdea4e8229
7
+ data.tar.gz: 45c42cd12f076d2b607d5a5710839105e4d4660a492571fb51767557d35f05a81b78ef82870dfbac3952bbeb4d57ec397fc7d316fef9312fbf6d26c65f015ccb
data/README.md CHANGED
@@ -13,7 +13,7 @@ gem install postboost
13
13
  | **RubyGems** | [rubygems.org/gems/postboost](https://rubygems.org/gems/postboost) |
14
14
  | **GitHub** | [postboost-co/postboost-ruby](https://github.com/postboost-co/postboost-ruby) |
15
15
  | **Docs** | [postboost.co/docs/api](https://postboost.co/docs/api) |
16
- | **Version** | v1.38.0 |
16
+ | **Version** | v1.40.0 |
17
17
 
18
18
  ## Quick start
19
19
 
@@ -92,15 +92,19 @@ Class | Method | HTTP request | Description
92
92
  *PostBoost::FreeToolsApi* | [**calculate_engagement_rate**](docs/FreeToolsApi.md#calculate_engagement_rate) | **POST** /tools/engagement-rate-calculator | Calculate an engagement rate
93
93
  *PostBoost::FreeToolsApi* | [**check_link_preview**](docs/FreeToolsApi.md#check_link_preview) | **POST** /tools/link-preview-checker | Check how a link previews on X, LinkedIn, Facebook and chat apps (Open Graph and Twitter card tags)
94
94
  *PostBoost::FreeToolsApi* | [**check_post**](docs/FreeToolsApi.md#check_post) | **POST** /tools/social-media-post-checker | Check a post against each network's publishing rules
95
+ *PostBoost::FreeToolsApi* | [**check_youtube_thumbnail**](docs/FreeToolsApi.md#check_youtube_thumbnail) | **POST** /tools/youtube-thumbnail-size-checker | Check a YouTube thumbnail's ratio, width, file size and format against YouTube's requirements
95
96
  *PostBoost::FreeToolsApi* | [**clean_text**](docs/FreeToolsApi.md#clean_text) | **POST** /tools/ai-text-cleaner | Clean AI-written text: dashes, quotes, invisible characters, markdown
96
97
  *PostBoost::FreeToolsApi* | [**count_characters**](docs/FreeToolsApi.md#count_characters) | **POST** /tools/social-media-character-counter | Count characters as each network counts them
97
98
  *PostBoost::FreeToolsApi* | [**format_linked_in_post**](docs/FreeToolsApi.md#format_linked_in_post) | **POST** /tools/linkedin-post-formatter | Format a LinkedIn post with bold, italic and lists
98
99
  *PostBoost::FreeToolsApi* | [**generate_caption**](docs/FreeToolsApi.md#generate_caption) | **POST** /tools/instagram-caption-generator | Write three post captions for a topic with AI (needs a token, spends AI credits)
99
100
  *PostBoost::FreeToolsApi* | [**generate_fancy_text**](docs/FreeToolsApi.md#generate_fancy_text) | **POST** /tools/fancy-text-generator | Convert text to fancy Unicode styles
100
101
  *PostBoost::FreeToolsApi* | [**generate_hashtags**](docs/FreeToolsApi.md#generate_hashtags) | **POST** /tools/instagram-hashtag-generator | Generate hashtags for a post topic with AI (needs a token, spends AI credits)
102
+ *PostBoost::FreeToolsApi* | [**generate_hooks**](docs/FreeToolsApi.md#generate_hooks) | **POST** /tools/hook-generator | Generate hooks (opening lines) for a social media post with AI (needs a token, spends AI credits)
101
103
  *PostBoost::FreeToolsApi* | [**generate_qr_code**](docs/FreeToolsApi.md#generate_qr_code) | **POST** /tools/qr-code-generator | Generate a QR code (SVG) for a link or text, with optional UTM tags
102
104
  *PostBoost::FreeToolsApi* | [**get_best_times_to_post**](docs/FreeToolsApi.md#get_best_times_to_post) | **GET** /tools/best-time-to-post | Get the best times to post per network from published studies, with sources
105
+ *PostBoost::FreeToolsApi* | [**get_hook_templates**](docs/FreeToolsApi.md#get_hook_templates) | **GET** /tools/hook-generator/library | Get free hook templates for social media posts, filtered by style and network
103
106
  *PostBoost::FreeToolsApi* | [**get_image_sizes**](docs/FreeToolsApi.md#get_image_sizes) | **GET** /tools/social-media-image-sizes | Get social media image sizes per network, each with its source
107
+ *PostBoost::FreeToolsApi* | [**get_video_specs**](docs/FreeToolsApi.md#get_video_specs) | **GET** /tools/social-media-video-specs | Get social media video ratios, resolutions, lengths and file size limits per network, with sources
104
108
  *PostBoost::FreeToolsApi* | [**list_free_tools**](docs/FreeToolsApi.md#list_free_tools) | **GET** /tools | List the free tools
105
109
  *PostBoost::FreeToolsApi* | [**preview_post**](docs/FreeToolsApi.md#preview_post) | **POST** /tools/social-media-post-preview | Preview where a post folds and when its image is cropped on Instagram, X, LinkedIn and Facebook
106
110
  *PostBoost::FreeToolsApi* | [**split_thread**](docs/FreeToolsApi.md#split_thread) | **POST** /tools/x-thread-maker | Split long text into a thread
@@ -0,0 +1,24 @@
1
+ # PostBoost::FreeToolCheckYoutubeThumbnailRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **width** | **Integer** | Image width in pixels. | |
8
+ | **height** | **Integer** | Image height in pixels. | |
9
+ | **file_size_bytes** | **Integer** | File size in bytes. | |
10
+ | **format** | **String** | MIME type, e.g. `image/png` or `image/jpeg`. | |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'postboost'
16
+
17
+ instance = PostBoost::FreeToolCheckYoutubeThumbnailRequest.new(
18
+ width: null,
19
+ height: null,
20
+ file_size_bytes: null,
21
+ format: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,20 @@
1
+ # PostBoost::FreeToolCheckYoutubeThumbnailResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **ok** | **Boolean** | False when any check fails. | [optional] |
8
+ | **checks** | [**Array<FreeToolCheckYoutubeThumbnailResponseChecksInner>**](FreeToolCheckYoutubeThumbnailResponseChecksInner.md) | | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'postboost'
14
+
15
+ instance = PostBoost::FreeToolCheckYoutubeThumbnailResponse.new(
16
+ ok: null,
17
+ checks: null
18
+ )
19
+ ```
20
+
@@ -0,0 +1,24 @@
1
+ # PostBoost::FreeToolCheckYoutubeThumbnailResponseChecksInner
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **key** | **String** | | [optional] |
8
+ | **label** | **String** | | [optional] |
9
+ | **status** | **String** | `check`: a format YouTube may accept but does not name. | [optional] |
10
+ | **detail** | **String** | The value found and the requirement. | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'postboost'
16
+
17
+ instance = PostBoost::FreeToolCheckYoutubeThumbnailResponseChecksInner.new(
18
+ key: null,
19
+ label: null,
20
+ status: null,
21
+ detail: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,26 @@
1
+ # PostBoost::FreeToolGenerateHooksRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **topic** | **String** | What the post is about. | |
8
+ | **tone** | **String** | Tone of the hooks, as on the caption generator. | [optional][default to 'friendly'] |
9
+ | **count** | **Integer** | How many hooks to write. | [optional][default to 5] |
10
+ | **network** | **String** | The network the text is written for. | [optional][default to 'instagram'] |
11
+ | **workspace** | **String** | UUID of the workspace whose AI credits pay for the call. Default: your active workspace (a scoped API key: its own workspace). | [optional] |
12
+
13
+ ## Example
14
+
15
+ ```ruby
16
+ require 'postboost'
17
+
18
+ instance = PostBoost::FreeToolGenerateHooksRequest.new(
19
+ topic: null,
20
+ tone: null,
21
+ count: null,
22
+ network: null,
23
+ workspace: null
24
+ )
25
+ ```
26
+
@@ -0,0 +1,24 @@
1
+ # PostBoost::FreeToolGenerateHooksResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **hooks** | [**Array<FreeToolGenerateHooksResponseHooksInner>**](FreeToolGenerateHooksResponseHooksInner.md) | `count` hooks in several styles. | [optional] |
8
+ | **notice** | **String** | Only while AI is switched off: the hooks are templates from the free library (getHookTemplates) with the topic filled in, free of charge. | [optional] |
9
+ | **credits_spent** | **Integer** | AI credits this call took from the workspace: 1, or 0 for a cached result. | [optional] |
10
+ | **cached** | **Boolean** | True when the same request was answered before (free). | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'postboost'
16
+
17
+ instance = PostBoost::FreeToolGenerateHooksResponse.new(
18
+ hooks: null,
19
+ notice: null,
20
+ credits_spent: null,
21
+ cached: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,20 @@
1
+ # PostBoost::FreeToolGenerateHooksResponseHooksInner
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **text** | **String** | The hook. | [optional] |
8
+ | **category** | **String** | Hook style, as in getHookTemplates. | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'postboost'
14
+
15
+ instance = PostBoost::FreeToolGenerateHooksResponseHooksInner.new(
16
+ text: null,
17
+ category: null
18
+ )
19
+ ```
20
+
@@ -0,0 +1,20 @@
1
+ # PostBoost::FreeToolGetHookTemplatesResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **hooks** | [**Array<FreeToolGetHookTemplatesResponseHooksInner>**](FreeToolGetHookTemplatesResponseHooksInner.md) | | [optional] |
8
+ | **total** | **Integer** | Number of hooks returned. | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'postboost'
14
+
15
+ instance = PostBoost::FreeToolGetHookTemplatesResponse.new(
16
+ hooks: null,
17
+ total: null
18
+ )
19
+ ```
20
+
@@ -0,0 +1,24 @@
1
+ # PostBoost::FreeToolGetHookTemplatesResponseHooksInner
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **text** | **String** | The hook, with `{topic}` filled in when a topic was given. | [optional] |
8
+ | **template** | **String** | The template with its `{topic}` placeholder. | [optional] |
9
+ | **category** | **String** | Hook style. | [optional] |
10
+ | **networks** | **Array<String>** | Networks the hook suits. | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'postboost'
16
+
17
+ instance = PostBoost::FreeToolGetHookTemplatesResponseHooksInner.new(
18
+ text: null,
19
+ template: null,
20
+ category: null,
21
+ networks: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,22 @@
1
+ # PostBoost::FreeToolGetVideoSpecsResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **specs** | [**Array<FreeToolGetVideoSpecsResponseSpecsInner>**](FreeToolGetVideoSpecsResponseSpecsInner.md) | | [optional] |
8
+ | **last_verified** | **Date** | When the data was last checked against its sources. | [optional] |
9
+ | **sources** | [**Array<FreeToolGetImageSizesResponseSourcesInner>**](FreeToolGetImageSizesResponseSourcesInner.md) | Sources of the whole dataset (rows may name their own). | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'postboost'
15
+
16
+ instance = PostBoost::FreeToolGetVideoSpecsResponse.new(
17
+ specs: null,
18
+ last_verified: null,
19
+ sources: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,42 @@
1
+ # PostBoost::FreeToolGetVideoSpecsResponseSpecsInner
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **network** | **String** | Network name. | [optional] |
8
+ | **network_key** | **String** | Key for `network`. | [optional] |
9
+ | **placement** | **String** | Placement; `(app)` and `(publishing API)` rows differ where the network says so. | [optional] |
10
+ | **placement_key** | **String** | Key for `placement`. | [optional] |
11
+ | **ratio** | **String** | Aspect ratios as the source states them. | [optional] |
12
+ | **resolution** | **String** | Resolution, frame rate and codec notes. | [optional] |
13
+ | **length** | **String** | Length limits. | [optional] |
14
+ | **max_size** | **String** | File size limit. | [optional] |
15
+ | **formats** | **String** | Container and codec formats. | [optional] |
16
+ | **safe_zone** | **String** | Text safe zone, only where the network publishes one. | [optional] |
17
+ | **basis** | **String** | `official` when the network itself states it, else how it was found. | [optional] |
18
+ | **sources** | **Array<String>** | URLs of the sources. | [optional] |
19
+ | **limits** | [**FreeToolGetVideoSpecsResponseSpecsInnerLimits**](FreeToolGetVideoSpecsResponseSpecsInnerLimits.md) | | [optional] |
20
+
21
+ ## Example
22
+
23
+ ```ruby
24
+ require 'postboost'
25
+
26
+ instance = PostBoost::FreeToolGetVideoSpecsResponseSpecsInner.new(
27
+ network: null,
28
+ network_key: null,
29
+ placement: null,
30
+ placement_key: null,
31
+ ratio: null,
32
+ resolution: null,
33
+ length: null,
34
+ max_size: null,
35
+ formats: null,
36
+ safe_zone: null,
37
+ basis: null,
38
+ sources: null,
39
+ limits: null
40
+ )
41
+ ```
42
+
@@ -0,0 +1,30 @@
1
+ # PostBoost::FreeToolGetVideoSpecsResponseSpecsInnerLimits
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **min_seconds** | **Float** | Shortest length. Null when the source states no figure. | [optional] |
8
+ | **max_seconds** | **Float** | Longest length. Null when the source states no figure. | [optional] |
9
+ | **warn_over_seconds** | **Float** | Longer videos need a check (account type, reach), see `length`. Null when the source states no figure. | [optional] |
10
+ | **min_ratio** | **Float** | Narrowest width / height. Null when the source states no figure. | [optional] |
11
+ | **max_ratio** | **Float** | Widest width / height. Null when the source states no figure. | [optional] |
12
+ | **recommended_ratio** | **String** | Recommended ratio, e.g. `9:16`. | [optional] |
13
+ | **max_mb** | **Float** | Largest file in MB. Null when the source states no figure. | [optional] |
14
+
15
+ ## Example
16
+
17
+ ```ruby
18
+ require 'postboost'
19
+
20
+ instance = PostBoost::FreeToolGetVideoSpecsResponseSpecsInnerLimits.new(
21
+ min_seconds: null,
22
+ max_seconds: null,
23
+ warn_over_seconds: null,
24
+ min_ratio: null,
25
+ max_ratio: null,
26
+ recommended_ratio: null,
27
+ max_mb: null
28
+ )
29
+ ```
30
+
data/docs/FreeToolsApi.md CHANGED
@@ -10,15 +10,19 @@ All URIs are relative to *https://postboost.co/app/api*
10
10
  | [**calculate_engagement_rate**](FreeToolsApi.md#calculate_engagement_rate) | **POST** /tools/engagement-rate-calculator | Calculate an engagement rate |
11
11
  | [**check_link_preview**](FreeToolsApi.md#check_link_preview) | **POST** /tools/link-preview-checker | Check how a link previews on X, LinkedIn, Facebook and chat apps (Open Graph and Twitter card tags) |
12
12
  | [**check_post**](FreeToolsApi.md#check_post) | **POST** /tools/social-media-post-checker | Check a post against each network's publishing rules |
13
+ | [**check_youtube_thumbnail**](FreeToolsApi.md#check_youtube_thumbnail) | **POST** /tools/youtube-thumbnail-size-checker | Check a YouTube thumbnail's ratio, width, file size and format against YouTube's requirements |
13
14
  | [**clean_text**](FreeToolsApi.md#clean_text) | **POST** /tools/ai-text-cleaner | Clean AI-written text: dashes, quotes, invisible characters, markdown |
14
15
  | [**count_characters**](FreeToolsApi.md#count_characters) | **POST** /tools/social-media-character-counter | Count characters as each network counts them |
15
16
  | [**format_linked_in_post**](FreeToolsApi.md#format_linked_in_post) | **POST** /tools/linkedin-post-formatter | Format a LinkedIn post with bold, italic and lists |
16
17
  | [**generate_caption**](FreeToolsApi.md#generate_caption) | **POST** /tools/instagram-caption-generator | Write three post captions for a topic with AI (needs a token, spends AI credits) |
17
18
  | [**generate_fancy_text**](FreeToolsApi.md#generate_fancy_text) | **POST** /tools/fancy-text-generator | Convert text to fancy Unicode styles |
18
19
  | [**generate_hashtags**](FreeToolsApi.md#generate_hashtags) | **POST** /tools/instagram-hashtag-generator | Generate hashtags for a post topic with AI (needs a token, spends AI credits) |
20
+ | [**generate_hooks**](FreeToolsApi.md#generate_hooks) | **POST** /tools/hook-generator | Generate hooks (opening lines) for a social media post with AI (needs a token, spends AI credits) |
19
21
  | [**generate_qr_code**](FreeToolsApi.md#generate_qr_code) | **POST** /tools/qr-code-generator | Generate a QR code (SVG) for a link or text, with optional UTM tags |
20
22
  | [**get_best_times_to_post**](FreeToolsApi.md#get_best_times_to_post) | **GET** /tools/best-time-to-post | Get the best times to post per network from published studies, with sources |
23
+ | [**get_hook_templates**](FreeToolsApi.md#get_hook_templates) | **GET** /tools/hook-generator/library | Get free hook templates for social media posts, filtered by style and network |
21
24
  | [**get_image_sizes**](FreeToolsApi.md#get_image_sizes) | **GET** /tools/social-media-image-sizes | Get social media image sizes per network, each with its source |
25
+ | [**get_video_specs**](FreeToolsApi.md#get_video_specs) | **GET** /tools/social-media-video-specs | Get social media video ratios, resolutions, lengths and file size limits per network, with sources |
22
26
  | [**list_free_tools**](FreeToolsApi.md#list_free_tools) | **GET** /tools | List the free tools |
23
27
  | [**preview_post**](FreeToolsApi.md#preview_post) | **POST** /tools/social-media-post-preview | Preview where a post folds and when its image is cropped on Instagram, X, LinkedIn and Facebook |
24
28
  | [**split_thread**](FreeToolsApi.md#split_thread) | **POST** /tools/x-thread-maker | Split long text into a thread |
@@ -408,6 +412,70 @@ No authorization required
408
412
  - **Accept**: application/json
409
413
 
410
414
 
415
+ ## check_youtube_thumbnail
416
+
417
+ > <FreeToolCheckYoutubeThumbnailResponse> check_youtube_thumbnail(free_tool_check_youtube_thumbnail_request)
418
+
419
+ Check a YouTube thumbnail's ratio, width, file size and format against YouTube's requirements
420
+
421
+ Check a YouTube thumbnail's ratio, width, file size and format against YouTube's requirements. The same logic as the free web tool at https://postboost.co/tools/youtube-thumbnail-size-checker. No account needed: call it without a token, or with any API token.
422
+
423
+ ### Examples
424
+
425
+ ```ruby
426
+ require 'time'
427
+ require 'postboost'
428
+
429
+ api_instance = PostBoost::FreeToolsApi.new
430
+ free_tool_check_youtube_thumbnail_request = PostBoost::FreeToolCheckYoutubeThumbnailRequest.new({width: 37, height: 37, file_size_bytes: 37, format: 'format_example'}) # FreeToolCheckYoutubeThumbnailRequest |
431
+
432
+ begin
433
+ # Check a YouTube thumbnail's ratio, width, file size and format against YouTube's requirements
434
+ result = api_instance.check_youtube_thumbnail(free_tool_check_youtube_thumbnail_request)
435
+ p result
436
+ rescue PostBoost::ApiError => e
437
+ puts "Error when calling FreeToolsApi->check_youtube_thumbnail: #{e}"
438
+ end
439
+ ```
440
+
441
+ #### Using the check_youtube_thumbnail_with_http_info variant
442
+
443
+ This returns an Array which contains the response data, status code and headers.
444
+
445
+ > <Array(<FreeToolCheckYoutubeThumbnailResponse>, Integer, Hash)> check_youtube_thumbnail_with_http_info(free_tool_check_youtube_thumbnail_request)
446
+
447
+ ```ruby
448
+ begin
449
+ # Check a YouTube thumbnail's ratio, width, file size and format against YouTube's requirements
450
+ data, status_code, headers = api_instance.check_youtube_thumbnail_with_http_info(free_tool_check_youtube_thumbnail_request)
451
+ p status_code # => 2xx
452
+ p headers # => { ... }
453
+ p data # => <FreeToolCheckYoutubeThumbnailResponse>
454
+ rescue PostBoost::ApiError => e
455
+ puts "Error when calling FreeToolsApi->check_youtube_thumbnail_with_http_info: #{e}"
456
+ end
457
+ ```
458
+
459
+ ### Parameters
460
+
461
+ | Name | Type | Description | Notes |
462
+ | ---- | ---- | ----------- | ----- |
463
+ | **free_tool_check_youtube_thumbnail_request** | [**FreeToolCheckYoutubeThumbnailRequest**](FreeToolCheckYoutubeThumbnailRequest.md) | | |
464
+
465
+ ### Return type
466
+
467
+ [**FreeToolCheckYoutubeThumbnailResponse**](FreeToolCheckYoutubeThumbnailResponse.md)
468
+
469
+ ### Authorization
470
+
471
+ No authorization required
472
+
473
+ ### HTTP request headers
474
+
475
+ - **Content-Type**: application/json
476
+ - **Accept**: application/json
477
+
478
+
411
479
  ## clean_text
412
480
 
413
481
  > <FreeToolCleanTextResponse> clean_text(free_tool_clean_text_request)
@@ -802,6 +870,75 @@ end
802
870
  - **Accept**: application/json
803
871
 
804
872
 
873
+ ## generate_hooks
874
+
875
+ > <FreeToolGenerateHooksResponse> generate_hooks(free_tool_generate_hooks_request)
876
+
877
+ Generate hooks (opening lines) for a social media post with AI (needs a token, spends AI credits)
878
+
879
+ Generate hooks (opening lines) for a social media post with AI (needs a token, spends AI credits). The same logic as the free web tool at https://postboost.co/tools/hook-generator. Needs an API token (a scoped key needs the `ai` ability and pays with its own workspace). A new generation spends 1 AI credit of the workspace you name (or your active workspace); a repeated identical request is answered from the cache for free.
880
+
881
+ ### Examples
882
+
883
+ ```ruby
884
+ require 'time'
885
+ require 'postboost'
886
+ # setup authorization
887
+ PostBoost.configure do |config|
888
+ # Configure Bearer authorization: bearerAuth
889
+ config.access_token = 'YOUR_BEARER_TOKEN'
890
+ end
891
+
892
+ api_instance = PostBoost::FreeToolsApi.new
893
+ free_tool_generate_hooks_request = PostBoost::FreeToolGenerateHooksRequest.new({topic: 'topic_example'}) # FreeToolGenerateHooksRequest |
894
+
895
+ begin
896
+ # Generate hooks (opening lines) for a social media post with AI (needs a token, spends AI credits)
897
+ result = api_instance.generate_hooks(free_tool_generate_hooks_request)
898
+ p result
899
+ rescue PostBoost::ApiError => e
900
+ puts "Error when calling FreeToolsApi->generate_hooks: #{e}"
901
+ end
902
+ ```
903
+
904
+ #### Using the generate_hooks_with_http_info variant
905
+
906
+ This returns an Array which contains the response data, status code and headers.
907
+
908
+ > <Array(<FreeToolGenerateHooksResponse>, Integer, Hash)> generate_hooks_with_http_info(free_tool_generate_hooks_request)
909
+
910
+ ```ruby
911
+ begin
912
+ # Generate hooks (opening lines) for a social media post with AI (needs a token, spends AI credits)
913
+ data, status_code, headers = api_instance.generate_hooks_with_http_info(free_tool_generate_hooks_request)
914
+ p status_code # => 2xx
915
+ p headers # => { ... }
916
+ p data # => <FreeToolGenerateHooksResponse>
917
+ rescue PostBoost::ApiError => e
918
+ puts "Error when calling FreeToolsApi->generate_hooks_with_http_info: #{e}"
919
+ end
920
+ ```
921
+
922
+ ### Parameters
923
+
924
+ | Name | Type | Description | Notes |
925
+ | ---- | ---- | ----------- | ----- |
926
+ | **free_tool_generate_hooks_request** | [**FreeToolGenerateHooksRequest**](FreeToolGenerateHooksRequest.md) | | |
927
+
928
+ ### Return type
929
+
930
+ [**FreeToolGenerateHooksResponse**](FreeToolGenerateHooksResponse.md)
931
+
932
+ ### Authorization
933
+
934
+ [bearerAuth](../README.md#bearerAuth)
935
+
936
+ ### HTTP request headers
937
+
938
+ - **Content-Type**: application/json
939
+ - **Accept**: application/json
940
+
941
+
805
942
  ## generate_qr_code
806
943
 
807
944
  > <FreeToolGenerateQrCodeResponse> generate_qr_code(free_tool_generate_qr_code_request)
@@ -932,6 +1069,78 @@ No authorization required
932
1069
  - **Accept**: application/json
933
1070
 
934
1071
 
1072
+ ## get_hook_templates
1073
+
1074
+ > <FreeToolGetHookTemplatesResponse> get_hook_templates(opts)
1075
+
1076
+ Get free hook templates for social media posts, filtered by style and network
1077
+
1078
+ Get free hook templates for social media posts, filtered by style and network. The same logic as the free web tool at https://postboost.co/tools/hook-generator. No account needed: call it without a token, or with any API token.
1079
+
1080
+ ### Examples
1081
+
1082
+ ```ruby
1083
+ require 'time'
1084
+ require 'postboost'
1085
+
1086
+ api_instance = PostBoost::FreeToolsApi.new
1087
+ opts = {
1088
+ topic: 'topic_example', # String |
1089
+ category: 'question', # String |
1090
+ network: 'instagram', # String |
1091
+ search: 'search_example' # String |
1092
+ }
1093
+
1094
+ begin
1095
+ # Get free hook templates for social media posts, filtered by style and network
1096
+ result = api_instance.get_hook_templates(opts)
1097
+ p result
1098
+ rescue PostBoost::ApiError => e
1099
+ puts "Error when calling FreeToolsApi->get_hook_templates: #{e}"
1100
+ end
1101
+ ```
1102
+
1103
+ #### Using the get_hook_templates_with_http_info variant
1104
+
1105
+ This returns an Array which contains the response data, status code and headers.
1106
+
1107
+ > <Array(<FreeToolGetHookTemplatesResponse>, Integer, Hash)> get_hook_templates_with_http_info(opts)
1108
+
1109
+ ```ruby
1110
+ begin
1111
+ # Get free hook templates for social media posts, filtered by style and network
1112
+ data, status_code, headers = api_instance.get_hook_templates_with_http_info(opts)
1113
+ p status_code # => 2xx
1114
+ p headers # => { ... }
1115
+ p data # => <FreeToolGetHookTemplatesResponse>
1116
+ rescue PostBoost::ApiError => e
1117
+ puts "Error when calling FreeToolsApi->get_hook_templates_with_http_info: #{e}"
1118
+ end
1119
+ ```
1120
+
1121
+ ### Parameters
1122
+
1123
+ | Name | Type | Description | Notes |
1124
+ | ---- | ---- | ----------- | ----- |
1125
+ | **topic** | **String** | | [optional] |
1126
+ | **category** | **String** | | [optional] |
1127
+ | **network** | **String** | | [optional] |
1128
+ | **search** | **String** | | [optional] |
1129
+
1130
+ ### Return type
1131
+
1132
+ [**FreeToolGetHookTemplatesResponse**](FreeToolGetHookTemplatesResponse.md)
1133
+
1134
+ ### Authorization
1135
+
1136
+ No authorization required
1137
+
1138
+ ### HTTP request headers
1139
+
1140
+ - **Content-Type**: Not defined
1141
+ - **Accept**: application/json
1142
+
1143
+
935
1144
  ## get_image_sizes
936
1145
 
937
1146
  > <FreeToolGetImageSizesResponse> get_image_sizes(opts)
@@ -998,6 +1207,72 @@ No authorization required
998
1207
  - **Accept**: application/json
999
1208
 
1000
1209
 
1210
+ ## get_video_specs
1211
+
1212
+ > <FreeToolGetVideoSpecsResponse> get_video_specs(opts)
1213
+
1214
+ Get social media video ratios, resolutions, lengths and file size limits per network, with sources
1215
+
1216
+ Get social media video ratios, resolutions, lengths and file size limits per network, with sources. The same logic as the free web tool at https://postboost.co/tools/social-media-video-specs. No account needed: call it without a token, or with any API token.
1217
+
1218
+ ### Examples
1219
+
1220
+ ```ruby
1221
+ require 'time'
1222
+ require 'postboost'
1223
+
1224
+ api_instance = PostBoost::FreeToolsApi.new
1225
+ opts = {
1226
+ network: 'network_example' # String |
1227
+ }
1228
+
1229
+ begin
1230
+ # Get social media video ratios, resolutions, lengths and file size limits per network, with sources
1231
+ result = api_instance.get_video_specs(opts)
1232
+ p result
1233
+ rescue PostBoost::ApiError => e
1234
+ puts "Error when calling FreeToolsApi->get_video_specs: #{e}"
1235
+ end
1236
+ ```
1237
+
1238
+ #### Using the get_video_specs_with_http_info variant
1239
+
1240
+ This returns an Array which contains the response data, status code and headers.
1241
+
1242
+ > <Array(<FreeToolGetVideoSpecsResponse>, Integer, Hash)> get_video_specs_with_http_info(opts)
1243
+
1244
+ ```ruby
1245
+ begin
1246
+ # Get social media video ratios, resolutions, lengths and file size limits per network, with sources
1247
+ data, status_code, headers = api_instance.get_video_specs_with_http_info(opts)
1248
+ p status_code # => 2xx
1249
+ p headers # => { ... }
1250
+ p data # => <FreeToolGetVideoSpecsResponse>
1251
+ rescue PostBoost::ApiError => e
1252
+ puts "Error when calling FreeToolsApi->get_video_specs_with_http_info: #{e}"
1253
+ end
1254
+ ```
1255
+
1256
+ ### Parameters
1257
+
1258
+ | Name | Type | Description | Notes |
1259
+ | ---- | ---- | ----------- | ----- |
1260
+ | **network** | **String** | | [optional] |
1261
+
1262
+ ### Return type
1263
+
1264
+ [**FreeToolGetVideoSpecsResponse**](FreeToolGetVideoSpecsResponse.md)
1265
+
1266
+ ### Authorization
1267
+
1268
+ No authorization required
1269
+
1270
+ ### HTTP request headers
1271
+
1272
+ - **Content-Type**: Not defined
1273
+ - **Accept**: application/json
1274
+
1275
+
1001
1276
  ## list_free_tools
1002
1277
 
1003
1278
  > <FreeToolList> list_free_tools
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The PostBoost REST API lets you publish, schedule, and analyze social media posts on every supported network from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account's daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
5
5
 
6
- The version of the OpenAPI document: 1.38.0
6
+ The version of the OpenAPI document: 1.40.0
7
7
  Contact: hi@postboost.co
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.9.0