postboost 1.18.0 → 1.20.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 (594) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -1
  3. data/docs/AIApi.md +73 -1
  4. data/docs/CreatePost201Response.md +40 -0
  5. data/docs/GetRepurposeRun200Response.md +18 -0
  6. data/docs/PostWarning.md +22 -0
  7. data/docs/PostWarnings.md +18 -0
  8. data/docs/PostsApi.md +8 -8
  9. data/docs/RepurposeContent202Response.md +18 -0
  10. data/docs/RepurposeContent500Response.md +20 -0
  11. data/docs/RepurposeInput.md +3 -1
  12. data/docs/RepurposeRun.md +28 -0
  13. data/docs/RepurposeRunAccepted.md +22 -0
  14. data/docs/UpdatePost200Response.md +20 -0
  15. data/lib/postboost/api/account_groups_api.rb +1 -1
  16. data/lib/postboost/api/accounts_api.rb +1 -1
  17. data/lib/postboost/api/activity_api.rb +1 -1
  18. data/lib/postboost/api/agents_api.rb +1 -1
  19. data/lib/postboost/api/ai_api.rb +72 -3
  20. data/lib/postboost/api/analytics_api.rb +1 -1
  21. data/lib/postboost/api/competitors_api.rb +1 -1
  22. data/lib/postboost/api/hashtag_groups_api.rb +1 -1
  23. data/lib/postboost/api/inbox_api.rb +1 -1
  24. data/lib/postboost/api/media_api.rb +1 -1
  25. data/lib/postboost/api/mentions_api.rb +1 -1
  26. data/lib/postboost/api/posting_schedule_api.rb +1 -1
  27. data/lib/postboost/api/posts_api.rb +7 -7
  28. data/lib/postboost/api/receipts_api.rb +1 -1
  29. data/lib/postboost/api/subscriptions_api.rb +1 -1
  30. data/lib/postboost/api/tags_api.rb +1 -1
  31. data/lib/postboost/api/templates_api.rb +1 -1
  32. data/lib/postboost/api/users_api.rb +1 -1
  33. data/lib/postboost/api/webhooks_api.rb +1 -1
  34. data/lib/postboost/api/workspaces_api.rb +1 -1
  35. data/lib/postboost/api_client.rb +1 -1
  36. data/lib/postboost/api_error.rb +1 -1
  37. data/lib/postboost/configuration.rb +1 -1
  38. data/lib/postboost/models/account.rb +1 -1
  39. data/lib/postboost/models/account_analytics.rb +1 -1
  40. data/lib/postboost/models/account_analytics_initial_sync.rb +1 -1
  41. data/lib/postboost/models/account_connection_health.rb +1 -1
  42. data/lib/postboost/models/account_errors_inner.rb +1 -1
  43. data/lib/postboost/models/account_errors_inner_one_of.rb +1 -1
  44. data/lib/postboost/models/account_group.rb +1 -1
  45. data/lib/postboost/models/account_group_input.rb +1 -1
  46. data/lib/postboost/models/account_health.rb +1 -1
  47. data/lib/postboost/models/account_health_daily_cap.rb +1 -1
  48. data/lib/postboost/models/account_schedule.rb +1 -1
  49. data/lib/postboost/models/add_competitor202_response.rb +1 -1
  50. data/lib/postboost/models/add_competitor409_response.rb +1 -1
  51. data/lib/postboost/models/add_generic_subscription_request.rb +1 -1
  52. data/lib/postboost/models/add_post_to_queue_request.rb +1 -1
  53. data/lib/postboost/models/agent_page_meta.rb +1 -1
  54. data/lib/postboost/models/agent_proposal.rb +1 -1
  55. data/lib/postboost/models/agent_proposal_decision.rb +1 -1
  56. data/lib/postboost/models/agent_run.rb +1 -1
  57. data/lib/postboost/models/ai_credits.rb +1 -1
  58. data/lib/postboost/models/ai_usage.rb +1 -1
  59. data/lib/postboost/models/ai_usage_text.rb +1 -1
  60. data/lib/postboost/models/analytics_period.rb +1 -1
  61. data/lib/postboost/models/analytics_summary.rb +1 -1
  62. data/lib/postboost/models/analytics_summary_data.rb +1 -1
  63. data/lib/postboost/models/api_activity.rb +1 -1
  64. data/lib/postboost/models/api_activity_outcome.rb +1 -1
  65. data/lib/postboost/models/api_key.rb +1 -1
  66. data/lib/postboost/models/api_key_ability.rb +1 -1
  67. data/lib/postboost/models/api_key_input.rb +1 -1
  68. data/lib/postboost/models/approve_agent_proposal200_response.rb +1 -1
  69. data/lib/postboost/models/approve_agent_proposal409_response.rb +1 -1
  70. data/lib/postboost/models/approve_inbox_reply_draft403_response.rb +1 -1
  71. data/lib/postboost/models/approve_post_request.rb +1 -1
  72. data/lib/postboost/models/best_posting_times.rb +1 -1
  73. data/lib/postboost/models/best_posting_times_times_inner.rb +1 -1
  74. data/lib/postboost/models/blog_to_social200_response.rb +1 -1
  75. data/lib/postboost/models/blog_to_social429_response.rb +1 -1
  76. data/lib/postboost/models/blog_to_social_caption.rb +1 -1
  77. data/lib/postboost/models/blog_to_social_input.rb +1 -1
  78. data/lib/postboost/models/blog_to_social_media.rb +1 -1
  79. data/lib/postboost/models/blog_to_social_response.rb +1 -1
  80. data/lib/postboost/models/brand_voice.rb +1 -1
  81. data/lib/postboost/models/brand_voice_input.rb +1 -1
  82. data/lib/postboost/models/brand_voice_meta.rb +1 -1
  83. data/lib/postboost/models/cancel_subscription422_response.rb +1 -1
  84. data/lib/postboost/models/cancel_subscription422_response_errors.rb +1 -1
  85. data/lib/postboost/models/cancel_subscription_request.rb +1 -1
  86. data/lib/postboost/models/change_subscription_plan_request.rb +1 -1
  87. data/lib/postboost/models/channel_account.rb +1 -1
  88. data/lib/postboost/models/checkout_subscription200_response.rb +1 -1
  89. data/lib/postboost/models/checkout_subscription_request.rb +1 -1
  90. data/lib/postboost/models/coded_error.rb +1 -1
  91. data/lib/postboost/models/competitor.rb +1 -1
  92. data/lib/postboost/models/competitor_detail.rb +1 -1
  93. data/lib/postboost/models/competitor_input.rb +1 -1
  94. data/lib/postboost/models/competitor_media.rb +1 -1
  95. data/lib/postboost/models/competitor_snapshot.rb +1 -1
  96. data/lib/postboost/models/complete_chunked_upload_request.rb +1 -1
  97. data/lib/postboost/models/connect_channel_input.rb +1 -1
  98. data/lib/postboost/models/create_account_group201_response.rb +1 -1
  99. data/lib/postboost/models/create_agent201_response.rb +1 -1
  100. data/lib/postboost/models/create_api_key201_response.rb +1 -1
  101. data/lib/postboost/models/create_api_key201_response_data.rb +1 -1
  102. data/lib/postboost/models/create_hashtag_group201_response.rb +1 -1
  103. data/lib/postboost/models/create_inbox_reply_draft201_response.rb +1 -1
  104. data/lib/postboost/models/create_media_folder_request.rb +1 -1
  105. data/lib/postboost/models/create_mention201_response.rb +1 -1
  106. data/lib/postboost/models/create_post201_response.rb +409 -0
  107. data/lib/postboost/models/create_recycling_rule201_response.rb +1 -1
  108. data/lib/postboost/models/create_report_export201_response.rb +1 -1
  109. data/lib/postboost/models/create_reseller_client201_response.rb +1 -1
  110. data/lib/postboost/models/create_rss_feed201_response.rb +1 -1
  111. data/lib/postboost/models/create_template201_response.rb +1 -1
  112. data/lib/postboost/models/create_webhook_subscription201_response.rb +1 -1
  113. data/lib/postboost/models/create_webhook_subscription201_response_data.rb +1 -1
  114. data/lib/postboost/models/delete_agent200_response.rb +1 -1
  115. data/lib/postboost/models/delete_media_bulk_request.rb +1 -1
  116. data/lib/postboost/models/delete_media_bulk_request_items_inner.rb +1 -1
  117. data/lib/postboost/models/delete_media_folder_request.rb +1 -1
  118. data/lib/postboost/models/delete_mode.rb +1 -1
  119. data/lib/postboost/models/delete_post_request.rb +1 -1
  120. data/lib/postboost/models/delete_posts_bulk_request.rb +1 -1
  121. data/lib/postboost/models/delete_receipts_bulk_request.rb +1 -1
  122. data/lib/postboost/models/delete_result.rb +1 -1
  123. data/lib/postboost/models/delete_user400_response.rb +1 -1
  124. data/lib/postboost/models/delete_users_bulk_request.rb +1 -1
  125. data/lib/postboost/models/delete_workspaces_bulk_request.rb +1 -1
  126. data/lib/postboost/models/get_account_health200_response.rb +1 -1
  127. data/lib/postboost/models/get_brand_voice200_response.rb +1 -1
  128. data/lib/postboost/models/get_competitor200_response.rb +1 -1
  129. data/lib/postboost/models/get_inbox_conversation200_response.rb +1 -1
  130. data/lib/postboost/models/get_posting_schedule200_response.rb +1 -1
  131. data/lib/postboost/models/get_remote_upload_status200_response.rb +1 -1
  132. data/lib/postboost/models/get_report_branding200_response.rb +1 -1
  133. data/lib/postboost/models/get_repurpose_run200_response.rb +221 -0
  134. data/lib/postboost/models/guardrail_error.rb +1 -1
  135. data/lib/postboost/models/hashtag_group.rb +1 -1
  136. data/lib/postboost/models/hashtag_group_input.rb +1 -1
  137. data/lib/postboost/models/image_alt_text200_response.rb +1 -1
  138. data/lib/postboost/models/image_alt_text_input.rb +1 -1
  139. data/lib/postboost/models/image_alt_text_response.rb +1 -1
  140. data/lib/postboost/models/image_credit_balance.rb +1 -1
  141. data/lib/postboost/models/image_edit_input.rb +1 -1
  142. data/lib/postboost/models/image_generate200_response.rb +1 -1
  143. data/lib/postboost/models/image_generate429_response.rb +1 -1
  144. data/lib/postboost/models/image_generate_input.rb +1 -1
  145. data/lib/postboost/models/image_generation_response.rb +1 -1
  146. data/lib/postboost/models/image_prompt200_response.rb +1 -1
  147. data/lib/postboost/models/image_prompt429_response.rb +1 -1
  148. data/lib/postboost/models/image_prompt_input.rb +1 -1
  149. data/lib/postboost/models/image_prompt_response.rb +1 -1
  150. data/lib/postboost/models/image_variations200_response.rb +1 -1
  151. data/lib/postboost/models/image_variations_input.rb +1 -1
  152. data/lib/postboost/models/image_variations_response.rb +1 -1
  153. data/lib/postboost/models/inbox_author.rb +1 -1
  154. data/lib/postboost/models/inbox_conversation.rb +1 -1
  155. data/lib/postboost/models/inbox_conversation_account.rb +1 -1
  156. data/lib/postboost/models/inbox_conversation_update.rb +1 -1
  157. data/lib/postboost/models/inbox_message.rb +1 -1
  158. data/lib/postboost/models/inbox_message_author.rb +1 -1
  159. data/lib/postboost/models/inbox_reply_draft.rb +1 -1
  160. data/lib/postboost/models/inbox_reply_draft_approve.rb +1 -1
  161. data/lib/postboost/models/inbox_reply_draft_edit.rb +1 -1
  162. data/lib/postboost/models/inbox_reply_draft_input.rb +1 -1
  163. data/lib/postboost/models/initiate_chunked_upload201_response.rb +1 -1
  164. data/lib/postboost/models/initiate_chunked_upload_request.rb +1 -1
  165. data/lib/postboost/models/initiate_remote_upload201_response.rb +1 -1
  166. data/lib/postboost/models/initiate_remote_upload201_response_one_of.rb +1 -1
  167. data/lib/postboost/models/initiate_remote_upload_request.rb +1 -1
  168. data/lib/postboost/models/learn_brand_voice_input.rb +1 -1
  169. data/lib/postboost/models/learn_brand_voice_response.rb +1 -1
  170. data/lib/postboost/models/learn_brand_voice_response_meta.rb +1 -1
  171. data/lib/postboost/models/list_account_groups200_response.rb +1 -1
  172. data/lib/postboost/models/list_accounts200_response.rb +1 -1
  173. data/lib/postboost/models/list_agent_proposals200_response.rb +1 -1
  174. data/lib/postboost/models/list_agent_runs200_response.rb +1 -1
  175. data/lib/postboost/models/list_agents200_response.rb +1 -1
  176. data/lib/postboost/models/list_api_activity200_response.rb +1 -1
  177. data/lib/postboost/models/list_api_keys200_response.rb +1 -1
  178. data/lib/postboost/models/list_competitors200_response.rb +1 -1
  179. data/lib/postboost/models/list_hashtag_groups200_response.rb +1 -1
  180. data/lib/postboost/models/list_inbox_conversations200_response.rb +1 -1
  181. data/lib/postboost/models/list_inbox_reply_drafts200_response.rb +1 -1
  182. data/lib/postboost/models/list_media200_response.rb +1 -1
  183. data/lib/postboost/models/list_media_folders200_response.rb +1 -1
  184. data/lib/postboost/models/list_mentions200_response.rb +1 -1
  185. data/lib/postboost/models/list_my_workspaces200_response.rb +1 -1
  186. data/lib/postboost/models/list_posts200_response.rb +1 -1
  187. data/lib/postboost/models/list_receipts200_response.rb +1 -1
  188. data/lib/postboost/models/list_recycling_rules200_response.rb +1 -1
  189. data/lib/postboost/models/list_recycling_runs200_response.rb +1 -1
  190. data/lib/postboost/models/list_report_exports200_response.rb +1 -1
  191. data/lib/postboost/models/list_reseller_clients200_response.rb +1 -1
  192. data/lib/postboost/models/list_rss_feeds200_response.rb +1 -1
  193. data/lib/postboost/models/list_tags200_response.rb +1 -1
  194. data/lib/postboost/models/list_templates200_response.rb +1 -1
  195. data/lib/postboost/models/list_users200_response.rb +1 -1
  196. data/lib/postboost/models/list_webhook_subscriptions200_response.rb +1 -1
  197. data/lib/postboost/models/list_workspaces200_response.rb +1 -1
  198. data/lib/postboost/models/media.rb +1 -1
  199. data/lib/postboost/models/media_base64_input.rb +1 -1
  200. data/lib/postboost/models/media_folder.rb +1 -1
  201. data/lib/postboost/models/media_folder_input.rb +1 -1
  202. data/lib/postboost/models/media_folder_ref.rb +1 -1
  203. data/lib/postboost/models/mention.rb +1 -1
  204. data/lib/postboost/models/mention_identity.rb +1 -1
  205. data/lib/postboost/models/mention_identity_input.rb +1 -1
  206. data/lib/postboost/models/mention_input.rb +1 -1
  207. data/lib/postboost/models/message_only.rb +1 -1
  208. data/lib/postboost/models/pagination_meta.rb +1 -1
  209. data/lib/postboost/models/pagination_meta_links.rb +1 -1
  210. data/lib/postboost/models/pagination_meta_meta.rb +1 -1
  211. data/lib/postboost/models/poll_rss_feed200_response.rb +1 -1
  212. data/lib/postboost/models/post.rb +1 -1
  213. data/lib/postboost/models/post_analytics.rb +1 -1
  214. data/lib/postboost/models/post_content.rb +1 -1
  215. data/lib/postboost/models/post_input.rb +1 -1
  216. data/lib/postboost/models/post_options_instagram.rb +1 -1
  217. data/lib/postboost/models/post_options_tik_tok.rb +1 -1
  218. data/lib/postboost/models/post_options_youtube.rb +1 -1
  219. data/lib/postboost/models/post_status.rb +1 -1
  220. data/lib/postboost/models/post_version.rb +1 -1
  221. data/lib/postboost/models/post_version_options.rb +1 -1
  222. data/lib/postboost/models/post_warning.rb +285 -0
  223. data/lib/postboost/models/post_warnings.rb +217 -0
  224. data/lib/postboost/models/posting_schedule.rb +1 -1
  225. data/lib/postboost/models/posting_schedule_day.rb +1 -1
  226. data/lib/postboost/models/posting_schedule_day_times_inner.rb +1 -1
  227. data/lib/postboost/models/posting_schedule_input.rb +1 -1
  228. data/lib/postboost/models/posting_time_slot.rb +1 -1
  229. data/lib/postboost/models/posting_times.rb +1 -1
  230. data/lib/postboost/models/posting_times_best_inner.rb +1 -1
  231. data/lib/postboost/models/posting_times_day_intervals_inner_inner.rb +1 -1
  232. data/lib/postboost/models/posting_times_days_inner.rb +1 -1
  233. data/lib/postboost/models/preflight_result.rb +1 -1
  234. data/lib/postboost/models/public_workspace.rb +1 -1
  235. data/lib/postboost/models/public_workspace_pivot.rb +1 -1
  236. data/lib/postboost/models/publish_progress.rb +1 -1
  237. data/lib/postboost/models/queue_slots.rb +1 -1
  238. data/lib/postboost/models/receipt.rb +1 -1
  239. data/lib/postboost/models/receipt_input.rb +1 -1
  240. data/lib/postboost/models/receipt_update_input.rb +1 -1
  241. data/lib/postboost/models/recommended_posting_times.rb +1 -1
  242. data/lib/postboost/models/reconnect_link.rb +1 -1
  243. data/lib/postboost/models/recycling_rule.rb +1 -1
  244. data/lib/postboost/models/recycling_rule_input.rb +1 -1
  245. data/lib/postboost/models/recycling_rule_settings.rb +1 -1
  246. data/lib/postboost/models/recycling_rule_update.rb +1 -1
  247. data/lib/postboost/models/recycling_run.rb +1 -1
  248. data/lib/postboost/models/remove_generic_subscription422_response.rb +1 -1
  249. data/lib/postboost/models/remove_user_from_workspace_request.rb +1 -1
  250. data/lib/postboost/models/report_branding.rb +1 -1
  251. data/lib/postboost/models/report_branding_input.rb +1 -1
  252. data/lib/postboost/models/report_export.rb +1 -1
  253. data/lib/postboost/models/report_export_input.rb +1 -1
  254. data/lib/postboost/models/repurpose_content200_response.rb +1 -1
  255. data/lib/postboost/models/repurpose_content202_response.rb +221 -0
  256. data/lib/postboost/models/repurpose_content500_response.rb +237 -0
  257. data/lib/postboost/models/repurpose_input.rb +17 -5
  258. data/lib/postboost/models/repurpose_input_theme.rb +1 -1
  259. data/lib/postboost/models/repurpose_result.rb +1 -1
  260. data/lib/postboost/models/repurpose_result_media.rb +1 -1
  261. data/lib/postboost/models/repurpose_result_source.rb +1 -1
  262. data/lib/postboost/models/repurpose_run.rb +325 -0
  263. data/lib/postboost/models/repurpose_run_accepted.rb +288 -0
  264. data/lib/postboost/models/repurpose_slide.rb +1 -1
  265. data/lib/postboost/models/reseller_client.rb +1 -1
  266. data/lib/postboost/models/reseller_client_input.rb +1 -1
  267. data/lib/postboost/models/reseller_client_usage.rb +1 -1
  268. data/lib/postboost/models/retry_post_account_result.rb +1 -1
  269. data/lib/postboost/models/rss_feed.rb +1 -1
  270. data/lib/postboost/models/rss_feed_input.rb +1 -1
  271. data/lib/postboost/models/rss_feed_update.rb +1 -1
  272. data/lib/postboost/models/run_agent202_response.rb +1 -1
  273. data/lib/postboost/models/schedule_post_request.rb +1 -1
  274. data/lib/postboost/models/schedule_result.rb +1 -1
  275. data/lib/postboost/models/subscription.rb +1 -1
  276. data/lib/postboost/models/subscription_input.rb +1 -1
  277. data/lib/postboost/models/subscription_status.rb +1 -1
  278. data/lib/postboost/models/subscription_update_input.rb +1 -1
  279. data/lib/postboost/models/tag.rb +1 -1
  280. data/lib/postboost/models/tag_input.rb +1 -1
  281. data/lib/postboost/models/template.rb +1 -1
  282. data/lib/postboost/models/template_content_item.rb +1 -1
  283. data/lib/postboost/models/template_input.rb +1 -1
  284. data/lib/postboost/models/template_input_content_inner.rb +1 -1
  285. data/lib/postboost/models/update_media_request.rb +1 -1
  286. data/lib/postboost/models/update_post200_response.rb +233 -0
  287. data/lib/postboost/models/upload_chunk201_response.rb +1 -1
  288. data/lib/postboost/models/user.rb +1 -1
  289. data/lib/postboost/models/user_input.rb +1 -1
  290. data/lib/postboost/models/user_update_input.rb +1 -1
  291. data/lib/postboost/models/webhook_event_name.rb +1 -1
  292. data/lib/postboost/models/webhook_event_payload.rb +1 -1
  293. data/lib/postboost/models/webhook_subscription.rb +1 -1
  294. data/lib/postboost/models/webhook_subscription_input.rb +1 -1
  295. data/lib/postboost/models/workspace.rb +1 -1
  296. data/lib/postboost/models/workspace_agent.rb +1 -1
  297. data/lib/postboost/models/workspace_agent_input.rb +1 -1
  298. data/lib/postboost/models/workspace_agent_settings.rb +1 -1
  299. data/lib/postboost/models/workspace_agent_update.rb +1 -1
  300. data/lib/postboost/models/workspace_input.rb +1 -1
  301. data/lib/postboost/models/workspace_user_input.rb +1 -1
  302. data/lib/postboost/models/x_usage.rb +1 -1
  303. data/lib/postboost/models/x_usage_counter.rb +1 -1
  304. data/lib/postboost/version.rb +2 -2
  305. data/lib/postboost.rb +10 -1
  306. data/postboost.gemspec +1 -1
  307. data/spec/api/account_groups_api_spec.rb +1 -1
  308. data/spec/api/accounts_api_spec.rb +1 -1
  309. data/spec/api/activity_api_spec.rb +1 -1
  310. data/spec/api/agents_api_spec.rb +1 -1
  311. data/spec/api/ai_api_spec.rb +15 -2
  312. data/spec/api/analytics_api_spec.rb +1 -1
  313. data/spec/api/competitors_api_spec.rb +1 -1
  314. data/spec/api/hashtag_groups_api_spec.rb +1 -1
  315. data/spec/api/inbox_api_spec.rb +1 -1
  316. data/spec/api/media_api_spec.rb +1 -1
  317. data/spec/api/mentions_api_spec.rb +1 -1
  318. data/spec/api/posting_schedule_api_spec.rb +1 -1
  319. data/spec/api/posts_api_spec.rb +3 -3
  320. data/spec/api/receipts_api_spec.rb +1 -1
  321. data/spec/api/subscriptions_api_spec.rb +1 -1
  322. data/spec/api/tags_api_spec.rb +1 -1
  323. data/spec/api/templates_api_spec.rb +1 -1
  324. data/spec/api/users_api_spec.rb +1 -1
  325. data/spec/api/webhooks_api_spec.rb +1 -1
  326. data/spec/api/workspaces_api_spec.rb +1 -1
  327. data/spec/models/account_analytics_initial_sync_spec.rb +1 -1
  328. data/spec/models/account_analytics_spec.rb +1 -1
  329. data/spec/models/account_connection_health_spec.rb +1 -1
  330. data/spec/models/account_errors_inner_one_of_spec.rb +1 -1
  331. data/spec/models/account_errors_inner_spec.rb +1 -1
  332. data/spec/models/account_group_input_spec.rb +1 -1
  333. data/spec/models/account_group_spec.rb +1 -1
  334. data/spec/models/account_health_daily_cap_spec.rb +1 -1
  335. data/spec/models/account_health_spec.rb +1 -1
  336. data/spec/models/account_schedule_spec.rb +1 -1
  337. data/spec/models/account_spec.rb +1 -1
  338. data/spec/models/add_competitor202_response_spec.rb +1 -1
  339. data/spec/models/add_competitor409_response_spec.rb +1 -1
  340. data/spec/models/add_generic_subscription_request_spec.rb +1 -1
  341. data/spec/models/add_post_to_queue_request_spec.rb +1 -1
  342. data/spec/models/agent_page_meta_spec.rb +1 -1
  343. data/spec/models/agent_proposal_decision_spec.rb +1 -1
  344. data/spec/models/agent_proposal_spec.rb +1 -1
  345. data/spec/models/agent_run_spec.rb +1 -1
  346. data/spec/models/ai_credits_spec.rb +1 -1
  347. data/spec/models/ai_usage_spec.rb +1 -1
  348. data/spec/models/ai_usage_text_spec.rb +1 -1
  349. data/spec/models/analytics_period_spec.rb +1 -1
  350. data/spec/models/analytics_summary_data_spec.rb +1 -1
  351. data/spec/models/analytics_summary_spec.rb +1 -1
  352. data/spec/models/api_activity_outcome_spec.rb +1 -1
  353. data/spec/models/api_activity_spec.rb +1 -1
  354. data/spec/models/api_key_ability_spec.rb +1 -1
  355. data/spec/models/api_key_input_spec.rb +1 -1
  356. data/spec/models/api_key_spec.rb +1 -1
  357. data/spec/models/approve_agent_proposal200_response_spec.rb +1 -1
  358. data/spec/models/approve_agent_proposal409_response_spec.rb +1 -1
  359. data/spec/models/approve_inbox_reply_draft403_response_spec.rb +1 -1
  360. data/spec/models/approve_post_request_spec.rb +1 -1
  361. data/spec/models/best_posting_times_spec.rb +1 -1
  362. data/spec/models/best_posting_times_times_inner_spec.rb +1 -1
  363. data/spec/models/blog_to_social200_response_spec.rb +1 -1
  364. data/spec/models/blog_to_social429_response_spec.rb +1 -1
  365. data/spec/models/blog_to_social_caption_spec.rb +1 -1
  366. data/spec/models/blog_to_social_input_spec.rb +1 -1
  367. data/spec/models/blog_to_social_media_spec.rb +1 -1
  368. data/spec/models/blog_to_social_response_spec.rb +1 -1
  369. data/spec/models/brand_voice_input_spec.rb +1 -1
  370. data/spec/models/brand_voice_meta_spec.rb +1 -1
  371. data/spec/models/brand_voice_spec.rb +1 -1
  372. data/spec/models/cancel_subscription422_response_errors_spec.rb +1 -1
  373. data/spec/models/cancel_subscription422_response_spec.rb +1 -1
  374. data/spec/models/cancel_subscription_request_spec.rb +1 -1
  375. data/spec/models/change_subscription_plan_request_spec.rb +1 -1
  376. data/spec/models/channel_account_spec.rb +1 -1
  377. data/spec/models/checkout_subscription200_response_spec.rb +1 -1
  378. data/spec/models/checkout_subscription_request_spec.rb +1 -1
  379. data/spec/models/coded_error_spec.rb +1 -1
  380. data/spec/models/competitor_detail_spec.rb +1 -1
  381. data/spec/models/competitor_input_spec.rb +1 -1
  382. data/spec/models/competitor_media_spec.rb +1 -1
  383. data/spec/models/competitor_snapshot_spec.rb +1 -1
  384. data/spec/models/competitor_spec.rb +1 -1
  385. data/spec/models/complete_chunked_upload_request_spec.rb +1 -1
  386. data/spec/models/connect_channel_input_spec.rb +1 -1
  387. data/spec/models/create_account_group201_response_spec.rb +1 -1
  388. data/spec/models/create_agent201_response_spec.rb +1 -1
  389. data/spec/models/create_api_key201_response_data_spec.rb +1 -1
  390. data/spec/models/create_api_key201_response_spec.rb +1 -1
  391. data/spec/models/create_hashtag_group201_response_spec.rb +1 -1
  392. data/spec/models/create_inbox_reply_draft201_response_spec.rb +1 -1
  393. data/spec/models/create_media_folder_request_spec.rb +1 -1
  394. data/spec/models/create_mention201_response_spec.rb +1 -1
  395. data/spec/models/create_post201_response_spec.rb +102 -0
  396. data/spec/models/create_recycling_rule201_response_spec.rb +1 -1
  397. data/spec/models/create_report_export201_response_spec.rb +1 -1
  398. data/spec/models/create_reseller_client201_response_spec.rb +1 -1
  399. data/spec/models/create_rss_feed201_response_spec.rb +1 -1
  400. data/spec/models/create_template201_response_spec.rb +1 -1
  401. data/spec/models/create_webhook_subscription201_response_data_spec.rb +1 -1
  402. data/spec/models/create_webhook_subscription201_response_spec.rb +1 -1
  403. data/spec/models/delete_agent200_response_spec.rb +1 -1
  404. data/spec/models/delete_media_bulk_request_items_inner_spec.rb +1 -1
  405. data/spec/models/delete_media_bulk_request_spec.rb +1 -1
  406. data/spec/models/delete_media_folder_request_spec.rb +1 -1
  407. data/spec/models/delete_mode_spec.rb +1 -1
  408. data/spec/models/delete_post_request_spec.rb +1 -1
  409. data/spec/models/delete_posts_bulk_request_spec.rb +1 -1
  410. data/spec/models/delete_receipts_bulk_request_spec.rb +1 -1
  411. data/spec/models/delete_result_spec.rb +1 -1
  412. data/spec/models/delete_user400_response_spec.rb +1 -1
  413. data/spec/models/delete_users_bulk_request_spec.rb +1 -1
  414. data/spec/models/delete_workspaces_bulk_request_spec.rb +1 -1
  415. data/spec/models/get_account_health200_response_spec.rb +1 -1
  416. data/spec/models/get_brand_voice200_response_spec.rb +1 -1
  417. data/spec/models/get_competitor200_response_spec.rb +1 -1
  418. data/spec/models/get_inbox_conversation200_response_spec.rb +1 -1
  419. data/spec/models/get_posting_schedule200_response_spec.rb +1 -1
  420. data/spec/models/get_remote_upload_status200_response_spec.rb +1 -1
  421. data/spec/models/get_report_branding200_response_spec.rb +1 -1
  422. data/spec/models/get_repurpose_run200_response_spec.rb +36 -0
  423. data/spec/models/guardrail_error_spec.rb +1 -1
  424. data/spec/models/hashtag_group_input_spec.rb +1 -1
  425. data/spec/models/hashtag_group_spec.rb +1 -1
  426. data/spec/models/image_alt_text200_response_spec.rb +1 -1
  427. data/spec/models/image_alt_text_input_spec.rb +1 -1
  428. data/spec/models/image_alt_text_response_spec.rb +1 -1
  429. data/spec/models/image_credit_balance_spec.rb +1 -1
  430. data/spec/models/image_edit_input_spec.rb +1 -1
  431. data/spec/models/image_generate200_response_spec.rb +1 -1
  432. data/spec/models/image_generate429_response_spec.rb +1 -1
  433. data/spec/models/image_generate_input_spec.rb +1 -1
  434. data/spec/models/image_generation_response_spec.rb +1 -1
  435. data/spec/models/image_prompt200_response_spec.rb +1 -1
  436. data/spec/models/image_prompt429_response_spec.rb +1 -1
  437. data/spec/models/image_prompt_input_spec.rb +1 -1
  438. data/spec/models/image_prompt_response_spec.rb +1 -1
  439. data/spec/models/image_variations200_response_spec.rb +1 -1
  440. data/spec/models/image_variations_input_spec.rb +1 -1
  441. data/spec/models/image_variations_response_spec.rb +1 -1
  442. data/spec/models/inbox_author_spec.rb +1 -1
  443. data/spec/models/inbox_conversation_account_spec.rb +1 -1
  444. data/spec/models/inbox_conversation_spec.rb +1 -1
  445. data/spec/models/inbox_conversation_update_spec.rb +1 -1
  446. data/spec/models/inbox_message_author_spec.rb +1 -1
  447. data/spec/models/inbox_message_spec.rb +1 -1
  448. data/spec/models/inbox_reply_draft_approve_spec.rb +1 -1
  449. data/spec/models/inbox_reply_draft_edit_spec.rb +1 -1
  450. data/spec/models/inbox_reply_draft_input_spec.rb +1 -1
  451. data/spec/models/inbox_reply_draft_spec.rb +1 -1
  452. data/spec/models/initiate_chunked_upload201_response_spec.rb +1 -1
  453. data/spec/models/initiate_chunked_upload_request_spec.rb +1 -1
  454. data/spec/models/initiate_remote_upload201_response_one_of_spec.rb +1 -1
  455. data/spec/models/initiate_remote_upload201_response_spec.rb +1 -1
  456. data/spec/models/initiate_remote_upload_request_spec.rb +1 -1
  457. data/spec/models/learn_brand_voice_input_spec.rb +1 -1
  458. data/spec/models/learn_brand_voice_response_meta_spec.rb +1 -1
  459. data/spec/models/learn_brand_voice_response_spec.rb +1 -1
  460. data/spec/models/list_account_groups200_response_spec.rb +1 -1
  461. data/spec/models/list_accounts200_response_spec.rb +1 -1
  462. data/spec/models/list_agent_proposals200_response_spec.rb +1 -1
  463. data/spec/models/list_agent_runs200_response_spec.rb +1 -1
  464. data/spec/models/list_agents200_response_spec.rb +1 -1
  465. data/spec/models/list_api_activity200_response_spec.rb +1 -1
  466. data/spec/models/list_api_keys200_response_spec.rb +1 -1
  467. data/spec/models/list_competitors200_response_spec.rb +1 -1
  468. data/spec/models/list_hashtag_groups200_response_spec.rb +1 -1
  469. data/spec/models/list_inbox_conversations200_response_spec.rb +1 -1
  470. data/spec/models/list_inbox_reply_drafts200_response_spec.rb +1 -1
  471. data/spec/models/list_media200_response_spec.rb +1 -1
  472. data/spec/models/list_media_folders200_response_spec.rb +1 -1
  473. data/spec/models/list_mentions200_response_spec.rb +1 -1
  474. data/spec/models/list_my_workspaces200_response_spec.rb +1 -1
  475. data/spec/models/list_posts200_response_spec.rb +1 -1
  476. data/spec/models/list_receipts200_response_spec.rb +1 -1
  477. data/spec/models/list_recycling_rules200_response_spec.rb +1 -1
  478. data/spec/models/list_recycling_runs200_response_spec.rb +1 -1
  479. data/spec/models/list_report_exports200_response_spec.rb +1 -1
  480. data/spec/models/list_reseller_clients200_response_spec.rb +1 -1
  481. data/spec/models/list_rss_feeds200_response_spec.rb +1 -1
  482. data/spec/models/list_tags200_response_spec.rb +1 -1
  483. data/spec/models/list_templates200_response_spec.rb +1 -1
  484. data/spec/models/list_users200_response_spec.rb +1 -1
  485. data/spec/models/list_webhook_subscriptions200_response_spec.rb +1 -1
  486. data/spec/models/list_workspaces200_response_spec.rb +1 -1
  487. data/spec/models/media_base64_input_spec.rb +1 -1
  488. data/spec/models/media_folder_input_spec.rb +1 -1
  489. data/spec/models/media_folder_ref_spec.rb +1 -1
  490. data/spec/models/media_folder_spec.rb +1 -1
  491. data/spec/models/media_spec.rb +1 -1
  492. data/spec/models/mention_identity_input_spec.rb +1 -1
  493. data/spec/models/mention_identity_spec.rb +1 -1
  494. data/spec/models/mention_input_spec.rb +1 -1
  495. data/spec/models/mention_spec.rb +1 -1
  496. data/spec/models/message_only_spec.rb +1 -1
  497. data/spec/models/pagination_meta_links_spec.rb +1 -1
  498. data/spec/models/pagination_meta_meta_spec.rb +1 -1
  499. data/spec/models/pagination_meta_spec.rb +1 -1
  500. data/spec/models/poll_rss_feed200_response_spec.rb +1 -1
  501. data/spec/models/post_analytics_spec.rb +1 -1
  502. data/spec/models/post_content_spec.rb +1 -1
  503. data/spec/models/post_input_spec.rb +1 -1
  504. data/spec/models/post_options_instagram_spec.rb +1 -1
  505. data/spec/models/post_options_tik_tok_spec.rb +1 -1
  506. data/spec/models/post_options_youtube_spec.rb +1 -1
  507. data/spec/models/post_spec.rb +1 -1
  508. data/spec/models/post_status_spec.rb +1 -1
  509. data/spec/models/post_version_options_spec.rb +1 -1
  510. data/spec/models/post_version_spec.rb +1 -1
  511. data/spec/models/post_warning_spec.rb +52 -0
  512. data/spec/models/post_warnings_spec.rb +36 -0
  513. data/spec/models/posting_schedule_day_spec.rb +1 -1
  514. data/spec/models/posting_schedule_day_times_inner_spec.rb +1 -1
  515. data/spec/models/posting_schedule_input_spec.rb +1 -1
  516. data/spec/models/posting_schedule_spec.rb +1 -1
  517. data/spec/models/posting_time_slot_spec.rb +1 -1
  518. data/spec/models/posting_times_best_inner_spec.rb +1 -1
  519. data/spec/models/posting_times_day_intervals_inner_inner_spec.rb +1 -1
  520. data/spec/models/posting_times_days_inner_spec.rb +1 -1
  521. data/spec/models/posting_times_spec.rb +1 -1
  522. data/spec/models/preflight_result_spec.rb +1 -1
  523. data/spec/models/public_workspace_pivot_spec.rb +1 -1
  524. data/spec/models/public_workspace_spec.rb +1 -1
  525. data/spec/models/publish_progress_spec.rb +1 -1
  526. data/spec/models/queue_slots_spec.rb +1 -1
  527. data/spec/models/receipt_input_spec.rb +1 -1
  528. data/spec/models/receipt_spec.rb +1 -1
  529. data/spec/models/receipt_update_input_spec.rb +1 -1
  530. data/spec/models/recommended_posting_times_spec.rb +1 -1
  531. data/spec/models/reconnect_link_spec.rb +1 -1
  532. data/spec/models/recycling_rule_input_spec.rb +1 -1
  533. data/spec/models/recycling_rule_settings_spec.rb +1 -1
  534. data/spec/models/recycling_rule_spec.rb +1 -1
  535. data/spec/models/recycling_rule_update_spec.rb +1 -1
  536. data/spec/models/recycling_run_spec.rb +1 -1
  537. data/spec/models/remove_generic_subscription422_response_spec.rb +1 -1
  538. data/spec/models/remove_user_from_workspace_request_spec.rb +1 -1
  539. data/spec/models/report_branding_input_spec.rb +1 -1
  540. data/spec/models/report_branding_spec.rb +1 -1
  541. data/spec/models/report_export_input_spec.rb +1 -1
  542. data/spec/models/report_export_spec.rb +1 -1
  543. data/spec/models/repurpose_content200_response_spec.rb +1 -1
  544. data/spec/models/repurpose_content202_response_spec.rb +36 -0
  545. data/spec/models/repurpose_content500_response_spec.rb +42 -0
  546. data/spec/models/repurpose_input_spec.rb +7 -1
  547. data/spec/models/repurpose_input_theme_spec.rb +1 -1
  548. data/spec/models/repurpose_result_media_spec.rb +1 -1
  549. data/spec/models/repurpose_result_source_spec.rb +1 -1
  550. data/spec/models/repurpose_result_spec.rb +1 -1
  551. data/spec/models/repurpose_run_accepted_spec.rb +52 -0
  552. data/spec/models/repurpose_run_spec.rb +70 -0
  553. data/spec/models/repurpose_slide_spec.rb +1 -1
  554. data/spec/models/reseller_client_input_spec.rb +1 -1
  555. data/spec/models/reseller_client_spec.rb +1 -1
  556. data/spec/models/reseller_client_usage_spec.rb +1 -1
  557. data/spec/models/retry_post_account_result_spec.rb +1 -1
  558. data/spec/models/rss_feed_input_spec.rb +1 -1
  559. data/spec/models/rss_feed_spec.rb +1 -1
  560. data/spec/models/rss_feed_update_spec.rb +1 -1
  561. data/spec/models/run_agent202_response_spec.rb +1 -1
  562. data/spec/models/schedule_post_request_spec.rb +1 -1
  563. data/spec/models/schedule_result_spec.rb +1 -1
  564. data/spec/models/subscription_input_spec.rb +1 -1
  565. data/spec/models/subscription_spec.rb +1 -1
  566. data/spec/models/subscription_status_spec.rb +1 -1
  567. data/spec/models/subscription_update_input_spec.rb +1 -1
  568. data/spec/models/tag_input_spec.rb +1 -1
  569. data/spec/models/tag_spec.rb +1 -1
  570. data/spec/models/template_content_item_spec.rb +1 -1
  571. data/spec/models/template_input_content_inner_spec.rb +1 -1
  572. data/spec/models/template_input_spec.rb +1 -1
  573. data/spec/models/template_spec.rb +1 -1
  574. data/spec/models/update_media_request_spec.rb +1 -1
  575. data/spec/models/update_post200_response_spec.rb +42 -0
  576. data/spec/models/upload_chunk201_response_spec.rb +1 -1
  577. data/spec/models/user_input_spec.rb +1 -1
  578. data/spec/models/user_spec.rb +1 -1
  579. data/spec/models/user_update_input_spec.rb +1 -1
  580. data/spec/models/webhook_event_name_spec.rb +1 -1
  581. data/spec/models/webhook_event_payload_spec.rb +1 -1
  582. data/spec/models/webhook_subscription_input_spec.rb +1 -1
  583. data/spec/models/webhook_subscription_spec.rb +1 -1
  584. data/spec/models/workspace_agent_input_spec.rb +1 -1
  585. data/spec/models/workspace_agent_settings_spec.rb +1 -1
  586. data/spec/models/workspace_agent_spec.rb +1 -1
  587. data/spec/models/workspace_agent_update_spec.rb +1 -1
  588. data/spec/models/workspace_input_spec.rb +1 -1
  589. data/spec/models/workspace_spec.rb +1 -1
  590. data/spec/models/workspace_user_input_spec.rb +1 -1
  591. data/spec/models/x_usage_counter_spec.rb +1 -1
  592. data/spec/models/x_usage_spec.rb +1 -1
  593. data/spec/spec_helper.rb +1 -1
  594. metadata +37 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 05a2f3a6f279d72b8923e332ad55fe1a19fdd9fef86d34102359cc6af6db1bdd
