postboost 1.40.0 → 1.42.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 (750) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -1
  3. data/docs/FreeToolFormatInstagramCaptionRequest.md +22 -0
  4. data/docs/FreeToolFormatInstagramCaptionResponse.md +28 -0
  5. data/docs/FreeToolGenerateSocialPostsFromBlogRequest.md +32 -0
  6. data/docs/FreeToolGenerateSocialPostsFromBlogResponse.md +24 -0
  7. data/docs/FreeToolGenerateSocialPostsFromBlogResponsePostsInner.md +26 -0
  8. data/docs/FreeToolGenerateSocialPostsFromBlogResponseSource.md +20 -0
  9. data/docs/FreeToolGenerateSocialPostsFromBlogResponseWarningsInner.md +22 -0
  10. data/docs/FreeToolsApi.md +135 -0
  11. data/lib/postboost/api/account_groups_api.rb +1 -1
  12. data/lib/postboost/api/accounts_api.rb +1 -1
  13. data/lib/postboost/api/activity_api.rb +1 -1
  14. data/lib/postboost/api/agents_api.rb +1 -1
  15. data/lib/postboost/api/ai_api.rb +1 -1
  16. data/lib/postboost/api/analytics_api.rb +1 -1
  17. data/lib/postboost/api/competitors_api.rb +1 -1
  18. data/lib/postboost/api/free_tools_api.rb +137 -1
  19. data/lib/postboost/api/hashtag_groups_api.rb +1 -1
  20. data/lib/postboost/api/inbox_api.rb +1 -1
  21. data/lib/postboost/api/media_api.rb +1 -1
  22. data/lib/postboost/api/mentions_api.rb +1 -1
  23. data/lib/postboost/api/posting_schedule_api.rb +1 -1
  24. data/lib/postboost/api/posts_api.rb +1 -1
  25. data/lib/postboost/api/receipts_api.rb +1 -1
  26. data/lib/postboost/api/subscriptions_api.rb +1 -1
  27. data/lib/postboost/api/tags_api.rb +1 -1
  28. data/lib/postboost/api/templates_api.rb +1 -1
  29. data/lib/postboost/api/users_api.rb +1 -1
  30. data/lib/postboost/api/webhooks_api.rb +1 -1
  31. data/lib/postboost/api/workspaces_api.rb +1 -1
  32. data/lib/postboost/api_client.rb +1 -1
  33. data/lib/postboost/api_error.rb +1 -1
  34. data/lib/postboost/configuration.rb +1 -1
  35. data/lib/postboost/models/account.rb +1 -1
  36. data/lib/postboost/models/account_analytics.rb +1 -1
  37. data/lib/postboost/models/account_analytics_initial_sync.rb +1 -1
  38. data/lib/postboost/models/account_connection_health.rb +1 -1
  39. data/lib/postboost/models/account_connection_health_reconnect_reason.rb +1 -1
  40. data/lib/postboost/models/account_errors_inner.rb +1 -1
  41. data/lib/postboost/models/account_errors_inner_one_of.rb +1 -1
  42. data/lib/postboost/models/account_group.rb +1 -1
  43. data/lib/postboost/models/account_group_input.rb +1 -1
  44. data/lib/postboost/models/account_health.rb +1 -1
  45. data/lib/postboost/models/account_health_daily_cap.rb +1 -1
  46. data/lib/postboost/models/account_schedule.rb +1 -1
  47. data/lib/postboost/models/add_competitor202_response.rb +1 -1
  48. data/lib/postboost/models/add_competitor409_response.rb +1 -1
  49. data/lib/postboost/models/add_generic_subscription_request.rb +1 -1
  50. data/lib/postboost/models/add_post_to_queue_request.rb +1 -1
  51. data/lib/postboost/models/agent_page_meta.rb +1 -1
  52. data/lib/postboost/models/agent_proposal.rb +1 -1
  53. data/lib/postboost/models/agent_proposal_decision.rb +1 -1
  54. data/lib/postboost/models/agent_run.rb +1 -1
  55. data/lib/postboost/models/ai_credits.rb +1 -1
  56. data/lib/postboost/models/ai_usage.rb +1 -1
  57. data/lib/postboost/models/ai_usage_text.rb +1 -1
  58. data/lib/postboost/models/analytics_period.rb +1 -1
  59. data/lib/postboost/models/analytics_summary.rb +1 -1
  60. data/lib/postboost/models/analytics_summary_data.rb +1 -1
  61. data/lib/postboost/models/api_activity.rb +1 -1
  62. data/lib/postboost/models/api_activity_outcome.rb +1 -1
  63. data/lib/postboost/models/api_key.rb +1 -1
  64. data/lib/postboost/models/api_key_ability.rb +1 -1
  65. data/lib/postboost/models/api_key_input.rb +1 -1
  66. data/lib/postboost/models/approve_agent_proposal200_response.rb +1 -1
  67. data/lib/postboost/models/approve_agent_proposal409_response.rb +1 -1
  68. data/lib/postboost/models/approve_inbox_reply_draft403_response.rb +1 -1
  69. data/lib/postboost/models/approve_post_request.rb +1 -1
  70. data/lib/postboost/models/best_posting_times.rb +1 -1
  71. data/lib/postboost/models/best_posting_times_times_inner.rb +1 -1
  72. data/lib/postboost/models/blog_to_social200_response.rb +1 -1
  73. data/lib/postboost/models/blog_to_social429_response.rb +1 -1
  74. data/lib/postboost/models/blog_to_social_caption.rb +1 -1
  75. data/lib/postboost/models/blog_to_social_input.rb +1 -1
  76. data/lib/postboost/models/blog_to_social_media.rb +1 -1
  77. data/lib/postboost/models/blog_to_social_response.rb +1 -1
  78. data/lib/postboost/models/brand_voice.rb +1 -1
  79. data/lib/postboost/models/brand_voice_input.rb +1 -1
  80. data/lib/postboost/models/brand_voice_meta.rb +1 -1
  81. data/lib/postboost/models/cancel_subscription422_response.rb +1 -1
  82. data/lib/postboost/models/cancel_subscription422_response_errors.rb +1 -1
  83. data/lib/postboost/models/cancel_subscription_request.rb +1 -1
  84. data/lib/postboost/models/change_subscription_plan_request.rb +1 -1
  85. data/lib/postboost/models/channel_account.rb +1 -1
  86. data/lib/postboost/models/checkout_subscription200_response.rb +1 -1
  87. data/lib/postboost/models/checkout_subscription_request.rb +1 -1
  88. data/lib/postboost/models/coded_error.rb +1 -1
  89. data/lib/postboost/models/competitor.rb +1 -1
  90. data/lib/postboost/models/competitor_detail.rb +1 -1
  91. data/lib/postboost/models/competitor_input.rb +1 -1
  92. data/lib/postboost/models/competitor_media.rb +1 -1
  93. data/lib/postboost/models/competitor_snapshot.rb +1 -1
  94. data/lib/postboost/models/complete_chunked_upload_request.rb +1 -1
  95. data/lib/postboost/models/connect_channel_input.rb +1 -1
  96. data/lib/postboost/models/connect_link.rb +1 -1
  97. data/lib/postboost/models/create_account_group201_response.rb +1 -1
  98. data/lib/postboost/models/create_agent201_response.rb +1 -1
  99. data/lib/postboost/models/create_api_key201_response.rb +1 -1
  100. data/lib/postboost/models/create_api_key201_response_data.rb +1 -1
  101. data/lib/postboost/models/create_connect_link_request.rb +1 -1
  102. data/lib/postboost/models/create_hashtag_group201_response.rb +1 -1
  103. data/lib/postboost/models/create_inbox_reply_draft201_response.rb +1 -1
  104. data/lib/postboost/models/create_media_folder_request.rb +1 -1
  105. data/lib/postboost/models/create_mention201_response.rb +1 -1
  106. data/lib/postboost/models/create_post201_response.rb +1 -1
  107. data/lib/postboost/models/create_recycling_rule201_response.rb +1 -1
  108. data/lib/postboost/models/create_report_export201_response.rb +1 -1
  109. data/lib/postboost/models/create_reseller_client201_response.rb +1 -1
  110. data/lib/postboost/models/create_rss_feed201_response.rb +1 -1
  111. data/lib/postboost/models/create_template201_response.rb +1 -1
  112. data/lib/postboost/models/create_webhook_subscription201_response.rb +1 -1
  113. data/lib/postboost/models/create_webhook_subscription201_response_data.rb +1 -1
  114. data/lib/postboost/models/delete_agent200_response.rb +1 -1
  115. data/lib/postboost/models/delete_media_bulk_request.rb +1 -1
  116. data/lib/postboost/models/delete_media_bulk_request_items_inner.rb +1 -1
  117. data/lib/postboost/models/delete_media_folder_request.rb +1 -1
  118. data/lib/postboost/models/delete_mode.rb +1 -1
  119. data/lib/postboost/models/delete_post_request.rb +1 -1
  120. data/lib/postboost/models/delete_posts_bulk_request.rb +1 -1
  121. data/lib/postboost/models/delete_receipts_bulk_request.rb +1 -1
  122. data/lib/postboost/models/delete_result.rb +1 -1
  123. data/lib/postboost/models/delete_user400_response.rb +1 -1
  124. data/lib/postboost/models/delete_users_bulk_request.rb +1 -1
  125. data/lib/postboost/models/delete_workspaces_bulk_request.rb +1 -1
  126. data/lib/postboost/models/free_tool_build_utm_url_request.rb +1 -1
  127. data/lib/postboost/models/free_tool_build_utm_url_response.rb +1 -1
  128. data/lib/postboost/models/free_tool_calculate_aspect_ratio_request.rb +1 -1
  129. data/lib/postboost/models/free_tool_calculate_aspect_ratio_response.rb +1 -1
  130. data/lib/postboost/models/free_tool_calculate_aspect_ratio_response_matches_inner.rb +1 -1
  131. data/lib/postboost/models/free_tool_calculate_aspect_ratio_response_rounding.rb +1 -1
  132. data/lib/postboost/models/free_tool_calculate_crop_request.rb +1 -1
  133. data/lib/postboost/models/free_tool_calculate_crop_response.rb +1 -1
  134. data/lib/postboost/models/free_tool_calculate_crop_response_crop.rb +1 -1
  135. data/lib/postboost/models/free_tool_calculate_crop_response_image.rb +1 -1
  136. data/lib/postboost/models/free_tool_calculate_crop_response_output.rb +1 -1
  137. data/lib/postboost/models/free_tool_calculate_engagement_rate_request.rb +1 -1
  138. data/lib/postboost/models/free_tool_calculate_engagement_rate_response.rb +1 -1
  139. data/lib/postboost/models/free_tool_check_link_preview_request.rb +1 -1
  140. data/lib/postboost/models/free_tool_check_link_preview_response.rb +1 -1
  141. data/lib/postboost/models/free_tool_check_link_preview_response_image.rb +1 -1
  142. data/lib/postboost/models/free_tool_check_link_preview_response_previews_value.rb +1 -1
  143. data/lib/postboost/models/free_tool_check_link_preview_response_redirects_inner.rb +1 -1
  144. data/lib/postboost/models/free_tool_check_link_preview_response_tags.rb +1 -1
  145. data/lib/postboost/models/free_tool_check_post_request.rb +1 -1
  146. data/lib/postboost/models/free_tool_check_post_request_media.rb +1 -1
  147. data/lib/postboost/models/free_tool_check_post_response.rb +1 -1
  148. data/lib/postboost/models/free_tool_check_post_response_networks_inner.rb +1 -1
  149. data/lib/postboost/models/free_tool_check_post_response_networks_inner_errors_inner.rb +1 -1
  150. data/lib/postboost/models/free_tool_check_youtube_thumbnail_request.rb +1 -1
  151. data/lib/postboost/models/free_tool_check_youtube_thumbnail_response.rb +1 -1
  152. data/lib/postboost/models/free_tool_check_youtube_thumbnail_response_checks_inner.rb +1 -1
  153. data/lib/postboost/models/free_tool_clean_text_request.rb +1 -1
  154. data/lib/postboost/models/free_tool_clean_text_response.rb +1 -1
  155. data/lib/postboost/models/free_tool_clean_text_response_changes_inner.rb +1 -1
  156. data/lib/postboost/models/free_tool_clean_text_response_flags_inner.rb +1 -1
  157. data/lib/postboost/models/free_tool_count_characters_request.rb +1 -1
  158. data/lib/postboost/models/free_tool_count_characters_response.rb +1 -1
  159. data/lib/postboost/models/free_tool_count_characters_response_networks_inner.rb +1 -1
  160. data/lib/postboost/models/free_tool_error.rb +1 -1
  161. data/lib/postboost/models/free_tool_format_instagram_caption_request.rb +298 -0
  162. data/lib/postboost/models/free_tool_format_instagram_caption_response.rb +264 -0
  163. data/lib/postboost/models/free_tool_format_linked_in_post_request.rb +1 -1
  164. data/lib/postboost/models/free_tool_format_linked_in_post_response.rb +1 -1
  165. data/lib/postboost/models/free_tool_generate_caption_request.rb +1 -1
  166. data/lib/postboost/models/free_tool_generate_caption_response.rb +1 -1
  167. data/lib/postboost/models/free_tool_generate_fancy_text_request.rb +1 -1
  168. data/lib/postboost/models/free_tool_generate_fancy_text_response.rb +1 -1
  169. data/lib/postboost/models/free_tool_generate_fancy_text_response_styles_inner.rb +1 -1
  170. data/lib/postboost/models/free_tool_generate_hashtags_request.rb +1 -1
  171. data/lib/postboost/models/free_tool_generate_hashtags_response.rb +1 -1
  172. data/lib/postboost/models/free_tool_generate_hooks_request.rb +1 -1
  173. data/lib/postboost/models/free_tool_generate_hooks_response.rb +1 -1
  174. data/lib/postboost/models/free_tool_generate_hooks_response_hooks_inner.rb +1 -1
  175. data/lib/postboost/models/free_tool_generate_qr_code_request.rb +1 -1
  176. data/lib/postboost/models/free_tool_generate_qr_code_request_utm.rb +1 -1
  177. data/lib/postboost/models/free_tool_generate_qr_code_response.rb +1 -1
  178. data/lib/postboost/models/free_tool_generate_social_posts_from_blog_request.rb +446 -0
  179. data/lib/postboost/models/free_tool_generate_social_posts_from_blog_response.rb +247 -0
  180. data/lib/postboost/models/free_tool_generate_social_posts_from_blog_response_posts_inner.rb +290 -0
  181. data/lib/postboost/models/free_tool_generate_social_posts_from_blog_response_source.rb +225 -0
  182. data/lib/postboost/models/free_tool_generate_social_posts_from_blog_response_warnings_inner.rb +235 -0
  183. data/lib/postboost/models/free_tool_get_best_times_to_post_response.rb +1 -1
  184. data/lib/postboost/models/free_tool_get_best_times_to_post_response_networks_inner.rb +1 -1
  185. data/lib/postboost/models/free_tool_get_hook_templates_response.rb +1 -1
  186. data/lib/postboost/models/free_tool_get_hook_templates_response_hooks_inner.rb +1 -1
  187. data/lib/postboost/models/free_tool_get_image_sizes_response.rb +1 -1
  188. data/lib/postboost/models/free_tool_get_image_sizes_response_sizes_inner.rb +1 -1
  189. data/lib/postboost/models/free_tool_get_image_sizes_response_sources_inner.rb +1 -1
  190. data/lib/postboost/models/free_tool_get_video_specs_response.rb +1 -1
  191. data/lib/postboost/models/free_tool_get_video_specs_response_specs_inner.rb +1 -1
  192. data/lib/postboost/models/free_tool_get_video_specs_response_specs_inner_limits.rb +1 -1
  193. data/lib/postboost/models/free_tool_list.rb +1 -1
  194. data/lib/postboost/models/free_tool_list_item.rb +1 -1
  195. data/lib/postboost/models/free_tool_preview_post_request.rb +1 -1
  196. data/lib/postboost/models/free_tool_preview_post_response.rb +1 -1
  197. data/lib/postboost/models/free_tool_preview_post_response_networks_inner.rb +1 -1
  198. data/lib/postboost/models/free_tool_split_thread_request.rb +1 -1
  199. data/lib/postboost/models/free_tool_split_thread_response.rb +1 -1
  200. data/lib/postboost/models/free_tool_split_thread_response_posts_inner.rb +1 -1
  201. data/lib/postboost/models/get_account_health200_response.rb +1 -1
  202. data/lib/postboost/models/get_brand_voice200_response.rb +1 -1
  203. data/lib/postboost/models/get_competitor200_response.rb +1 -1
  204. data/lib/postboost/models/get_inbox_conversation200_response.rb +1 -1
  205. data/lib/postboost/models/get_posting_schedule200_response.rb +1 -1
  206. data/lib/postboost/models/get_remote_upload_status200_response.rb +1 -1
  207. data/lib/postboost/models/get_report_branding200_response.rb +1 -1
  208. data/lib/postboost/models/get_repurpose_run200_response.rb +1 -1
  209. data/lib/postboost/models/guardrail_error.rb +1 -1
  210. data/lib/postboost/models/hashtag_group.rb +1 -1
  211. data/lib/postboost/models/hashtag_group_input.rb +1 -1
  212. data/lib/postboost/models/image_alt_text200_response.rb +1 -1
  213. data/lib/postboost/models/image_alt_text_input.rb +1 -1
  214. data/lib/postboost/models/image_alt_text_response.rb +1 -1
  215. data/lib/postboost/models/image_credit_balance.rb +1 -1
  216. data/lib/postboost/models/image_edit_input.rb +1 -1
  217. data/lib/postboost/models/image_generate200_response.rb +1 -1
  218. data/lib/postboost/models/image_generate429_response.rb +1 -1
  219. data/lib/postboost/models/image_generate_input.rb +1 -1
  220. data/lib/postboost/models/image_generation_response.rb +1 -1
  221. data/lib/postboost/models/image_prompt200_response.rb +1 -1
  222. data/lib/postboost/models/image_prompt429_response.rb +1 -1
  223. data/lib/postboost/models/image_prompt_input.rb +1 -1
  224. data/lib/postboost/models/image_prompt_response.rb +1 -1
  225. data/lib/postboost/models/image_variations200_response.rb +1 -1
  226. data/lib/postboost/models/image_variations_input.rb +1 -1
  227. data/lib/postboost/models/image_variations_response.rb +1 -1
  228. data/lib/postboost/models/inbox_author.rb +1 -1
  229. data/lib/postboost/models/inbox_conversation.rb +1 -1
  230. data/lib/postboost/models/inbox_conversation_account.rb +1 -1
  231. data/lib/postboost/models/inbox_conversation_update.rb +1 -1
  232. data/lib/postboost/models/inbox_message.rb +1 -1
  233. data/lib/postboost/models/inbox_message_author.rb +1 -1
  234. data/lib/postboost/models/inbox_reply_draft.rb +1 -1
  235. data/lib/postboost/models/inbox_reply_draft_approve.rb +1 -1
  236. data/lib/postboost/models/inbox_reply_draft_edit.rb +1 -1
  237. data/lib/postboost/models/inbox_reply_draft_input.rb +1 -1
  238. data/lib/postboost/models/initiate_chunked_upload201_response.rb +1 -1
  239. data/lib/postboost/models/initiate_chunked_upload_request.rb +1 -1
  240. data/lib/postboost/models/initiate_remote_upload201_response.rb +1 -1
  241. data/lib/postboost/models/initiate_remote_upload201_response_one_of.rb +1 -1
  242. data/lib/postboost/models/initiate_remote_upload_request.rb +1 -1
  243. data/lib/postboost/models/learn_brand_voice_input.rb +1 -1
  244. data/lib/postboost/models/learn_brand_voice_response.rb +1 -1
  245. data/lib/postboost/models/learn_brand_voice_response_meta.rb +1 -1
  246. data/lib/postboost/models/list_account_groups200_response.rb +1 -1
  247. data/lib/postboost/models/list_accounts200_response.rb +1 -1
  248. data/lib/postboost/models/list_agent_proposals200_response.rb +1 -1
  249. data/lib/postboost/models/list_agent_runs200_response.rb +1 -1
  250. data/lib/postboost/models/list_agents200_response.rb +1 -1
  251. data/lib/postboost/models/list_api_activity200_response.rb +1 -1
  252. data/lib/postboost/models/list_api_keys200_response.rb +1 -1
  253. data/lib/postboost/models/list_competitors200_response.rb +1 -1
  254. data/lib/postboost/models/list_hashtag_groups200_response.rb +1 -1
  255. data/lib/postboost/models/list_inbox_conversations200_response.rb +1 -1
  256. data/lib/postboost/models/list_inbox_reply_drafts200_response.rb +1 -1
  257. data/lib/postboost/models/list_media200_response.rb +1 -1
  258. data/lib/postboost/models/list_media_folders200_response.rb +1 -1
  259. data/lib/postboost/models/list_mentions200_response.rb +1 -1
  260. data/lib/postboost/models/list_my_workspaces200_response.rb +1 -1
  261. data/lib/postboost/models/list_posts200_response.rb +1 -1
  262. data/lib/postboost/models/list_receipts200_response.rb +1 -1
  263. data/lib/postboost/models/list_recycling_rules200_response.rb +1 -1
  264. data/lib/postboost/models/list_recycling_runs200_response.rb +1 -1
  265. data/lib/postboost/models/list_report_exports200_response.rb +1 -1
  266. data/lib/postboost/models/list_reseller_clients200_response.rb +1 -1
  267. data/lib/postboost/models/list_rss_feeds200_response.rb +1 -1
  268. data/lib/postboost/models/list_tags200_response.rb +1 -1
  269. data/lib/postboost/models/list_templates200_response.rb +1 -1
  270. data/lib/postboost/models/list_users200_response.rb +1 -1
  271. data/lib/postboost/models/list_webhook_subscriptions200_response.rb +1 -1
  272. data/lib/postboost/models/list_workspaces200_response.rb +1 -1
  273. data/lib/postboost/models/media.rb +1 -1
  274. data/lib/postboost/models/media_base64_input.rb +1 -1
  275. data/lib/postboost/models/media_folder.rb +1 -1
  276. data/lib/postboost/models/media_folder_input.rb +1 -1
  277. data/lib/postboost/models/media_folder_ref.rb +1 -1
  278. data/lib/postboost/models/mention.rb +1 -1
  279. data/lib/postboost/models/mention_identity.rb +1 -1
  280. data/lib/postboost/models/mention_identity_input.rb +1 -1
  281. data/lib/postboost/models/mention_input.rb +1 -1
  282. data/lib/postboost/models/message_only.rb +1 -1
  283. data/lib/postboost/models/pagination_meta.rb +1 -1
  284. data/lib/postboost/models/pagination_meta_links.rb +1 -1
  285. data/lib/postboost/models/pagination_meta_meta.rb +1 -1
  286. data/lib/postboost/models/poll_rss_feed200_response.rb +1 -1
  287. data/lib/postboost/models/post.rb +1 -1
  288. data/lib/postboost/models/post_analytics.rb +1 -1
  289. data/lib/postboost/models/post_content.rb +1 -1
  290. data/lib/postboost/models/post_input.rb +1 -1
  291. data/lib/postboost/models/post_options_instagram.rb +1 -1
  292. data/lib/postboost/models/post_options_tik_tok.rb +1 -1
  293. data/lib/postboost/models/post_options_youtube.rb +1 -1
  294. data/lib/postboost/models/post_status.rb +1 -1
  295. data/lib/postboost/models/post_version.rb +1 -1
  296. data/lib/postboost/models/post_version_options.rb +1 -1
  297. data/lib/postboost/models/post_warning.rb +1 -1
  298. data/lib/postboost/models/post_warnings.rb +1 -1
  299. data/lib/postboost/models/posting_schedule.rb +1 -1
  300. data/lib/postboost/models/posting_schedule_day.rb +1 -1
  301. data/lib/postboost/models/posting_schedule_day_times_inner.rb +1 -1
  302. data/lib/postboost/models/posting_schedule_input.rb +1 -1
  303. data/lib/postboost/models/posting_time_slot.rb +1 -1
  304. data/lib/postboost/models/posting_times.rb +1 -1
  305. data/lib/postboost/models/posting_times_best_inner.rb +1 -1
  306. data/lib/postboost/models/posting_times_day_intervals_inner_inner.rb +1 -1
  307. data/lib/postboost/models/posting_times_days_inner.rb +1 -1
  308. data/lib/postboost/models/preflight_result.rb +1 -1
  309. data/lib/postboost/models/public_workspace.rb +1 -1
  310. data/lib/postboost/models/public_workspace_pivot.rb +1 -1
  311. data/lib/postboost/models/publish_progress.rb +1 -1
  312. data/lib/postboost/models/queue_slots.rb +1 -1
  313. data/lib/postboost/models/receipt.rb +1 -1
  314. data/lib/postboost/models/receipt_input.rb +1 -1
  315. data/lib/postboost/models/receipt_update_input.rb +1 -1
  316. data/lib/postboost/models/recommended_posting_times.rb +1 -1
  317. data/lib/postboost/models/reconnect_link.rb +1 -1
  318. data/lib/postboost/models/recycling_rule.rb +1 -1
  319. data/lib/postboost/models/recycling_rule_input.rb +1 -1
  320. data/lib/postboost/models/recycling_rule_settings.rb +1 -1
  321. data/lib/postboost/models/recycling_rule_update.rb +1 -1
  322. data/lib/postboost/models/recycling_run.rb +1 -1
  323. data/lib/postboost/models/remove_generic_subscription422_response.rb +1 -1
  324. data/lib/postboost/models/remove_user_from_workspace_request.rb +1 -1
  325. data/lib/postboost/models/report_branding.rb +1 -1
  326. data/lib/postboost/models/report_branding_input.rb +1 -1
  327. data/lib/postboost/models/report_export.rb +1 -1
  328. data/lib/postboost/models/report_export_input.rb +1 -1
  329. data/lib/postboost/models/repurpose_content200_response.rb +1 -1
  330. data/lib/postboost/models/repurpose_content202_response.rb +1 -1
  331. data/lib/postboost/models/repurpose_content500_response.rb +1 -1
  332. data/lib/postboost/models/repurpose_input.rb +1 -1
  333. data/lib/postboost/models/repurpose_input_theme.rb +1 -1
  334. data/lib/postboost/models/repurpose_result.rb +1 -1
  335. data/lib/postboost/models/repurpose_result_media.rb +1 -1
  336. data/lib/postboost/models/repurpose_result_source.rb +1 -1
  337. data/lib/postboost/models/repurpose_run.rb +1 -1
  338. data/lib/postboost/models/repurpose_run_accepted.rb +1 -1
  339. data/lib/postboost/models/repurpose_slide.rb +1 -1
  340. data/lib/postboost/models/reseller_client.rb +1 -1
  341. data/lib/postboost/models/reseller_client_input.rb +1 -1
  342. data/lib/postboost/models/reseller_client_usage.rb +1 -1
  343. data/lib/postboost/models/retry_post_account_result.rb +1 -1
  344. data/lib/postboost/models/rss_feed.rb +1 -1
  345. data/lib/postboost/models/rss_feed_input.rb +1 -1
  346. data/lib/postboost/models/rss_feed_update.rb +1 -1
  347. data/lib/postboost/models/run_agent202_response.rb +1 -1
  348. data/lib/postboost/models/schedule_post_request.rb +1 -1
  349. data/lib/postboost/models/schedule_result.rb +1 -1
  350. data/lib/postboost/models/subscription.rb +1 -1
  351. data/lib/postboost/models/subscription_input.rb +1 -1
  352. data/lib/postboost/models/subscription_status.rb +1 -1
  353. data/lib/postboost/models/subscription_update_input.rb +1 -1
  354. data/lib/postboost/models/tag.rb +1 -1
  355. data/lib/postboost/models/tag_input.rb +1 -1
  356. data/lib/postboost/models/template.rb +1 -1
  357. data/lib/postboost/models/template_content_item.rb +1 -1
  358. data/lib/postboost/models/template_input.rb +1 -1
  359. data/lib/postboost/models/template_input_content_inner.rb +1 -1
  360. data/lib/postboost/models/update_media_request.rb +1 -1
  361. data/lib/postboost/models/update_post200_response.rb +1 -1
  362. data/lib/postboost/models/upload_chunk201_response.rb +1 -1
  363. data/lib/postboost/models/user.rb +1 -1
  364. data/lib/postboost/models/user_input.rb +1 -1
  365. data/lib/postboost/models/user_update_input.rb +1 -1
  366. data/lib/postboost/models/webhook_envelope.rb +1 -1
  367. data/lib/postboost/models/webhook_event_name.rb +1 -1
  368. data/lib/postboost/models/webhook_event_payload.rb +1 -1
  369. data/lib/postboost/models/webhook_subscription.rb +1 -1
  370. data/lib/postboost/models/webhook_subscription_input.rb +1 -1
  371. data/lib/postboost/models/workspace.rb +1 -1
  372. data/lib/postboost/models/workspace_agent.rb +1 -1
  373. data/lib/postboost/models/workspace_agent_input.rb +1 -1
  374. data/lib/postboost/models/workspace_agent_settings.rb +1 -1
  375. data/lib/postboost/models/workspace_agent_update.rb +1 -1
  376. data/lib/postboost/models/workspace_input.rb +1 -1
  377. data/lib/postboost/models/workspace_user_input.rb +1 -1
  378. data/lib/postboost/models/x_usage.rb +1 -1
  379. data/lib/postboost/models/x_usage_counter.rb +1 -1
  380. data/lib/postboost/version.rb +2 -2
  381. data/lib/postboost.rb +8 -1
  382. data/postboost.gemspec +1 -1
  383. data/spec/api/account_groups_api_spec.rb +1 -1
  384. data/spec/api/accounts_api_spec.rb +1 -1
  385. data/spec/api/activity_api_spec.rb +1 -1
  386. data/spec/api/agents_api_spec.rb +1 -1
  387. data/spec/api/ai_api_spec.rb +1 -1
  388. data/spec/api/analytics_api_spec.rb +1 -1
  389. data/spec/api/competitors_api_spec.rb +1 -1
  390. data/spec/api/free_tools_api_spec.rb +25 -1
  391. data/spec/api/hashtag_groups_api_spec.rb +1 -1
  392. data/spec/api/inbox_api_spec.rb +1 -1
  393. data/spec/api/media_api_spec.rb +1 -1
  394. data/spec/api/mentions_api_spec.rb +1 -1
  395. data/spec/api/posting_schedule_api_spec.rb +1 -1
  396. data/spec/api/posts_api_spec.rb +1 -1
  397. data/spec/api/receipts_api_spec.rb +1 -1
  398. data/spec/api/subscriptions_api_spec.rb +1 -1
  399. data/spec/api/tags_api_spec.rb +1 -1
  400. data/spec/api/templates_api_spec.rb +1 -1
  401. data/spec/api/users_api_spec.rb +1 -1
  402. data/spec/api/webhooks_api_spec.rb +1 -1
  403. data/spec/api/workspaces_api_spec.rb +1 -1
  404. data/spec/models/account_analytics_initial_sync_spec.rb +1 -1
  405. data/spec/models/account_analytics_spec.rb +1 -1
  406. data/spec/models/account_connection_health_reconnect_reason_spec.rb +1 -1
  407. data/spec/models/account_connection_health_spec.rb +1 -1
  408. data/spec/models/account_errors_inner_one_of_spec.rb +1 -1
  409. data/spec/models/account_errors_inner_spec.rb +1 -1
  410. data/spec/models/account_group_input_spec.rb +1 -1
  411. data/spec/models/account_group_spec.rb +1 -1
  412. data/spec/models/account_health_daily_cap_spec.rb +1 -1
  413. data/spec/models/account_health_spec.rb +1 -1
  414. data/spec/models/account_schedule_spec.rb +1 -1
  415. data/spec/models/account_spec.rb +1 -1
  416. data/spec/models/add_competitor202_response_spec.rb +1 -1
  417. data/spec/models/add_competitor409_response_spec.rb +1 -1
  418. data/spec/models/add_generic_subscription_request_spec.rb +1 -1
  419. data/spec/models/add_post_to_queue_request_spec.rb +1 -1
  420. data/spec/models/agent_page_meta_spec.rb +1 -1
  421. data/spec/models/agent_proposal_decision_spec.rb +1 -1
  422. data/spec/models/agent_proposal_spec.rb +1 -1
  423. data/spec/models/agent_run_spec.rb +1 -1
  424. data/spec/models/ai_credits_spec.rb +1 -1
  425. data/spec/models/ai_usage_spec.rb +1 -1
  426. data/spec/models/ai_usage_text_spec.rb +1 -1
  427. data/spec/models/analytics_period_spec.rb +1 -1
  428. data/spec/models/analytics_summary_data_spec.rb +1 -1
  429. data/spec/models/analytics_summary_spec.rb +1 -1
  430. data/spec/models/api_activity_outcome_spec.rb +1 -1
  431. data/spec/models/api_activity_spec.rb +1 -1
  432. data/spec/models/api_key_ability_spec.rb +1 -1
  433. data/spec/models/api_key_input_spec.rb +1 -1
  434. data/spec/models/api_key_spec.rb +1 -1
  435. data/spec/models/approve_agent_proposal200_response_spec.rb +1 -1
  436. data/spec/models/approve_agent_proposal409_response_spec.rb +1 -1
  437. data/spec/models/approve_inbox_reply_draft403_response_spec.rb +1 -1
  438. data/spec/models/approve_post_request_spec.rb +1 -1
  439. data/spec/models/best_posting_times_spec.rb +1 -1
  440. data/spec/models/best_posting_times_times_inner_spec.rb +1 -1
  441. data/spec/models/blog_to_social200_response_spec.rb +1 -1
  442. data/spec/models/blog_to_social429_response_spec.rb +1 -1
  443. data/spec/models/blog_to_social_caption_spec.rb +1 -1
  444. data/spec/models/blog_to_social_input_spec.rb +1 -1
  445. data/spec/models/blog_to_social_media_spec.rb +1 -1
  446. data/spec/models/blog_to_social_response_spec.rb +1 -1
  447. data/spec/models/brand_voice_input_spec.rb +1 -1
  448. data/spec/models/brand_voice_meta_spec.rb +1 -1
  449. data/spec/models/brand_voice_spec.rb +1 -1
  450. data/spec/models/cancel_subscription422_response_errors_spec.rb +1 -1
  451. data/spec/models/cancel_subscription422_response_spec.rb +1 -1
  452. data/spec/models/cancel_subscription_request_spec.rb +1 -1
  453. data/spec/models/change_subscription_plan_request_spec.rb +1 -1
  454. data/spec/models/channel_account_spec.rb +1 -1
  455. data/spec/models/checkout_subscription200_response_spec.rb +1 -1
  456. data/spec/models/checkout_subscription_request_spec.rb +1 -1
  457. data/spec/models/coded_error_spec.rb +1 -1
  458. data/spec/models/competitor_detail_spec.rb +1 -1
  459. data/spec/models/competitor_input_spec.rb +1 -1
  460. data/spec/models/competitor_media_spec.rb +1 -1
  461. data/spec/models/competitor_snapshot_spec.rb +1 -1
  462. data/spec/models/competitor_spec.rb +1 -1
  463. data/spec/models/complete_chunked_upload_request_spec.rb +1 -1
  464. data/spec/models/connect_channel_input_spec.rb +1 -1
  465. data/spec/models/connect_link_spec.rb +1 -1
  466. data/spec/models/create_account_group201_response_spec.rb +1 -1
  467. data/spec/models/create_agent201_response_spec.rb +1 -1
  468. data/spec/models/create_api_key201_response_data_spec.rb +1 -1
  469. data/spec/models/create_api_key201_response_spec.rb +1 -1
  470. data/spec/models/create_connect_link_request_spec.rb +1 -1
  471. data/spec/models/create_hashtag_group201_response_spec.rb +1 -1
  472. data/spec/models/create_inbox_reply_draft201_response_spec.rb +1 -1
  473. data/spec/models/create_media_folder_request_spec.rb +1 -1
  474. data/spec/models/create_mention201_response_spec.rb +1 -1
  475. data/spec/models/create_post201_response_spec.rb +1 -1
  476. data/spec/models/create_recycling_rule201_response_spec.rb +1 -1
  477. data/spec/models/create_report_export201_response_spec.rb +1 -1
  478. data/spec/models/create_reseller_client201_response_spec.rb +1 -1
  479. data/spec/models/create_rss_feed201_response_spec.rb +1 -1
  480. data/spec/models/create_template201_response_spec.rb +1 -1
  481. data/spec/models/create_webhook_subscription201_response_data_spec.rb +1 -1
  482. data/spec/models/create_webhook_subscription201_response_spec.rb +1 -1
  483. data/spec/models/delete_agent200_response_spec.rb +1 -1
  484. data/spec/models/delete_media_bulk_request_items_inner_spec.rb +1 -1
  485. data/spec/models/delete_media_bulk_request_spec.rb +1 -1
  486. data/spec/models/delete_media_folder_request_spec.rb +1 -1
  487. data/spec/models/delete_mode_spec.rb +1 -1
  488. data/spec/models/delete_post_request_spec.rb +1 -1
  489. data/spec/models/delete_posts_bulk_request_spec.rb +1 -1
  490. data/spec/models/delete_receipts_bulk_request_spec.rb +1 -1
  491. data/spec/models/delete_result_spec.rb +1 -1
  492. data/spec/models/delete_user400_response_spec.rb +1 -1
  493. data/spec/models/delete_users_bulk_request_spec.rb +1 -1
  494. data/spec/models/delete_workspaces_bulk_request_spec.rb +1 -1
  495. data/spec/models/free_tool_build_utm_url_request_spec.rb +1 -1
  496. data/spec/models/free_tool_build_utm_url_response_spec.rb +1 -1
  497. data/spec/models/free_tool_calculate_aspect_ratio_request_spec.rb +1 -1
  498. data/spec/models/free_tool_calculate_aspect_ratio_response_matches_inner_spec.rb +1 -1
  499. data/spec/models/free_tool_calculate_aspect_ratio_response_rounding_spec.rb +1 -1
  500. data/spec/models/free_tool_calculate_aspect_ratio_response_spec.rb +1 -1
  501. data/spec/models/free_tool_calculate_crop_request_spec.rb +1 -1
  502. data/spec/models/free_tool_calculate_crop_response_crop_spec.rb +1 -1
  503. data/spec/models/free_tool_calculate_crop_response_image_spec.rb +1 -1
  504. data/spec/models/free_tool_calculate_crop_response_output_spec.rb +1 -1
  505. data/spec/models/free_tool_calculate_crop_response_spec.rb +1 -1
  506. data/spec/models/free_tool_calculate_engagement_rate_request_spec.rb +1 -1
  507. data/spec/models/free_tool_calculate_engagement_rate_response_spec.rb +1 -1
  508. data/spec/models/free_tool_check_link_preview_request_spec.rb +1 -1
  509. data/spec/models/free_tool_check_link_preview_response_image_spec.rb +1 -1
  510. data/spec/models/free_tool_check_link_preview_response_previews_value_spec.rb +1 -1
  511. data/spec/models/free_tool_check_link_preview_response_redirects_inner_spec.rb +1 -1
  512. data/spec/models/free_tool_check_link_preview_response_spec.rb +1 -1
  513. data/spec/models/free_tool_check_link_preview_response_tags_spec.rb +1 -1
  514. data/spec/models/free_tool_check_post_request_media_spec.rb +1 -1
  515. data/spec/models/free_tool_check_post_request_spec.rb +1 -1
  516. data/spec/models/free_tool_check_post_response_networks_inner_errors_inner_spec.rb +1 -1
  517. data/spec/models/free_tool_check_post_response_networks_inner_spec.rb +1 -1
  518. data/spec/models/free_tool_check_post_response_spec.rb +1 -1
  519. data/spec/models/free_tool_check_youtube_thumbnail_request_spec.rb +1 -1
  520. data/spec/models/free_tool_check_youtube_thumbnail_response_checks_inner_spec.rb +1 -1
  521. data/spec/models/free_tool_check_youtube_thumbnail_response_spec.rb +1 -1
  522. data/spec/models/free_tool_clean_text_request_spec.rb +1 -1
  523. data/spec/models/free_tool_clean_text_response_changes_inner_spec.rb +1 -1
  524. data/spec/models/free_tool_clean_text_response_flags_inner_spec.rb +1 -1
  525. data/spec/models/free_tool_clean_text_response_spec.rb +1 -1
  526. data/spec/models/free_tool_count_characters_request_spec.rb +1 -1
  527. data/spec/models/free_tool_count_characters_response_networks_inner_spec.rb +1 -1
  528. data/spec/models/free_tool_count_characters_response_spec.rb +1 -1
  529. data/spec/models/free_tool_error_spec.rb +1 -1
  530. data/spec/models/free_tool_format_instagram_caption_request_spec.rb +52 -0
  531. data/spec/models/free_tool_format_instagram_caption_response_spec.rb +66 -0
  532. data/spec/models/free_tool_format_linked_in_post_request_spec.rb +1 -1
  533. data/spec/models/free_tool_format_linked_in_post_response_spec.rb +1 -1
  534. data/spec/models/free_tool_generate_caption_request_spec.rb +1 -1
  535. data/spec/models/free_tool_generate_caption_response_spec.rb +1 -1
  536. data/spec/models/free_tool_generate_fancy_text_request_spec.rb +1 -1
  537. data/spec/models/free_tool_generate_fancy_text_response_spec.rb +1 -1
  538. data/spec/models/free_tool_generate_fancy_text_response_styles_inner_spec.rb +1 -1
  539. data/spec/models/free_tool_generate_hashtags_request_spec.rb +1 -1
  540. data/spec/models/free_tool_generate_hashtags_response_spec.rb +1 -1
  541. data/spec/models/free_tool_generate_hooks_request_spec.rb +1 -1
  542. data/spec/models/free_tool_generate_hooks_response_hooks_inner_spec.rb +1 -1
  543. data/spec/models/free_tool_generate_hooks_response_spec.rb +1 -1
  544. data/spec/models/free_tool_generate_qr_code_request_spec.rb +1 -1
  545. data/spec/models/free_tool_generate_qr_code_request_utm_spec.rb +1 -1
  546. data/spec/models/free_tool_generate_qr_code_response_spec.rb +1 -1
  547. data/spec/models/free_tool_generate_social_posts_from_blog_request_spec.rb +98 -0
  548. data/spec/models/free_tool_generate_social_posts_from_blog_response_posts_inner_spec.rb +64 -0
  549. data/spec/models/free_tool_generate_social_posts_from_blog_response_source_spec.rb +42 -0
  550. data/spec/models/free_tool_generate_social_posts_from_blog_response_spec.rb +54 -0
  551. data/spec/models/free_tool_generate_social_posts_from_blog_response_warnings_inner_spec.rb +48 -0
  552. data/spec/models/free_tool_get_best_times_to_post_response_networks_inner_spec.rb +1 -1
  553. data/spec/models/free_tool_get_best_times_to_post_response_spec.rb +1 -1
  554. data/spec/models/free_tool_get_hook_templates_response_hooks_inner_spec.rb +1 -1
  555. data/spec/models/free_tool_get_hook_templates_response_spec.rb +1 -1
  556. data/spec/models/free_tool_get_image_sizes_response_sizes_inner_spec.rb +1 -1
  557. data/spec/models/free_tool_get_image_sizes_response_sources_inner_spec.rb +1 -1
  558. data/spec/models/free_tool_get_image_sizes_response_spec.rb +1 -1
  559. data/spec/models/free_tool_get_video_specs_response_spec.rb +1 -1
  560. data/spec/models/free_tool_get_video_specs_response_specs_inner_limits_spec.rb +1 -1
  561. data/spec/models/free_tool_get_video_specs_response_specs_inner_spec.rb +1 -1
  562. data/spec/models/free_tool_list_item_spec.rb +1 -1
  563. data/spec/models/free_tool_list_spec.rb +1 -1
  564. data/spec/models/free_tool_preview_post_request_spec.rb +1 -1
  565. data/spec/models/free_tool_preview_post_response_networks_inner_spec.rb +1 -1
  566. data/spec/models/free_tool_preview_post_response_spec.rb +1 -1
  567. data/spec/models/free_tool_split_thread_request_spec.rb +1 -1
  568. data/spec/models/free_tool_split_thread_response_posts_inner_spec.rb +1 -1
  569. data/spec/models/free_tool_split_thread_response_spec.rb +1 -1
  570. data/spec/models/get_account_health200_response_spec.rb +1 -1
  571. data/spec/models/get_brand_voice200_response_spec.rb +1 -1
  572. data/spec/models/get_competitor200_response_spec.rb +1 -1
  573. data/spec/models/get_inbox_conversation200_response_spec.rb +1 -1
  574. data/spec/models/get_posting_schedule200_response_spec.rb +1 -1
  575. data/spec/models/get_remote_upload_status200_response_spec.rb +1 -1
  576. data/spec/models/get_report_branding200_response_spec.rb +1 -1
  577. data/spec/models/get_repurpose_run200_response_spec.rb +1 -1
  578. data/spec/models/guardrail_error_spec.rb +1 -1
  579. data/spec/models/hashtag_group_input_spec.rb +1 -1
  580. data/spec/models/hashtag_group_spec.rb +1 -1
  581. data/spec/models/image_alt_text200_response_spec.rb +1 -1
  582. data/spec/models/image_alt_text_input_spec.rb +1 -1
  583. data/spec/models/image_alt_text_response_spec.rb +1 -1
  584. data/spec/models/image_credit_balance_spec.rb +1 -1
  585. data/spec/models/image_edit_input_spec.rb +1 -1
  586. data/spec/models/image_generate200_response_spec.rb +1 -1
  587. data/spec/models/image_generate429_response_spec.rb +1 -1
  588. data/spec/models/image_generate_input_spec.rb +1 -1
  589. data/spec/models/image_generation_response_spec.rb +1 -1
  590. data/spec/models/image_prompt200_response_spec.rb +1 -1
  591. data/spec/models/image_prompt429_response_spec.rb +1 -1
  592. data/spec/models/image_prompt_input_spec.rb +1 -1
  593. data/spec/models/image_prompt_response_spec.rb +1 -1
  594. data/spec/models/image_variations200_response_spec.rb +1 -1
  595. data/spec/models/image_variations_input_spec.rb +1 -1
  596. data/spec/models/image_variations_response_spec.rb +1 -1
  597. data/spec/models/inbox_author_spec.rb +1 -1
  598. data/spec/models/inbox_conversation_account_spec.rb +1 -1
  599. data/spec/models/inbox_conversation_spec.rb +1 -1
  600. data/spec/models/inbox_conversation_update_spec.rb +1 -1
  601. data/spec/models/inbox_message_author_spec.rb +1 -1
  602. data/spec/models/inbox_message_spec.rb +1 -1
  603. data/spec/models/inbox_reply_draft_approve_spec.rb +1 -1
  604. data/spec/models/inbox_reply_draft_edit_spec.rb +1 -1
  605. data/spec/models/inbox_reply_draft_input_spec.rb +1 -1
  606. data/spec/models/inbox_reply_draft_spec.rb +1 -1
  607. data/spec/models/initiate_chunked_upload201_response_spec.rb +1 -1
  608. data/spec/models/initiate_chunked_upload_request_spec.rb +1 -1
  609. data/spec/models/initiate_remote_upload201_response_one_of_spec.rb +1 -1
  610. data/spec/models/initiate_remote_upload201_response_spec.rb +1 -1
  611. data/spec/models/initiate_remote_upload_request_spec.rb +1 -1
  612. data/spec/models/learn_brand_voice_input_spec.rb +1 -1
  613. data/spec/models/learn_brand_voice_response_meta_spec.rb +1 -1
  614. data/spec/models/learn_brand_voice_response_spec.rb +1 -1
  615. data/spec/models/list_account_groups200_response_spec.rb +1 -1
  616. data/spec/models/list_accounts200_response_spec.rb +1 -1
  617. data/spec/models/list_agent_proposals200_response_spec.rb +1 -1
  618. data/spec/models/list_agent_runs200_response_spec.rb +1 -1
  619. data/spec/models/list_agents200_response_spec.rb +1 -1
  620. data/spec/models/list_api_activity200_response_spec.rb +1 -1
  621. data/spec/models/list_api_keys200_response_spec.rb +1 -1
  622. data/spec/models/list_competitors200_response_spec.rb +1 -1
  623. data/spec/models/list_hashtag_groups200_response_spec.rb +1 -1
  624. data/spec/models/list_inbox_conversations200_response_spec.rb +1 -1
  625. data/spec/models/list_inbox_reply_drafts200_response_spec.rb +1 -1
  626. data/spec/models/list_media200_response_spec.rb +1 -1
  627. data/spec/models/list_media_folders200_response_spec.rb +1 -1
  628. data/spec/models/list_mentions200_response_spec.rb +1 -1
  629. data/spec/models/list_my_workspaces200_response_spec.rb +1 -1
  630. data/spec/models/list_posts200_response_spec.rb +1 -1
  631. data/spec/models/list_receipts200_response_spec.rb +1 -1
  632. data/spec/models/list_recycling_rules200_response_spec.rb +1 -1
  633. data/spec/models/list_recycling_runs200_response_spec.rb +1 -1
  634. data/spec/models/list_report_exports200_response_spec.rb +1 -1
  635. data/spec/models/list_reseller_clients200_response_spec.rb +1 -1
  636. data/spec/models/list_rss_feeds200_response_spec.rb +1 -1
  637. data/spec/models/list_tags200_response_spec.rb +1 -1
  638. data/spec/models/list_templates200_response_spec.rb +1 -1
  639. data/spec/models/list_users200_response_spec.rb +1 -1
  640. data/spec/models/list_webhook_subscriptions200_response_spec.rb +1 -1
  641. data/spec/models/list_workspaces200_response_spec.rb +1 -1
  642. data/spec/models/media_base64_input_spec.rb +1 -1
  643. data/spec/models/media_folder_input_spec.rb +1 -1
  644. data/spec/models/media_folder_ref_spec.rb +1 -1
  645. data/spec/models/media_folder_spec.rb +1 -1
  646. data/spec/models/media_spec.rb +1 -1
  647. data/spec/models/mention_identity_input_spec.rb +1 -1
  648. data/spec/models/mention_identity_spec.rb +1 -1
  649. data/spec/models/mention_input_spec.rb +1 -1
  650. data/spec/models/mention_spec.rb +1 -1
  651. data/spec/models/message_only_spec.rb +1 -1
  652. data/spec/models/pagination_meta_links_spec.rb +1 -1
  653. data/spec/models/pagination_meta_meta_spec.rb +1 -1
  654. data/spec/models/pagination_meta_spec.rb +1 -1
  655. data/spec/models/poll_rss_feed200_response_spec.rb +1 -1
  656. data/spec/models/post_analytics_spec.rb +1 -1
  657. data/spec/models/post_content_spec.rb +1 -1
  658. data/spec/models/post_input_spec.rb +1 -1
  659. data/spec/models/post_options_instagram_spec.rb +1 -1
  660. data/spec/models/post_options_tik_tok_spec.rb +1 -1
  661. data/spec/models/post_options_youtube_spec.rb +1 -1
  662. data/spec/models/post_spec.rb +1 -1
  663. data/spec/models/post_status_spec.rb +1 -1
  664. data/spec/models/post_version_options_spec.rb +1 -1
  665. data/spec/models/post_version_spec.rb +1 -1
  666. data/spec/models/post_warning_spec.rb +1 -1
  667. data/spec/models/post_warnings_spec.rb +1 -1
  668. data/spec/models/posting_schedule_day_spec.rb +1 -1
  669. data/spec/models/posting_schedule_day_times_inner_spec.rb +1 -1
  670. data/spec/models/posting_schedule_input_spec.rb +1 -1
  671. data/spec/models/posting_schedule_spec.rb +1 -1
  672. data/spec/models/posting_time_slot_spec.rb +1 -1
  673. data/spec/models/posting_times_best_inner_spec.rb +1 -1
  674. data/spec/models/posting_times_day_intervals_inner_inner_spec.rb +1 -1
  675. data/spec/models/posting_times_days_inner_spec.rb +1 -1
  676. data/spec/models/posting_times_spec.rb +1 -1
  677. data/spec/models/preflight_result_spec.rb +1 -1
  678. data/spec/models/public_workspace_pivot_spec.rb +1 -1
  679. data/spec/models/public_workspace_spec.rb +1 -1
  680. data/spec/models/publish_progress_spec.rb +1 -1
  681. data/spec/models/queue_slots_spec.rb +1 -1
  682. data/spec/models/receipt_input_spec.rb +1 -1
  683. data/spec/models/receipt_spec.rb +1 -1
  684. data/spec/models/receipt_update_input_spec.rb +1 -1
  685. data/spec/models/recommended_posting_times_spec.rb +1 -1
  686. data/spec/models/reconnect_link_spec.rb +1 -1
  687. data/spec/models/recycling_rule_input_spec.rb +1 -1
  688. data/spec/models/recycling_rule_settings_spec.rb +1 -1
  689. data/spec/models/recycling_rule_spec.rb +1 -1
  690. data/spec/models/recycling_rule_update_spec.rb +1 -1
  691. data/spec/models/recycling_run_spec.rb +1 -1
  692. data/spec/models/remove_generic_subscription422_response_spec.rb +1 -1
  693. data/spec/models/remove_user_from_workspace_request_spec.rb +1 -1
  694. data/spec/models/report_branding_input_spec.rb +1 -1
  695. data/spec/models/report_branding_spec.rb +1 -1
  696. data/spec/models/report_export_input_spec.rb +1 -1
  697. data/spec/models/report_export_spec.rb +1 -1
  698. data/spec/models/repurpose_content200_response_spec.rb +1 -1
  699. data/spec/models/repurpose_content202_response_spec.rb +1 -1
  700. data/spec/models/repurpose_content500_response_spec.rb +1 -1
  701. data/spec/models/repurpose_input_spec.rb +1 -1
  702. data/spec/models/repurpose_input_theme_spec.rb +1 -1
  703. data/spec/models/repurpose_result_media_spec.rb +1 -1
  704. data/spec/models/repurpose_result_source_spec.rb +1 -1
  705. data/spec/models/repurpose_result_spec.rb +1 -1
  706. data/spec/models/repurpose_run_accepted_spec.rb +1 -1
  707. data/spec/models/repurpose_run_spec.rb +1 -1
  708. data/spec/models/repurpose_slide_spec.rb +1 -1
  709. data/spec/models/reseller_client_input_spec.rb +1 -1
  710. data/spec/models/reseller_client_spec.rb +1 -1
  711. data/spec/models/reseller_client_usage_spec.rb +1 -1
  712. data/spec/models/retry_post_account_result_spec.rb +1 -1
  713. data/spec/models/rss_feed_input_spec.rb +1 -1
  714. data/spec/models/rss_feed_spec.rb +1 -1
  715. data/spec/models/rss_feed_update_spec.rb +1 -1
  716. data/spec/models/run_agent202_response_spec.rb +1 -1
  717. data/spec/models/schedule_post_request_spec.rb +1 -1
  718. data/spec/models/schedule_result_spec.rb +1 -1
  719. data/spec/models/subscription_input_spec.rb +1 -1
  720. data/spec/models/subscription_spec.rb +1 -1
  721. data/spec/models/subscription_status_spec.rb +1 -1
  722. data/spec/models/subscription_update_input_spec.rb +1 -1
  723. data/spec/models/tag_input_spec.rb +1 -1
  724. data/spec/models/tag_spec.rb +1 -1
  725. data/spec/models/template_content_item_spec.rb +1 -1
  726. data/spec/models/template_input_content_inner_spec.rb +1 -1
  727. data/spec/models/template_input_spec.rb +1 -1
  728. data/spec/models/template_spec.rb +1 -1
  729. data/spec/models/update_media_request_spec.rb +1 -1
  730. data/spec/models/update_post200_response_spec.rb +1 -1
  731. data/spec/models/upload_chunk201_response_spec.rb +1 -1
  732. data/spec/models/user_input_spec.rb +1 -1
  733. data/spec/models/user_spec.rb +1 -1
  734. data/spec/models/user_update_input_spec.rb +1 -1
  735. data/spec/models/webhook_envelope_spec.rb +1 -1
  736. data/spec/models/webhook_event_name_spec.rb +1 -1
  737. data/spec/models/webhook_event_payload_spec.rb +1 -1
  738. data/spec/models/webhook_subscription_input_spec.rb +1 -1
  739. data/spec/models/webhook_subscription_spec.rb +1 -1
  740. data/spec/models/workspace_agent_input_spec.rb +1 -1
  741. data/spec/models/workspace_agent_settings_spec.rb +1 -1
  742. data/spec/models/workspace_agent_spec.rb +1 -1
  743. data/spec/models/workspace_agent_update_spec.rb +1 -1
  744. data/spec/models/workspace_input_spec.rb +1 -1
  745. data/spec/models/workspace_spec.rb +1 -1
  746. data/spec/models/workspace_user_input_spec.rb +1 -1
  747. data/spec/models/x_usage_counter_spec.rb +1 -1
  748. data/spec/models/x_usage_spec.rb +1 -1
  749. data/spec/spec_helper.rb +1 -1
  750. metadata +29 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 968b5251aaee3298d0c871697258f34f620bd4a4a7267462c56608d614088de4
