postboost 1.28.0 → 1.29.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 (656) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -1
  3. data/docs/FreeToolError.md +4 -2
  4. data/docs/FreeToolGenerateCaptionRequest.md +30 -0
  5. data/docs/FreeToolGenerateCaptionResponse.md +22 -0
  6. data/docs/FreeToolGenerateHashtagsRequest.md +24 -0
  7. data/docs/FreeToolGenerateHashtagsResponse.md +22 -0
  8. data/docs/FreeToolsApi.md +140 -0
  9. data/lib/postboost/api/account_groups_api.rb +1 -1
  10. data/lib/postboost/api/accounts_api.rb +1 -1
  11. data/lib/postboost/api/activity_api.rb +1 -1
  12. data/lib/postboost/api/agents_api.rb +1 -1
  13. data/lib/postboost/api/ai_api.rb +1 -1
  14. data/lib/postboost/api/analytics_api.rb +1 -1
  15. data/lib/postboost/api/competitors_api.rb +1 -1
  16. data/lib/postboost/api/free_tools_api.rb +137 -1
  17. data/lib/postboost/api/hashtag_groups_api.rb +1 -1
  18. data/lib/postboost/api/inbox_api.rb +1 -1
  19. data/lib/postboost/api/media_api.rb +1 -1
  20. data/lib/postboost/api/mentions_api.rb +1 -1
  21. data/lib/postboost/api/posting_schedule_api.rb +1 -1
  22. data/lib/postboost/api/posts_api.rb +1 -1
  23. data/lib/postboost/api/receipts_api.rb +1 -1
  24. data/lib/postboost/api/subscriptions_api.rb +1 -1
  25. data/lib/postboost/api/tags_api.rb +1 -1
  26. data/lib/postboost/api/templates_api.rb +1 -1
  27. data/lib/postboost/api/users_api.rb +1 -1
  28. data/lib/postboost/api/webhooks_api.rb +1 -1
  29. data/lib/postboost/api/workspaces_api.rb +1 -1
  30. data/lib/postboost/api_client.rb +1 -1
  31. data/lib/postboost/api_error.rb +1 -1
  32. data/lib/postboost/configuration.rb +1 -1
  33. data/lib/postboost/models/account.rb +1 -1
  34. data/lib/postboost/models/account_analytics.rb +1 -1
  35. data/lib/postboost/models/account_analytics_initial_sync.rb +1 -1
  36. data/lib/postboost/models/account_connection_health.rb +1 -1
  37. data/lib/postboost/models/account_errors_inner.rb +1 -1
  38. data/lib/postboost/models/account_errors_inner_one_of.rb +1 -1
  39. data/lib/postboost/models/account_group.rb +1 -1
  40. data/lib/postboost/models/account_group_input.rb +1 -1
  41. data/lib/postboost/models/account_health.rb +1 -1
  42. data/lib/postboost/models/account_health_daily_cap.rb +1 -1
  43. data/lib/postboost/models/account_schedule.rb +1 -1
  44. data/lib/postboost/models/add_competitor202_response.rb +1 -1
  45. data/lib/postboost/models/add_competitor409_response.rb +1 -1
  46. data/lib/postboost/models/add_generic_subscription_request.rb +1 -1
  47. data/lib/postboost/models/add_post_to_queue_request.rb +1 -1
  48. data/lib/postboost/models/agent_page_meta.rb +1 -1
  49. data/lib/postboost/models/agent_proposal.rb +1 -1
  50. data/lib/postboost/models/agent_proposal_decision.rb +1 -1
  51. data/lib/postboost/models/agent_run.rb +1 -1
  52. data/lib/postboost/models/ai_credits.rb +1 -1
  53. data/lib/postboost/models/ai_usage.rb +1 -1
  54. data/lib/postboost/models/ai_usage_text.rb +1 -1
  55. data/lib/postboost/models/analytics_period.rb +1 -1
  56. data/lib/postboost/models/analytics_summary.rb +1 -1
  57. data/lib/postboost/models/analytics_summary_data.rb +1 -1
  58. data/lib/postboost/models/api_activity.rb +1 -1
  59. data/lib/postboost/models/api_activity_outcome.rb +1 -1
  60. data/lib/postboost/models/api_key.rb +1 -1
  61. data/lib/postboost/models/api_key_ability.rb +1 -1
  62. data/lib/postboost/models/api_key_input.rb +1 -1
  63. data/lib/postboost/models/approve_agent_proposal200_response.rb +1 -1
  64. data/lib/postboost/models/approve_agent_proposal409_response.rb +1 -1
  65. data/lib/postboost/models/approve_inbox_reply_draft403_response.rb +1 -1
  66. data/lib/postboost/models/approve_post_request.rb +1 -1
  67. data/lib/postboost/models/best_posting_times.rb +1 -1
  68. data/lib/postboost/models/best_posting_times_times_inner.rb +1 -1
  69. data/lib/postboost/models/blog_to_social200_response.rb +1 -1
  70. data/lib/postboost/models/blog_to_social429_response.rb +1 -1
  71. data/lib/postboost/models/blog_to_social_caption.rb +1 -1
  72. data/lib/postboost/models/blog_to_social_input.rb +1 -1
  73. data/lib/postboost/models/blog_to_social_media.rb +1 -1
  74. data/lib/postboost/models/blog_to_social_response.rb +1 -1
  75. data/lib/postboost/models/brand_voice.rb +1 -1
  76. data/lib/postboost/models/brand_voice_input.rb +1 -1
  77. data/lib/postboost/models/brand_voice_meta.rb +1 -1
  78. data/lib/postboost/models/cancel_subscription422_response.rb +1 -1
  79. data/lib/postboost/models/cancel_subscription422_response_errors.rb +1 -1
  80. data/lib/postboost/models/cancel_subscription_request.rb +1 -1
  81. data/lib/postboost/models/change_subscription_plan_request.rb +1 -1
  82. data/lib/postboost/models/channel_account.rb +1 -1
  83. data/lib/postboost/models/checkout_subscription200_response.rb +1 -1
  84. data/lib/postboost/models/checkout_subscription_request.rb +1 -1
  85. data/lib/postboost/models/coded_error.rb +1 -1
  86. data/lib/postboost/models/competitor.rb +1 -1
  87. data/lib/postboost/models/competitor_detail.rb +1 -1
  88. data/lib/postboost/models/competitor_input.rb +1 -1
  89. data/lib/postboost/models/competitor_media.rb +1 -1
  90. data/lib/postboost/models/competitor_snapshot.rb +1 -1
  91. data/lib/postboost/models/complete_chunked_upload_request.rb +1 -1
  92. data/lib/postboost/models/connect_channel_input.rb +1 -1
  93. data/lib/postboost/models/connect_link.rb +1 -1
  94. data/lib/postboost/models/create_account_group201_response.rb +1 -1
  95. data/lib/postboost/models/create_agent201_response.rb +1 -1
  96. data/lib/postboost/models/create_api_key201_response.rb +1 -1
  97. data/lib/postboost/models/create_api_key201_response_data.rb +1 -1
  98. data/lib/postboost/models/create_connect_link_request.rb +1 -1
  99. data/lib/postboost/models/create_hashtag_group201_response.rb +1 -1
  100. data/lib/postboost/models/create_inbox_reply_draft201_response.rb +1 -1
  101. data/lib/postboost/models/create_media_folder_request.rb +1 -1
  102. data/lib/postboost/models/create_mention201_response.rb +1 -1
  103. data/lib/postboost/models/create_post201_response.rb +1 -1
  104. data/lib/postboost/models/create_recycling_rule201_response.rb +1 -1
  105. data/lib/postboost/models/create_report_export201_response.rb +1 -1
  106. data/lib/postboost/models/create_reseller_client201_response.rb +1 -1
  107. data/lib/postboost/models/create_rss_feed201_response.rb +1 -1
  108. data/lib/postboost/models/create_template201_response.rb +1 -1
  109. data/lib/postboost/models/create_webhook_subscription201_response.rb +1 -1
  110. data/lib/postboost/models/create_webhook_subscription201_response_data.rb +1 -1
  111. data/lib/postboost/models/delete_agent200_response.rb +1 -1
  112. data/lib/postboost/models/delete_media_bulk_request.rb +1 -1
  113. data/lib/postboost/models/delete_media_bulk_request_items_inner.rb +1 -1
  114. data/lib/postboost/models/delete_media_folder_request.rb +1 -1
  115. data/lib/postboost/models/delete_mode.rb +1 -1
  116. data/lib/postboost/models/delete_post_request.rb +1 -1
  117. data/lib/postboost/models/delete_posts_bulk_request.rb +1 -1
  118. data/lib/postboost/models/delete_receipts_bulk_request.rb +1 -1
  119. data/lib/postboost/models/delete_result.rb +1 -1
  120. data/lib/postboost/models/delete_user400_response.rb +1 -1
  121. data/lib/postboost/models/delete_users_bulk_request.rb +1 -1
  122. data/lib/postboost/models/delete_workspaces_bulk_request.rb +1 -1
  123. data/lib/postboost/models/free_tool_build_utm_url_request.rb +1 -1
  124. data/lib/postboost/models/free_tool_build_utm_url_response.rb +1 -1
  125. data/lib/postboost/models/free_tool_calculate_engagement_rate_request.rb +1 -1
  126. data/lib/postboost/models/free_tool_calculate_engagement_rate_response.rb +1 -1
  127. data/lib/postboost/models/free_tool_check_post_request.rb +1 -1
  128. data/lib/postboost/models/free_tool_check_post_request_media.rb +1 -1
  129. data/lib/postboost/models/free_tool_check_post_response.rb +1 -1
  130. data/lib/postboost/models/free_tool_check_post_response_networks_inner.rb +1 -1
  131. data/lib/postboost/models/free_tool_check_post_response_networks_inner_errors_inner.rb +1 -1
  132. data/lib/postboost/models/free_tool_clean_text_request.rb +1 -1
  133. data/lib/postboost/models/free_tool_clean_text_response.rb +1 -1
  134. data/lib/postboost/models/free_tool_clean_text_response_changes_inner.rb +1 -1
  135. data/lib/postboost/models/free_tool_clean_text_response_flags_inner.rb +1 -1
  136. data/lib/postboost/models/free_tool_count_characters_request.rb +1 -1
  137. data/lib/postboost/models/free_tool_count_characters_response.rb +1 -1
  138. data/lib/postboost/models/free_tool_count_characters_response_networks_inner.rb +1 -1
  139. data/lib/postboost/models/free_tool_error.rb +14 -4
  140. data/lib/postboost/models/free_tool_format_linked_in_post_request.rb +1 -1
  141. data/lib/postboost/models/free_tool_format_linked_in_post_response.rb +1 -1
  142. data/lib/postboost/models/free_tool_generate_caption_request.rb +396 -0
  143. data/lib/postboost/models/free_tool_generate_caption_response.rb +237 -0
  144. data/lib/postboost/models/free_tool_generate_fancy_text_request.rb +1 -1
  145. data/lib/postboost/models/free_tool_generate_fancy_text_response.rb +1 -1
  146. data/lib/postboost/models/free_tool_generate_fancy_text_response_styles_inner.rb +1 -1
  147. data/lib/postboost/models/free_tool_generate_hashtags_request.rb +354 -0
  148. data/lib/postboost/models/free_tool_generate_hashtags_response.rb +237 -0
  149. data/lib/postboost/models/free_tool_list.rb +1 -1
  150. data/lib/postboost/models/free_tool_list_item.rb +1 -1
  151. data/lib/postboost/models/free_tool_split_thread_request.rb +1 -1
  152. data/lib/postboost/models/free_tool_split_thread_response.rb +1 -1
  153. data/lib/postboost/models/free_tool_split_thread_response_posts_inner.rb +1 -1
  154. data/lib/postboost/models/get_account_health200_response.rb +1 -1
  155. data/lib/postboost/models/get_brand_voice200_response.rb +1 -1
  156. data/lib/postboost/models/get_competitor200_response.rb +1 -1
  157. data/lib/postboost/models/get_inbox_conversation200_response.rb +1 -1
  158. data/lib/postboost/models/get_posting_schedule200_response.rb +1 -1
  159. data/lib/postboost/models/get_remote_upload_status200_response.rb +1 -1
  160. data/lib/postboost/models/get_report_branding200_response.rb +1 -1
  161. data/lib/postboost/models/get_repurpose_run200_response.rb +1 -1
  162. data/lib/postboost/models/guardrail_error.rb +1 -1
  163. data/lib/postboost/models/hashtag_group.rb +1 -1
  164. data/lib/postboost/models/hashtag_group_input.rb +1 -1
  165. data/lib/postboost/models/image_alt_text200_response.rb +1 -1
  166. data/lib/postboost/models/image_alt_text_input.rb +1 -1
  167. data/lib/postboost/models/image_alt_text_response.rb +1 -1
  168. data/lib/postboost/models/image_credit_balance.rb +1 -1
  169. data/lib/postboost/models/image_edit_input.rb +1 -1
  170. data/lib/postboost/models/image_generate200_response.rb +1 -1
  171. data/lib/postboost/models/image_generate429_response.rb +1 -1
  172. data/lib/postboost/models/image_generate_input.rb +1 -1
  173. data/lib/postboost/models/image_generation_response.rb +1 -1
  174. data/lib/postboost/models/image_prompt200_response.rb +1 -1
  175. data/lib/postboost/models/image_prompt429_response.rb +1 -1
  176. data/lib/postboost/models/image_prompt_input.rb +1 -1
  177. data/lib/postboost/models/image_prompt_response.rb +1 -1
  178. data/lib/postboost/models/image_variations200_response.rb +1 -1
  179. data/lib/postboost/models/image_variations_input.rb +1 -1
  180. data/lib/postboost/models/image_variations_response.rb +1 -1
  181. data/lib/postboost/models/inbox_author.rb +1 -1
  182. data/lib/postboost/models/inbox_conversation.rb +1 -1
  183. data/lib/postboost/models/inbox_conversation_account.rb +1 -1
  184. data/lib/postboost/models/inbox_conversation_update.rb +1 -1
  185. data/lib/postboost/models/inbox_message.rb +1 -1
  186. data/lib/postboost/models/inbox_message_author.rb +1 -1
  187. data/lib/postboost/models/inbox_reply_draft.rb +1 -1
  188. data/lib/postboost/models/inbox_reply_draft_approve.rb +1 -1
  189. data/lib/postboost/models/inbox_reply_draft_edit.rb +1 -1
  190. data/lib/postboost/models/inbox_reply_draft_input.rb +1 -1
  191. data/lib/postboost/models/initiate_chunked_upload201_response.rb +1 -1
  192. data/lib/postboost/models/initiate_chunked_upload_request.rb +1 -1
  193. data/lib/postboost/models/initiate_remote_upload201_response.rb +1 -1
  194. data/lib/postboost/models/initiate_remote_upload201_response_one_of.rb +1 -1
  195. data/lib/postboost/models/initiate_remote_upload_request.rb +1 -1
  196. data/lib/postboost/models/learn_brand_voice_input.rb +1 -1
  197. data/lib/postboost/models/learn_brand_voice_response.rb +1 -1
  198. data/lib/postboost/models/learn_brand_voice_response_meta.rb +1 -1
  199. data/lib/postboost/models/list_account_groups200_response.rb +1 -1
  200. data/lib/postboost/models/list_accounts200_response.rb +1 -1
  201. data/lib/postboost/models/list_agent_proposals200_response.rb +1 -1
  202. data/lib/postboost/models/list_agent_runs200_response.rb +1 -1
  203. data/lib/postboost/models/list_agents200_response.rb +1 -1
  204. data/lib/postboost/models/list_api_activity200_response.rb +1 -1
  205. data/lib/postboost/models/list_api_keys200_response.rb +1 -1
  206. data/lib/postboost/models/list_competitors200_response.rb +1 -1
  207. data/lib/postboost/models/list_hashtag_groups200_response.rb +1 -1
  208. data/lib/postboost/models/list_inbox_conversations200_response.rb +1 -1
  209. data/lib/postboost/models/list_inbox_reply_drafts200_response.rb +1 -1
  210. data/lib/postboost/models/list_media200_response.rb +1 -1
  211. data/lib/postboost/models/list_media_folders200_response.rb +1 -1
  212. data/lib/postboost/models/list_mentions200_response.rb +1 -1
  213. data/lib/postboost/models/list_my_workspaces200_response.rb +1 -1
  214. data/lib/postboost/models/list_posts200_response.rb +1 -1
  215. data/lib/postboost/models/list_receipts200_response.rb +1 -1
  216. data/lib/postboost/models/list_recycling_rules200_response.rb +1 -1
  217. data/lib/postboost/models/list_recycling_runs200_response.rb +1 -1
  218. data/lib/postboost/models/list_report_exports200_response.rb +1 -1
  219. data/lib/postboost/models/list_reseller_clients200_response.rb +1 -1
  220. data/lib/postboost/models/list_rss_feeds200_response.rb +1 -1
  221. data/lib/postboost/models/list_tags200_response.rb +1 -1
  222. data/lib/postboost/models/list_templates200_response.rb +1 -1
  223. data/lib/postboost/models/list_users200_response.rb +1 -1
  224. data/lib/postboost/models/list_webhook_subscriptions200_response.rb +1 -1
  225. data/lib/postboost/models/list_workspaces200_response.rb +1 -1
  226. data/lib/postboost/models/media.rb +1 -1
  227. data/lib/postboost/models/media_base64_input.rb +1 -1
  228. data/lib/postboost/models/media_folder.rb +1 -1
  229. data/lib/postboost/models/media_folder_input.rb +1 -1
  230. data/lib/postboost/models/media_folder_ref.rb +1 -1
  231. data/lib/postboost/models/mention.rb +1 -1
  232. data/lib/postboost/models/mention_identity.rb +1 -1
  233. data/lib/postboost/models/mention_identity_input.rb +1 -1
  234. data/lib/postboost/models/mention_input.rb +1 -1
  235. data/lib/postboost/models/message_only.rb +1 -1
  236. data/lib/postboost/models/pagination_meta.rb +1 -1
  237. data/lib/postboost/models/pagination_meta_links.rb +1 -1
  238. data/lib/postboost/models/pagination_meta_meta.rb +1 -1
  239. data/lib/postboost/models/poll_rss_feed200_response.rb +1 -1
  240. data/lib/postboost/models/post.rb +1 -1
  241. data/lib/postboost/models/post_analytics.rb +1 -1
  242. data/lib/postboost/models/post_content.rb +1 -1
  243. data/lib/postboost/models/post_input.rb +1 -1
  244. data/lib/postboost/models/post_options_instagram.rb +1 -1
  245. data/lib/postboost/models/post_options_tik_tok.rb +1 -1
  246. data/lib/postboost/models/post_options_youtube.rb +1 -1
  247. data/lib/postboost/models/post_status.rb +1 -1
  248. data/lib/postboost/models/post_version.rb +1 -1
  249. data/lib/postboost/models/post_version_options.rb +1 -1
  250. data/lib/postboost/models/post_warning.rb +1 -1
  251. data/lib/postboost/models/post_warnings.rb +1 -1
  252. data/lib/postboost/models/posting_schedule.rb +1 -1
  253. data/lib/postboost/models/posting_schedule_day.rb +1 -1
  254. data/lib/postboost/models/posting_schedule_day_times_inner.rb +1 -1
  255. data/lib/postboost/models/posting_schedule_input.rb +1 -1
  256. data/lib/postboost/models/posting_time_slot.rb +1 -1
  257. data/lib/postboost/models/posting_times.rb +1 -1
  258. data/lib/postboost/models/posting_times_best_inner.rb +1 -1
  259. data/lib/postboost/models/posting_times_day_intervals_inner_inner.rb +1 -1
  260. data/lib/postboost/models/posting_times_days_inner.rb +1 -1
  261. data/lib/postboost/models/preflight_result.rb +1 -1
  262. data/lib/postboost/models/public_workspace.rb +1 -1
  263. data/lib/postboost/models/public_workspace_pivot.rb +1 -1
  264. data/lib/postboost/models/publish_progress.rb +1 -1
  265. data/lib/postboost/models/queue_slots.rb +1 -1
  266. data/lib/postboost/models/receipt.rb +1 -1
  267. data/lib/postboost/models/receipt_input.rb +1 -1
  268. data/lib/postboost/models/receipt_update_input.rb +1 -1
  269. data/lib/postboost/models/recommended_posting_times.rb +1 -1
  270. data/lib/postboost/models/reconnect_link.rb +1 -1
  271. data/lib/postboost/models/recycling_rule.rb +1 -1
  272. data/lib/postboost/models/recycling_rule_input.rb +1 -1
  273. data/lib/postboost/models/recycling_rule_settings.rb +1 -1
  274. data/lib/postboost/models/recycling_rule_update.rb +1 -1
  275. data/lib/postboost/models/recycling_run.rb +1 -1
  276. data/lib/postboost/models/remove_generic_subscription422_response.rb +1 -1
  277. data/lib/postboost/models/remove_user_from_workspace_request.rb +1 -1
  278. data/lib/postboost/models/report_branding.rb +1 -1
  279. data/lib/postboost/models/report_branding_input.rb +1 -1
  280. data/lib/postboost/models/report_export.rb +1 -1
  281. data/lib/postboost/models/report_export_input.rb +1 -1
  282. data/lib/postboost/models/repurpose_content200_response.rb +1 -1
  283. data/lib/postboost/models/repurpose_content202_response.rb +1 -1
  284. data/lib/postboost/models/repurpose_content500_response.rb +1 -1
  285. data/lib/postboost/models/repurpose_input.rb +1 -1
  286. data/lib/postboost/models/repurpose_input_theme.rb +1 -1
  287. data/lib/postboost/models/repurpose_result.rb +1 -1
  288. data/lib/postboost/models/repurpose_result_media.rb +1 -1
  289. data/lib/postboost/models/repurpose_result_source.rb +1 -1
  290. data/lib/postboost/models/repurpose_run.rb +1 -1
  291. data/lib/postboost/models/repurpose_run_accepted.rb +1 -1
  292. data/lib/postboost/models/repurpose_slide.rb +1 -1
  293. data/lib/postboost/models/reseller_client.rb +1 -1
  294. data/lib/postboost/models/reseller_client_input.rb +1 -1
  295. data/lib/postboost/models/reseller_client_usage.rb +1 -1
  296. data/lib/postboost/models/retry_post_account_result.rb +1 -1
  297. data/lib/postboost/models/rss_feed.rb +1 -1
  298. data/lib/postboost/models/rss_feed_input.rb +1 -1
  299. data/lib/postboost/models/rss_feed_update.rb +1 -1
  300. data/lib/postboost/models/run_agent202_response.rb +1 -1
  301. data/lib/postboost/models/schedule_post_request.rb +1 -1
  302. data/lib/postboost/models/schedule_result.rb +1 -1
  303. data/lib/postboost/models/subscription.rb +1 -1
  304. data/lib/postboost/models/subscription_input.rb +1 -1
  305. data/lib/postboost/models/subscription_status.rb +1 -1
  306. data/lib/postboost/models/subscription_update_input.rb +1 -1
  307. data/lib/postboost/models/tag.rb +1 -1
  308. data/lib/postboost/models/tag_input.rb +1 -1
  309. data/lib/postboost/models/template.rb +1 -1
  310. data/lib/postboost/models/template_content_item.rb +1 -1
  311. data/lib/postboost/models/template_input.rb +1 -1
  312. data/lib/postboost/models/template_input_content_inner.rb +1 -1
  313. data/lib/postboost/models/update_media_request.rb +1 -1
  314. data/lib/postboost/models/update_post200_response.rb +1 -1
  315. data/lib/postboost/models/upload_chunk201_response.rb +1 -1
  316. data/lib/postboost/models/user.rb +1 -1
  317. data/lib/postboost/models/user_input.rb +1 -1
  318. data/lib/postboost/models/user_update_input.rb +1 -1
  319. data/lib/postboost/models/webhook_event_name.rb +1 -1
  320. data/lib/postboost/models/webhook_event_payload.rb +1 -1
  321. data/lib/postboost/models/webhook_subscription.rb +1 -1
  322. data/lib/postboost/models/webhook_subscription_input.rb +1 -1
  323. data/lib/postboost/models/workspace.rb +1 -1
  324. data/lib/postboost/models/workspace_agent.rb +1 -1
  325. data/lib/postboost/models/workspace_agent_input.rb +1 -1
  326. data/lib/postboost/models/workspace_agent_settings.rb +1 -1
  327. data/lib/postboost/models/workspace_agent_update.rb +1 -1
  328. data/lib/postboost/models/workspace_input.rb +1 -1
  329. data/lib/postboost/models/workspace_user_input.rb +1 -1
  330. data/lib/postboost/models/x_usage.rb +1 -1
  331. data/lib/postboost/models/x_usage_counter.rb +1 -1
  332. data/lib/postboost/version.rb +2 -2
  333. data/lib/postboost.rb +5 -1
  334. data/postboost.gemspec +1 -1
  335. data/spec/api/account_groups_api_spec.rb +1 -1
  336. data/spec/api/accounts_api_spec.rb +1 -1
  337. data/spec/api/activity_api_spec.rb +1 -1
  338. data/spec/api/agents_api_spec.rb +1 -1
  339. data/spec/api/ai_api_spec.rb +1 -1
  340. data/spec/api/analytics_api_spec.rb +1 -1
  341. data/spec/api/competitors_api_spec.rb +1 -1
  342. data/spec/api/free_tools_api_spec.rb +25 -1
  343. data/spec/api/hashtag_groups_api_spec.rb +1 -1
  344. data/spec/api/inbox_api_spec.rb +1 -1
  345. data/spec/api/media_api_spec.rb +1 -1
  346. data/spec/api/mentions_api_spec.rb +1 -1
  347. data/spec/api/posting_schedule_api_spec.rb +1 -1
  348. data/spec/api/posts_api_spec.rb +1 -1
  349. data/spec/api/receipts_api_spec.rb +1 -1
  350. data/spec/api/subscriptions_api_spec.rb +1 -1
  351. data/spec/api/tags_api_spec.rb +1 -1
  352. data/spec/api/templates_api_spec.rb +1 -1
  353. data/spec/api/users_api_spec.rb +1 -1
  354. data/spec/api/webhooks_api_spec.rb +1 -1
  355. data/spec/api/workspaces_api_spec.rb +1 -1
  356. data/spec/models/account_analytics_initial_sync_spec.rb +1 -1
  357. data/spec/models/account_analytics_spec.rb +1 -1
  358. data/spec/models/account_connection_health_spec.rb +1 -1
  359. data/spec/models/account_errors_inner_one_of_spec.rb +1 -1
  360. data/spec/models/account_errors_inner_spec.rb +1 -1
  361. data/spec/models/account_group_input_spec.rb +1 -1
  362. data/spec/models/account_group_spec.rb +1 -1
  363. data/spec/models/account_health_daily_cap_spec.rb +1 -1
  364. data/spec/models/account_health_spec.rb +1 -1
  365. data/spec/models/account_schedule_spec.rb +1 -1
  366. data/spec/models/account_spec.rb +1 -1
  367. data/spec/models/add_competitor202_response_spec.rb +1 -1
  368. data/spec/models/add_competitor409_response_spec.rb +1 -1
  369. data/spec/models/add_generic_subscription_request_spec.rb +1 -1
  370. data/spec/models/add_post_to_queue_request_spec.rb +1 -1
  371. data/spec/models/agent_page_meta_spec.rb +1 -1
  372. data/spec/models/agent_proposal_decision_spec.rb +1 -1
  373. data/spec/models/agent_proposal_spec.rb +1 -1
  374. data/spec/models/agent_run_spec.rb +1 -1
  375. data/spec/models/ai_credits_spec.rb +1 -1
  376. data/spec/models/ai_usage_spec.rb +1 -1
  377. data/spec/models/ai_usage_text_spec.rb +1 -1
  378. data/spec/models/analytics_period_spec.rb +1 -1
  379. data/spec/models/analytics_summary_data_spec.rb +1 -1
  380. data/spec/models/analytics_summary_spec.rb +1 -1
  381. data/spec/models/api_activity_outcome_spec.rb +1 -1
  382. data/spec/models/api_activity_spec.rb +1 -1
  383. data/spec/models/api_key_ability_spec.rb +1 -1
  384. data/spec/models/api_key_input_spec.rb +1 -1
  385. data/spec/models/api_key_spec.rb +1 -1
  386. data/spec/models/approve_agent_proposal200_response_spec.rb +1 -1
  387. data/spec/models/approve_agent_proposal409_response_spec.rb +1 -1
  388. data/spec/models/approve_inbox_reply_draft403_response_spec.rb +1 -1
  389. data/spec/models/approve_post_request_spec.rb +1 -1
  390. data/spec/models/best_posting_times_spec.rb +1 -1
  391. data/spec/models/best_posting_times_times_inner_spec.rb +1 -1
  392. data/spec/models/blog_to_social200_response_spec.rb +1 -1
  393. data/spec/models/blog_to_social429_response_spec.rb +1 -1
  394. data/spec/models/blog_to_social_caption_spec.rb +1 -1
  395. data/spec/models/blog_to_social_input_spec.rb +1 -1
  396. data/spec/models/blog_to_social_media_spec.rb +1 -1
  397. data/spec/models/blog_to_social_response_spec.rb +1 -1
  398. data/spec/models/brand_voice_input_spec.rb +1 -1
  399. data/spec/models/brand_voice_meta_spec.rb +1 -1
  400. data/spec/models/brand_voice_spec.rb +1 -1
  401. data/spec/models/cancel_subscription422_response_errors_spec.rb +1 -1
  402. data/spec/models/cancel_subscription422_response_spec.rb +1 -1
  403. data/spec/models/cancel_subscription_request_spec.rb +1 -1
  404. data/spec/models/change_subscription_plan_request_spec.rb +1 -1
  405. data/spec/models/channel_account_spec.rb +1 -1
  406. data/spec/models/checkout_subscription200_response_spec.rb +1 -1
  407. data/spec/models/checkout_subscription_request_spec.rb +1 -1
  408. data/spec/models/coded_error_spec.rb +1 -1
  409. data/spec/models/competitor_detail_spec.rb +1 -1
  410. data/spec/models/competitor_input_spec.rb +1 -1
  411. data/spec/models/competitor_media_spec.rb +1 -1
  412. data/spec/models/competitor_snapshot_spec.rb +1 -1
  413. data/spec/models/competitor_spec.rb +1 -1
  414. data/spec/models/complete_chunked_upload_request_spec.rb +1 -1
  415. data/spec/models/connect_channel_input_spec.rb +1 -1
  416. data/spec/models/connect_link_spec.rb +1 -1
  417. data/spec/models/create_account_group201_response_spec.rb +1 -1
  418. data/spec/models/create_agent201_response_spec.rb +1 -1
  419. data/spec/models/create_api_key201_response_data_spec.rb +1 -1
  420. data/spec/models/create_api_key201_response_spec.rb +1 -1
  421. data/spec/models/create_connect_link_request_spec.rb +1 -1
  422. data/spec/models/create_hashtag_group201_response_spec.rb +1 -1
  423. data/spec/models/create_inbox_reply_draft201_response_spec.rb +1 -1
  424. data/spec/models/create_media_folder_request_spec.rb +1 -1
  425. data/spec/models/create_mention201_response_spec.rb +1 -1
  426. data/spec/models/create_post201_response_spec.rb +1 -1
  427. data/spec/models/create_recycling_rule201_response_spec.rb +1 -1
  428. data/spec/models/create_report_export201_response_spec.rb +1 -1
  429. data/spec/models/create_reseller_client201_response_spec.rb +1 -1
  430. data/spec/models/create_rss_feed201_response_spec.rb +1 -1
  431. data/spec/models/create_template201_response_spec.rb +1 -1
  432. data/spec/models/create_webhook_subscription201_response_data_spec.rb +1 -1
  433. data/spec/models/create_webhook_subscription201_response_spec.rb +1 -1
  434. data/spec/models/delete_agent200_response_spec.rb +1 -1
  435. data/spec/models/delete_media_bulk_request_items_inner_spec.rb +1 -1
  436. data/spec/models/delete_media_bulk_request_spec.rb +1 -1
  437. data/spec/models/delete_media_folder_request_spec.rb +1 -1
  438. data/spec/models/delete_mode_spec.rb +1 -1
  439. data/spec/models/delete_post_request_spec.rb +1 -1
  440. data/spec/models/delete_posts_bulk_request_spec.rb +1 -1
  441. data/spec/models/delete_receipts_bulk_request_spec.rb +1 -1
  442. data/spec/models/delete_result_spec.rb +1 -1
  443. data/spec/models/delete_user400_response_spec.rb +1 -1
  444. data/spec/models/delete_users_bulk_request_spec.rb +1 -1
  445. data/spec/models/delete_workspaces_bulk_request_spec.rb +1 -1
  446. data/spec/models/free_tool_build_utm_url_request_spec.rb +1 -1
  447. data/spec/models/free_tool_build_utm_url_response_spec.rb +1 -1
  448. data/spec/models/free_tool_calculate_engagement_rate_request_spec.rb +1 -1
  449. data/spec/models/free_tool_calculate_engagement_rate_response_spec.rb +1 -1
  450. data/spec/models/free_tool_check_post_request_media_spec.rb +1 -1
  451. data/spec/models/free_tool_check_post_request_spec.rb +1 -1
  452. data/spec/models/free_tool_check_post_response_networks_inner_errors_inner_spec.rb +1 -1
  453. data/spec/models/free_tool_check_post_response_networks_inner_spec.rb +1 -1
  454. data/spec/models/free_tool_check_post_response_spec.rb +1 -1
  455. data/spec/models/free_tool_clean_text_request_spec.rb +1 -1
  456. data/spec/models/free_tool_clean_text_response_changes_inner_spec.rb +1 -1
  457. data/spec/models/free_tool_clean_text_response_flags_inner_spec.rb +1 -1
  458. data/spec/models/free_tool_clean_text_response_spec.rb +1 -1
  459. data/spec/models/free_tool_count_characters_request_spec.rb +1 -1
  460. data/spec/models/free_tool_count_characters_response_networks_inner_spec.rb +1 -1
  461. data/spec/models/free_tool_count_characters_response_spec.rb +1 -1
  462. data/spec/models/free_tool_error_spec.rb +7 -1
  463. data/spec/models/free_tool_format_linked_in_post_request_spec.rb +1 -1
  464. data/spec/models/free_tool_format_linked_in_post_response_spec.rb +1 -1
  465. data/spec/models/free_tool_generate_caption_request_spec.rb +84 -0
  466. data/spec/models/free_tool_generate_caption_response_spec.rb +48 -0
  467. data/spec/models/free_tool_generate_fancy_text_request_spec.rb +1 -1
  468. data/spec/models/free_tool_generate_fancy_text_response_spec.rb +1 -1
  469. data/spec/models/free_tool_generate_fancy_text_response_styles_inner_spec.rb +1 -1
  470. data/spec/models/free_tool_generate_hashtags_request_spec.rb +58 -0
  471. data/spec/models/free_tool_generate_hashtags_response_spec.rb +48 -0
  472. data/spec/models/free_tool_list_item_spec.rb +1 -1
  473. data/spec/models/free_tool_list_spec.rb +1 -1
  474. data/spec/models/free_tool_split_thread_request_spec.rb +1 -1
  475. data/spec/models/free_tool_split_thread_response_posts_inner_spec.rb +1 -1
  476. data/spec/models/free_tool_split_thread_response_spec.rb +1 -1
  477. data/spec/models/get_account_health200_response_spec.rb +1 -1
  478. data/spec/models/get_brand_voice200_response_spec.rb +1 -1
  479. data/spec/models/get_competitor200_response_spec.rb +1 -1
  480. data/spec/models/get_inbox_conversation200_response_spec.rb +1 -1
  481. data/spec/models/get_posting_schedule200_response_spec.rb +1 -1
  482. data/spec/models/get_remote_upload_status200_response_spec.rb +1 -1
  483. data/spec/models/get_report_branding200_response_spec.rb +1 -1
  484. data/spec/models/get_repurpose_run200_response_spec.rb +1 -1
  485. data/spec/models/guardrail_error_spec.rb +1 -1
  486. data/spec/models/hashtag_group_input_spec.rb +1 -1
  487. data/spec/models/hashtag_group_spec.rb +1 -1
  488. data/spec/models/image_alt_text200_response_spec.rb +1 -1
  489. data/spec/models/image_alt_text_input_spec.rb +1 -1
  490. data/spec/models/image_alt_text_response_spec.rb +1 -1
  491. data/spec/models/image_credit_balance_spec.rb +1 -1
  492. data/spec/models/image_edit_input_spec.rb +1 -1
  493. data/spec/models/image_generate200_response_spec.rb +1 -1
  494. data/spec/models/image_generate429_response_spec.rb +1 -1
  495. data/spec/models/image_generate_input_spec.rb +1 -1
  496. data/spec/models/image_generation_response_spec.rb +1 -1
  497. data/spec/models/image_prompt200_response_spec.rb +1 -1
  498. data/spec/models/image_prompt429_response_spec.rb +1 -1
  499. data/spec/models/image_prompt_input_spec.rb +1 -1
  500. data/spec/models/image_prompt_response_spec.rb +1 -1
  501. data/spec/models/image_variations200_response_spec.rb +1 -1
  502. data/spec/models/image_variations_input_spec.rb +1 -1
  503. data/spec/models/image_variations_response_spec.rb +1 -1
  504. data/spec/models/inbox_author_spec.rb +1 -1
  505. data/spec/models/inbox_conversation_account_spec.rb +1 -1
  506. data/spec/models/inbox_conversation_spec.rb +1 -1
  507. data/spec/models/inbox_conversation_update_spec.rb +1 -1
  508. data/spec/models/inbox_message_author_spec.rb +1 -1
  509. data/spec/models/inbox_message_spec.rb +1 -1
  510. data/spec/models/inbox_reply_draft_approve_spec.rb +1 -1
  511. data/spec/models/inbox_reply_draft_edit_spec.rb +1 -1
  512. data/spec/models/inbox_reply_draft_input_spec.rb +1 -1
  513. data/spec/models/inbox_reply_draft_spec.rb +1 -1
  514. data/spec/models/initiate_chunked_upload201_response_spec.rb +1 -1
  515. data/spec/models/initiate_chunked_upload_request_spec.rb +1 -1
  516. data/spec/models/initiate_remote_upload201_response_one_of_spec.rb +1 -1
  517. data/spec/models/initiate_remote_upload201_response_spec.rb +1 -1
  518. data/spec/models/initiate_remote_upload_request_spec.rb +1 -1
  519. data/spec/models/learn_brand_voice_input_spec.rb +1 -1
  520. data/spec/models/learn_brand_voice_response_meta_spec.rb +1 -1
  521. data/spec/models/learn_brand_voice_response_spec.rb +1 -1
  522. data/spec/models/list_account_groups200_response_spec.rb +1 -1
  523. data/spec/models/list_accounts200_response_spec.rb +1 -1
  524. data/spec/models/list_agent_proposals200_response_spec.rb +1 -1
  525. data/spec/models/list_agent_runs200_response_spec.rb +1 -1
  526. data/spec/models/list_agents200_response_spec.rb +1 -1
  527. data/spec/models/list_api_activity200_response_spec.rb +1 -1
  528. data/spec/models/list_api_keys200_response_spec.rb +1 -1
  529. data/spec/models/list_competitors200_response_spec.rb +1 -1
  530. data/spec/models/list_hashtag_groups200_response_spec.rb +1 -1
  531. data/spec/models/list_inbox_conversations200_response_spec.rb +1 -1
  532. data/spec/models/list_inbox_reply_drafts200_response_spec.rb +1 -1
  533. data/spec/models/list_media200_response_spec.rb +1 -1
  534. data/spec/models/list_media_folders200_response_spec.rb +1 -1
  535. data/spec/models/list_mentions200_response_spec.rb +1 -1
  536. data/spec/models/list_my_workspaces200_response_spec.rb +1 -1
  537. data/spec/models/list_posts200_response_spec.rb +1 -1
  538. data/spec/models/list_receipts200_response_spec.rb +1 -1
  539. data/spec/models/list_recycling_rules200_response_spec.rb +1 -1
  540. data/spec/models/list_recycling_runs200_response_spec.rb +1 -1
  541. data/spec/models/list_report_exports200_response_spec.rb +1 -1
  542. data/spec/models/list_reseller_clients200_response_spec.rb +1 -1
  543. data/spec/models/list_rss_feeds200_response_spec.rb +1 -1
  544. data/spec/models/list_tags200_response_spec.rb +1 -1
  545. data/spec/models/list_templates200_response_spec.rb +1 -1
  546. data/spec/models/list_users200_response_spec.rb +1 -1
  547. data/spec/models/list_webhook_subscriptions200_response_spec.rb +1 -1
  548. data/spec/models/list_workspaces200_response_spec.rb +1 -1
  549. data/spec/models/media_base64_input_spec.rb +1 -1
  550. data/spec/models/media_folder_input_spec.rb +1 -1
  551. data/spec/models/media_folder_ref_spec.rb +1 -1
  552. data/spec/models/media_folder_spec.rb +1 -1
  553. data/spec/models/media_spec.rb +1 -1
  554. data/spec/models/mention_identity_input_spec.rb +1 -1
  555. data/spec/models/mention_identity_spec.rb +1 -1
  556. data/spec/models/mention_input_spec.rb +1 -1
  557. data/spec/models/mention_spec.rb +1 -1
  558. data/spec/models/message_only_spec.rb +1 -1
  559. data/spec/models/pagination_meta_links_spec.rb +1 -1
  560. data/spec/models/pagination_meta_meta_spec.rb +1 -1
  561. data/spec/models/pagination_meta_spec.rb +1 -1
  562. data/spec/models/poll_rss_feed200_response_spec.rb +1 -1
  563. data/spec/models/post_analytics_spec.rb +1 -1
  564. data/spec/models/post_content_spec.rb +1 -1
  565. data/spec/models/post_input_spec.rb +1 -1
  566. data/spec/models/post_options_instagram_spec.rb +1 -1
  567. data/spec/models/post_options_tik_tok_spec.rb +1 -1
  568. data/spec/models/post_options_youtube_spec.rb +1 -1
  569. data/spec/models/post_spec.rb +1 -1
  570. data/spec/models/post_status_spec.rb +1 -1
  571. data/spec/models/post_version_options_spec.rb +1 -1
  572. data/spec/models/post_version_spec.rb +1 -1
  573. data/spec/models/post_warning_spec.rb +1 -1
  574. data/spec/models/post_warnings_spec.rb +1 -1
  575. data/spec/models/posting_schedule_day_spec.rb +1 -1
  576. data/spec/models/posting_schedule_day_times_inner_spec.rb +1 -1
  577. data/spec/models/posting_schedule_input_spec.rb +1 -1
  578. data/spec/models/posting_schedule_spec.rb +1 -1
  579. data/spec/models/posting_time_slot_spec.rb +1 -1
  580. data/spec/models/posting_times_best_inner_spec.rb +1 -1
  581. data/spec/models/posting_times_day_intervals_inner_inner_spec.rb +1 -1
  582. data/spec/models/posting_times_days_inner_spec.rb +1 -1
  583. data/spec/models/posting_times_spec.rb +1 -1
  584. data/spec/models/preflight_result_spec.rb +1 -1
  585. data/spec/models/public_workspace_pivot_spec.rb +1 -1
  586. data/spec/models/public_workspace_spec.rb +1 -1
  587. data/spec/models/publish_progress_spec.rb +1 -1
  588. data/spec/models/queue_slots_spec.rb +1 -1
  589. data/spec/models/receipt_input_spec.rb +1 -1
  590. data/spec/models/receipt_spec.rb +1 -1
  591. data/spec/models/receipt_update_input_spec.rb +1 -1
  592. data/spec/models/recommended_posting_times_spec.rb +1 -1
  593. data/spec/models/reconnect_link_spec.rb +1 -1
  594. data/spec/models/recycling_rule_input_spec.rb +1 -1
  595. data/spec/models/recycling_rule_settings_spec.rb +1 -1
  596. data/spec/models/recycling_rule_spec.rb +1 -1
  597. data/spec/models/recycling_rule_update_spec.rb +1 -1
  598. data/spec/models/recycling_run_spec.rb +1 -1
  599. data/spec/models/remove_generic_subscription422_response_spec.rb +1 -1
  600. data/spec/models/remove_user_from_workspace_request_spec.rb +1 -1
  601. data/spec/models/report_branding_input_spec.rb +1 -1
  602. data/spec/models/report_branding_spec.rb +1 -1
  603. data/spec/models/report_export_input_spec.rb +1 -1
  604. data/spec/models/report_export_spec.rb +1 -1
  605. data/spec/models/repurpose_content200_response_spec.rb +1 -1
  606. data/spec/models/repurpose_content202_response_spec.rb +1 -1
  607. data/spec/models/repurpose_content500_response_spec.rb +1 -1
  608. data/spec/models/repurpose_input_spec.rb +1 -1
  609. data/spec/models/repurpose_input_theme_spec.rb +1 -1
  610. data/spec/models/repurpose_result_media_spec.rb +1 -1
  611. data/spec/models/repurpose_result_source_spec.rb +1 -1
  612. data/spec/models/repurpose_result_spec.rb +1 -1
  613. data/spec/models/repurpose_run_accepted_spec.rb +1 -1
  614. data/spec/models/repurpose_run_spec.rb +1 -1
  615. data/spec/models/repurpose_slide_spec.rb +1 -1
  616. data/spec/models/reseller_client_input_spec.rb +1 -1
  617. data/spec/models/reseller_client_spec.rb +1 -1
  618. data/spec/models/reseller_client_usage_spec.rb +1 -1
  619. data/spec/models/retry_post_account_result_spec.rb +1 -1
  620. data/spec/models/rss_feed_input_spec.rb +1 -1
  621. data/spec/models/rss_feed_spec.rb +1 -1
  622. data/spec/models/rss_feed_update_spec.rb +1 -1
  623. data/spec/models/run_agent202_response_spec.rb +1 -1
  624. data/spec/models/schedule_post_request_spec.rb +1 -1
  625. data/spec/models/schedule_result_spec.rb +1 -1
  626. data/spec/models/subscription_input_spec.rb +1 -1
  627. data/spec/models/subscription_spec.rb +1 -1
  628. data/spec/models/subscription_status_spec.rb +1 -1
  629. data/spec/models/subscription_update_input_spec.rb +1 -1
  630. data/spec/models/tag_input_spec.rb +1 -1
  631. data/spec/models/tag_spec.rb +1 -1
  632. data/spec/models/template_content_item_spec.rb +1 -1
  633. data/spec/models/template_input_content_inner_spec.rb +1 -1
  634. data/spec/models/template_input_spec.rb +1 -1
  635. data/spec/models/template_spec.rb +1 -1
  636. data/spec/models/update_media_request_spec.rb +1 -1
  637. data/spec/models/update_post200_response_spec.rb +1 -1
  638. data/spec/models/upload_chunk201_response_spec.rb +1 -1
  639. data/spec/models/user_input_spec.rb +1 -1
  640. data/spec/models/user_spec.rb +1 -1
  641. data/spec/models/user_update_input_spec.rb +1 -1
  642. data/spec/models/webhook_event_name_spec.rb +1 -1
  643. data/spec/models/webhook_event_payload_spec.rb +1 -1
  644. data/spec/models/webhook_subscription_input_spec.rb +1 -1
  645. data/spec/models/webhook_subscription_spec.rb +1 -1
  646. data/spec/models/workspace_agent_input_spec.rb +1 -1
  647. data/spec/models/workspace_agent_settings_spec.rb +1 -1
  648. data/spec/models/workspace_agent_spec.rb +1 -1
  649. data/spec/models/workspace_agent_update_spec.rb +1 -1
  650. data/spec/models/workspace_input_spec.rb +1 -1
  651. data/spec/models/workspace_spec.rb +1 -1
  652. data/spec/models/workspace_user_input_spec.rb +1 -1
  653. data/spec/models/x_usage_counter_spec.rb +1 -1
  654. data/spec/models/x_usage_spec.rb +1 -1
  655. data/spec/spec_helper.rb +1 -1
  656. metadata +17 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1aa279540d60492b821c53d5e6ed53de426c29a87a8293ab55d6b94f66642b00