4
- data.tar.gz: 7cfc69003899031e040a516df1dc824bc119756ac76eeba394f5b1af0d98bbb8
3
+ metadata.gz: 208a6a8fa03237bf1289cac73580fe4a14111aa5ce852f961b533f8cec9d8bc2
4
+ data.tar.gz: 35c8bff6411dfe4f12eaf30b89d6ec2b482a6cb3471a2ae9dcb1a6eab5681cc2
5
5
  SHA512:
6
- metadata.gz: 81df7611d0b30a26566cbbb9bd07589f7b850519d80da00e06488bb3ec422f7e039d0dee39ebad6ad6a8b8be4f392d2f49d59bf8d128874f5e8146a2c2b72318
7
- data.tar.gz: aded5f63df108eaf8ed867770e62fb791e864141db19c65e9ac293eb3377d30bf6b6ba5e453d5632ece4d9ae2aa7d4386e9704bfb7e33052bcc26d51712ec5b3
6
+ metadata.gz: 94b3cc29903cb96d0649716447d49ef3fba2963f5f9724d969294de960c6619c051cd8fb599ff5723706a32994ff302306b7c5683bde7cbe4d8c3259e86aeb6a
7
+ data.tar.gz: ce9b2a03b6a82e4c89d9a9ffc4d995664eba885add58b61a9ca0bcbbbfd5d400551b405753e0f97427f68ca858d26fa0d8affc86a217679b840d53486da767f9
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.18.0 |
16
+ | **Version** | v1.20.0 |
17
17
 