4
- data.tar.gz: f6c9cd7f2e9e50ae9e499d04a0d810e75992c2e496e6c174bcb9db32f40ea528
3
+ metadata.gz: 7664b189b25efbd888d62956131073659ac5ac40182e67811f18b8fa237d1fbf
4
+ data.tar.gz: 188e2a03c37763c4ffb145ba3940506ec27f157232c07b338cf6ca14870f5e12
5
5
  SHA512:
6
- metadata.gz: b96d9f749409ca72e84997c497988badf6c6e759a563a6cace83dfce2e963b442b2a010ca17adeadfe6baaf21e621e4a7fe9887f39ad56044738f3cdea4e8229
7
- data.tar.gz: 45c42cd12f076d2b607d5a5710839105e4d4660a492571fb51767557d35f05a81b78ef82870dfbac3952bbeb4d57ec397fc7d316fef9312fbf6d26c65f015ccb
6
+ metadata.gz: ed75c458dac42708e6375e14ed43a9ab664a0905265254483bf6c718dec28b334a56a6d830757b64548a38a0a83097e1c4b31bf780dd8ce5c095c85b4a7bb400
7
+ data.tar.gz: a0f03c49a13f955dedb9943b82963652f53c4d047b3245f0effb5bc350c9dbe6f7aac6a178146c554e26106dc8d740ba252f516d965551ecf330be1f017fd847
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.40.0 |
16
+ | **Version** | v1.42.0 |
17
17
 
