postboost 1.38.0 → 1.39.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 (722) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -1
  3. data/docs/FreeToolGenerateHooksRequest.md +26 -0
  4. data/docs/FreeToolGenerateHooksResponse.md +24 -0
  5. data/docs/FreeToolGenerateHooksResponseHooksInner.md +20 -0
  6. data/docs/FreeToolGetHookTemplatesResponse.md +20 -0
  7. data/docs/FreeToolGetHookTemplatesResponseHooksInner.md +24 -0
  8. data/docs/FreeToolsApi.md +143 -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 +154 -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_connection_health_reconnect_reason.rb +1 -1
  38. data/lib/postboost/models/account_errors_inner.rb +1 -1
  39. data/lib/postboost/models/account_errors_inner_one_of.rb +1 -1
  40. data/lib/postboost/models/account_group.rb +1 -1
  41. data/lib/postboost/models/account_group_input.rb +1 -1
  42. data/lib/postboost/models/account_health.rb +1 -1
  43. data/lib/postboost/models/account_health_daily_cap.rb +1 -1
  44. data/lib/postboost/models/account_schedule.rb +1 -1
  45. data/lib/postboost/models/add_competitor202_response.rb +1 -1
  46. data/lib/postboost/models/add_competitor409_response.rb +1 -1
  47. data/lib/postboost/models/add_generic_subscription_request.rb +1 -1
  48. data/lib/postboost/models/add_post_to_queue_request.rb +1 -1
  49. data/lib/postboost/models/agent_page_meta.rb +1 -1
  50. data/lib/postboost/models/agent_proposal.rb +1 -1
  51. data/lib/postboost/models/agent_proposal_decision.rb +1 -1
  52. data/lib/postboost/models/agent_run.rb +1 -1
  53. data/lib/postboost/models/ai_credits.rb +1 -1
  54. data/lib/postboost/models/ai_usage.rb +1 -1
  55. data/lib/postboost/models/ai_usage_text.rb +1 -1
  56. data/lib/postboost/models/analytics_period.rb +1 -1
  57. data/lib/postboost/models/analytics_summary.rb +1 -1
  58. data/lib/postboost/models/analytics_summary_data.rb +1 -1
  59. data/lib/postboost/models/api_activity.rb +1 -1
  60. data/lib/postboost/models/api_activity_outcome.rb +1 -1
  61. data/lib/postboost/models/api_key.rb +1 -1
  62. data/lib/postboost/models/api_key_ability.rb +1 -1
  63. data/lib/postboost/models/api_key_input.rb +1 -1
  64. data/lib/postboost/models/approve_agent_proposal200_response.rb +1 -1
  65. data/lib/postboost/models/approve_agent_proposal409_response.rb +1 -1
  66. data/lib/postboost/models/approve_inbox_reply_draft403_response.rb +1 -1
  67. data/lib/postboost/models/approve_post_request.rb +1 -1
  68. data/lib/postboost/models/best_posting_times.rb +1 -1
  69. data/lib/postboost/models/best_posting_times_times_inner.rb +1 -1
  70. data/lib/postboost/models/blog_to_social200_response.rb +1 -1
  71. data/lib/postboost/models/blog_to_social429_response.rb +1 -1
  72. data/lib/postboost/models/blog_to_social_caption.rb +1 -1
  73. data/lib/postboost/models/blog_to_social_input.rb +1 -1
  74. data/lib/postboost/models/blog_to_social_media.rb +1 -1
  75. data/lib/postboost/models/blog_to_social_response.rb +1 -1
  76. data/lib/postboost/models/brand_voice.rb +1 -1
  77. data/lib/postboost/models/brand_voice_input.rb +1 -1
  78. data/lib/postboost/models/brand_voice_meta.rb +1 -1
  79. data/lib/postboost/models/cancel_subscription422_response.rb +1 -1
  80. data/lib/postboost/models/cancel_subscription422_response_errors.rb +1 -1
  81. data/lib/postboost/models/cancel_subscription_request.rb +1 -1
  82. data/lib/postboost/models/change_subscription_plan_request.rb +1 -1
  83. data/lib/postboost/models/channel_account.rb +1 -1
  84. data/lib/postboost/models/checkout_subscription200_response.rb +1 -1
  85. data/lib/postboost/models/checkout_subscription_request.rb +1 -1
  86. data/lib/postboost/models/coded_error.rb +1 -1
  87. data/lib/postboost/models/competitor.rb +1 -1
  88. data/lib/postboost/models/competitor_detail.rb +1 -1
  89. data/lib/postboost/models/competitor_input.rb +1 -1
  90. data/lib/postboost/models/competitor_media.rb +1 -1
  91. data/lib/postboost/models/competitor_snapshot.rb +1 -1
  92. data/lib/postboost/models/complete_chunked_upload_request.rb +1 -1
  93. data/lib/postboost/models/connect_channel_input.rb +1 -1
  94. data/lib/postboost/models/connect_link.rb +1 -1
  95. data/lib/postboost/models/create_account_group201_response.rb +1 -1
  96. data/lib/postboost/models/create_agent201_response.rb +1 -1
  97. data/lib/postboost/models/create_api_key201_response.rb +1 -1
  98. data/lib/postboost/models/create_api_key201_response_data.rb +1 -1
  99. data/lib/postboost/models/create_connect_link_request.rb +1 -1
  100. data/lib/postboost/models/create_hashtag_group201_response.rb +1 -1
  101. data/lib/postboost/models/create_inbox_reply_draft201_response.rb +1 -1
  102. data/lib/postboost/models/create_media_folder_request.rb +1 -1
  103. data/lib/postboost/models/create_mention201_response.rb +1 -1
  104. data/lib/postboost/models/create_post201_response.rb +1 -1
  105. data/lib/postboost/models/create_recycling_rule201_response.rb +1 -1
  106. data/lib/postboost/models/create_report_export201_response.rb +1 -1
  107. data/lib/postboost/models/create_reseller_client201_response.rb +1 -1
  108. data/lib/postboost/models/create_rss_feed201_response.rb +1 -1
  109. data/lib/postboost/models/create_template201_response.rb +1 -1
  110. data/lib/postboost/models/create_webhook_subscription201_response.rb +1 -1
  111. data/lib/postboost/models/create_webhook_subscription201_response_data.rb +1 -1
  112. data/lib/postboost/models/delete_agent200_response.rb +1 -1
  113. data/lib/postboost/models/delete_media_bulk_request.rb +1 -1
  114. data/lib/postboost/models/delete_media_bulk_request_items_inner.rb +1 -1
  115. data/lib/postboost/models/delete_media_folder_request.rb +1 -1
  116. data/lib/postboost/models/delete_mode.rb +1 -1
  117. data/lib/postboost/models/delete_post_request.rb +1 -1
  118. data/lib/postboost/models/delete_posts_bulk_request.rb +1 -1
  119. data/lib/postboost/models/delete_receipts_bulk_request.rb +1 -1
  120. data/lib/postboost/models/delete_result.rb +1 -1
  121. data/lib/postboost/models/delete_user400_response.rb +1 -1
  122. data/lib/postboost/models/delete_users_bulk_request.rb +1 -1
  123. data/lib/postboost/models/delete_workspaces_bulk_request.rb +1 -1
  124. data/lib/postboost/models/free_tool_build_utm_url_request.rb +1 -1
  125. data/lib/postboost/models/free_tool_build_utm_url_response.rb +1 -1
  126. data/lib/postboost/models/free_tool_calculate_aspect_ratio_request.rb +1 -1
  127. data/lib/postboost/models/free_tool_calculate_aspect_ratio_response.rb +1 -1
  128. data/lib/postboost/models/free_tool_calculate_aspect_ratio_response_matches_inner.rb +1 -1
  129. data/lib/postboost/models/free_tool_calculate_aspect_ratio_response_rounding.rb +1 -1
  130. data/lib/postboost/models/free_tool_calculate_crop_request.rb +1 -1
  131. data/lib/postboost/models/free_tool_calculate_crop_response.rb +1 -1
  132. data/lib/postboost/models/free_tool_calculate_crop_response_crop.rb +1 -1
  133. data/lib/postboost/models/free_tool_calculate_crop_response_image.rb +1 -1
  134. data/lib/postboost/models/free_tool_calculate_crop_response_output.rb +1 -1
  135. data/lib/postboost/models/free_tool_calculate_engagement_rate_request.rb +1 -1
  136. data/lib/postboost/models/free_tool_calculate_engagement_rate_response.rb +1 -1
  137. data/lib/postboost/models/free_tool_check_link_preview_request.rb +1 -1
  138. data/lib/postboost/models/free_tool_check_link_preview_response.rb +1 -1
  139. data/lib/postboost/models/free_tool_check_link_preview_response_image.rb +1 -1
  140. data/lib/postboost/models/free_tool_check_link_preview_response_previews_value.rb +1 -1
  141. data/lib/postboost/models/free_tool_check_link_preview_response_redirects_inner.rb +1 -1
  142. data/lib/postboost/models/free_tool_check_link_preview_response_tags.rb +1 -1
  143. data/lib/postboost/models/free_tool_check_post_request.rb +1 -1
  144. data/lib/postboost/models/free_tool_check_post_request_media.rb +1 -1
  145. data/lib/postboost/models/free_tool_check_post_response.rb +1 -1
  146. data/lib/postboost/models/free_tool_check_post_response_networks_inner.rb +1 -1
  147. data/lib/postboost/models/free_tool_check_post_response_networks_inner_errors_inner.rb +1 -1
  148. data/lib/postboost/models/free_tool_clean_text_request.rb +1 -1
  149. data/lib/postboost/models/free_tool_clean_text_response.rb +1 -1
  150. data/lib/postboost/models/free_tool_clean_text_response_changes_inner.rb +1 -1
  151. data/lib/postboost/models/free_tool_clean_text_response_flags_inner.rb +1 -1
  152. data/lib/postboost/models/free_tool_count_characters_request.rb +1 -1
  153. data/lib/postboost/models/free_tool_count_characters_response.rb +1 -1
  154. data/lib/postboost/models/free_tool_count_characters_response_networks_inner.rb +1 -1
  155. data/lib/postboost/models/free_tool_error.rb +1 -1
  156. data/lib/postboost/models/free_tool_format_linked_in_post_request.rb +1 -1
  157. data/lib/postboost/models/free_tool_format_linked_in_post_response.rb +1 -1
  158. data/lib/postboost/models/free_tool_generate_caption_request.rb +1 -1
  159. data/lib/postboost/models/free_tool_generate_caption_response.rb +1 -1
  160. data/lib/postboost/models/free_tool_generate_fancy_text_request.rb +1 -1
  161. data/lib/postboost/models/free_tool_generate_fancy_text_response.rb +1 -1
  162. data/lib/postboost/models/free_tool_generate_fancy_text_response_styles_inner.rb +1 -1
  163. data/lib/postboost/models/free_tool_generate_hashtags_request.rb +1 -1
  164. data/lib/postboost/models/free_tool_generate_hashtags_response.rb +1 -1
  165. data/lib/postboost/models/free_tool_generate_hooks_request.rb +389 -0
  166. data/lib/postboost/models/free_tool_generate_hooks_response.rb +247 -0
  167. data/lib/postboost/models/free_tool_generate_hooks_response_hooks_inner.rb +259 -0
  168. data/lib/postboost/models/free_tool_generate_qr_code_request.rb +1 -1
  169. data/lib/postboost/models/free_tool_generate_qr_code_request_utm.rb +1 -1
  170. data/lib/postboost/models/free_tool_generate_qr_code_response.rb +1 -1
  171. data/lib/postboost/models/free_tool_get_best_times_to_post_response.rb +1 -1
  172. data/lib/postboost/models/free_tool_get_best_times_to_post_response_networks_inner.rb +1 -1
  173. data/lib/postboost/models/free_tool_get_hook_templates_response.rb +226 -0
  174. data/lib/postboost/models/free_tool_get_hook_templates_response_hooks_inner.rb +281 -0
  175. data/lib/postboost/models/free_tool_get_image_sizes_response.rb +1 -1
  176. data/lib/postboost/models/free_tool_get_image_sizes_response_sizes_inner.rb +1 -1
  177. data/lib/postboost/models/free_tool_get_image_sizes_response_sources_inner.rb +1 -1
  178. data/lib/postboost/models/free_tool_list.rb +1 -1
  179. data/lib/postboost/models/free_tool_list_item.rb +1 -1
  180. data/lib/postboost/models/free_tool_preview_post_request.rb +1 -1
  181. data/lib/postboost/models/free_tool_preview_post_response.rb +1 -1
  182. data/lib/postboost/models/free_tool_preview_post_response_networks_inner.rb +1 -1
  183. data/lib/postboost/models/free_tool_split_thread_request.rb +1 -1
  184. data/lib/postboost/models/free_tool_split_thread_response.rb +1 -1
  185. data/lib/postboost/models/free_tool_split_thread_response_posts_inner.rb +1 -1
  186. data/lib/postboost/models/get_account_health200_response.rb +1 -1
  187. data/lib/postboost/models/get_brand_voice200_response.rb +1 -1
  188. data/lib/postboost/models/get_competitor200_response.rb +1 -1
  189. data/lib/postboost/models/get_inbox_conversation200_response.rb +1 -1
  190. data/lib/postboost/models/get_posting_schedule200_response.rb +1 -1
  191. data/lib/postboost/models/get_remote_upload_status200_response.rb +1 -1
  192. data/lib/postboost/models/get_report_branding200_response.rb +1 -1
  193. data/lib/postboost/models/get_repurpose_run200_response.rb +1 -1
  194. data/lib/postboost/models/guardrail_error.rb +1 -1
  195. data/lib/postboost/models/hashtag_group.rb +1 -1
  196. data/lib/postboost/models/hashtag_group_input.rb +1 -1
  197. data/lib/postboost/models/image_alt_text200_response.rb +1 -1
  198. data/lib/postboost/models/image_alt_text_input.rb +1 -1
  199. data/lib/postboost/models/image_alt_text_response.rb +1 -1
  200. data/lib/postboost/models/image_credit_balance.rb +1 -1
  201. data/lib/postboost/models/image_edit_input.rb +1 -1
  202. data/lib/postboost/models/image_generate200_response.rb +1 -1
  203. data/lib/postboost/models/image_generate429_response.rb +1 -1
  204. data/lib/postboost/models/image_generate_input.rb +1 -1
  205. data/lib/postboost/models/image_generation_response.rb +1 -1
  206. data/lib/postboost/models/image_prompt200_response.rb +1 -1
  207. data/lib/postboost/models/image_prompt429_response.rb +1 -1
  208. data/lib/postboost/models/image_prompt_input.rb +1 -1
  209. data/lib/postboost/models/image_prompt_response.rb +1 -1
  210. data/lib/postboost/models/image_variations200_response.rb +1 -1
  211. data/lib/postboost/models/image_variations_input.rb +1 -1
  212. data/lib/postboost/models/image_variations_response.rb +1 -1
  213. data/lib/postboost/models/inbox_author.rb +1 -1
  214. data/lib/postboost/models/inbox_conversation.rb +1 -1
  215. data/lib/postboost/models/inbox_conversation_account.rb +1 -1
  216. data/lib/postboost/models/inbox_conversation_update.rb +1 -1
  217. data/lib/postboost/models/inbox_message.rb +1 -1
  218. data/lib/postboost/models/inbox_message_author.rb +1 -1
  219. data/lib/postboost/models/inbox_reply_draft.rb +1 -1
  220. data/lib/postboost/models/inbox_reply_draft_approve.rb +1 -1
  221. data/lib/postboost/models/inbox_reply_draft_edit.rb +1 -1
  222. data/lib/postboost/models/inbox_reply_draft_input.rb +1 -1
  223. data/lib/postboost/models/initiate_chunked_upload201_response.rb +1 -1
  224. data/lib/postboost/models/initiate_chunked_upload_request.rb +1 -1
  225. data/lib/postboost/models/initiate_remote_upload201_response.rb +1 -1
  226. data/lib/postboost/models/initiate_remote_upload201_response_one_of.rb +1 -1
  227. data/lib/postboost/models/initiate_remote_upload_request.rb +1 -1
  228. data/lib/postboost/models/learn_brand_voice_input.rb +1 -1
  229. data/lib/postboost/models/learn_brand_voice_response.rb +1 -1
  230. data/lib/postboost/models/learn_brand_voice_response_meta.rb +1 -1
  231. data/lib/postboost/models/list_account_groups200_response.rb +1 -1
  232. data/lib/postboost/models/list_accounts200_response.rb +1 -1
  233. data/lib/postboost/models/list_agent_proposals200_response.rb +1 -1
  234. data/lib/postboost/models/list_agent_runs200_response.rb +1 -1
  235. data/lib/postboost/models/list_agents200_response.rb +1 -1
  236. data/lib/postboost/models/list_api_activity200_response.rb +1 -1
  237. data/lib/postboost/models/list_api_keys200_response.rb +1 -1
  238. data/lib/postboost/models/list_competitors200_response.rb +1 -1
  239. data/lib/postboost/models/list_hashtag_groups200_response.rb +1 -1
  240. data/lib/postboost/models/list_inbox_conversations200_response.rb +1 -1
  241. data/lib/postboost/models/list_inbox_reply_drafts200_response.rb +1 -1
  242. data/lib/postboost/models/list_media200_response.rb +1 -1
  243. data/lib/postboost/models/list_media_folders200_response.rb +1 -1
  244. data/lib/postboost/models/list_mentions200_response.rb +1 -1
  245. data/lib/postboost/models/list_my_workspaces200_response.rb +1 -1
  246. data/lib/postboost/models/list_posts200_response.rb +1 -1
  247. data/lib/postboost/models/list_receipts200_response.rb +1 -1
  248. data/lib/postboost/models/list_recycling_rules200_response.rb +1 -1
  249. data/lib/postboost/models/list_recycling_runs200_response.rb +1 -1
  250. data/lib/postboost/models/list_report_exports200_response.rb +1 -1
  251. data/lib/postboost/models/list_reseller_clients200_response.rb +1 -1
  252. data/lib/postboost/models/list_rss_feeds200_response.rb +1 -1
  253. data/lib/postboost/models/list_tags200_response.rb +1 -1
  254. data/lib/postboost/models/list_templates200_response.rb +1 -1
  255. data/lib/postboost/models/list_users200_response.rb +1 -1
  256. data/lib/postboost/models/list_webhook_subscriptions200_response.rb +1 -1
  257. data/lib/postboost/models/list_workspaces200_response.rb +1 -1
  258. data/lib/postboost/models/media.rb +1 -1
  259. data/lib/postboost/models/media_base64_input.rb +1 -1
  260. data/lib/postboost/models/media_folder.rb +1 -1
  261. data/lib/postboost/models/media_folder_input.rb +1 -1
  262. data/lib/postboost/models/media_folder_ref.rb +1 -1
  263. data/lib/postboost/models/mention.rb +1 -1
  264. data/lib/postboost/models/mention_identity.rb +1 -1
  265. data/lib/postboost/models/mention_identity_input.rb +1 -1
  266. data/lib/postboost/models/mention_input.rb +1 -1
  267. data/lib/postboost/models/message_only.rb +1 -1
  268. data/lib/postboost/models/pagination_meta.rb +1 -1
  269. data/lib/postboost/models/pagination_meta_links.rb +1 -1
  270. data/lib/postboost/models/pagination_meta_meta.rb +1 -1
  271. data/lib/postboost/models/poll_rss_feed200_response.rb +1 -1
  272. data/lib/postboost/models/post.rb +1 -1
  273. data/lib/postboost/models/post_analytics.rb +1 -1
  274. data/lib/postboost/models/post_content.rb +1 -1
  275. data/lib/postboost/models/post_input.rb +1 -1
  276. data/lib/postboost/models/post_options_instagram.rb +1 -1
  277. data/lib/postboost/models/post_options_tik_tok.rb +1 -1
  278. data/lib/postboost/models/post_options_youtube.rb +1 -1
  279. data/lib/postboost/models/post_status.rb +1 -1
  280. data/lib/postboost/models/post_version.rb +1 -1
  281. data/lib/postboost/models/post_version_options.rb +1 -1
  282. data/lib/postboost/models/post_warning.rb +1 -1
  283. data/lib/postboost/models/post_warnings.rb +1 -1
  284. data/lib/postboost/models/posting_schedule.rb +1 -1
  285. data/lib/postboost/models/posting_schedule_day.rb +1 -1
  286. data/lib/postboost/models/posting_schedule_day_times_inner.rb +1 -1
  287. data/lib/postboost/models/posting_schedule_input.rb +1 -1
  288. data/lib/postboost/models/posting_time_slot.rb +1 -1
  289. data/lib/postboost/models/posting_times.rb +1 -1
  290. data/lib/postboost/models/posting_times_best_inner.rb +1 -1
  291. data/lib/postboost/models/posting_times_day_intervals_inner_inner.rb +1 -1
  292. data/lib/postboost/models/posting_times_days_inner.rb +1 -1
  293. data/lib/postboost/models/preflight_result.rb +1 -1
  294. data/lib/postboost/models/public_workspace.rb +1 -1
  295. data/lib/postboost/models/public_workspace_pivot.rb +1 -1
  296. data/lib/postboost/models/publish_progress.rb +1 -1
  297. data/lib/postboost/models/queue_slots.rb +1 -1
  298. data/lib/postboost/models/receipt.rb +1 -1
  299. data/lib/postboost/models/receipt_input.rb +1 -1
  300. data/lib/postboost/models/receipt_update_input.rb +1 -1
  301. data/lib/postboost/models/recommended_posting_times.rb +1 -1
  302. data/lib/postboost/models/reconnect_link.rb +1 -1
  303. data/lib/postboost/models/recycling_rule.rb +1 -1
  304. data/lib/postboost/models/recycling_rule_input.rb +1 -1
  305. data/lib/postboost/models/recycling_rule_settings.rb +1 -1
  306. data/lib/postboost/models/recycling_rule_update.rb +1 -1
  307. data/lib/postboost/models/recycling_run.rb +1 -1
  308. data/lib/postboost/models/remove_generic_subscription422_response.rb +1 -1
  309. data/lib/postboost/models/remove_user_from_workspace_request.rb +1 -1
  310. data/lib/postboost/models/report_branding.rb +1 -1
  311. data/lib/postboost/models/report_branding_input.rb +1 -1
  312. data/lib/postboost/models/report_export.rb +1 -1
  313. data/lib/postboost/models/report_export_input.rb +1 -1
  314. data/lib/postboost/models/repurpose_content200_response.rb +1 -1
  315. data/lib/postboost/models/repurpose_content202_response.rb +1 -1
  316. data/lib/postboost/models/repurpose_content500_response.rb +1 -1
  317. data/lib/postboost/models/repurpose_input.rb +1 -1
  318. data/lib/postboost/models/repurpose_input_theme.rb +1 -1
  319. data/lib/postboost/models/repurpose_result.rb +1 -1
  320. data/lib/postboost/models/repurpose_result_media.rb +1 -1
  321. data/lib/postboost/models/repurpose_result_source.rb +1 -1
  322. data/lib/postboost/models/repurpose_run.rb +1 -1
  323. data/lib/postboost/models/repurpose_run_accepted.rb +1 -1
  324. data/lib/postboost/models/repurpose_slide.rb +1 -1
  325. data/lib/postboost/models/reseller_client.rb +1 -1
  326. data/lib/postboost/models/reseller_client_input.rb +1 -1
  327. data/lib/postboost/models/reseller_client_usage.rb +1 -1
  328. data/lib/postboost/models/retry_post_account_result.rb +1 -1
  329. data/lib/postboost/models/rss_feed.rb +1 -1
  330. data/lib/postboost/models/rss_feed_input.rb +1 -1
  331. data/lib/postboost/models/rss_feed_update.rb +1 -1
  332. data/lib/postboost/models/run_agent202_response.rb +1 -1
  333. data/lib/postboost/models/schedule_post_request.rb +1 -1
  334. data/lib/postboost/models/schedule_result.rb +1 -1
  335. data/lib/postboost/models/subscription.rb +1 -1
  336. data/lib/postboost/models/subscription_input.rb +1 -1
  337. data/lib/postboost/models/subscription_status.rb +1 -1
  338. data/lib/postboost/models/subscription_update_input.rb +1 -1
  339. data/lib/postboost/models/tag.rb +1 -1
  340. data/lib/postboost/models/tag_input.rb +1 -1
  341. data/lib/postboost/models/template.rb +1 -1
  342. data/lib/postboost/models/template_content_item.rb +1 -1
  343. data/lib/postboost/models/template_input.rb +1 -1
  344. data/lib/postboost/models/template_input_content_inner.rb +1 -1
  345. data/lib/postboost/models/update_media_request.rb +1 -1
  346. data/lib/postboost/models/update_post200_response.rb +1 -1
  347. data/lib/postboost/models/upload_chunk201_response.rb +1 -1
  348. data/lib/postboost/models/user.rb +1 -1
  349. data/lib/postboost/models/user_input.rb +1 -1
  350. data/lib/postboost/models/user_update_input.rb +1 -1
  351. data/lib/postboost/models/webhook_envelope.rb +1 -1
  352. data/lib/postboost/models/webhook_event_name.rb +1 -1
  353. data/lib/postboost/models/webhook_event_payload.rb +1 -1
  354. data/lib/postboost/models/webhook_subscription.rb +1 -1
  355. data/lib/postboost/models/webhook_subscription_input.rb +1 -1
  356. data/lib/postboost/models/workspace.rb +1 -1
  357. data/lib/postboost/models/workspace_agent.rb +1 -1
  358. data/lib/postboost/models/workspace_agent_input.rb +1 -1
  359. data/lib/postboost/models/workspace_agent_settings.rb +1 -1
  360. data/lib/postboost/models/workspace_agent_update.rb +1 -1
  361. data/lib/postboost/models/workspace_input.rb +1 -1
  362. data/lib/postboost/models/workspace_user_input.rb +1 -1
  363. data/lib/postboost/models/x_usage.rb +1 -1
  364. data/lib/postboost/models/x_usage_counter.rb +1 -1
  365. data/lib/postboost/version.rb +2 -2
  366. data/lib/postboost.rb +6 -1
  367. data/postboost.gemspec +1 -1
  368. data/spec/api/account_groups_api_spec.rb +1 -1
  369. data/spec/api/accounts_api_spec.rb +1 -1
  370. data/spec/api/activity_api_spec.rb +1 -1
  371. data/spec/api/agents_api_spec.rb +1 -1
  372. data/spec/api/ai_api_spec.rb +1 -1
  373. data/spec/api/analytics_api_spec.rb +1 -1
  374. data/spec/api/competitors_api_spec.rb +1 -1
  375. data/spec/api/free_tools_api_spec.rb +28 -1
  376. data/spec/api/hashtag_groups_api_spec.rb +1 -1
  377. data/spec/api/inbox_api_spec.rb +1 -1
  378. data/spec/api/media_api_spec.rb +1 -1
  379. data/spec/api/mentions_api_spec.rb +1 -1
  380. data/spec/api/posting_schedule_api_spec.rb +1 -1
  381. data/spec/api/posts_api_spec.rb +1 -1
  382. data/spec/api/receipts_api_spec.rb +1 -1
  383. data/spec/api/subscriptions_api_spec.rb +1 -1
  384. data/spec/api/tags_api_spec.rb +1 -1
  385. data/spec/api/templates_api_spec.rb +1 -1
  386. data/spec/api/users_api_spec.rb +1 -1
  387. data/spec/api/webhooks_api_spec.rb +1 -1
  388. data/spec/api/workspaces_api_spec.rb +1 -1
  389. data/spec/models/account_analytics_initial_sync_spec.rb +1 -1
  390. data/spec/models/account_analytics_spec.rb +1 -1
  391. data/spec/models/account_connection_health_reconnect_reason_spec.rb +1 -1
  392. data/spec/models/account_connection_health_spec.rb +1 -1
  393. data/spec/models/account_errors_inner_one_of_spec.rb +1 -1
  394. data/spec/models/account_errors_inner_spec.rb +1 -1
  395. data/spec/models/account_group_input_spec.rb +1 -1
  396. data/spec/models/account_group_spec.rb +1 -1
  397. data/spec/models/account_health_daily_cap_spec.rb +1 -1
  398. data/spec/models/account_health_spec.rb +1 -1
  399. data/spec/models/account_schedule_spec.rb +1 -1
  400. data/spec/models/account_spec.rb +1 -1
  401. data/spec/models/add_competitor202_response_spec.rb +1 -1
  402. data/spec/models/add_competitor409_response_spec.rb +1 -1
  403. data/spec/models/add_generic_subscription_request_spec.rb +1 -1
  404. data/spec/models/add_post_to_queue_request_spec.rb +1 -1
  405. data/spec/models/agent_page_meta_spec.rb +1 -1
  406. data/spec/models/agent_proposal_decision_spec.rb +1 -1
  407. data/spec/models/agent_proposal_spec.rb +1 -1
  408. data/spec/models/agent_run_spec.rb +1 -1
  409. data/spec/models/ai_credits_spec.rb +1 -1
  410. data/spec/models/ai_usage_spec.rb +1 -1
  411. data/spec/models/ai_usage_text_spec.rb +1 -1
  412. data/spec/models/analytics_period_spec.rb +1 -1
  413. data/spec/models/analytics_summary_data_spec.rb +1 -1
  414. data/spec/models/analytics_summary_spec.rb +1 -1
  415. data/spec/models/api_activity_outcome_spec.rb +1 -1
  416. data/spec/models/api_activity_spec.rb +1 -1
  417. data/spec/models/api_key_ability_spec.rb +1 -1
  418. data/spec/models/api_key_input_spec.rb +1 -1
  419. data/spec/models/api_key_spec.rb +1 -1
  420. data/spec/models/approve_agent_proposal200_response_spec.rb +1 -1
  421. data/spec/models/approve_agent_proposal409_response_spec.rb +1 -1
  422. data/spec/models/approve_inbox_reply_draft403_response_spec.rb +1 -1
  423. data/spec/models/approve_post_request_spec.rb +1 -1
  424. data/spec/models/best_posting_times_spec.rb +1 -1
  425. data/spec/models/best_posting_times_times_inner_spec.rb +1 -1
  426. data/spec/models/blog_to_social200_response_spec.rb +1 -1
  427. data/spec/models/blog_to_social429_response_spec.rb +1 -1
  428. data/spec/models/blog_to_social_caption_spec.rb +1 -1
  429. data/spec/models/blog_to_social_input_spec.rb +1 -1
  430. data/spec/models/blog_to_social_media_spec.rb +1 -1
  431. data/spec/models/blog_to_social_response_spec.rb +1 -1
  432. data/spec/models/brand_voice_input_spec.rb +1 -1
  433. data/spec/models/brand_voice_meta_spec.rb +1 -1
  434. data/spec/models/brand_voice_spec.rb +1 -1
  435. data/spec/models/cancel_subscription422_response_errors_spec.rb +1 -1
  436. data/spec/models/cancel_subscription422_response_spec.rb +1 -1
  437. data/spec/models/cancel_subscription_request_spec.rb +1 -1
  438. data/spec/models/change_subscription_plan_request_spec.rb +1 -1
  439. data/spec/models/channel_account_spec.rb +1 -1
  440. data/spec/models/checkout_subscription200_response_spec.rb +1 -1
  441. data/spec/models/checkout_subscription_request_spec.rb +1 -1
  442. data/spec/models/coded_error_spec.rb +1 -1
  443. data/spec/models/competitor_detail_spec.rb +1 -1
  444. data/spec/models/competitor_input_spec.rb +1 -1
  445. data/spec/models/competitor_media_spec.rb +1 -1
  446. data/spec/models/competitor_snapshot_spec.rb +1 -1
  447. data/spec/models/competitor_spec.rb +1 -1
  448. data/spec/models/complete_chunked_upload_request_spec.rb +1 -1
  449. data/spec/models/connect_channel_input_spec.rb +1 -1
  450. data/spec/models/connect_link_spec.rb +1 -1
  451. data/spec/models/create_account_group201_response_spec.rb +1 -1
  452. data/spec/models/create_agent201_response_spec.rb +1 -1
  453. data/spec/models/create_api_key201_response_data_spec.rb +1 -1
  454. data/spec/models/create_api_key201_response_spec.rb +1 -1
  455. data/spec/models/create_connect_link_request_spec.rb +1 -1
  456. data/spec/models/create_hashtag_group201_response_spec.rb +1 -1
  457. data/spec/models/create_inbox_reply_draft201_response_spec.rb +1 -1
  458. data/spec/models/create_media_folder_request_spec.rb +1 -1
  459. data/spec/models/create_mention201_response_spec.rb +1 -1
  460. data/spec/models/create_post201_response_spec.rb +1 -1
  461. data/spec/models/create_recycling_rule201_response_spec.rb +1 -1
  462. data/spec/models/create_report_export201_response_spec.rb +1 -1
  463. data/spec/models/create_reseller_client201_response_spec.rb +1 -1
  464. data/spec/models/create_rss_feed201_response_spec.rb +1 -1
  465. data/spec/models/create_template201_response_spec.rb +1 -1
  466. data/spec/models/create_webhook_subscription201_response_data_spec.rb +1 -1
  467. data/spec/models/create_webhook_subscription201_response_spec.rb +1 -1
  468. data/spec/models/delete_agent200_response_spec.rb +1 -1
  469. data/spec/models/delete_media_bulk_request_items_inner_spec.rb +1 -1
  470. data/spec/models/delete_media_bulk_request_spec.rb +1 -1
  471. data/spec/models/delete_media_folder_request_spec.rb +1 -1
  472. data/spec/models/delete_mode_spec.rb +1 -1
  473. data/spec/models/delete_post_request_spec.rb +1 -1
  474. data/spec/models/delete_posts_bulk_request_spec.rb +1 -1
  475. data/spec/models/delete_receipts_bulk_request_spec.rb +1 -1
  476. data/spec/models/delete_result_spec.rb +1 -1
  477. data/spec/models/delete_user400_response_spec.rb +1 -1
  478. data/spec/models/delete_users_bulk_request_spec.rb +1 -1
  479. data/spec/models/delete_workspaces_bulk_request_spec.rb +1 -1
  480. data/spec/models/free_tool_build_utm_url_request_spec.rb +1 -1
  481. data/spec/models/free_tool_build_utm_url_response_spec.rb +1 -1
  482. data/spec/models/free_tool_calculate_aspect_ratio_request_spec.rb +1 -1
  483. data/spec/models/free_tool_calculate_aspect_ratio_response_matches_inner_spec.rb +1 -1
  484. data/spec/models/free_tool_calculate_aspect_ratio_response_rounding_spec.rb +1 -1
  485. data/spec/models/free_tool_calculate_aspect_ratio_response_spec.rb +1 -1
  486. data/spec/models/free_tool_calculate_crop_request_spec.rb +1 -1
  487. data/spec/models/free_tool_calculate_crop_response_crop_spec.rb +1 -1
  488. data/spec/models/free_tool_calculate_crop_response_image_spec.rb +1 -1
  489. data/spec/models/free_tool_calculate_crop_response_output_spec.rb +1 -1
  490. data/spec/models/free_tool_calculate_crop_response_spec.rb +1 -1
  491. data/spec/models/free_tool_calculate_engagement_rate_request_spec.rb +1 -1
  492. data/spec/models/free_tool_calculate_engagement_rate_response_spec.rb +1 -1
  493. data/spec/models/free_tool_check_link_preview_request_spec.rb +1 -1
  494. data/spec/models/free_tool_check_link_preview_response_image_spec.rb +1 -1
  495. data/spec/models/free_tool_check_link_preview_response_previews_value_spec.rb +1 -1
  496. data/spec/models/free_tool_check_link_preview_response_redirects_inner_spec.rb +1 -1
  497. data/spec/models/free_tool_check_link_preview_response_spec.rb +1 -1
  498. data/spec/models/free_tool_check_link_preview_response_tags_spec.rb +1 -1
  499. data/spec/models/free_tool_check_post_request_media_spec.rb +1 -1
  500. data/spec/models/free_tool_check_post_request_spec.rb +1 -1
  501. data/spec/models/free_tool_check_post_response_networks_inner_errors_inner_spec.rb +1 -1
  502. data/spec/models/free_tool_check_post_response_networks_inner_spec.rb +1 -1
  503. data/spec/models/free_tool_check_post_response_spec.rb +1 -1
  504. data/spec/models/free_tool_clean_text_request_spec.rb +1 -1
  505. data/spec/models/free_tool_clean_text_response_changes_inner_spec.rb +1 -1
  506. data/spec/models/free_tool_clean_text_response_flags_inner_spec.rb +1 -1
  507. data/spec/models/free_tool_clean_text_response_spec.rb +1 -1
  508. data/spec/models/free_tool_count_characters_request_spec.rb +1 -1
  509. data/spec/models/free_tool_count_characters_response_networks_inner_spec.rb +1 -1
  510. data/spec/models/free_tool_count_characters_response_spec.rb +1 -1
  511. data/spec/models/free_tool_error_spec.rb +1 -1
  512. data/spec/models/free_tool_format_linked_in_post_request_spec.rb +1 -1
  513. data/spec/models/free_tool_format_linked_in_post_response_spec.rb +1 -1
  514. data/spec/models/free_tool_generate_caption_request_spec.rb +1 -1
  515. data/spec/models/free_tool_generate_caption_response_spec.rb +1 -1
  516. data/spec/models/free_tool_generate_fancy_text_request_spec.rb +1 -1
  517. data/spec/models/free_tool_generate_fancy_text_response_spec.rb +1 -1
  518. data/spec/models/free_tool_generate_fancy_text_response_styles_inner_spec.rb +1 -1
  519. data/spec/models/free_tool_generate_hashtags_request_spec.rb +1 -1
  520. data/spec/models/free_tool_generate_hashtags_response_spec.rb +1 -1
  521. data/spec/models/free_tool_generate_hooks_request_spec.rb +68 -0
  522. data/spec/models/free_tool_generate_hooks_response_hooks_inner_spec.rb +46 -0
  523. data/spec/models/free_tool_generate_hooks_response_spec.rb +54 -0
  524. data/spec/models/free_tool_generate_qr_code_request_spec.rb +1 -1
  525. data/spec/models/free_tool_generate_qr_code_request_utm_spec.rb +1 -1
  526. data/spec/models/free_tool_generate_qr_code_response_spec.rb +1 -1
  527. data/spec/models/free_tool_get_best_times_to_post_response_networks_inner_spec.rb +1 -1
  528. data/spec/models/free_tool_get_best_times_to_post_response_spec.rb +1 -1
  529. data/spec/models/free_tool_get_hook_templates_response_hooks_inner_spec.rb +62 -0
  530. data/spec/models/free_tool_get_hook_templates_response_spec.rb +42 -0
  531. data/spec/models/free_tool_get_image_sizes_response_sizes_inner_spec.rb +1 -1
  532. data/spec/models/free_tool_get_image_sizes_response_sources_inner_spec.rb +1 -1
  533. data/spec/models/free_tool_get_image_sizes_response_spec.rb +1 -1
  534. data/spec/models/free_tool_list_item_spec.rb +1 -1
  535. data/spec/models/free_tool_list_spec.rb +1 -1
  536. data/spec/models/free_tool_preview_post_request_spec.rb +1 -1
  537. data/spec/models/free_tool_preview_post_response_networks_inner_spec.rb +1 -1
  538. data/spec/models/free_tool_preview_post_response_spec.rb +1 -1
  539. data/spec/models/free_tool_split_thread_request_spec.rb +1 -1
  540. data/spec/models/free_tool_split_thread_response_posts_inner_spec.rb +1 -1
  541. data/spec/models/free_tool_split_thread_response_spec.rb +1 -1
  542. data/spec/models/get_account_health200_response_spec.rb +1 -1
  543. data/spec/models/get_brand_voice200_response_spec.rb +1 -1
  544. data/spec/models/get_competitor200_response_spec.rb +1 -1
  545. data/spec/models/get_inbox_conversation200_response_spec.rb +1 -1
  546. data/spec/models/get_posting_schedule200_response_spec.rb +1 -1
  547. data/spec/models/get_remote_upload_status200_response_spec.rb +1 -1
  548. data/spec/models/get_report_branding200_response_spec.rb +1 -1
  549. data/spec/models/get_repurpose_run200_response_spec.rb +1 -1
  550. data/spec/models/guardrail_error_spec.rb +1 -1
  551. data/spec/models/hashtag_group_input_spec.rb +1 -1
  552. data/spec/models/hashtag_group_spec.rb +1 -1
  553. data/spec/models/image_alt_text200_response_spec.rb +1 -1
  554. data/spec/models/image_alt_text_input_spec.rb +1 -1
  555. data/spec/models/image_alt_text_response_spec.rb +1 -1
  556. data/spec/models/image_credit_balance_spec.rb +1 -1
  557. data/spec/models/image_edit_input_spec.rb +1 -1
  558. data/spec/models/image_generate200_response_spec.rb +1 -1
  559. data/spec/models/image_generate429_response_spec.rb +1 -1
  560. data/spec/models/image_generate_input_spec.rb +1 -1
  561. data/spec/models/image_generation_response_spec.rb +1 -1
  562. data/spec/models/image_prompt200_response_spec.rb +1 -1
  563. data/spec/models/image_prompt429_response_spec.rb +1 -1
  564. data/spec/models/image_prompt_input_spec.rb +1 -1
  565. data/spec/models/image_prompt_response_spec.rb +1 -1
  566. data/spec/models/image_variations200_response_spec.rb +1 -1
  567. data/spec/models/image_variations_input_spec.rb +1 -1
  568. data/spec/models/image_variations_response_spec.rb +1 -1
  569. data/spec/models/inbox_author_spec.rb +1 -1
  570. data/spec/models/inbox_conversation_account_spec.rb +1 -1
  571. data/spec/models/inbox_conversation_spec.rb +1 -1
  572. data/spec/models/inbox_conversation_update_spec.rb +1 -1
  573. data/spec/models/inbox_message_author_spec.rb +1 -1
  574. data/spec/models/inbox_message_spec.rb +1 -1
  575. data/spec/models/inbox_reply_draft_approve_spec.rb +1 -1
  576. data/spec/models/inbox_reply_draft_edit_spec.rb +1 -1
  577. data/spec/models/inbox_reply_draft_input_spec.rb +1 -1
  578. data/spec/models/inbox_reply_draft_spec.rb +1 -1
  579. data/spec/models/initiate_chunked_upload201_response_spec.rb +1 -1
  580. data/spec/models/initiate_chunked_upload_request_spec.rb +1 -1
  581. data/spec/models/initiate_remote_upload201_response_one_of_spec.rb +1 -1
  582. data/spec/models/initiate_remote_upload201_response_spec.rb +1 -1
  583. data/spec/models/initiate_remote_upload_request_spec.rb +1 -1
  584. data/spec/models/learn_brand_voice_input_spec.rb +1 -1
  585. data/spec/models/learn_brand_voice_response_meta_spec.rb +1 -1
  586. data/spec/models/learn_brand_voice_response_spec.rb +1 -1
  587. data/spec/models/list_account_groups200_response_spec.rb +1 -1
  588. data/spec/models/list_accounts200_response_spec.rb +1 -1
  589. data/spec/models/list_agent_proposals200_response_spec.rb +1 -1
  590. data/spec/models/list_agent_runs200_response_spec.rb +1 -1
  591. data/spec/models/list_agents200_response_spec.rb +1 -1
  592. data/spec/models/list_api_activity200_response_spec.rb +1 -1
  593. data/spec/models/list_api_keys200_response_spec.rb +1 -1
  594. data/spec/models/list_competitors200_response_spec.rb +1 -1
  595. data/spec/models/list_hashtag_groups200_response_spec.rb +1 -1
  596. data/spec/models/list_inbox_conversations200_response_spec.rb +1 -1
  597. data/spec/models/list_inbox_reply_drafts200_response_spec.rb +1 -1
  598. data/spec/models/list_media200_response_spec.rb +1 -1
  599. data/spec/models/list_media_folders200_response_spec.rb +1 -1
  600. data/spec/models/list_mentions200_response_spec.rb +1 -1
  601. data/spec/models/list_my_workspaces200_response_spec.rb +1 -1
  602. data/spec/models/list_posts200_response_spec.rb +1 -1
  603. data/spec/models/list_receipts200_response_spec.rb +1 -1
  604. data/spec/models/list_recycling_rules200_response_spec.rb +1 -1
  605. data/spec/models/list_recycling_runs200_response_spec.rb +1 -1
  606. data/spec/models/list_report_exports200_response_spec.rb +1 -1
  607. data/spec/models/list_reseller_clients200_response_spec.rb +1 -1
  608. data/spec/models/list_rss_feeds200_response_spec.rb +1 -1
  609. data/spec/models/list_tags200_response_spec.rb +1 -1
  610. data/spec/models/list_templates200_response_spec.rb +1 -1
  611. data/spec/models/list_users200_response_spec.rb +1 -1
  612. data/spec/models/list_webhook_subscriptions200_response_spec.rb +1 -1
  613. data/spec/models/list_workspaces200_response_spec.rb +1 -1
  614. data/spec/models/media_base64_input_spec.rb +1 -1
  615. data/spec/models/media_folder_input_spec.rb +1 -1
  616. data/spec/models/media_folder_ref_spec.rb +1 -1
  617. data/spec/models/media_folder_spec.rb +1 -1
  618. data/spec/models/media_spec.rb +1 -1
  619. data/spec/models/mention_identity_input_spec.rb +1 -1
  620. data/spec/models/mention_identity_spec.rb +1 -1
  621. data/spec/models/mention_input_spec.rb +1 -1
  622. data/spec/models/mention_spec.rb +1 -1
  623. data/spec/models/message_only_spec.rb +1 -1
  624. data/spec/models/pagination_meta_links_spec.rb +1 -1
  625. data/spec/models/pagination_meta_meta_spec.rb +1 -1
  626. data/spec/models/pagination_meta_spec.rb +1 -1
  627. data/spec/models/poll_rss_feed200_response_spec.rb +1 -1
  628. data/spec/models/post_analytics_spec.rb +1 -1
  629. data/spec/models/post_content_spec.rb +1 -1
  630. data/spec/models/post_input_spec.rb +1 -1
  631. data/spec/models/post_options_instagram_spec.rb +1 -1
  632. data/spec/models/post_options_tik_tok_spec.rb +1 -1
  633. data/spec/models/post_options_youtube_spec.rb +1 -1
  634. data/spec/models/post_spec.rb +1 -1
  635. data/spec/models/post_status_spec.rb +1 -1
  636. data/spec/models/post_version_options_spec.rb +1 -1
  637. data/spec/models/post_version_spec.rb +1 -1
  638. data/spec/models/post_warning_spec.rb +1 -1
  639. data/spec/models/post_warnings_spec.rb +1 -1
  640. data/spec/models/posting_schedule_day_spec.rb +1 -1
  641. data/spec/models/posting_schedule_day_times_inner_spec.rb +1 -1
  642. data/spec/models/posting_schedule_input_spec.rb +1 -1
  643. data/spec/models/posting_schedule_spec.rb +1 -1
  644. data/spec/models/posting_time_slot_spec.rb +1 -1
  645. data/spec/models/posting_times_best_inner_spec.rb +1 -1
  646. data/spec/models/posting_times_day_intervals_inner_inner_spec.rb +1 -1
  647. data/spec/models/posting_times_days_inner_spec.rb +1 -1
  648. data/spec/models/posting_times_spec.rb +1 -1
  649. data/spec/models/preflight_result_spec.rb +1 -1
  650. data/spec/models/public_workspace_pivot_spec.rb +1 -1
  651. data/spec/models/public_workspace_spec.rb +1 -1
  652. data/spec/models/publish_progress_spec.rb +1 -1
  653. data/spec/models/queue_slots_spec.rb +1 -1
  654. data/spec/models/receipt_input_spec.rb +1 -1
  655. data/spec/models/receipt_spec.rb +1 -1
  656. data/spec/models/receipt_update_input_spec.rb +1 -1
  657. data/spec/models/recommended_posting_times_spec.rb +1 -1
  658. data/spec/models/reconnect_link_spec.rb +1 -1
  659. data/spec/models/recycling_rule_input_spec.rb +1 -1
  660. data/spec/models/recycling_rule_settings_spec.rb +1 -1
  661. data/spec/models/recycling_rule_spec.rb +1 -1
  662. data/spec/models/recycling_rule_update_spec.rb +1 -1
  663. data/spec/models/recycling_run_spec.rb +1 -1
  664. data/spec/models/remove_generic_subscription422_response_spec.rb +1 -1
  665. data/spec/models/remove_user_from_workspace_request_spec.rb +1 -1
  666. data/spec/models/report_branding_input_spec.rb +1 -1
  667. data/spec/models/report_branding_spec.rb +1 -1
  668. data/spec/models/report_export_input_spec.rb +1 -1
  669. data/spec/models/report_export_spec.rb +1 -1
  670. data/spec/models/repurpose_content200_response_spec.rb +1 -1
  671. data/spec/models/repurpose_content202_response_spec.rb +1 -1
  672. data/spec/models/repurpose_content500_response_spec.rb +1 -1
  673. data/spec/models/repurpose_input_spec.rb +1 -1
  674. data/spec/models/repurpose_input_theme_spec.rb +1 -1
  675. data/spec/models/repurpose_result_media_spec.rb +1 -1
  676. data/spec/models/repurpose_result_source_spec.rb +1 -1
  677. data/spec/models/repurpose_result_spec.rb +1 -1
  678. data/spec/models/repurpose_run_accepted_spec.rb +1 -1
  679. data/spec/models/repurpose_run_spec.rb +1 -1
  680. data/spec/models/repurpose_slide_spec.rb +1 -1
  681. data/spec/models/reseller_client_input_spec.rb +1 -1
  682. data/spec/models/reseller_client_spec.rb +1 -1
  683. data/spec/models/reseller_client_usage_spec.rb +1 -1
  684. data/spec/models/retry_post_account_result_spec.rb +1 -1
  685. data/spec/models/rss_feed_input_spec.rb +1 -1
  686. data/spec/models/rss_feed_spec.rb +1 -1
  687. data/spec/models/rss_feed_update_spec.rb +1 -1
  688. data/spec/models/run_agent202_response_spec.rb +1 -1
  689. data/spec/models/schedule_post_request_spec.rb +1 -1
  690. data/spec/models/schedule_result_spec.rb +1 -1
  691. data/spec/models/subscription_input_spec.rb +1 -1
  692. data/spec/models/subscription_spec.rb +1 -1
  693. data/spec/models/subscription_status_spec.rb +1 -1
  694. data/spec/models/subscription_update_input_spec.rb +1 -1
  695. data/spec/models/tag_input_spec.rb +1 -1
  696. data/spec/models/tag_spec.rb +1 -1
  697. data/spec/models/template_content_item_spec.rb +1 -1
  698. data/spec/models/template_input_content_inner_spec.rb +1 -1
  699. data/spec/models/template_input_spec.rb +1 -1
  700. data/spec/models/template_spec.rb +1 -1
  701. data/spec/models/update_media_request_spec.rb +1 -1
  702. data/spec/models/update_post200_response_spec.rb +1 -1
  703. data/spec/models/upload_chunk201_response_spec.rb +1 -1
  704. data/spec/models/user_input_spec.rb +1 -1
  705. data/spec/models/user_spec.rb +1 -1
  706. data/spec/models/user_update_input_spec.rb +1 -1
  707. data/spec/models/webhook_envelope_spec.rb +1 -1
  708. data/spec/models/webhook_event_name_spec.rb +1 -1
  709. data/spec/models/webhook_event_payload_spec.rb +1 -1
  710. data/spec/models/webhook_subscription_input_spec.rb +1 -1
  711. data/spec/models/webhook_subscription_spec.rb +1 -1
  712. data/spec/models/workspace_agent_input_spec.rb +1 -1
  713. data/spec/models/workspace_agent_settings_spec.rb +1 -1
  714. data/spec/models/workspace_agent_spec.rb +1 -1
  715. data/spec/models/workspace_agent_update_spec.rb +1 -1
  716. data/spec/models/workspace_input_spec.rb +1 -1
  717. data/spec/models/workspace_spec.rb +1 -1
  718. data/spec/models/workspace_user_input_spec.rb +1 -1
  719. data/spec/models/x_usage_counter_spec.rb +1 -1
  720. data/spec/models/x_usage_spec.rb +1 -1
  721. data/spec/spec_helper.rb +1 -1
  722. metadata +21 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bfe6b979842e32665d73a1dc7b29b35167f1fa78821cdd4c1d9c944333432dd5