4
- data.tar.gz: f30564f2b935cc331a1e8d49a7eeb88d26b7f085778cdfdd7d610452a7fd24c7
3
+ metadata.gz: 47aa179e14cced9cad977f4fda28f243310e1a0c4153d7dd58f0f691f9f84c3b
4
+ data.tar.gz: b4157b7c9daa50957b46cc2904ecc79057a59e1ae05cbcaa73020b93830279be
5
5
  SHA512:
6
- metadata.gz: f9c2343c57a5105b31c763cf3a269467f5ad3eb370347d7316d196bc09af51ad46bc8883bac92cf48fdf4407776eb06265f936cb40ddc3da407bb9723c63b8dc
7
- data.tar.gz: 834424c96739474f5442b0d7c575d07025a8069622ea30954e69d9ab2c5a3243b495f87ed6e1d9fb00684070d52fe1cc680b82543918413fd34b0e66b40352bc
6
+ metadata.gz: 291a340972d42d341ac8fa1a6f7dfc7eeb4df9c043f9a970fa13c41d064b570b662544812117c94a09183147105980346a012b4e6104ffee60fd340a162cf2d5
7
+ data.tar.gz: c85372021812c23666dfa87abdb91bdc5b174bea8435fb2a7bcca483756efbfef93e1062b3644e317899648bb07cadbaec4986be996e0be8c2f26821f84dab8f
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.28.0 |
16
+ | **Version** | v1.29.0 |
17
17
 