18
18
  ## Quick start
19
19
 
@@ -95,12 +95,14 @@ Class | Method | HTTP request | Description
95
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
96
96
  *PostBoost::FreeToolsApi* | [**clean_text**](docs/FreeToolsApi.md#clean_text) | **POST** /tools/ai-text-cleaner | Clean AI-written text: dashes, quotes, invisible characters, markdown
97
97
  *PostBoost::FreeToolsApi* | [**count_characters**](docs/FreeToolsApi.md#count_characters) | **POST** /tools/social-media-character-counter | Count characters as each network counts them
98
+ *PostBoost::FreeToolsApi* | [**format_instagram_caption**](docs/FreeToolsApi.md#format_instagram_caption) | **POST** /tools/instagram-line-break-generator | Keep blank lines in an Instagram caption with spacer lines, and count it
98
99
  *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
99
100
  *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)
100
101
  *PostBoost::FreeToolsApi* | [**generate_fancy_text**](docs/FreeToolsApi.md#generate_fancy_text) | **POST** /tools/fancy-text-generator | Convert text to fancy Unicode styles
101
102
  *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
103
  *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)
103
104
  *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
105
+ *PostBoost::FreeToolsApi* | [**generate_social_posts_from_blog**](docs/FreeToolsApi.md#generate_social_posts_from_blog) | **POST** /tools/blog-to-social-media | Turn a blog post (URL or text) into one social post per network with AI (needs a token, spends AI credits)
104
106
  *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
107
  *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
106
108
  *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
@@ -0,0 +1,22 @@
1
+ # PostBoost::FreeToolFormatInstagramCaptionRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **text** | **String** | | |
8
+ | **spacer** | **String** | What fills a blank line: braille (U+2800 Braille blank, shows as an empty line) or dot (a line with \".\"). | [optional][default to 'braille'] |
9
+ | **hashtags_to_end** | **Boolean** | Move the hashtags that end a line to the bottom, after three spacer lines. A hashtag inside a sentence stays where it is. | [optional][default to false] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'postboost'
15
+
16
+ instance = PostBoost::FreeToolFormatInstagramCaptionRequest.new(
17
+ text: null,
18
+ spacer: null,
19
+ hashtags_to_end: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,28 @@
1
+ # PostBoost::FreeToolFormatInstagramCaptionResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **text** | **String** | The caption with spacer lines, ready to paste into Instagram. | [optional] |
8
+ | **count** | **Integer** | Characters, counted like the PostBoost composer counts an Instagram caption. | [optional] |
9
+ | **limit** | **Integer** | Instagram caption limit. | [optional] |
10
+ | **over** | **Boolean** | | [optional] |
11
+ | **hashtags** | **Integer** | Hashtags in the caption. | [optional] |
12
+ | **max_hashtags** | **Integer** | Hashtags PostBoost allows per Instagram post. | [optional] |
13
+
14
+ ## Example
15
+
16
+ ```ruby
17
+ require 'postboost'
18
+
19
+ instance = PostBoost::FreeToolFormatInstagramCaptionResponse.new(
20
+ text: null,
21
+ count: null,
22
+ limit: null,
23
+ over: null,
24
+ hashtags: null,
25
+ max_hashtags: null
26
+ )
27
+ ```
28
+
@@ -0,0 +1,32 @@
1
+ # PostBoost::FreeToolGenerateSocialPostsFromBlogRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **url** | **String** | Public http(s) address of the blog post. Give `url` or `text`. | [optional] |
8
+ | **text** | **String** | The blog post itself, instead of `url`. | [optional] |
9
+ | **platforms** | **Array<String>** | Networks to write for, at most 4 per call (one AI credit each). | |
10
+ | **tone** | **String** | | [optional][default to 'casual'] |
11
+ | **length** | **String** | | [optional][default to 'short'] |
12
+ | **hashtags** | **String** | How many hashtags to include. | [optional][default to 'no'] |
13
+ | **cta** | **String** | Call to action to end with. | [optional][default to 'no'] |
14
+ | **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] |
15
+
16
+ ## Example
17
+
18
+ ```ruby
19
+ require 'postboost'
20
+
21
+ instance = PostBoost::FreeToolGenerateSocialPostsFromBlogRequest.new(
22
+ url: null,
23
+ text: null,
24
+ platforms: null,
25
+ tone: null,
26
+ length: null,
27
+ hashtags: null,
28
+ cta: null,
29
+ workspace: null
30
+ )
31
+ ```
32
+
@@ -0,0 +1,24 @@
1
+ # PostBoost::FreeToolGenerateSocialPostsFromBlogResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **posts** | [**Array<FreeToolGenerateSocialPostsFromBlogResponsePostsInner>**](FreeToolGenerateSocialPostsFromBlogResponsePostsInner.md) | One post per platform that came back, in the order asked. | [optional] |
8
+ | **source** | [**FreeToolGenerateSocialPostsFromBlogResponseSource**](FreeToolGenerateSocialPostsFromBlogResponseSource.md) | | [optional] |
9
+ | **warnings** | [**Array<FreeToolGenerateSocialPostsFromBlogResponseWarningsInner>**](FreeToolGenerateSocialPostsFromBlogResponseWarningsInner.md) | | [optional] |
10
+ | **credits_spent** | **Integer** | AI credits this call took from the workspace: one per post. | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'postboost'
16
+
17
+ instance = PostBoost::FreeToolGenerateSocialPostsFromBlogResponse.new(
18
+ posts: null,
19
+ source: null,
20
+ warnings: null,
21
+ credits_spent: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,26 @@
1
+ # PostBoost::FreeToolGenerateSocialPostsFromBlogResponsePostsInner
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **platform** | **String** | | [optional] |
8
+ | **text** | **String** | The post, cut at a sentence end when the model ran over the limit. | [optional] |
9
+ | **hashtags** | **Array<String>** | Hashtags in the text, with #. | [optional] |
10
+ | **characters** | **Integer** | Length as the network counts it (X weighs links as 23, YouTube counts bytes). | [optional] |
11
+ | **limit** | **Integer** | The network's text limit. | [optional] |
12
+
13
+ ## Example
14
+
15
+ ```ruby
16
+ require 'postboost'
17
+
18
+ instance = PostBoost::FreeToolGenerateSocialPostsFromBlogResponsePostsInner.new(
19
+ platform: null,
20
+ text: null,
21
+ hashtags: null,
22
+ characters: null,
23
+ limit: null
24
+ )
25
+ ```
26
+
@@ -0,0 +1,20 @@
1
+ # PostBoost::FreeToolGenerateSocialPostsFromBlogResponseSource
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **title** | **String** | | [optional] |
8
+ | **final_url** | **String** | Address after redirects. | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'postboost'
14
+
15
+ instance = PostBoost::FreeToolGenerateSocialPostsFromBlogResponseSource.new(
16
+ title: null,
17
+ final_url: null
18
+ )
19
+ ```
20
+
@@ -0,0 +1,22 @@
1
+ # PostBoost::FreeToolGenerateSocialPostsFromBlogResponseWarningsInner
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **code** | **String** | platforms_skipped: no reply within the time budget or the provider failed for them (not charged). | [optional] |
8
+ | **message** | **String** | | [optional] |
9
+ | **platforms** | **Array<String>** | | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'postboost'
15
+
16
+ instance = PostBoost::FreeToolGenerateSocialPostsFromBlogResponseWarningsInner.new(
17
+ code: null,
18
+ message: null,
19
+ platforms: null
20
+ )
21
+ ```
22
+
data/docs/FreeToolsApi.md CHANGED
@@ -13,12 +13,14 @@ All URIs are relative to *https://postboost.co/app/api*
13
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 |
14
14
  | [**clean_text**](FreeToolsApi.md#clean_text) | **POST** /tools/ai-text-cleaner | Clean AI-written text: dashes, quotes, invisible characters, markdown |
15
15
  | [**count_characters**](FreeToolsApi.md#count_characters) | **POST** /tools/social-media-character-counter | Count characters as each network counts them |
16
+ | [**format_instagram_caption**](FreeToolsApi.md#format_instagram_caption) | **POST** /tools/instagram-line-break-generator | Keep blank lines in an Instagram caption with spacer lines, and count it |
16
17
  | [**format_linked_in_post**](FreeToolsApi.md#format_linked_in_post) | **POST** /tools/linkedin-post-formatter | Format a LinkedIn post with bold, italic and lists |
17
18
  | [**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) |
18
19
  | [**generate_fancy_text**](FreeToolsApi.md#generate_fancy_text) | **POST** /tools/fancy-text-generator | Convert text to fancy Unicode styles |
19
20
  | [**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
21
  | [**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) |
21
22
  | [**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 |
23
+ | [**generate_social_posts_from_blog**](FreeToolsApi.md#generate_social_posts_from_blog) | **POST** /tools/blog-to-social-media | Turn a blog post (URL or text) into one social post per network with AI (needs a token, spends AI credits) |
22
24
  | [**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
25
  | [**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 |
24
26
  | [**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 |
@@ -604,6 +606,70 @@ No authorization required
604
606
  - **Accept**: application/json
605
607
 
606
608
 
609
+ ## format_instagram_caption
610
+
611
+ > <FreeToolFormatInstagramCaptionResponse> format_instagram_caption(free_tool_format_instagram_caption_request)
612
+
613
+ Keep blank lines in an Instagram caption with spacer lines, and count it
614
+
615
+ Keep blank lines in an Instagram caption with spacer lines, and count it. The same logic as the free web tool at https://postboost.co/tools/instagram-line-break-generator. No account needed: call it without a token, or with any API token.
616
+
617
+ ### Examples
618
+
619
+ ```ruby
620
+ require 'time'
621
+ require 'postboost'
622
+
623
+ api_instance = PostBoost::FreeToolsApi.new
624
+ free_tool_format_instagram_caption_request = PostBoost::FreeToolFormatInstagramCaptionRequest.new({text: 'text_example'}) # FreeToolFormatInstagramCaptionRequest |
625
+
626
+ begin
627
+ # Keep blank lines in an Instagram caption with spacer lines, and count it
628
+ result = api_instance.format_instagram_caption(free_tool_format_instagram_caption_request)
629
+ p result
630
+ rescue PostBoost::ApiError => e
631
+ puts "Error when calling FreeToolsApi->format_instagram_caption: #{e}"
632
+ end
633
+ ```
634
+
635
+ #### Using the format_instagram_caption_with_http_info variant
636
+
637
+ This returns an Array which contains the response data, status code and headers.
638
+
639
+ > <Array(<FreeToolFormatInstagramCaptionResponse>, Integer, Hash)> format_instagram_caption_with_http_info(free_tool_format_instagram_caption_request)
640
+
641
+ ```ruby
642
+ begin
643
+ # Keep blank lines in an Instagram caption with spacer lines, and count it
644
+ data, status_code, headers = api_instance.format_instagram_caption_with_http_info(free_tool_format_instagram_caption_request)
645
+ p status_code # => 2xx
646
+ p headers # => { ... }
647
+ p data # => <FreeToolFormatInstagramCaptionResponse>
648
+ rescue PostBoost::ApiError => e
649
+ puts "Error when calling FreeToolsApi->format_instagram_caption_with_http_info: #{e}"
650
+ end
651
+ ```
652
+
653
+ ### Parameters
654
+
655
+ | Name | Type | Description | Notes |
656
+ | ---- | ---- | ----------- | ----- |
657
+ | **free_tool_format_instagram_caption_request** | [**FreeToolFormatInstagramCaptionRequest**](FreeToolFormatInstagramCaptionRequest.md) | | |
658
+
659
+ ### Return type
660
+
661
+ [**FreeToolFormatInstagramCaptionResponse**](FreeToolFormatInstagramCaptionResponse.md)
662
+
663
+ ### Authorization
664
+
665
+ No authorization required
666
+
667
+ ### HTTP request headers
668
+
669
+ - **Content-Type**: application/json
670
+ - **Accept**: application/json
671
+
672
+
607
673
  ## format_linked_in_post
608
674
 
609
675
  > <FreeToolFormatLinkedInPostResponse> format_linked_in_post(free_tool_format_linked_in_post_request)
@@ -1003,6 +1069,75 @@ No authorization required
1003
1069
  - **Accept**: application/json
1004
1070
 
1005
1071
 
1072
+ ## generate_social_posts_from_blog
1073
+
1074
+ > <FreeToolGenerateSocialPostsFromBlogResponse> generate_social_posts_from_blog(free_tool_generate_social_posts_from_blog_request)
1075
+
1076
+ Turn a blog post (URL or text) into one social post per network with AI (needs a token, spends AI credits)
1077
+
1078
+ Turn a blog post (URL or text) into one social post per network with AI (needs a token, spends AI credits). The same logic as the free web tool at https://postboost.co/tools/blog-to-social-media. Needs an API token (a scoped key needs the `ai` ability and pays with its own workspace). Each post spends 1 AI credit of the workspace you name (or your active workspace), so a call costs one credit per platform that comes back; results are not cached.
1079
+
1080
+ ### Examples
1081
+
1082
+ ```ruby
1083
+ require 'time'
1084
+ require 'postboost'
1085
+ # setup authorization
1086
+ PostBoost.configure do |config|
1087
+ # Configure Bearer authorization: bearerAuth
1088
+ config.access_token = 'YOUR_BEARER_TOKEN'
1089
+ end
1090
+
1091
+ api_instance = PostBoost::FreeToolsApi.new
1092
+ free_tool_generate_social_posts_from_blog_request = PostBoost::FreeToolGenerateSocialPostsFromBlogRequest.new({platforms: ['facebook']}) # FreeToolGenerateSocialPostsFromBlogRequest |
1093
+
1094
+ begin
1095
+ # Turn a blog post (URL or text) into one social post per network with AI (needs a token, spends AI credits)
1096
+ result = api_instance.generate_social_posts_from_blog(free_tool_generate_social_posts_from_blog_request)
1097
+ p result
1098
+ rescue PostBoost::ApiError => e
1099
+ puts "Error when calling FreeToolsApi->generate_social_posts_from_blog: #{e}"
1100
+ end
1101
+ ```
1102
+
1103
+ #### Using the generate_social_posts_from_blog_with_http_info variant
1104
+
1105
+ This returns an Array which contains the response data, status code and headers.
1106
+
1107
+ > <Array(<FreeToolGenerateSocialPostsFromBlogResponse>, Integer, Hash)> generate_social_posts_from_blog_with_http_info(free_tool_generate_social_posts_from_blog_request)
1108
+
1109
+ ```ruby
1110
+ begin
1111
+ # Turn a blog post (URL or text) into one social post per network with AI (needs a token, spends AI credits)
1112
+ data, status_code, headers = api_instance.generate_social_posts_from_blog_with_http_info(free_tool_generate_social_posts_from_blog_request)
1113
+ p status_code # => 2xx
1114
+ p headers # => { ... }
1115
+ p data # => <FreeToolGenerateSocialPostsFromBlogResponse>
1116
+ rescue PostBoost::ApiError => e
1117
+ puts "Error when calling FreeToolsApi->generate_social_posts_from_blog_with_http_info: #{e}"
1118
+ end
1119
+ ```
1120
+
1121
+ ### Parameters
1122
+
1123
+ | Name | Type | Description | Notes |
1124
+ | ---- | ---- | ----------- | ----- |
1125
+ | **free_tool_generate_social_posts_from_blog_request** | [**FreeToolGenerateSocialPostsFromBlogRequest**](FreeToolGenerateSocialPostsFromBlogRequest.md) | | |
1126
+
1127
+ ### Return type
1128
+
1129
+ [**FreeToolGenerateSocialPostsFromBlogResponse**](FreeToolGenerateSocialPostsFromBlogResponse.md)
1130
+
1131
+ ### Authorization
1132
+
1133
+ [bearerAuth](../README.md#bearerAuth)
1134
+
1135
+ ### HTTP request headers
1136
+
1137
+ - **Content-Type**: application/json
1138
+ - **Accept**: application/json
1139
+
1140
+
1006
1141
  ## get_best_times_to_post
1007
1142
 
1008
1143
  > <FreeToolGetBestTimesToPostResponse> get_best_times_to_post(opts)
@@ -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.40.0
6
+ The version of the OpenAPI document: 1.42.0
7
7
  Contact: hi@postboost.co
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.9.0
@@ -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.40.0
6
+ The version of the OpenAPI document: 1.42.0
7
7
  Contact: hi@postboost.co
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.9.0
@@ -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.40.0
6
+ The version of the OpenAPI document: 1.42.0
7
7
  Contact: hi@postboost.co
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.9.0
@@ -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.40.0
6
+ The version of the OpenAPI document: 1.42.0
7
7
  Contact: hi@postboost.co
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.9.0
@@ -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.40.0
6
+ The version of the OpenAPI document: 1.42.0
7
7
  Contact: hi@postboost.co
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.9.0
@@ -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.40.0
6
+ The version of the OpenAPI document: 1.42.0
7
7
  Contact: hi@postboost.co
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.9.0
@@ -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.40.0
6
+ The version of the OpenAPI document: 1.42.0
7
7
  Contact: hi@postboost.co
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.9.0
@@ -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.40.0
6
+ The version of the OpenAPI document: 1.42.0
7
7
  Contact: hi@postboost.co
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.9.0
@@ -631,6 +631,74 @@ module PostBoost
631
631
  return data, status_code, headers
632
632
  end
633
633
 
634
+ # Keep blank lines in an Instagram caption with spacer lines, and count it
635
+ # Keep blank lines in an Instagram caption with spacer lines, and count it. The same logic as the free web tool at https://postboost.co/tools/instagram-line-break-generator. No account needed: call it without a token, or with any API token.
636
+ # @param free_tool_format_instagram_caption_request [FreeToolFormatInstagramCaptionRequest]
637
+ # @param [Hash] opts the optional parameters
638
+ # @return [FreeToolFormatInstagramCaptionResponse]
639
+ def format_instagram_caption(free_tool_format_instagram_caption_request, opts = {})
640
+ data, _status_code, _headers = format_instagram_caption_with_http_info(free_tool_format_instagram_caption_request, opts)
641
+ data
642
+ end
643
+
644
+ # Keep blank lines in an Instagram caption with spacer lines, and count it
645
+ # Keep blank lines in an Instagram caption with spacer lines, and count it. The same logic as the free web tool at https://postboost.co/tools/instagram-line-break-generator. No account needed: call it without a token, or with any API token.
646
+ # @param free_tool_format_instagram_caption_request [FreeToolFormatInstagramCaptionRequest]
647
+ # @param [Hash] opts the optional parameters
648
+ # @return [Array<(FreeToolFormatInstagramCaptionResponse, Integer, Hash)>] FreeToolFormatInstagramCaptionResponse data, response status code and response headers
649
+ def format_instagram_caption_with_http_info(free_tool_format_instagram_caption_request, opts = {})
650
+ if @api_client.config.debugging
651
+ @api_client.config.logger.debug 'Calling API: FreeToolsApi.format_instagram_caption ...'
652
+ end
653
+ # verify the required parameter 'free_tool_format_instagram_caption_request' is set
654
+ if @api_client.config.client_side_validation && free_tool_format_instagram_caption_request.nil?
655
+ fail ArgumentError, "Missing the required parameter 'free_tool_format_instagram_caption_request' when calling FreeToolsApi.format_instagram_caption"
656
+ end
657
+ # resource path
658
+ local_var_path = '/tools/instagram-line-break-generator'
659
+
660
+ # query parameters
661
+ query_params = opts[:query_params] || {}
662
+
663
+ # header parameters
664
+ header_params = opts[:header_params] || {}
665
+ # HTTP header 'Accept' (if needed)
666
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
667
+ # HTTP header 'Content-Type'
668
+ content_type = @api_client.select_header_content_type(['application/json'])
669
+ if !content_type.nil?
670
+ header_params['Content-Type'] = content_type
671
+ end
672
+
673
+ # form parameters
674
+ form_params = opts[:form_params] || {}
675
+
676
+ # http body (model)
677
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(free_tool_format_instagram_caption_request)
678
+
679
+ # return_type
680
+ return_type = opts[:debug_return_type] || 'FreeToolFormatInstagramCaptionResponse'
681
+
682
+ # auth_names
683
+ auth_names = opts[:debug_auth_names] || []
684
+
685
+ new_options = opts.merge(
686
+ :operation => :"FreeToolsApi.format_instagram_caption",
687
+ :header_params => header_params,
688
+ :query_params => query_params,
689
+ :form_params => form_params,
690
+ :body => post_body,
691
+ :auth_names => auth_names,
692
+ :return_type => return_type
693
+ )
694
+
695
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
696
+ if @api_client.config.debugging
697
+ @api_client.config.logger.debug "API called: FreeToolsApi#format_instagram_caption\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
698
+ end
699
+ return data, status_code, headers
700
+ end
701
+
634
702
  # Format a LinkedIn post with bold, italic and lists
635
703
  # Format a LinkedIn post with bold, italic and lists. The same logic as the free web tool at https://postboost.co/tools/linkedin-post-formatter. No account needed: call it without a token, or with any API token.
636
704
  # @param free_tool_format_linked_in_post_request [FreeToolFormatLinkedInPostRequest]
@@ -1039,6 +1107,74 @@ module PostBoost
1039
1107
  return data, status_code, headers
1040
1108
  end
1041
1109
 
1110
+ # Turn a blog post (URL or text) into one social post per network with AI (needs a token, spends AI credits)
1111
+ # Turn a blog post (URL or text) into one social post per network with AI (needs a token, spends AI credits). The same logic as the free web tool at https://postboost.co/tools/blog-to-social-media. Needs an API token (a scoped key needs the `ai` ability and pays with its own workspace). Each post spends 1 AI credit of the workspace you name (or your active workspace), so a call costs one credit per platform that comes back; results are not cached.
1112
+ # @param free_tool_generate_social_posts_from_blog_request [FreeToolGenerateSocialPostsFromBlogRequest]
1113
+ # @param [Hash] opts the optional parameters
1114
+ # @return [FreeToolGenerateSocialPostsFromBlogResponse]
1115
+ def generate_social_posts_from_blog(free_tool_generate_social_posts_from_blog_request, opts = {})
1116
+ data, _status_code, _headers = generate_social_posts_from_blog_with_http_info(free_tool_generate_social_posts_from_blog_request, opts)
1117
+ data
1118
+ end
1119
+
1120
+ # Turn a blog post (URL or text) into one social post per network with AI (needs a token, spends AI credits)
1121
+ # Turn a blog post (URL or text) into one social post per network with AI (needs a token, spends AI credits). The same logic as the free web tool at https://postboost.co/tools/blog-to-social-media. Needs an API token (a scoped key needs the &#x60;ai&#x60; ability and pays with its own workspace). Each post spends 1 AI credit of the workspace you name (or your active workspace), so a call costs one credit per platform that comes back; results are not cached.
1122
+ # @param free_tool_generate_social_posts_from_blog_request [FreeToolGenerateSocialPostsFromBlogRequest]
1123
+ # @param [Hash] opts the optional parameters
1124
+ # @return [Array<(FreeToolGenerateSocialPostsFromBlogResponse, Integer, Hash)>] FreeToolGenerateSocialPostsFromBlogResponse data, response status code and response headers
1125
+ def generate_social_posts_from_blog_with_http_info(free_tool_generate_social_posts_from_blog_request, opts = {})
1126
+ if @api_client.config.debugging
1127
+ @api_client.config.logger.debug 'Calling API: FreeToolsApi.generate_social_posts_from_blog ...'
1128
+ end
1129
+ # verify the required parameter 'free_tool_generate_social_posts_from_blog_request' is set
1130
+ if @api_client.config.client_side_validation && free_tool_generate_social_posts_from_blog_request.nil?
1131
+ fail ArgumentError, "Missing the required parameter 'free_tool_generate_social_posts_from_blog_request' when calling FreeToolsApi.generate_social_posts_from_blog"
1132
+ end
1133
+ # resource path
1134
+ local_var_path = '/tools/blog-to-social-media'
1135
+
1136
+ # query parameters
1137
+ query_params = opts[:query_params] || {}
1138
+
1139
+ # header parameters
1140
+ header_params = opts[:header_params] || {}
1141
+ # HTTP header 'Accept' (if needed)
1142
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
1143
+ # HTTP header 'Content-Type'
1144
+ content_type = @api_client.select_header_content_type(['application/json'])
1145
+ if !content_type.nil?
1146
+ header_params['Content-Type'] = content_type
1147
+ end
1148
+
1149
+ # form parameters
1150
+ form_params = opts[:form_params] || {}
1151
+
1152
+ # http body (model)
1153
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(free_tool_generate_social_posts_from_blog_request)
1154
+
1155
+ # return_type
1156
+ return_type = opts[:debug_return_type] || 'FreeToolGenerateSocialPostsFromBlogResponse'
1157
+
1158
+ # auth_names
1159
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
1160
+
1161
+ new_options = opts.merge(
1162
+ :operation => :"FreeToolsApi.generate_social_posts_from_blog",
1163
+ :header_params => header_params,
1164
+ :query_params => query_params,
1165
+ :form_params => form_params,
1166
+ :body => post_body,
1167
+ :auth_names => auth_names,
1168
+ :return_type => return_type
1169
+ )
1170
+
1171
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
1172
+ if @api_client.config.debugging
1173
+ @api_client.config.logger.debug "API called: FreeToolsApi#generate_social_posts_from_blog\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1174
+ end
1175
+ return data, status_code, headers
1176
+ end
1177
+
1042
1178
  # Get the best times to post per network from published studies, with sources
1043
1179
  # Get the best times to post per network from published studies, with sources. The same logic as the free web tool at https://postboost.co/tools/best-time-to-post. No account needed: call it without a token, or with any API token.
1044
1180
  # @param [Hash] opts the optional parameters