4
- data.tar.gz: d3d223cf8f07b1556792fac94b8c38506c4c48a01662a8d79a42b22cc09a6188
3
+ metadata.gz: c7c82e043c8ad256aea7ad6a9a64d3549ec5681fbcc40fa2e4308ad521aa2acb
4
+ data.tar.gz: 611905e90c5728324eaad40dd3985dd65d344feb2874f084187a08a5093e3b93
5
5
  SHA512:
6
- metadata.gz: 7917babad61807f05fdd1bb5702936bd10072a57d1e433f7a06dee816ff98deab5bda7692ec816d31b7703caf11684a95a7ec486042b0e0a8eb33ce42c2cb6e0
7
- data.tar.gz: d9f01db778613fad79251f236a834d76c137309ac112067d9d329aed7f32238c85a16fbc8b7f0d29367e8a3346b32ecd49d56940b1efe816300b963735bd57c8
6
+ metadata.gz: ac79e1061617233d9363da6035288a0be1a014fcbf244c15cf8b0bc466f4c1ce0ccb49f7ca26f9f0958708758b21958b4817295e860418a1ba3b10430ab58de4
7
+ data.tar.gz: '07280c347b567da3121cc7c7570fae41fdb666e471eb7e7e88895ecb43b26f4d5eea8c489dff1284f2648b491e9bb25e73097342a6d28440df5352388eb8b265'
data/README.md CHANGED
@@ -13,7 +13,7 @@ gem install postboost
13
13
  | **RubyGems** | [rubygems.org/gems/postboost](https://rubygems.org/gems/postboost) |
14
14
  | **GitHub** | [postboost-co/postboost-ruby](https://github.com/postboost-co/postboost-ruby) |
15
15
  | **Docs** | [postboost.co/docs/api](https://postboost.co/docs/api) |
16
- | **Version** | v1.38.0 |
16
+ | **Version** | v1.39.0 |
17
17
 
18
18
  ## Quick start
19
19
 
@@ -98,8 +98,10 @@ Class | Method | HTTP request | Description
98
98
  *PostBoost::FreeToolsApi* | [**generate_caption**](docs/FreeToolsApi.md#generate_caption) | **POST** /tools/instagram-caption-generator | Write three post captions for a topic with AI (needs a token, spends AI credits)
99
99
  *PostBoost::FreeToolsApi* | [**generate_fancy_text**](docs/FreeToolsApi.md#generate_fancy_text) | **POST** /tools/fancy-text-generator | Convert text to fancy Unicode styles
100
100
  *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)
101
+ *PostBoost::FreeToolsApi* | [**generate_hooks**](docs/FreeToolsApi.md#generate_hooks) | **POST** /tools/hook-generator | Generate hooks (opening lines) for a social media post with AI (needs a token, spends AI credits)
101
102
  *PostBoost::FreeToolsApi* | [**generate_qr_code**](docs/FreeToolsApi.md#generate_qr_code) | **POST** /tools/qr-code-generator | Generate a QR code (SVG) for a link or text, with optional UTM tags
102
103
  *PostBoost::FreeToolsApi* | [**get_best_times_to_post**](docs/FreeToolsApi.md#get_best_times_to_post) | **GET** /tools/best-time-to-post | Get the best times to post per network from published studies, with sources
104
+ *PostBoost::FreeToolsApi* | [**get_hook_templates**](docs/FreeToolsApi.md#get_hook_templates) | **GET** /tools/hook-generator/library | Get free hook templates for social media posts, filtered by style and network
103
105
  *PostBoost::FreeToolsApi* | [**get_image_sizes**](docs/FreeToolsApi.md#get_image_sizes) | **GET** /tools/social-media-image-sizes | Get social media image sizes per network, each with its source
104
106
  *PostBoost::FreeToolsApi* | [**list_free_tools**](docs/FreeToolsApi.md#list_free_tools) | **GET** /tools | List the free tools
105
107
  *PostBoost::FreeToolsApi* | [**preview_post**](docs/FreeToolsApi.md#preview_post) | **POST** /tools/social-media-post-preview | Preview where a post folds and when its image is cropped on Instagram, X, LinkedIn and Facebook
@@ -0,0 +1,26 @@
1
+ # PostBoost::FreeToolGenerateHooksRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **topic** | **String** | What the post is about. | |
8
+ | **tone** | **String** | Tone of the hooks, as on the caption generator. | [optional][default to 'friendly'] |
9
+ | **count** | **Integer** | How many hooks to write. | [optional][default to 5] |
10
+ | **network** | **String** | The network the text is written for. | [optional][default to 'instagram'] |
11
+ | **workspace** | **String** | UUID of the workspace whose AI credits pay for the call. Default: your active workspace (a scoped API key: its own workspace). | [optional] |
12
+
13
+ ## Example
14
+
15
+ ```ruby
16
+ require 'postboost'
17
+
18
+ instance = PostBoost::FreeToolGenerateHooksRequest.new(
19
+ topic: null,
20
+ tone: null,
21
+ count: null,
22
+ network: null,
23
+ workspace: null
24
+ )
25
+ ```
26
+
@@ -0,0 +1,24 @@
1
+ # PostBoost::FreeToolGenerateHooksResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **hooks** | [**Array<FreeToolGenerateHooksResponseHooksInner>**](FreeToolGenerateHooksResponseHooksInner.md) | `count` hooks in several styles. | [optional] |
8
+ | **notice** | **String** | Only while AI is switched off: the hooks are templates from the free library (getHookTemplates) with the topic filled in, free of charge. | [optional] |
9
+ | **credits_spent** | **Integer** | AI credits this call took from the workspace: 1, or 0 for a cached result. | [optional] |
10
+ | **cached** | **Boolean** | True when the same request was answered before (free). | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'postboost'
16
+
17
+ instance = PostBoost::FreeToolGenerateHooksResponse.new(
18
+ hooks: null,
19
+ notice: null,
20
+ credits_spent: null,
21
+ cached: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,20 @@
1
+ # PostBoost::FreeToolGenerateHooksResponseHooksInner
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **text** | **String** | The hook. | [optional] |
8
+ | **category** | **String** | Hook style, as in getHookTemplates. | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'postboost'
14
+
15
+ instance = PostBoost::FreeToolGenerateHooksResponseHooksInner.new(
16
+ text: null,
17
+ category: null
18
+ )
19
+ ```
20
+
@@ -0,0 +1,20 @@
1
+ # PostBoost::FreeToolGetHookTemplatesResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **hooks** | [**Array<FreeToolGetHookTemplatesResponseHooksInner>**](FreeToolGetHookTemplatesResponseHooksInner.md) | | [optional] |
8
+ | **total** | **Integer** | Number of hooks returned. | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'postboost'
14
+
15
+ instance = PostBoost::FreeToolGetHookTemplatesResponse.new(
16
+ hooks: null,
17
+ total: null
18
+ )
19
+ ```
20
+
@@ -0,0 +1,24 @@
1
+ # PostBoost::FreeToolGetHookTemplatesResponseHooksInner
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **text** | **String** | The hook, with `{topic}` filled in when a topic was given. | [optional] |
8
+ | **template** | **String** | The template with its `{topic}` placeholder. | [optional] |
9
+ | **category** | **String** | Hook style. | [optional] |
10
+ | **networks** | **Array<String>** | Networks the hook suits. | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'postboost'
16
+
17
+ instance = PostBoost::FreeToolGetHookTemplatesResponseHooksInner.new(
18
+ text: null,
19
+ template: null,
20
+ category: null,
21
+ networks: null
22
+ )
23
+ ```
24
+
data/docs/FreeToolsApi.md CHANGED
@@ -16,8 +16,10 @@ All URIs are relative to *https://postboost.co/app/api*
16
16
  | [**generate_caption**](FreeToolsApi.md#generate_caption) | **POST** /tools/instagram-caption-generator | Write three post captions for a topic with AI (needs a token, spends AI credits) |
17
17
  | [**generate_fancy_text**](FreeToolsApi.md#generate_fancy_text) | **POST** /tools/fancy-text-generator | Convert text to fancy Unicode styles |
18
18
  | [**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) |
19
+ | [**generate_hooks**](FreeToolsApi.md#generate_hooks) | **POST** /tools/hook-generator | Generate hooks (opening lines) for a social media post with AI (needs a token, spends AI credits) |
19
20
  | [**generate_qr_code**](FreeToolsApi.md#generate_qr_code) | **POST** /tools/qr-code-generator | Generate a QR code (SVG) for a link or text, with optional UTM tags |
20
21
  | [**get_best_times_to_post**](FreeToolsApi.md#get_best_times_to_post) | **GET** /tools/best-time-to-post | Get the best times to post per network from published studies, with sources |
22
+ | [**get_hook_templates**](FreeToolsApi.md#get_hook_templates) | **GET** /tools/hook-generator/library | Get free hook templates for social media posts, filtered by style and network |
21
23
  | [**get_image_sizes**](FreeToolsApi.md#get_image_sizes) | **GET** /tools/social-media-image-sizes | Get social media image sizes per network, each with its source |
22
24
  | [**list_free_tools**](FreeToolsApi.md#list_free_tools) | **GET** /tools | List the free tools |
23
25
  | [**preview_post**](FreeToolsApi.md#preview_post) | **POST** /tools/social-media-post-preview | Preview where a post folds and when its image is cropped on Instagram, X, LinkedIn and Facebook |
@@ -802,6 +804,75 @@ end
802
804
  - **Accept**: application/json
803
805
 
804
806
 
807
+ ## generate_hooks
808
+
809
+ > <FreeToolGenerateHooksResponse> generate_hooks(free_tool_generate_hooks_request)
810
+
811
+ Generate hooks (opening lines) for a social media post with AI (needs a token, spends AI credits)
812
+
813
+ Generate hooks (opening lines) for a social media post with AI (needs a token, spends AI credits). The same logic as the free web tool at https://postboost.co/tools/hook-generator. Needs an API token (a scoped key needs the `ai` ability and pays with its own workspace). A new generation spends 1 AI credit of the workspace you name (or your active workspace); a repeated identical request is answered from the cache for free.
814
+
815
+ ### Examples
816
+
817
+ ```ruby
818
+ require 'time'
819
+ require 'postboost'
820
+ # setup authorization
821
+ PostBoost.configure do |config|
822
+ # Configure Bearer authorization: bearerAuth
823
+ config.access_token = 'YOUR_BEARER_TOKEN'
824
+ end
825
+
826
+ api_instance = PostBoost::FreeToolsApi.new
827
+ free_tool_generate_hooks_request = PostBoost::FreeToolGenerateHooksRequest.new({topic: 'topic_example'}) # FreeToolGenerateHooksRequest |
828
+
829
+ begin
830
+ # Generate hooks (opening lines) for a social media post with AI (needs a token, spends AI credits)
831
+ result = api_instance.generate_hooks(free_tool_generate_hooks_request)
832
+ p result
833
+ rescue PostBoost::ApiError => e
834
+ puts "Error when calling FreeToolsApi->generate_hooks: #{e}"
835
+ end
836
+ ```
837
+
838
+ #### Using the generate_hooks_with_http_info variant
839
+
840
+ This returns an Array which contains the response data, status code and headers.
841
+
842
+ > <Array(<FreeToolGenerateHooksResponse>, Integer, Hash)> generate_hooks_with_http_info(free_tool_generate_hooks_request)
843
+
844
+ ```ruby
845
+ begin
846
+ # Generate hooks (opening lines) for a social media post with AI (needs a token, spends AI credits)
847
+ data, status_code, headers = api_instance.generate_hooks_with_http_info(free_tool_generate_hooks_request)
848
+ p status_code # => 2xx
849
+ p headers # => { ... }
850
+ p data # => <FreeToolGenerateHooksResponse>
851
+ rescue PostBoost::ApiError => e
852
+ puts "Error when calling FreeToolsApi->generate_hooks_with_http_info: #{e}"
853
+ end
854
+ ```
855
+
856
+ ### Parameters
857
+
858
+ | Name | Type | Description | Notes |
859
+ | ---- | ---- | ----------- | ----- |
860
+ | **free_tool_generate_hooks_request** | [**FreeToolGenerateHooksRequest**](FreeToolGenerateHooksRequest.md) | | |
861
+
862
+ ### Return type
863
+
864
+ [**FreeToolGenerateHooksResponse**](FreeToolGenerateHooksResponse.md)
865
+
866
+ ### Authorization
867
+
868
+ [bearerAuth](../README.md#bearerAuth)
869
+
870
+ ### HTTP request headers
871
+
872
+ - **Content-Type**: application/json
873
+ - **Accept**: application/json
874
+
875
+
805
876
  ## generate_qr_code
806
877
 
807
878
  > <FreeToolGenerateQrCodeResponse> generate_qr_code(free_tool_generate_qr_code_request)
@@ -932,6 +1003,78 @@ No authorization required
932
1003
  - **Accept**: application/json
933
1004
 
934
1005
 
1006
+ ## get_hook_templates
1007
+
1008
+ > <FreeToolGetHookTemplatesResponse> get_hook_templates(opts)
1009
+
1010
+ Get free hook templates for social media posts, filtered by style and network
1011
+
1012
+ Get free hook templates for social media posts, filtered by style and network. The same logic as the free web tool at https://postboost.co/tools/hook-generator. No account needed: call it without a token, or with any API token.
1013
+
1014
+ ### Examples
1015
+
1016
+ ```ruby
1017
+ require 'time'
1018
+ require 'postboost'
1019
+
1020
+ api_instance = PostBoost::FreeToolsApi.new
1021
+ opts = {
1022
+ topic: 'topic_example', # String |
1023
+ category: 'question', # String |
1024
+ network: 'instagram', # String |
1025
+ search: 'search_example' # String |
1026
+ }
1027
+
1028
+ begin
1029
+ # Get free hook templates for social media posts, filtered by style and network
1030
+ result = api_instance.get_hook_templates(opts)
1031
+ p result
1032
+ rescue PostBoost::ApiError => e
1033
+ puts "Error when calling FreeToolsApi->get_hook_templates: #{e}"
1034
+ end
1035
+ ```
1036
+
1037
+ #### Using the get_hook_templates_with_http_info variant
1038
+
1039
+ This returns an Array which contains the response data, status code and headers.
1040
+
1041
+ > <Array(<FreeToolGetHookTemplatesResponse>, Integer, Hash)> get_hook_templates_with_http_info(opts)
1042
+
1043
+ ```ruby
1044
+ begin
1045
+ # Get free hook templates for social media posts, filtered by style and network
1046
+ data, status_code, headers = api_instance.get_hook_templates_with_http_info(opts)
1047
+ p status_code # => 2xx
1048
+ p headers # => { ... }
1049
+ p data # => <FreeToolGetHookTemplatesResponse>
1050
+ rescue PostBoost::ApiError => e
1051
+ puts "Error when calling FreeToolsApi->get_hook_templates_with_http_info: #{e}"
1052
+ end
1053
+ ```
1054
+
1055
+ ### Parameters
1056
+
1057
+ | Name | Type | Description | Notes |
1058
+ | ---- | ---- | ----------- | ----- |
1059
+ | **topic** | **String** | | [optional] |
1060
+ | **category** | **String** | | [optional] |
1061
+ | **network** | **String** | | [optional] |
1062
+ | **search** | **String** | | [optional] |
1063
+
1064
+ ### Return type
1065
+
1066
+ [**FreeToolGetHookTemplatesResponse**](FreeToolGetHookTemplatesResponse.md)
1067
+
1068
+ ### Authorization
1069
+
1070
+ No authorization required
1071
+
1072
+ ### HTTP request headers
1073
+
1074
+ - **Content-Type**: Not defined
1075
+ - **Accept**: application/json
1076
+
1077
+
935
1078
  ## get_image_sizes
936
1079
 
937
1080
  > <FreeToolGetImageSizesResponse> get_image_sizes(opts)
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The PostBoost REST API lets you publish, schedule, and analyze social media posts on every supported network from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account's daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
5
5
 
6
- The version of the OpenAPI document: 1.38.0
6
+ The version of the OpenAPI document: 1.39.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.38.0
6
+ The version of the OpenAPI document: 1.39.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.38.0
6
+ The version of the OpenAPI document: 1.39.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.38.0
6
+ The version of the OpenAPI document: 1.39.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.38.0
6
+ The version of the OpenAPI document: 1.39.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.38.0
6
+ The version of the OpenAPI document: 1.39.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.38.0
6
+ The version of the OpenAPI document: 1.39.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.38.0
6
+ The version of the OpenAPI document: 1.39.0
7
7
  Contact: hi@postboost.co
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.9.0
@@ -835,6 +835,74 @@ module PostBoost
835
835
  return data, status_code, headers
836
836
  end
837
837
 
838
+ # Generate hooks (opening lines) for a social media post with AI (needs a token, spends AI credits)
839
+ # Generate hooks (opening lines) for a social media post with AI (needs a token, spends AI credits). The same logic as the free web tool at https://postboost.co/tools/hook-generator. Needs an API token (a scoped key needs the `ai` ability and pays with its own workspace). A new generation spends 1 AI credit of the workspace you name (or your active workspace); a repeated identical request is answered from the cache for free.
840
+ # @param free_tool_generate_hooks_request [FreeToolGenerateHooksRequest]
841
+ # @param [Hash] opts the optional parameters
842
+ # @return [FreeToolGenerateHooksResponse]
843
+ def generate_hooks(free_tool_generate_hooks_request, opts = {})
844
+ data, _status_code, _headers = generate_hooks_with_http_info(free_tool_generate_hooks_request, opts)
845
+ data
846
+ end
847
+
848
+ # Generate hooks (opening lines) for a social media post with AI (needs a token, spends AI credits)
849
+ # Generate hooks (opening lines) for a social media post with AI (needs a token, spends AI credits). The same logic as the free web tool at https://postboost.co/tools/hook-generator. Needs an API token (a scoped key needs the &#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.
850
+ # @param free_tool_generate_hooks_request [FreeToolGenerateHooksRequest]
851
+ # @param [Hash] opts the optional parameters
852
+ # @return [Array<(FreeToolGenerateHooksResponse, Integer, Hash)>] FreeToolGenerateHooksResponse data, response status code and response headers
853
+ def generate_hooks_with_http_info(free_tool_generate_hooks_request, opts = {})
854
+ if @api_client.config.debugging
855
+ @api_client.config.logger.debug 'Calling API: FreeToolsApi.generate_hooks ...'
856
+ end
857
+ # verify the required parameter 'free_tool_generate_hooks_request' is set
858
+ if @api_client.config.client_side_validation && free_tool_generate_hooks_request.nil?
859
+ fail ArgumentError, "Missing the required parameter 'free_tool_generate_hooks_request' when calling FreeToolsApi.generate_hooks"
860
+ end
861
+ # resource path
862
+ local_var_path = '/tools/hook-generator'
863
+
864
+ # query parameters
865
+ query_params = opts[:query_params] || {}
866
+
867
+ # header parameters
868
+ header_params = opts[:header_params] || {}
869
+ # HTTP header 'Accept' (if needed)
870
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
871
+ # HTTP header 'Content-Type'
872
+ content_type = @api_client.select_header_content_type(['application/json'])
873
+ if !content_type.nil?
874
+ header_params['Content-Type'] = content_type
875
+ end
876
+
877
+ # form parameters
878
+ form_params = opts[:form_params] || {}
879
+
880
+ # http body (model)
881
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(free_tool_generate_hooks_request)
882
+
883
+ # return_type
884
+ return_type = opts[:debug_return_type] || 'FreeToolGenerateHooksResponse'
885
+
886
+ # auth_names
887
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
888
+
889
+ new_options = opts.merge(
890
+ :operation => :"FreeToolsApi.generate_hooks",
891
+ :header_params => header_params,
892
+ :query_params => query_params,
893
+ :form_params => form_params,
894
+ :body => post_body,
895
+ :auth_names => auth_names,
896
+ :return_type => return_type
897
+ )
898
+
899
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
900
+ if @api_client.config.debugging
901
+ @api_client.config.logger.debug "API called: FreeToolsApi#generate_hooks\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
902
+ end
903
+ return data, status_code, headers
904
+ end
905
+
838
906
  # Generate a QR code (SVG) for a link or text, with optional UTM tags
839
907
  # Generate a QR code (SVG) for a link or text, with optional UTM tags. The same logic as the free web tool at https://postboost.co/tools/qr-code-generator. No account needed: call it without a token, or with any API token.
840
908
  # @param free_tool_generate_qr_code_request [FreeToolGenerateQrCodeRequest]
@@ -967,6 +1035,91 @@ module PostBoost
967
1035
  return data, status_code, headers
968
1036
  end
969
1037
 
1038
+ # Get free hook templates for social media posts, filtered by style and network
1039
+ # Get free hook templates for social media posts, filtered by style and network. The same logic as the free web tool at https://postboost.co/tools/hook-generator. No account needed: call it without a token, or with any API token.
1040
+ # @param [Hash] opts the optional parameters
1041
+ # @option opts [String] :topic
1042
+ # @option opts [String] :category
1043
+ # @option opts [String] :network
1044
+ # @option opts [String] :search
1045
+ # @return [FreeToolGetHookTemplatesResponse]
1046
+ def get_hook_templates(opts = {})
1047
+ data, _status_code, _headers = get_hook_templates_with_http_info(opts)
1048
+ data
1049
+ end
1050
+
1051
+ # Get free hook templates for social media posts, filtered by style and network
1052
+ # Get free hook templates for social media posts, filtered by style and network. The same logic as the free web tool at https://postboost.co/tools/hook-generator. No account needed: call it without a token, or with any API token.
1053
+ # @param [Hash] opts the optional parameters
1054
+ # @option opts [String] :topic
1055
+ # @option opts [String] :category
1056
+ # @option opts [String] :network
1057
+ # @option opts [String] :search
1058
+ # @return [Array<(FreeToolGetHookTemplatesResponse, Integer, Hash)>] FreeToolGetHookTemplatesResponse data, response status code and response headers
1059
+ def get_hook_templates_with_http_info(opts = {})
1060
+ if @api_client.config.debugging
1061
+ @api_client.config.logger.debug 'Calling API: FreeToolsApi.get_hook_templates ...'
1062
+ end
1063
+ if @api_client.config.client_side_validation && !opts[:'topic'].nil? && opts[:'topic'].to_s.length > 300
1064
+ fail ArgumentError, 'invalid value for "opts[:"topic"]" when calling FreeToolsApi.get_hook_templates, the character length must be smaller than or equal to 300.'
1065
+ end
1066
+
1067
+ allowable_values = ["question", "contrarian", "list", "story", "mistake", "how-to", "curiosity", "social-proof"]
1068
+ if @api_client.config.client_side_validation && opts[:'category'] && !allowable_values.include?(opts[:'category'])
1069
+ fail ArgumentError, "invalid value for \"category\", must be one of #{allowable_values}"
1070
+ end
1071
+ allowable_values = ["instagram", "tiktok", "linkedin", "x", "threads", "facebook"]
1072
+ if @api_client.config.client_side_validation && opts[:'network'] && !allowable_values.include?(opts[:'network'])
1073
+ fail ArgumentError, "invalid value for \"network\", must be one of #{allowable_values}"
1074
+ end
1075
+ if @api_client.config.client_side_validation && !opts[:'search'].nil? && opts[:'search'].to_s.length > 100
1076
+ fail ArgumentError, 'invalid value for "opts[:"search"]" when calling FreeToolsApi.get_hook_templates, the character length must be smaller than or equal to 100.'
1077
+ end
1078
+
1079
+ # resource path
1080
+ local_var_path = '/tools/hook-generator/library'
1081
+
1082
+ # query parameters
1083
+ query_params = opts[:query_params] || {}
1084
+ query_params[:'topic'] = opts[:'topic'] if !opts[:'topic'].nil?
1085
+ query_params[:'category'] = opts[:'category'] if !opts[:'category'].nil?
1086
+ query_params[:'network'] = opts[:'network'] if !opts[:'network'].nil?
1087
+ query_params[:'search'] = opts[:'search'] if !opts[:'search'].nil?
1088
+
1089
+ # header parameters
1090
+ header_params = opts[:header_params] || {}
1091
+ # HTTP header 'Accept' (if needed)
1092
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
1093
+
1094
+ # form parameters
1095
+ form_params = opts[:form_params] || {}
1096
+
1097
+ # http body (model)
1098
+ post_body = opts[:debug_body]
1099
+
1100
+ # return_type
1101
+ return_type = opts[:debug_return_type] || 'FreeToolGetHookTemplatesResponse'
1102
+
1103
+ # auth_names
1104
+ auth_names = opts[:debug_auth_names] || []
1105
+
1106
+ new_options = opts.merge(
1107
+ :operation => :"FreeToolsApi.get_hook_templates",
1108
+ :header_params => header_params,
1109
+ :query_params => query_params,
1110
+ :form_params => form_params,
1111
+ :body => post_body,
1112
+ :auth_names => auth_names,
1113
+ :return_type => return_type
1114
+ )
1115
+
1116
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1117
+ if @api_client.config.debugging
1118
+ @api_client.config.logger.debug "API called: FreeToolsApi#get_hook_templates\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1119
+ end
1120
+ return data, status_code, headers
1121
+ end
1122
+
970
1123
  # Get social media image sizes per network, each with its source
971
1124
  # Get social media image sizes per network, each with its source. The same logic as the free web tool at https://postboost.co/tools/social-media-image-sizes. No account needed: call it without a token, or with any API token.
972
1125
  # @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.38.0
6
+ The version of the OpenAPI document: 1.39.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.38.0
6
+ The version of the OpenAPI document: 1.39.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.38.0
6
+ The version of the OpenAPI document: 1.39.0
7
7
  Contact: hi@postboost.co
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.9.0