18
18
  ## Quick start
19
19
 
@@ -92,7 +92,9 @@ Class | Method | HTTP request | Description
92
92
  *PostBoost::FreeToolsApi* | [**clean_text**](docs/FreeToolsApi.md#clean_text) | **POST** /tools/ai-text-cleaner | Clean AI-written text: dashes, quotes, invisible characters, markdown
93
93
  *PostBoost::FreeToolsApi* | [**count_characters**](docs/FreeToolsApi.md#count_characters) | **POST** /tools/social-media-character-counter | Count characters as each network counts them
94
94
  *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
95
+ *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)
95
96
  *PostBoost::FreeToolsApi* | [**generate_fancy_text**](docs/FreeToolsApi.md#generate_fancy_text) | **POST** /tools/fancy-text-generator | Convert text to fancy Unicode styles
97
+ *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)
96
98
  *PostBoost::FreeToolsApi* | [**list_free_tools**](docs/FreeToolsApi.md#list_free_tools) | **GET** /tools | List the free tools
97
99
  *PostBoost::FreeToolsApi* | [**split_thread**](docs/FreeToolsApi.md#split_thread) | **POST** /tools/x-thread-maker | Split long text into a thread
98
100
  *PostBoost::HashtagGroupsApi* | [**create_hashtag_group**](docs/HashtagGroupsApi.md#create_hashtag_group) | **POST** /{workspaceUuid}/hashtag-groups | Create a hashtag group
@@ -6,8 +6,9 @@
6
6
  | ---- | ---- | ----------- | ----- |
7
7
  | **message** | **String** | | |
8
8
  | **retry_after** | **Integer** | 429 only: seconds until the limit resets. | [optional] |
9
- | **register_url** | **String** | 429 for guests: sign up for a token with higher limits. | [optional] |
10
- | **upgrade_url** | **String** | 429 when a token user reached the plan's daily cap. | [optional] |
9
+ | **code** | **String** | 429 of a paid AI tool: `ai_credits_exhausted`. | [optional] |
10
+ | **register_url** | **String** | 429 for guests: sign up for a token with higher limits. 401 of a paid AI tool: sign up for a token. | [optional] |
11
+ | **upgrade_url** | **String** | 429 when a token user reached the plan's daily cap, or a paid AI tool's workspace has no AI credits left. | [optional] |
11
12
 
12
13
  ## Example
13
14
 
@@ -17,6 +18,7 @@ require 'postboost'
17
18
  instance = PostBoost::FreeToolError.new(
18
19
  message: null,
19
20
  retry_after: null,
21
+ code: null,
20
22
  register_url: null,
21
23
  upgrade_url: null
22
24
  )
@@ -0,0 +1,30 @@
1
+ # PostBoost::FreeToolGenerateCaptionRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **text** | **String** | What the post is about. | |
8
+ | **tone** | **String** | | [optional][default to 'friendly'] |
9
+ | **length** | **String** | short: 10-20 words, medium: 25-40, long: 45-60. | [optional][default to 'medium'] |
10
+ | **emoji** | **Boolean** | Use a few fitting emoji. | [optional][default to true] |
11
+ | **hashtags** | **Boolean** | End each caption with 3-5 relevant hashtags. | [optional][default to false] |
12
+ | **network** | **String** | The network the text is written for. | [optional][default to 'instagram'] |
13
+ | **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] |
14
+
15
+ ## Example
16
+
17
+ ```ruby
18
+ require 'postboost'
19
+
20
+ instance = PostBoost::FreeToolGenerateCaptionRequest.new(
21
+ text: null,
22
+ tone: null,
23
+ length: null,
24
+ emoji: null,
25
+ hashtags: null,
26
+ network: null,
27
+ workspace: null
28
+ )
29
+ ```
30
+
@@ -0,0 +1,22 @@
1
+ # PostBoost::FreeToolGenerateCaptionResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **captions** | **Array<String>** | Three different captions. | [optional] |
8
+ | **credits_spent** | **Integer** | AI credits this call took from the workspace: 1, or 0 for a cached result. | [optional] |
9
+ | **cached** | **Boolean** | True when the same request was answered before (free). | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'postboost'
15
+
16
+ instance = PostBoost::FreeToolGenerateCaptionResponse.new(
17
+ captions: null,
18
+ credits_spent: null,
19
+ cached: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,24 @@
1
+ # PostBoost::FreeToolGenerateHashtagsRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **topic** | **String** | What the post is about. | |
8
+ | **niche** | **String** | Optional niche, e.g. \"fitness\" or \"real estate\". | [optional] |
9
+ | **network** | **String** | The network the text is written for. | [optional][default to 'instagram'] |
10
+ | **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] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'postboost'
16
+
17
+ instance = PostBoost::FreeToolGenerateHashtagsRequest.new(
18
+ topic: null,
19
+ niche: null,
20
+ network: null,
21
+ workspace: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,22 @@
1
+ # PostBoost::FreeToolGenerateHashtagsResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **hashtags** | **Array<String>** | 5 to 10 hashtags, best first. | [optional] |
8
+ | **credits_spent** | **Integer** | AI credits this call took from the workspace: 1, or 0 for a cached result. | [optional] |
9
+ | **cached** | **Boolean** | True when the same request was answered before (free). | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'postboost'
15
+
16
+ instance = PostBoost::FreeToolGenerateHashtagsResponse.new(
17
+ hashtags: null,
18
+ credits_spent: null,
19
+ cached: null
20
+ )
21
+ ```
22
+
data/docs/FreeToolsApi.md CHANGED
@@ -10,7 +10,9 @@ All URIs are relative to *https://postboost.co/app/api*
10
10
  | [**clean_text**](FreeToolsApi.md#clean_text) | **POST** /tools/ai-text-cleaner | Clean AI-written text: dashes, quotes, invisible characters, markdown |
11
11
  | [**count_characters**](FreeToolsApi.md#count_characters) | **POST** /tools/social-media-character-counter | Count characters as each network counts them |
12
12
  | [**format_linked_in_post**](FreeToolsApi.md#format_linked_in_post) | **POST** /tools/linkedin-post-formatter | Format a LinkedIn post with bold, italic and lists |
13
+ | [**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) |
13
14
  | [**generate_fancy_text**](FreeToolsApi.md#generate_fancy_text) | **POST** /tools/fancy-text-generator | Convert text to fancy Unicode styles |
15
+ | [**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) |
14
16
  | [**list_free_tools**](FreeToolsApi.md#list_free_tools) | **GET** /tools | List the free tools |
15
17
  | [**split_thread**](FreeToolsApi.md#split_thread) | **POST** /tools/x-thread-maker | Split long text into a thread |
16
18
 
@@ -399,6 +401,75 @@ No authorization required
399
401
  - **Accept**: application/json
400
402
 
401
403
 
404
+ ## generate_caption
405
+
406
+ > <FreeToolGenerateCaptionResponse> generate_caption(free_tool_generate_caption_request)
407
+
408
+ Write three post captions for a topic with AI (needs a token, spends AI credits)
409
+
410
+ Write three post captions for a topic with AI (needs a token, spends AI credits). The same logic as the free web tool at https://postboost.co/tools/instagram-caption-generator. Needs an API token (a scoped key needs the `ai` ability and pays with its own workspace). A new generation spends 1 AI credit of the workspace you name (or your active workspace); a repeated identical request is answered from the cache for free.
411
+
412
+ ### Examples
413
+
414
+ ```ruby
415
+ require 'time'
416
+ require 'postboost'
417
+ # setup authorization
418
+ PostBoost.configure do |config|
419
+ # Configure Bearer authorization: bearerAuth
420
+ config.access_token = 'YOUR_BEARER_TOKEN'
421
+ end
422
+
423
+ api_instance = PostBoost::FreeToolsApi.new
424
+ free_tool_generate_caption_request = PostBoost::FreeToolGenerateCaptionRequest.new({text: 'text_example'}) # FreeToolGenerateCaptionRequest |
425
+
426
+ begin
427
+ # Write three post captions for a topic with AI (needs a token, spends AI credits)
428
+ result = api_instance.generate_caption(free_tool_generate_caption_request)
429
+ p result
430
+ rescue PostBoost::ApiError => e
431
+ puts "Error when calling FreeToolsApi->generate_caption: #{e}"
432
+ end
433
+ ```
434
+
435
+ #### Using the generate_caption_with_http_info variant
436
+
437
+ This returns an Array which contains the response data, status code and headers.
438
+
439
+ > <Array(<FreeToolGenerateCaptionResponse>, Integer, Hash)> generate_caption_with_http_info(free_tool_generate_caption_request)
440
+
441
+ ```ruby
442
+ begin
443
+ # Write three post captions for a topic with AI (needs a token, spends AI credits)
444
+ data, status_code, headers = api_instance.generate_caption_with_http_info(free_tool_generate_caption_request)
445
+ p status_code # => 2xx
446
+ p headers # => { ... }
447
+ p data # => <FreeToolGenerateCaptionResponse>
448
+ rescue PostBoost::ApiError => e
449
+ puts "Error when calling FreeToolsApi->generate_caption_with_http_info: #{e}"
450
+ end
451
+ ```
452
+
453
+ ### Parameters
454
+
455
+ | Name | Type | Description | Notes |
456
+ | ---- | ---- | ----------- | ----- |
457
+ | **free_tool_generate_caption_request** | [**FreeToolGenerateCaptionRequest**](FreeToolGenerateCaptionRequest.md) | | |
458
+
459
+ ### Return type
460
+
461
+ [**FreeToolGenerateCaptionResponse**](FreeToolGenerateCaptionResponse.md)
462
+
463
+ ### Authorization
464
+
465
+ [bearerAuth](../README.md#bearerAuth)
466
+
467
+ ### HTTP request headers
468
+
469
+ - **Content-Type**: application/json
470
+ - **Accept**: application/json
471
+
472
+
402
473
  ## generate_fancy_text
403
474
 
404
475
  > <FreeToolGenerateFancyTextResponse> generate_fancy_text(free_tool_generate_fancy_text_request)
@@ -463,6 +534,75 @@ No authorization required
463
534
  - **Accept**: application/json
464
535
 
465
536
 
537
+ ## generate_hashtags
538
+
539
+ > <FreeToolGenerateHashtagsResponse> generate_hashtags(free_tool_generate_hashtags_request)
540
+
541
+ Generate hashtags for a post topic with AI (needs a token, spends AI credits)
542
+
543
+ Generate hashtags for a post topic with AI (needs a token, spends AI credits). The same logic as the free web tool at https://postboost.co/tools/instagram-hashtag-generator. Needs an API token (a scoped key needs the `ai` ability and pays with its own workspace). A new generation spends 1 AI credit of the workspace you name (or your active workspace); a repeated identical request is answered from the cache for free.
544
+
545
+ ### Examples
546
+
547
+ ```ruby
548
+ require 'time'
549
+ require 'postboost'
550
+ # setup authorization
551
+ PostBoost.configure do |config|
552
+ # Configure Bearer authorization: bearerAuth
553
+ config.access_token = 'YOUR_BEARER_TOKEN'
554
+ end
555
+
556
+ api_instance = PostBoost::FreeToolsApi.new
557
+ free_tool_generate_hashtags_request = PostBoost::FreeToolGenerateHashtagsRequest.new({topic: 'topic_example'}) # FreeToolGenerateHashtagsRequest |
558
+
559
+ begin
560
+ # Generate hashtags for a post topic with AI (needs a token, spends AI credits)
561
+ result = api_instance.generate_hashtags(free_tool_generate_hashtags_request)
562
+ p result
563
+ rescue PostBoost::ApiError => e
564
+ puts "Error when calling FreeToolsApi->generate_hashtags: #{e}"
565
+ end
566
+ ```
567
+
568
+ #### Using the generate_hashtags_with_http_info variant
569
+
570
+ This returns an Array which contains the response data, status code and headers.
571
+
572
+ > <Array(<FreeToolGenerateHashtagsResponse>, Integer, Hash)> generate_hashtags_with_http_info(free_tool_generate_hashtags_request)
573
+
574
+ ```ruby
575
+ begin
576
+ # Generate hashtags for a post topic with AI (needs a token, spends AI credits)
577
+ data, status_code, headers = api_instance.generate_hashtags_with_http_info(free_tool_generate_hashtags_request)
578
+ p status_code # => 2xx
579
+ p headers # => { ... }
580
+ p data # => <FreeToolGenerateHashtagsResponse>
581
+ rescue PostBoost::ApiError => e
582
+ puts "Error when calling FreeToolsApi->generate_hashtags_with_http_info: #{e}"
583
+ end
584
+ ```
585
+
586
+ ### Parameters
587
+
588
+ | Name | Type | Description | Notes |
589
+ | ---- | ---- | ----------- | ----- |
590
+ | **free_tool_generate_hashtags_request** | [**FreeToolGenerateHashtagsRequest**](FreeToolGenerateHashtagsRequest.md) | | |
591
+
592
+ ### Return type
593
+
594
+ [**FreeToolGenerateHashtagsResponse**](FreeToolGenerateHashtagsResponse.md)
595
+
596
+ ### Authorization
597
+
598
+ [bearerAuth](../README.md#bearerAuth)
599
+
600
+ ### HTTP request headers
601
+
602
+ - **Content-Type**: application/json
603
+ - **Accept**: application/json
604
+
605
+
466
606
  ## list_free_tools
467
607
 
468
608
  > <FreeToolList> list_free_tools
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The PostBoost REST API lets you publish, schedule, and analyze social media posts on every supported network from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account's daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
5
5
 
6
- The version of the OpenAPI document: 1.28.0
6
+ The version of the OpenAPI document: 1.29.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.28.0
6
+ The version of the OpenAPI document: 1.29.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.28.0
6
+ The version of the OpenAPI document: 1.29.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.28.0
6
+ The version of the OpenAPI document: 1.29.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.28.0
6
+ The version of the OpenAPI document: 1.29.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.28.0
6
+ The version of the OpenAPI document: 1.29.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.28.0
6
+ The version of the OpenAPI document: 1.29.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.28.0
6
+ The version of the OpenAPI document: 1.29.0
7
7
  Contact: hi@postboost.co
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.9.0
@@ -427,6 +427,74 @@ module PostBoost
427
427
  return data, status_code, headers
428
428
  end
429
429
 
430
+ # Write three post captions for a topic with AI (needs a token, spends AI credits)
431
+ # Write three post captions for a topic with AI (needs a token, spends AI credits). The same logic as the free web tool at https://postboost.co/tools/instagram-caption-generator. Needs an API token (a scoped key needs the `ai` ability and pays with its own workspace). A new generation spends 1 AI credit of the workspace you name (or your active workspace); a repeated identical request is answered from the cache for free.
432
+ # @param free_tool_generate_caption_request [FreeToolGenerateCaptionRequest]
433
+ # @param [Hash] opts the optional parameters
434
+ # @return [FreeToolGenerateCaptionResponse]
435
+ def generate_caption(free_tool_generate_caption_request, opts = {})
436
+ data, _status_code, _headers = generate_caption_with_http_info(free_tool_generate_caption_request, opts)
437
+ data
438
+ end
439
+
440
+ # Write three post captions for a topic with AI (needs a token, spends AI credits)
441
+ # Write three post captions for a topic with AI (needs a token, spends AI credits). The same logic as the free web tool at https://postboost.co/tools/instagram-caption-generator. Needs an API token (a scoped key needs the &#x60;ai&#x60; ability and pays with its own workspace). A new generation spends 1 AI credit of the workspace you name (or your active workspace); a repeated identical request is answered from the cache for free.
442
+ # @param free_tool_generate_caption_request [FreeToolGenerateCaptionRequest]
443
+ # @param [Hash] opts the optional parameters
444
+ # @return [Array<(FreeToolGenerateCaptionResponse, Integer, Hash)>] FreeToolGenerateCaptionResponse data, response status code and response headers
445
+ def generate_caption_with_http_info(free_tool_generate_caption_request, opts = {})
446
+ if @api_client.config.debugging
447
+ @api_client.config.logger.debug 'Calling API: FreeToolsApi.generate_caption ...'
448
+ end
449
+ # verify the required parameter 'free_tool_generate_caption_request' is set
450
+ if @api_client.config.client_side_validation && free_tool_generate_caption_request.nil?
451
+ fail ArgumentError, "Missing the required parameter 'free_tool_generate_caption_request' when calling FreeToolsApi.generate_caption"
452
+ end
453
+ # resource path
454
+ local_var_path = '/tools/instagram-caption-generator'
455
+
456
+ # query parameters
457
+ query_params = opts[:query_params] || {}
458
+
459
+ # header parameters
460
+ header_params = opts[:header_params] || {}
461
+ # HTTP header 'Accept' (if needed)
462
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
463
+ # HTTP header 'Content-Type'
464
+ content_type = @api_client.select_header_content_type(['application/json'])
465
+ if !content_type.nil?
466
+ header_params['Content-Type'] = content_type
467
+ end
468
+
469
+ # form parameters
470
+ form_params = opts[:form_params] || {}
471
+
472
+ # http body (model)
473
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(free_tool_generate_caption_request)
474
+
475
+ # return_type
476
+ return_type = opts[:debug_return_type] || 'FreeToolGenerateCaptionResponse'
477
+
478
+ # auth_names
479
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
480
+
481
+ new_options = opts.merge(
482
+ :operation => :"FreeToolsApi.generate_caption",
483
+ :header_params => header_params,
484
+ :query_params => query_params,
485
+ :form_params => form_params,
486
+ :body => post_body,
487
+ :auth_names => auth_names,
488
+ :return_type => return_type
489
+ )
490
+
491
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
492
+ if @api_client.config.debugging
493
+ @api_client.config.logger.debug "API called: FreeToolsApi#generate_caption\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
494
+ end
495
+ return data, status_code, headers
496
+ end
497
+
430
498
  # Convert text to fancy Unicode styles
431
499
  # Convert text to fancy Unicode styles. The same logic as the free web tool at https://postboost.co/tools/fancy-text-generator. No account needed: call it without a token, or with any API token.
432
500
  # @param free_tool_generate_fancy_text_request [FreeToolGenerateFancyTextRequest]
@@ -495,6 +563,74 @@ module PostBoost
495
563
  return data, status_code, headers
496
564
  end
497
565
 
566
+ # Generate hashtags for a post topic with AI (needs a token, spends AI credits)
567
+ # Generate hashtags for a post topic with AI (needs a token, spends AI credits). The same logic as the free web tool at https://postboost.co/tools/instagram-hashtag-generator. Needs an API token (a scoped key needs the `ai` ability and pays with its own workspace). A new generation spends 1 AI credit of the workspace you name (or your active workspace); a repeated identical request is answered from the cache for free.
568
+ # @param free_tool_generate_hashtags_request [FreeToolGenerateHashtagsRequest]
569
+ # @param [Hash] opts the optional parameters
570
+ # @return [FreeToolGenerateHashtagsResponse]
571
+ def generate_hashtags(free_tool_generate_hashtags_request, opts = {})
572
+ data, _status_code, _headers = generate_hashtags_with_http_info(free_tool_generate_hashtags_request, opts)
573
+ data
574
+ end
575
+
576
+ # Generate hashtags for a post topic with AI (needs a token, spends AI credits)
577
+ # Generate hashtags for a post topic with AI (needs a token, spends AI credits). The same logic as the free web tool at https://postboost.co/tools/instagram-hashtag-generator. Needs an API token (a scoped key needs the &#x60;ai&#x60; ability and pays with its own workspace). A new generation spends 1 AI credit of the workspace you name (or your active workspace); a repeated identical request is answered from the cache for free.
578
+ # @param free_tool_generate_hashtags_request [FreeToolGenerateHashtagsRequest]
579
+ # @param [Hash] opts the optional parameters
580
+ # @return [Array<(FreeToolGenerateHashtagsResponse, Integer, Hash)>] FreeToolGenerateHashtagsResponse data, response status code and response headers
581
+ def generate_hashtags_with_http_info(free_tool_generate_hashtags_request, opts = {})
582
+ if @api_client.config.debugging
583
+ @api_client.config.logger.debug 'Calling API: FreeToolsApi.generate_hashtags ...'
584
+ end
585
+ # verify the required parameter 'free_tool_generate_hashtags_request' is set
586
+ if @api_client.config.client_side_validation && free_tool_generate_hashtags_request.nil?
587
+ fail ArgumentError, "Missing the required parameter 'free_tool_generate_hashtags_request' when calling FreeToolsApi.generate_hashtags"
588
+ end
589
+ # resource path
590
+ local_var_path = '/tools/instagram-hashtag-generator'
591
+
592
+ # query parameters
593
+ query_params = opts[:query_params] || {}
594
+
595
+ # header parameters
596
+ header_params = opts[:header_params] || {}
597
+ # HTTP header 'Accept' (if needed)
598
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
599
+ # HTTP header 'Content-Type'
600
+ content_type = @api_client.select_header_content_type(['application/json'])
601
+ if !content_type.nil?
602
+ header_params['Content-Type'] = content_type
603
+ end
604
+
605
+ # form parameters
606
+ form_params = opts[:form_params] || {}
607
+
608
+ # http body (model)
609
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(free_tool_generate_hashtags_request)
610
+
611
+ # return_type
612
+ return_type = opts[:debug_return_type] || 'FreeToolGenerateHashtagsResponse'
613
+
614
+ # auth_names
615
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
616
+
617
+ new_options = opts.merge(
618
+ :operation => :"FreeToolsApi.generate_hashtags",
619
+ :header_params => header_params,
620
+ :query_params => query_params,
621
+ :form_params => form_params,
622
+ :body => post_body,
623
+ :auth_names => auth_names,
624
+ :return_type => return_type
625
+ )
626
+
627
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
628
+ if @api_client.config.debugging
629
+ @api_client.config.logger.debug "API called: FreeToolsApi#generate_hashtags\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
630
+ end
631
+ return data, status_code, headers
632
+ end
633
+
498
634
  # List the free tools
499
635
  # Every free tool the API serves, with its operationId and web page. No token needed.
500
636
  # @param [Hash] opts the optional parameters
@@ -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.28.0
6
+ The version of the OpenAPI document: 1.29.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.28.0
6
+ The version of the OpenAPI document: 1.29.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.28.0
6
+ The version of the OpenAPI document: 1.29.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.28.0
6
+ The version of the OpenAPI document: 1.29.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.28.0
6
+ The version of the OpenAPI document: 1.29.0
7
7
  Contact: hi@postboost.co
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.9.0