18
18
  ## Quick start
19
19
 
@@ -39,6 +39,7 @@ Class | Method | HTTP request | Description
39
39
  *PostBoost::AIApi* | [**delete_brand_voice**](docs/AIApi.md#delete_brand_voice) | **DELETE** /{workspaceUuid}/brand-voice | Delete the brand voice
40
40
  *PostBoost::AIApi* | [**get_ai_usage**](docs/AIApi.md#get_ai_usage) | **GET** /{workspaceUuid}/usage/ai | AI credit usage
41
41
  *PostBoost::AIApi* | [**get_brand_voice**](docs/AIApi.md#get_brand_voice) | **GET** /{workspaceUuid}/brand-voice | Get the brand voice
42
+ *PostBoost::AIApi* | [**get_repurpose_run**](docs/AIApi.md#get_repurpose_run) | **GET** /{workspaceUuid}/ai/repurpose/runs/{runId} | Get a repurpose run
42
43
  *PostBoost::AIApi* | [**image_alt_text**](docs/AIApi.md#image_alt_text) | **POST** /{workspaceUuid}/ai/image-alt-text | Generate alt text for a media image using AI
43
44
  *PostBoost::AIApi* | [**image_edit**](docs/AIApi.md#image_edit) | **POST** /{workspaceUuid}/ai/image-edit | Edit an existing media image using AI
44
45
  *PostBoost::AIApi* | [**image_generate**](docs/AIApi.md#image_generate) | **POST** /{workspaceUuid}/ai/image-generate | Generate social media images from a caption
data/docs/AIApi.md CHANGED
@@ -8,6 +8,7 @@ All URIs are relative to *https://postboost.co/app/api*
8
8
  | [**delete_brand_voice**](AIApi.md#delete_brand_voice) | **DELETE** /{workspaceUuid}/brand-voice | Delete the brand voice |
9
9
  | [**get_ai_usage**](AIApi.md#get_ai_usage) | **GET** /{workspaceUuid}/usage/ai | AI credit usage |
10
10
  | [**get_brand_voice**](AIApi.md#get_brand_voice) | **GET** /{workspaceUuid}/brand-voice | Get the brand voice |
11
+ | [**get_repurpose_run**](AIApi.md#get_repurpose_run) | **GET** /{workspaceUuid}/ai/repurpose/runs/{runId} | Get a repurpose run |
11
12
  | [**image_alt_text**](AIApi.md#image_alt_text) | **POST** /{workspaceUuid}/ai/image-alt-text | Generate alt text for a media image using AI |
12
13
  | [**image_edit**](AIApi.md#image_edit) | **POST** /{workspaceUuid}/ai/image-edit | Edit an existing media image using AI |
13
14
  | [**image_generate**](AIApi.md#image_generate) | **POST** /{workspaceUuid}/ai/image-generate | Generate social media images from a caption |
@@ -296,6 +297,77 @@ end
296
297
  - **Accept**: application/json
297
298
 
298
299
 
300
+ ## get_repurpose_run
301
+
302
+ > <GetRepurposeRun200Response> get_repurpose_run(workspace_uuid, run_id)
303
+
304
+ Get a repurpose run
305
+
306
+ Status of a run started by `repurposeContent`. `queued` and `running` mean it is still going; poll again in a few seconds. A run that has not finished after 10 minutes reports `failed`. `result` holds the same `data` body a `200` from `repurposeContent` returns, for one hour after the run ended with `ok` or `partial`; after that it is `null` (the draft post stays). Limited to 60 calls per minute.
307
+
308
+ ### Examples
309
+
310
+ ```ruby
311
+ require 'time'
312
+ require 'postboost'
313
+ # setup authorization
314
+ PostBoost.configure do |config|
315
+ # Configure Bearer authorization: bearerAuth
316
+ config.access_token = 'YOUR_BEARER_TOKEN'
317
+ end
318
+
319
+ api_instance = PostBoost::AIApi.new
320
+ workspace_uuid = '38400000-8cf0-11bd-b23e-10b96e4ef00d' # String | UUID of the workspace.
321
+ run_id = 56 # Integer | The `run_id` from `repurposeContent`.
322
+
323
+ begin
324
+ # Get a repurpose run
325
+ result = api_instance.get_repurpose_run(workspace_uuid, run_id)
326
+ p result
327
+ rescue PostBoost::ApiError => e
328
+ puts "Error when calling AIApi->get_repurpose_run: #{e}"
329
+ end
330
+ ```
331
+
332
+ #### Using the get_repurpose_run_with_http_info variant
333
+
334
+ This returns an Array which contains the response data, status code and headers.
335
+
336
+ > <Array(<GetRepurposeRun200Response>, Integer, Hash)> get_repurpose_run_with_http_info(workspace_uuid, run_id)
337
+
338
+ ```ruby
339
+ begin
340
+ # Get a repurpose run
341
+ data, status_code, headers = api_instance.get_repurpose_run_with_http_info(workspace_uuid, run_id)
342
+ p status_code # => 2xx
343
+ p headers # => { ... }
344
+ p data # => <GetRepurposeRun200Response>
345
+ rescue PostBoost::ApiError => e
346
+ puts "Error when calling AIApi->get_repurpose_run_with_http_info: #{e}"
347
+ end
348
+ ```
349
+
350
+ ### Parameters
351
+
352
+ | Name | Type | Description | Notes |
353
+ | ---- | ---- | ----------- | ----- |
354
+ | **workspace_uuid** | **String** | UUID of the workspace. | |
355
+ | **run_id** | **Integer** | The &#x60;run_id&#x60; from &#x60;repurposeContent&#x60;. | |
356
+
357
+ ### Return type
358
+
359
+ [**GetRepurposeRun200Response**](GetRepurposeRun200Response.md)
360
+
361
+ ### Authorization
362
+
363
+ [bearerAuth](../README.md#bearerAuth)
364
+
365
+ ### HTTP request headers
366
+
367
+ - **Content-Type**: Not defined
368
+ - **Accept**: application/json
369
+
370
+
299
371
  ## image_alt_text
300
372
 
301
373
  > <ImageAltText200Response> image_alt_text(workspace_uuid, image_alt_text_input)
@@ -730,7 +802,7 @@ end
730
802
 
731
803
  Repurpose long-form content into a draft post set with a carousel
732
804
 
733
- Turns an article URL, a YouTube video, a PDF or pasted text into one **draft** post with a caption for every target account, plus a carousel of rendered slide images (hook, 1 to 6 idea slides, call to action; 1080×1350 PNG). Nothing is published or scheduled. **Sources** (`source_type`): - `url`: the article is fetched and its main text extracted. - `youtube`: title, description and chapters come from YouTube; send the transcript in `transcript` for better results (required when the description is short). - `pdf`: `pdf_url` must be a public PDF of at most 20 MB; the first 30 pages are read. - `text`: send `title` and `text`. **Carousel per network**: Instagram, Facebook, Threads up to 10 slides; LinkedIn up to 9; X and Bluesky up to 4; other networks get the cover slide; YouTube and TikTok get none (listed in `warnings`). Without a carousel, the source image (article image or video thumbnail) is attached when available. **AI credits**: one per target account plus one for the carousel outline. Slides are drawn without AI and cost nothing. The workspace brand voice applies unless `use_brand_voice` is `false`. Send an `Idempotency-Key` so a retried call does not create a second draft. Limited to 10 calls per minute.
805
+ Turns an article URL, a YouTube video, a PDF or pasted text into one **draft** post with a caption for every target account, plus a carousel of rendered slide images (hook, 1 to 6 idea slides, call to action; 1080×1350 PNG). Nothing is published or scheduled. **Sources** (`source_type`): - `url`: the article is fetched and its main text extracted. - `youtube`: title, description and chapters come from YouTube; send the transcript in `transcript` for better results (required when the description is short). - `pdf`: `pdf_url` must be a public PDF of at most 20 MB; the first 30 pages are read. - `text`: send `title` and `text`. **Carousel per network**: Instagram, Facebook, Threads up to 10 slides; LinkedIn up to 9; X and Bluesky up to 4; other networks get the cover slide; YouTube and TikTok get none (listed in `warnings`). Without a carousel, the source image (article image or video thumbnail) is attached when available. **AI credits**: one per target account plus one for the carousel outline. Slides are drawn without AI and cost nothing. The workspace brand voice applies unless `use_brand_voice` is `false`. Send an `Idempotency-Key` so a retried call does not create a second draft. Limited to 10 calls per minute. **Long runs**: the run is queued. The call waits up to 20 seconds and answers `200` with the result when the run finished by then. Otherwise it answers `202` with a `run_id`; poll `getRepurposeRun` (`status_url`) every few seconds until the status is `ok`, `partial` or `failed`. Send `async: true` to get the `202` right away. Validation, account and credit errors are answered before anything is queued.
734
806
 
735
807
  ### Examples
736
808
 
@@ -0,0 +1,40 @@
1
+ # PostBoost::CreatePost201Response
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **Integer** | | |
8
+ | **uuid** | **String** | | |
9
+ | **status** | [**PostStatus**](PostStatus.md) | | |
10
+ | **publish_progress** | [**PublishProgress**](PublishProgress.md) | Only present while the post is publishing. | [optional] |
11
+ | **accounts** | [**Array&lt;Account&gt;**](Account.md) | | |
12
+ | **versions** | [**Array&lt;PostVersion&gt;**](PostVersion.md) | | |
13
+ | **tags** | [**Array&lt;Tag&gt;**](Tag.md) | | |
14
+ | **scheduled_at** | **Time** | | [optional] |
15
+ | **published_at** | **Time** | | [optional] |
16
+ | **created_at** | **Time** | | |
17
+ | **trashed** | **Boolean** | | |
18
+ | **warnings** | [**Array&lt;PostWarning&gt;**](PostWarning.md) | Present only when there is at least one warning. | [optional] |
19
+
20
+ ## Example
21
+
22
+ ```ruby
23
+ require 'postboost'
24
+
25
+ instance = PostBoost::CreatePost201Response.new(
26
+ id: null,
27
+ uuid: null,
28
+ status: null,
29
+ publish_progress: null,
30
+ accounts: null,
31
+ versions: null,
32
+ tags: null,
33
+ scheduled_at: null,
34
+ published_at: null,
35
+ created_at: null,
36
+ trashed: null,
37
+ warnings: null
38
+ )
39
+ ```
40
+
@@ -0,0 +1,18 @@
1
+ # PostBoost::GetRepurposeRun200Response
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **data** | [**RepurposeRun**](RepurposeRun.md) | | |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'postboost'
13
+
14
+ instance = PostBoost::GetRepurposeRun200Response.new(
15
+ data: null
16
+ )
17
+ ```
18
+
@@ -0,0 +1,22 @@
1
+ # PostBoost::PostWarning
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **code** | **String** | | |
8
+ | **account_id** | **Integer** | The account the warning is about; null when it is about the whole post. | |
9
+ | **message** | **String** | | |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'postboost'
15
+
16
+ instance = PostBoost::PostWarning.new(
17
+ code: null,
18
+ account_id: null,
19
+ message: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,18 @@
1
+ # PostBoost::PostWarnings
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **warnings** | [**Array&lt;PostWarning&gt;**](PostWarning.md) | Present only when there is at least one warning. | [optional] |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'postboost'
13
+
14
+ instance = PostBoost::PostWarnings.new(
15
+ warnings: null
16
+ )
17
+ ```
18
+
data/docs/PostsApi.md CHANGED
@@ -187,7 +187,7 @@ end
187
187
 
188
188
  ## create_post
189
189
 
190
- > <Post> create_post(workspace_uuid, post_input, opts)
190
+ > <CreatePost201Response> create_post(workspace_uuid, post_input, opts)
191
191
 
192
192
  Create post
193
193
 
@@ -224,7 +224,7 @@ end
224
224
 
225
225
  This returns an Array which contains the response data, status code and headers.
226
226
 
227
- > <Array(<Post>, Integer, Hash)> create_post_with_http_info(workspace_uuid, post_input, opts)
227
+ > <Array(<CreatePost201Response>, Integer, Hash)> create_post_with_http_info(workspace_uuid, post_input, opts)
228
228
 
229
229
  ```ruby
230
230
  begin
@@ -232,7 +232,7 @@ begin
232
232
  data, status_code, headers = api_instance.create_post_with_http_info(workspace_uuid, post_input, opts)
233
233
  p status_code # => 2xx
234
234
  p headers # => { ... }
235
- p data # => <Post>
235
+ p data # => <CreatePost201Response>
236
236
  rescue PostBoost::ApiError => e
237
237
  puts "Error when calling PostsApi->create_post_with_http_info: #{e}"
238
238
  end
@@ -248,7 +248,7 @@ end
248
248
 
249
249
  ### Return type
250
250
 
251
- [**Post**](Post.md)
251
+ [**CreatePost201Response**](CreatePost201Response.md)
252
252
 
253
253
  ### Authorization
254
254
 
@@ -1552,7 +1552,7 @@ end
1552
1552
 
1553
1553
  ## update_post
1554
1554
 
1555
- > Object update_post(workspace_uuid, post_uuid, post_input)
1555
+ > <UpdatePost200Response> update_post(workspace_uuid, post_uuid, post_input)
1556
1556
 
1557
1557
  Update post
1558
1558
 
@@ -1587,7 +1587,7 @@ end
1587
1587
 
1588
1588
  This returns an Array which contains the response data, status code and headers.
1589
1589
 
1590
- > <Array(Object, Integer, Hash)> update_post_with_http_info(workspace_uuid, post_uuid, post_input)
1590
+ > <Array(<UpdatePost200Response>, Integer, Hash)> update_post_with_http_info(workspace_uuid, post_uuid, post_input)
1591
1591
 
1592
1592
  ```ruby
1593
1593
  begin
@@ -1595,7 +1595,7 @@ begin
1595
1595
  data, status_code, headers = api_instance.update_post_with_http_info(workspace_uuid, post_uuid, post_input)
1596
1596
  p status_code # => 2xx
1597
1597
  p headers # => { ... }
1598
- p data # => Object
1598
+ p data # => <UpdatePost200Response>
1599
1599
  rescue PostBoost::ApiError => e
1600
1600
  puts "Error when calling PostsApi->update_post_with_http_info: #{e}"
1601
1601
  end
@@ -1611,7 +1611,7 @@ end
1611
1611
 
1612
1612
  ### Return type
1613
1613
 
1614
- **Object**
1614
+ [**UpdatePost200Response**](UpdatePost200Response.md)
1615
1615
 
1616
1616
  ### Authorization
1617
1617
 
@@ -0,0 +1,18 @@
1
+ # PostBoost::RepurposeContent202Response
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **data** | [**RepurposeRunAccepted**](RepurposeRunAccepted.md) | | |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'postboost'
13
+
14
+ instance = PostBoost::RepurposeContent202Response.new(
15
+ data: null
16
+ )
17
+ ```
18
+
@@ -0,0 +1,20 @@
1
+ # PostBoost::RepurposeContent500Response
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **message** | **String** | | |
8
+ | **run_id** | **Integer** | | |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'postboost'
14
+
15
+ instance = PostBoost::RepurposeContent500Response.new(
16
+ message: The run failed.,
17
+ run_id: null
18
+ )
19
+ ```
20
+
@@ -23,6 +23,7 @@
23
23
  | **theme** | [**RepurposeInputTheme**](RepurposeInputTheme.md) | | [optional] |
24
24
  | **create_post** | **Boolean** | Create the draft post. &#x60;false&#x60; returns captions and slides only. | [optional][default to true] |
25
25
  | **use_brand_voice** | **Boolean** | | [optional][default to true] |
26
+ | **async** | **Boolean** | Answer &#x60;202&#x60; with a run id right away instead of waiting up to 20 seconds for the result. | [optional][default to false] |
26
27
 
27
28
  ## Example
28
29
 
@@ -48,7 +49,8 @@ instance = PostBoost::RepurposeInput.new(
48
49
  slide_count: null,
49
50
  theme: null,
50
51
  create_post: null,
51
- use_brand_voice: null
52
+ use_brand_voice: null,
53
+ async: null
52
54
  )
53
55
  ```
54
56
 
@@ -0,0 +1,28 @@
1
+ # PostBoost::RepurposeRun
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **run_id** | **Integer** | | |
8
+ | **status** | **String** | | |
9
+ | **error** | **String** | Why the run failed. | |
10
+ | **post_uuid** | **String** | The draft post, once created. | |
11
+ | **credits_used** | **Integer** | | |
12
+ | **result** | [**RepurposeResult**](RepurposeResult.md) | | |
13
+
14
+ ## Example
15
+
16
+ ```ruby
17
+ require 'postboost'
18
+
19
+ instance = PostBoost::RepurposeRun.new(
20
+ run_id: null,
21
+ status: null,
22
+ error: null,
23
+ post_uuid: null,
24
+ credits_used: null,
25
+ result: null
26
+ )
27
+ ```
28
+
@@ -0,0 +1,22 @@
1
+ # PostBoost::RepurposeRunAccepted
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **run_id** | **Integer** | | |
8
+ | **status** | **String** | | |
9
+ | **status_url** | **String** | The &#x60;getRepurposeRun&#x60; URL for this run. | |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'postboost'
15
+
16
+ instance = PostBoost::RepurposeRunAccepted.new(
17
+ run_id: null,
18
+ status: null,
19
+ status_url: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,20 @@
1
+ # PostBoost::UpdatePost200Response
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **warnings** | [**Array&lt;PostWarning&gt;**](PostWarning.md) | Present only when there is at least one warning. | [optional] |
8
+ | **success** | **Boolean** | | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'postboost'
14
+
15
+ instance = PostBoost::UpdatePost200Response.new(
16
+ warnings: null,
17
+ success: true
18
+ )
19
+ ```
20
+
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms 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.18.0
6
+ The version of the OpenAPI document: 1.20.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 across 12+ platforms 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.18.0
6
+ The version of the OpenAPI document: 1.20.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 across 12+ platforms 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.18.0
6
+ The version of the OpenAPI document: 1.20.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 across 12+ platforms 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.18.0
6
+ The version of the OpenAPI document: 1.20.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 across 12+ platforms 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.18.0
6
+ The version of the OpenAPI document: 1.20.0
7
7
  Contact: hi@postboost.co
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.9.0
@@ -282,6 +282,75 @@ module PostBoost
282
282
  return data, status_code, headers
283
283
  end
284
284
 
285
+ # Get a repurpose run
286
+ # Status of a run started by `repurposeContent`. `queued` and `running` mean it is still going; poll again in a few seconds. A run that has not finished after 10 minutes reports `failed`. `result` holds the same `data` body a `200` from `repurposeContent` returns, for one hour after the run ended with `ok` or `partial`; after that it is `null` (the draft post stays). Limited to 60 calls per minute.
287
+ # @param workspace_uuid [String] UUID of the workspace.
288
+ # @param run_id [Integer] The &#x60;run_id&#x60; from &#x60;repurposeContent&#x60;.
289
+ # @param [Hash] opts the optional parameters
290
+ # @return [GetRepurposeRun200Response]
291
+ def get_repurpose_run(workspace_uuid, run_id, opts = {})
292
+ data, _status_code, _headers = get_repurpose_run_with_http_info(workspace_uuid, run_id, opts)
293
+ data
294
+ end
295
+
296
+ # Get a repurpose run
297
+ # Status of a run started by &#x60;repurposeContent&#x60;. &#x60;queued&#x60; and &#x60;running&#x60; mean it is still going; poll again in a few seconds. A run that has not finished after 10 minutes reports &#x60;failed&#x60;. &#x60;result&#x60; holds the same &#x60;data&#x60; body a &#x60;200&#x60; from &#x60;repurposeContent&#x60; returns, for one hour after the run ended with &#x60;ok&#x60; or &#x60;partial&#x60;; after that it is &#x60;null&#x60; (the draft post stays). Limited to 60 calls per minute.
298
+ # @param workspace_uuid [String] UUID of the workspace.
299
+ # @param run_id [Integer] The &#x60;run_id&#x60; from &#x60;repurposeContent&#x60;.
300
+ # @param [Hash] opts the optional parameters
301
+ # @return [Array<(GetRepurposeRun200Response, Integer, Hash)>] GetRepurposeRun200Response data, response status code and response headers
302
+ def get_repurpose_run_with_http_info(workspace_uuid, run_id, opts = {})
303
+ if @api_client.config.debugging
304
+ @api_client.config.logger.debug 'Calling API: AIApi.get_repurpose_run ...'
305
+ end
306
+ # verify the required parameter 'workspace_uuid' is set
307
+ if @api_client.config.client_side_validation && workspace_uuid.nil?
308
+ fail ArgumentError, "Missing the required parameter 'workspace_uuid' when calling AIApi.get_repurpose_run"
309
+ end
310
+ # verify the required parameter 'run_id' is set
311
+ if @api_client.config.client_side_validation && run_id.nil?
312
+ fail ArgumentError, "Missing the required parameter 'run_id' when calling AIApi.get_repurpose_run"
313
+ end
314
+ # resource path
315
+ local_var_path = '/{workspaceUuid}/ai/repurpose/runs/{runId}'.sub('{' + 'workspaceUuid' + '}', CGI.escape(workspace_uuid.to_s)).sub('{' + 'runId' + '}', CGI.escape(run_id.to_s))
316
+
317
+ # query parameters
318
+ query_params = opts[:query_params] || {}
319
+
320
+ # header parameters
321
+ header_params = opts[:header_params] || {}
322
+ # HTTP header 'Accept' (if needed)
323
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
324
+
325
+ # form parameters
326
+ form_params = opts[:form_params] || {}
327
+
328
+ # http body (model)
329
+ post_body = opts[:debug_body]
330
+
331
+ # return_type
332
+ return_type = opts[:debug_return_type] || 'GetRepurposeRun200Response'
333
+
334
+ # auth_names
335
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
336
+
337
+ new_options = opts.merge(
338
+ :operation => :"AIApi.get_repurpose_run",
339
+ :header_params => header_params,
340
+ :query_params => query_params,
341
+ :form_params => form_params,
342
+ :body => post_body,
343
+ :auth_names => auth_names,
344
+ :return_type => return_type
345
+ )
346
+
347
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
348
+ if @api_client.config.debugging
349
+ @api_client.config.logger.debug "API called: AIApi#get_repurpose_run\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
350
+ end
351
+ return data, status_code, headers
352
+ end
353
+
285
354
  # Generate alt text for a media image using AI
286
355
  # Analyzes an existing workspace media item and generates accessible alt text. The alt text is saved back to the media record. Costs 1 AI credit per call.
287
356
  # @param workspace_uuid [String] UUID of the workspace.
@@ -723,7 +792,7 @@ module PostBoost
723
792
  end
724
793
 
725
794
  # Repurpose long-form content into a draft post set with a carousel
726
- # Turns an article URL, a YouTube video, a PDF or pasted text into one **draft** post with a caption for every target account, plus a carousel of rendered slide images (hook, 1 to 6 idea slides, call to action; 1080×1350 PNG). Nothing is published or scheduled. **Sources** (`source_type`): - `url`: the article is fetched and its main text extracted. - `youtube`: title, description and chapters come from YouTube; send the transcript in `transcript` for better results (required when the description is short). - `pdf`: `pdf_url` must be a public PDF of at most 20 MB; the first 30 pages are read. - `text`: send `title` and `text`. **Carousel per network**: Instagram, Facebook, Threads up to 10 slides; LinkedIn up to 9; X and Bluesky up to 4; other networks get the cover slide; YouTube and TikTok get none (listed in `warnings`). Without a carousel, the source image (article image or video thumbnail) is attached when available. **AI credits**: one per target account plus one for the carousel outline. Slides are drawn without AI and cost nothing. The workspace brand voice applies unless `use_brand_voice` is `false`. Send an `Idempotency-Key` so a retried call does not create a second draft. Limited to 10 calls per minute.
795
+ # Turns an article URL, a YouTube video, a PDF or pasted text into one **draft** post with a caption for every target account, plus a carousel of rendered slide images (hook, 1 to 6 idea slides, call to action; 1080×1350 PNG). Nothing is published or scheduled. **Sources** (`source_type`): - `url`: the article is fetched and its main text extracted. - `youtube`: title, description and chapters come from YouTube; send the transcript in `transcript` for better results (required when the description is short). - `pdf`: `pdf_url` must be a public PDF of at most 20 MB; the first 30 pages are read. - `text`: send `title` and `text`. **Carousel per network**: Instagram, Facebook, Threads up to 10 slides; LinkedIn up to 9; X and Bluesky up to 4; other networks get the cover slide; YouTube and TikTok get none (listed in `warnings`). Without a carousel, the source image (article image or video thumbnail) is attached when available. **AI credits**: one per target account plus one for the carousel outline. Slides are drawn without AI and cost nothing. The workspace brand voice applies unless `use_brand_voice` is `false`. Send an `Idempotency-Key` so a retried call does not create a second draft. Limited to 10 calls per minute. **Long runs**: the run is queued. The call waits up to 20 seconds and answers `200` with the result when the run finished by then. Otherwise it answers `202` with a `run_id`; poll `getRepurposeRun` (`status_url`) every few seconds until the status is `ok`, `partial` or `failed`. Send `async: true` to get the `202` right away. Validation, account and credit errors are answered before anything is queued.
727
796
  # @param workspace_uuid [String] UUID of the workspace.
728
797
  # @param repurpose_input [RepurposeInput]
729
798
  # @param [Hash] opts the optional parameters
@@ -735,7 +804,7 @@ module PostBoost
735
804
  end
736
805
 
737
806
  # Repurpose long-form content into a draft post set with a carousel
738
- # Turns an article URL, a YouTube video, a PDF or pasted text into one **draft** post with a caption for every target account, plus a carousel of rendered slide images (hook, 1 to 6 idea slides, call to action; 1080×1350 PNG). Nothing is published or scheduled. **Sources** (&#x60;source_type&#x60;): - &#x60;url&#x60;: the article is fetched and its main text extracted. - &#x60;youtube&#x60;: title, description and chapters come from YouTube; send the transcript in &#x60;transcript&#x60; for better results (required when the description is short). - &#x60;pdf&#x60;: &#x60;pdf_url&#x60; must be a public PDF of at most 20 MB; the first 30 pages are read. - &#x60;text&#x60;: send &#x60;title&#x60; and &#x60;text&#x60;. **Carousel per network**: Instagram, Facebook, Threads up to 10 slides; LinkedIn up to 9; X and Bluesky up to 4; other networks get the cover slide; YouTube and TikTok get none (listed in &#x60;warnings&#x60;). Without a carousel, the source image (article image or video thumbnail) is attached when available. **AI credits**: one per target account plus one for the carousel outline. Slides are drawn without AI and cost nothing. The workspace brand voice applies unless &#x60;use_brand_voice&#x60; is &#x60;false&#x60;. Send an &#x60;Idempotency-Key&#x60; so a retried call does not create a second draft. Limited to 10 calls per minute.
807
+ # Turns an article URL, a YouTube video, a PDF or pasted text into one **draft** post with a caption for every target account, plus a carousel of rendered slide images (hook, 1 to 6 idea slides, call to action; 1080×1350 PNG). Nothing is published or scheduled. **Sources** (&#x60;source_type&#x60;): - &#x60;url&#x60;: the article is fetched and its main text extracted. - &#x60;youtube&#x60;: title, description and chapters come from YouTube; send the transcript in &#x60;transcript&#x60; for better results (required when the description is short). - &#x60;pdf&#x60;: &#x60;pdf_url&#x60; must be a public PDF of at most 20 MB; the first 30 pages are read. - &#x60;text&#x60;: send &#x60;title&#x60; and &#x60;text&#x60;. **Carousel per network**: Instagram, Facebook, Threads up to 10 slides; LinkedIn up to 9; X and Bluesky up to 4; other networks get the cover slide; YouTube and TikTok get none (listed in &#x60;warnings&#x60;). Without a carousel, the source image (article image or video thumbnail) is attached when available. **AI credits**: one per target account plus one for the carousel outline. Slides are drawn without AI and cost nothing. The workspace brand voice applies unless &#x60;use_brand_voice&#x60; is &#x60;false&#x60;. Send an &#x60;Idempotency-Key&#x60; so a retried call does not create a second draft. Limited to 10 calls per minute. **Long runs**: the run is queued. The call waits up to 20 seconds and answers &#x60;200&#x60; with the result when the run finished by then. Otherwise it answers &#x60;202&#x60; with a &#x60;run_id&#x60;; poll &#x60;getRepurposeRun&#x60; (&#x60;status_url&#x60;) every few seconds until the status is &#x60;ok&#x60;, &#x60;partial&#x60; or &#x60;failed&#x60;. Send &#x60;async: true&#x60; to get the &#x60;202&#x60; right away. Validation, account and credit errors are answered before anything is queued.
739
808
  # @param workspace_uuid [String] UUID of the workspace.
740
809
  # @param repurpose_input [RepurposeInput]
741
810
  # @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 across 12+ platforms 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.18.0
6
+ The version of the OpenAPI document: 1.20.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 across 12+ platforms 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.18.0
6
+ The version of the OpenAPI document: 1.20.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 across 12+ platforms 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.18.0
6
+ The version of the OpenAPI document: 1.20.0
7
7
  Contact: hi@postboost.co
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.9.0