postboost 1.0.0 → 1.8.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 (364) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +119 -0
  3. data/docs/AIApi.md +439 -0
  4. data/docs/AICredits.md +22 -0
  5. data/docs/Account.md +14 -8
  6. data/docs/AccountAnalytics.md +28 -0
  7. data/docs/AccountAnalyticsInitialSync.md +20 -0
  8. data/docs/AccountSchedule.md +22 -0
  9. data/docs/AccountsApi.md +15 -5
  10. data/docs/AddPostToQueueRequest.md +18 -0
  11. data/docs/AnalyticsApi.md +401 -0
  12. data/docs/AnalyticsPeriod.md +24 -0
  13. data/docs/AnalyticsSummary.md +20 -0
  14. data/docs/AnalyticsSummaryData.md +38 -0
  15. data/docs/ApprovePostRequest.md +24 -0
  16. data/docs/BestPostingTimes.md +20 -0
  17. data/docs/BestPostingTimesTimesInner.md +24 -0
  18. data/docs/BlogToSocial200Response.md +18 -0
  19. data/docs/BlogToSocial429Response.md +18 -0
  20. data/docs/BlogToSocialCaption.md +28 -0
  21. data/docs/BlogToSocialInput.md +42 -0
  22. data/docs/BlogToSocialMedia.md +20 -0
  23. data/docs/BlogToSocialResponse.md +30 -0
  24. data/docs/CancelSubscription422Response.md +20 -0
  25. data/docs/CancelSubscription422ResponseErrors.md +18 -0
  26. data/docs/CancelSubscriptionRequest.md +18 -0
  27. data/docs/CompleteChunkedUploadRequest.md +20 -0
  28. data/docs/CreateMediaFolderRequest.md +20 -0
  29. data/docs/CreateMention201Response.md +18 -0
  30. data/docs/DeleteMediaBulkRequest.md +1 -1
  31. data/docs/DeleteMediaBulkRequestItemsInner.md +49 -0
  32. data/docs/DeleteMediaFolderRequest.md +18 -0
  33. data/docs/DeleteResult.md +3 -3
  34. data/docs/ImageAltText200Response.md +18 -0
  35. data/docs/ImageAltTextInput.md +18 -0
  36. data/docs/ImageAltTextResponse.md +24 -0
  37. data/docs/ImageEditInput.md +28 -0
  38. data/docs/ImageGenerate200Response.md +18 -0
  39. data/docs/ImageGenerate429Response.md +18 -0
  40. data/docs/ImageGenerateInput.md +36 -0
  41. data/docs/ImageGenerationResponse.md +30 -0
  42. data/docs/ImagePrompt200Response.md +18 -0
  43. data/docs/ImagePrompt429Response.md +18 -0
  44. data/docs/ImagePromptInput.md +28 -0
  45. data/docs/ImagePromptResponse.md +18 -0
  46. data/docs/ImageVariations200Response.md +18 -0
  47. data/docs/ImageVariationsInput.md +24 -0
  48. data/docs/ImageVariationsResponse.md +26 -0
  49. data/docs/{InitiateChunkedUpload200Response.md → InitiateChunkedUpload201Response.md} +2 -2
  50. data/docs/{InitiateRemoteUpload200Response.md → InitiateRemoteUpload201Response.md} +7 -7
  51. data/docs/{InitiateRemoteUpload200ResponseOneOf.md → InitiateRemoteUpload201ResponseOneOf.md} +2 -2
  52. data/docs/InitiateRemoteUploadRequest.md +3 -1
  53. data/docs/ListMediaFolders200Response.md +18 -0
  54. data/docs/ListMentions200Response.md +22 -0
  55. data/docs/ListMyWorkspaces200Response.md +18 -0
  56. data/docs/Media.md +22 -8
  57. data/docs/MediaApi.md +340 -26
  58. data/docs/MediaFolder.md +24 -0
  59. data/docs/MediaFolderInput.md +20 -0
  60. data/docs/MediaFolderRef.md +20 -0
  61. data/docs/Mention.md +28 -0
  62. data/docs/MentionIdentity.md +24 -0
  63. data/docs/MentionIdentityInput.md +26 -0
  64. data/docs/MentionInput.md +22 -0
  65. data/docs/MentionsApi.md +375 -0
  66. data/docs/Post.md +10 -8
  67. data/docs/PostAnalytics.md +22 -0
  68. data/docs/PostInput.md +3 -1
  69. data/docs/PostVersion.md +2 -0
  70. data/docs/PostingTimeSlot.md +22 -0
  71. data/docs/PostingTimes.md +32 -0
  72. data/docs/PostingTimesBestInner.md +24 -0
  73. data/docs/PostingTimesDayIntervalsInnerInner.md +28 -0
  74. data/docs/PostingTimesDaysInner.md +24 -0
  75. data/docs/PostsApi.md +174 -14
  76. data/docs/PublicWorkspace.md +24 -0
  77. data/docs/PublicWorkspacePivot.md +22 -0
  78. data/docs/PublishProgress.md +22 -0
  79. data/docs/Receipt.md +8 -8
  80. data/docs/ReceiptsApi.md +15 -1
  81. data/docs/RemoveGenericSubscription422Response.md +18 -0
  82. data/docs/RetryPostAccountResult.md +22 -0
  83. data/docs/SchedulePostRequest.md +9 -1
  84. data/docs/ScheduleResult.md +4 -2
  85. data/docs/Subscription.md +5 -5
  86. data/docs/SubscriptionsApi.md +27 -5
  87. data/docs/Tag.md +4 -4
  88. data/docs/TagsApi.md +10 -0
  89. data/docs/UpdateMediaRequest.md +6 -2
  90. data/docs/{UploadChunk200Response.md → UploadChunk201Response.md} +2 -2
  91. data/docs/User.md +7 -5
  92. data/docs/UsersApi.md +15 -1
  93. data/docs/Workspace.md +8 -6
  94. data/docs/WorkspaceInput.md +1 -1
  95. data/docs/WorkspacesApi.md +156 -3
  96. data/lib/postboost/api/accounts_api.rb +16 -4
  97. data/lib/postboost/api/ai_api.rb +466 -0
  98. data/lib/postboost/api/analytics_api.rb +425 -0
  99. data/lib/postboost/api/media_api.rb +365 -22
  100. data/lib/postboost/api/mentions_api.rb +386 -0
  101. data/lib/postboost/api/posts_api.rb +176 -12
  102. data/lib/postboost/api/receipts_api.rb +17 -2
  103. data/lib/postboost/api/subscriptions_api.rb +28 -3
  104. data/lib/postboost/api/tags_api.rb +12 -2
  105. data/lib/postboost/api/users_api.rb +17 -2
  106. data/lib/postboost/api/workspaces_api.rb +139 -2
  107. data/lib/postboost/api_client.rb +2 -2
  108. data/lib/postboost/api_error.rb +2 -2
  109. data/lib/postboost/configuration.rb +2 -2
  110. data/lib/postboost/models/account.rb +120 -3
  111. data/lib/postboost/models/account_analytics.rb +308 -0
  112. data/lib/postboost/models/account_analytics_initial_sync.rb +231 -0
  113. data/lib/postboost/models/account_schedule.rb +255 -0
  114. data/lib/postboost/models/add_generic_subscription_request.rb +2 -2
  115. data/lib/postboost/models/add_post_to_queue_request.rb +215 -0
  116. data/lib/postboost/models/ai_credits.rb +256 -0
  117. data/lib/postboost/models/analytics_period.rb +270 -0
  118. data/lib/postboost/models/analytics_summary.rb +237 -0
  119. data/lib/postboost/models/analytics_summary_data.rb +327 -0
  120. data/lib/postboost/models/approve_post_request.rb +247 -0
  121. data/lib/postboost/models/best_posting_times.rb +240 -0
  122. data/lib/postboost/models/best_posting_times_times_inner.rb +269 -0
  123. data/lib/postboost/models/blog_to_social200_response.rb +214 -0
  124. data/lib/postboost/models/blog_to_social429_response.rb +214 -0
  125. data/lib/postboost/models/blog_to_social_caption.rb +265 -0
  126. data/lib/postboost/models/blog_to_social_input.rb +536 -0
  127. data/lib/postboost/models/blog_to_social_media.rb +226 -0
  128. data/lib/postboost/models/blog_to_social_response.rb +276 -0
  129. data/lib/postboost/models/cancel_subscription422_response.rb +223 -0
  130. data/lib/postboost/models/cancel_subscription422_response_errors.rb +216 -0
  131. data/lib/postboost/models/cancel_subscription_request.rb +217 -0
  132. data/lib/postboost/models/change_subscription_plan_request.rb +2 -2
  133. data/lib/postboost/models/checkout_subscription200_response.rb +2 -2
  134. data/lib/postboost/models/checkout_subscription_request.rb +2 -2
  135. data/lib/postboost/models/complete_chunked_upload_request.rb +243 -0
  136. data/lib/postboost/models/create_media_folder_request.rb +258 -0
  137. data/lib/postboost/models/create_mention201_response.rb +214 -0
  138. data/lib/postboost/models/delete_media_bulk_request.rb +23 -4
  139. data/lib/postboost/models/{initiate_remote_upload200_response.rb → delete_media_bulk_request_items_inner.rb} +5 -5
  140. data/lib/postboost/models/delete_media_folder_request.rb +216 -0
  141. data/lib/postboost/models/delete_mode.rb +2 -2
  142. data/lib/postboost/models/delete_post_request.rb +2 -2
  143. data/lib/postboost/models/delete_posts_bulk_request.rb +2 -2
  144. data/lib/postboost/models/delete_receipts_bulk_request.rb +2 -2
  145. data/lib/postboost/models/delete_result.rb +23 -2
  146. data/lib/postboost/models/delete_user400_response.rb +2 -2
  147. data/lib/postboost/models/delete_users_bulk_request.rb +2 -2
  148. data/lib/postboost/models/delete_workspaces_bulk_request.rb +2 -2
  149. data/lib/postboost/models/get_remote_upload_status200_response.rb +2 -2
  150. data/lib/postboost/models/image_alt_text200_response.rb +221 -0
  151. data/lib/postboost/models/image_alt_text_input.rb +221 -0
  152. data/lib/postboost/models/image_alt_text_response.rb +262 -0
  153. data/lib/postboost/models/image_edit_input.rb +375 -0
  154. data/lib/postboost/models/image_generate200_response.rb +221 -0
  155. data/lib/postboost/models/image_generate429_response.rb +214 -0
  156. data/lib/postboost/models/image_generate_input.rb +447 -0
  157. data/lib/postboost/models/image_generation_response.rb +305 -0
  158. data/lib/postboost/models/image_prompt200_response.rb +221 -0
  159. data/lib/postboost/models/image_prompt429_response.rb +214 -0
  160. data/lib/postboost/models/image_prompt_input.rb +345 -0
  161. data/lib/postboost/models/image_prompt_response.rb +221 -0
  162. data/lib/postboost/models/image_variations200_response.rb +221 -0
  163. data/lib/postboost/models/image_variations_input.rb +328 -0
  164. data/lib/postboost/models/image_variations_response.rb +280 -0
  165. data/lib/postboost/models/{initiate_chunked_upload200_response.rb → initiate_chunked_upload201_response.rb} +5 -5
  166. data/lib/postboost/models/initiate_chunked_upload_request.rb +2 -2
  167. data/lib/postboost/models/initiate_remote_upload201_response.rb +105 -0
  168. data/lib/postboost/models/{initiate_remote_upload200_response_one_of.rb → initiate_remote_upload201_response_one_of.rb} +5 -5
  169. data/lib/postboost/models/initiate_remote_upload_request.rb +16 -6
  170. data/lib/postboost/models/list_accounts200_response.rb +2 -2
  171. data/lib/postboost/models/list_media200_response.rb +2 -2
  172. data/lib/postboost/models/list_media_folders200_response.rb +216 -0
  173. data/lib/postboost/models/list_mentions200_response.rb +241 -0
  174. data/lib/postboost/models/list_my_workspaces200_response.rb +216 -0
  175. data/lib/postboost/models/list_posts200_response.rb +2 -2
  176. data/lib/postboost/models/list_receipts200_response.rb +2 -2
  177. data/lib/postboost/models/list_tags200_response.rb +2 -2
  178. data/lib/postboost/models/list_users200_response.rb +2 -2
  179. data/lib/postboost/models/list_workspaces200_response.rb +2 -2
  180. data/lib/postboost/models/media.rb +128 -3
  181. data/lib/postboost/models/media_folder.rb +271 -0
  182. data/lib/postboost/models/media_folder_input.rb +244 -0
  183. data/lib/postboost/models/media_folder_ref.rb +237 -0
  184. data/lib/postboost/models/mention.rb +290 -0
  185. data/lib/postboost/models/mention_identity.rb +257 -0
  186. data/lib/postboost/models/mention_identity_input.rb +325 -0
  187. data/lib/postboost/models/mention_input.rb +279 -0
  188. data/lib/postboost/models/pagination_meta.rb +2 -2
  189. data/lib/postboost/models/pagination_meta_links.rb +2 -2
  190. data/lib/postboost/models/pagination_meta_meta.rb +2 -2
  191. data/lib/postboost/models/post.rb +69 -3
  192. data/lib/postboost/models/post_analytics.rb +252 -0
  193. data/lib/postboost/models/post_content.rb +2 -2
  194. data/lib/postboost/models/post_input.rb +16 -3
  195. data/lib/postboost/models/post_status.rb +6 -3
  196. data/lib/postboost/models/post_version.rb +32 -3
  197. data/lib/postboost/models/posting_time_slot.rb +315 -0
  198. data/lib/postboost/models/posting_times.rb +362 -0
  199. data/lib/postboost/models/posting_times_best_inner.rb +269 -0
  200. data/lib/postboost/models/posting_times_day_intervals_inner_inner.rb +370 -0
  201. data/lib/postboost/models/posting_times_days_inner.rb +366 -0
  202. data/lib/postboost/models/public_workspace.rb +262 -0
  203. data/lib/postboost/models/public_workspace_pivot.rb +267 -0
  204. data/lib/postboost/models/publish_progress.rb +254 -0
  205. data/lib/postboost/models/receipt.rb +58 -2
  206. data/lib/postboost/models/receipt_input.rb +2 -2
  207. data/lib/postboost/models/receipt_update_input.rb +2 -2
  208. data/lib/postboost/models/remove_generic_subscription422_response.rb +214 -0
  209. data/lib/postboost/models/remove_user_from_workspace_request.rb +2 -2
  210. data/lib/postboost/models/retry_post_account_result.rb +275 -0
  211. data/lib/postboost/models/schedule_post_request.rb +48 -6
  212. data/lib/postboost/models/schedule_result.rb +23 -6
  213. data/lib/postboost/models/subscription.rb +37 -2
  214. data/lib/postboost/models/subscription_input.rb +2 -2
  215. data/lib/postboost/models/subscription_status.rb +2 -2
  216. data/lib/postboost/models/subscription_update_input.rb +2 -2
  217. data/lib/postboost/models/tag.rb +30 -2
  218. data/lib/postboost/models/tag_input.rb +2 -2
  219. data/lib/postboost/models/update_media_request.rb +61 -11
  220. data/lib/postboost/models/{upload_chunk200_response.rb → upload_chunk201_response.rb} +5 -5
  221. data/lib/postboost/models/user.rb +48 -3
  222. data/lib/postboost/models/user_input.rb +2 -2
  223. data/lib/postboost/models/user_update_input.rb +2 -2
  224. data/lib/postboost/models/workspace.rb +42 -3
  225. data/lib/postboost/models/workspace_input.rb +3 -9
  226. data/lib/postboost/models/workspace_user_input.rb +2 -2
  227. data/lib/postboost/version.rb +3 -3
  228. data/lib/postboost.rb +70 -6
  229. data/postboost.gemspec +3 -3
  230. data/spec/api/accounts_api_spec.rb +7 -3
  231. data/spec/api/ai_api_spec.rb +113 -0
  232. data/spec/api/analytics_api_spec.rb +113 -0
  233. data/spec/api/media_api_spec.rb +73 -10
  234. data/spec/api/mentions_api_spec.rb +103 -0
  235. data/spec/api/posts_api_spec.rb +38 -6
  236. data/spec/api/receipts_api_spec.rb +9 -2
  237. data/spec/api/subscriptions_api_spec.rb +12 -2
  238. data/spec/api/tags_api_spec.rb +7 -2
  239. data/spec/api/users_api_spec.rb +9 -2
  240. data/spec/api/workspaces_api_spec.rb +33 -2
  241. data/spec/models/account_analytics_initial_sync_spec.rb +42 -0
  242. data/spec/models/account_analytics_spec.rb +66 -0
  243. data/spec/models/account_schedule_spec.rb +48 -0
  244. data/spec/models/account_spec.rb +24 -2
  245. data/spec/models/add_generic_subscription_request_spec.rb +2 -2
  246. data/spec/models/add_post_to_queue_request_spec.rb +36 -0
  247. data/spec/models/ai_credits_spec.rb +48 -0
  248. data/spec/models/analytics_period_spec.rb +54 -0
  249. data/spec/models/analytics_summary_data_spec.rb +96 -0
  250. data/spec/models/analytics_summary_spec.rb +42 -0
  251. data/spec/models/approve_post_request_spec.rb +54 -0
  252. data/spec/models/best_posting_times_spec.rb +42 -0
  253. data/spec/models/best_posting_times_times_inner_spec.rb +54 -0
  254. data/spec/models/blog_to_social200_response_spec.rb +36 -0
  255. data/spec/models/blog_to_social429_response_spec.rb +36 -0
  256. data/spec/models/blog_to_social_caption_spec.rb +66 -0
  257. data/spec/models/blog_to_social_input_spec.rb +128 -0
  258. data/spec/models/blog_to_social_media_spec.rb +42 -0
  259. data/spec/models/blog_to_social_response_spec.rb +72 -0
  260. data/spec/models/cancel_subscription422_response_errors_spec.rb +36 -0
  261. data/spec/models/cancel_subscription422_response_spec.rb +42 -0
  262. data/spec/models/cancel_subscription_request_spec.rb +36 -0
  263. data/spec/models/change_subscription_plan_request_spec.rb +2 -2
  264. data/spec/models/checkout_subscription200_response_spec.rb +2 -2
  265. data/spec/models/checkout_subscription_request_spec.rb +2 -2
  266. data/spec/models/complete_chunked_upload_request_spec.rb +42 -0
  267. data/spec/models/create_media_folder_request_spec.rb +42 -0
  268. data/spec/models/create_mention201_response_spec.rb +36 -0
  269. data/spec/models/delete_media_bulk_request_items_inner_spec.rb +32 -0
  270. data/spec/models/delete_media_bulk_request_spec.rb +2 -2
  271. data/spec/models/delete_media_folder_request_spec.rb +36 -0
  272. data/spec/models/delete_mode_spec.rb +2 -2
  273. data/spec/models/delete_post_request_spec.rb +2 -2
  274. data/spec/models/delete_posts_bulk_request_spec.rb +2 -2
  275. data/spec/models/delete_receipts_bulk_request_spec.rb +2 -2
  276. data/spec/models/delete_result_spec.rb +2 -2
  277. data/spec/models/delete_user400_response_spec.rb +2 -2
  278. data/spec/models/delete_users_bulk_request_spec.rb +2 -2
  279. data/spec/models/delete_workspaces_bulk_request_spec.rb +2 -2
  280. data/spec/models/get_remote_upload_status200_response_spec.rb +2 -2
  281. data/spec/models/image_alt_text200_response_spec.rb +36 -0
  282. data/spec/models/image_alt_text_input_spec.rb +36 -0
  283. data/spec/models/image_alt_text_response_spec.rb +54 -0
  284. data/spec/models/image_edit_input_spec.rb +74 -0
  285. data/spec/models/image_generate200_response_spec.rb +36 -0
  286. data/spec/models/image_generate429_response_spec.rb +36 -0
  287. data/spec/models/image_generate_input_spec.rb +102 -0
  288. data/spec/models/image_generation_response_spec.rb +72 -0
  289. data/spec/models/image_prompt200_response_spec.rb +36 -0
  290. data/spec/models/image_prompt429_response_spec.rb +36 -0
  291. data/spec/models/image_prompt_input_spec.rb +70 -0
  292. data/spec/models/image_prompt_response_spec.rb +36 -0
  293. data/spec/models/image_variations200_response_spec.rb +36 -0
  294. data/spec/models/image_variations_input_spec.rb +62 -0
  295. data/spec/models/image_variations_response_spec.rb +60 -0
  296. data/spec/models/initiate_chunked_upload201_response_spec.rb +48 -0
  297. data/spec/models/initiate_chunked_upload_request_spec.rb +2 -2
  298. data/spec/models/initiate_remote_upload201_response_one_of_spec.rb +36 -0
  299. data/spec/models/initiate_remote_upload201_response_spec.rb +32 -0
  300. data/spec/models/initiate_remote_upload_request_spec.rb +8 -2
  301. data/spec/models/list_accounts200_response_spec.rb +2 -2
  302. data/spec/models/list_media200_response_spec.rb +2 -2
  303. data/spec/models/list_media_folders200_response_spec.rb +36 -0
  304. data/spec/models/list_mentions200_response_spec.rb +48 -0
  305. data/spec/models/list_my_workspaces200_response_spec.rb +36 -0
  306. data/spec/models/list_posts200_response_spec.rb +2 -2
  307. data/spec/models/list_receipts200_response_spec.rb +2 -2
  308. data/spec/models/list_tags200_response_spec.rb +2 -2
  309. data/spec/models/list_users200_response_spec.rb +2 -2
  310. data/spec/models/list_workspaces200_response_spec.rb +2 -2
  311. data/spec/models/media_folder_input_spec.rb +42 -0
  312. data/spec/models/media_folder_ref_spec.rb +42 -0
  313. data/spec/models/media_folder_spec.rb +54 -0
  314. data/spec/models/media_spec.rb +44 -2
  315. data/spec/models/mention_identity_input_spec.rb +60 -0
  316. data/spec/models/mention_identity_spec.rb +54 -0
  317. data/spec/models/mention_input_spec.rb +48 -0
  318. data/spec/models/mention_spec.rb +66 -0
  319. data/spec/models/pagination_meta_links_spec.rb +2 -2
  320. data/spec/models/pagination_meta_meta_spec.rb +2 -2
  321. data/spec/models/pagination_meta_spec.rb +2 -2
  322. data/spec/models/post_analytics_spec.rb +48 -0
  323. data/spec/models/post_content_spec.rb +2 -2
  324. data/spec/models/post_input_spec.rb +8 -2
  325. data/spec/models/post_spec.rb +8 -2
  326. data/spec/models/post_status_spec.rb +2 -2
  327. data/spec/models/post_version_spec.rb +8 -2
  328. data/spec/models/posting_time_slot_spec.rb +52 -0
  329. data/spec/models/posting_times_best_inner_spec.rb +54 -0
  330. data/spec/models/posting_times_day_intervals_inner_inner_spec.rb +70 -0
  331. data/spec/models/posting_times_days_inner_spec.rb +58 -0
  332. data/spec/models/posting_times_spec.rb +78 -0
  333. data/spec/models/public_workspace_pivot_spec.rb +52 -0
  334. data/spec/models/public_workspace_spec.rb +54 -0
  335. data/spec/models/publish_progress_spec.rb +48 -0
  336. data/spec/models/receipt_input_spec.rb +2 -2
  337. data/spec/models/receipt_spec.rb +2 -2
  338. data/spec/models/receipt_update_input_spec.rb +2 -2
  339. data/spec/models/remove_generic_subscription422_response_spec.rb +36 -0
  340. data/spec/models/remove_user_from_workspace_request_spec.rb +2 -2
  341. data/spec/models/retry_post_account_result_spec.rb +48 -0
  342. data/spec/models/schedule_post_request_spec.rb +26 -2
  343. data/spec/models/schedule_result_spec.rb +8 -2
  344. data/spec/models/subscription_input_spec.rb +2 -2
  345. data/spec/models/subscription_spec.rb +2 -2
  346. data/spec/models/subscription_status_spec.rb +2 -2
  347. data/spec/models/subscription_update_input_spec.rb +2 -2
  348. data/spec/models/tag_input_spec.rb +2 -2
  349. data/spec/models/tag_spec.rb +2 -2
  350. data/spec/models/update_media_request_spec.rb +14 -2
  351. data/spec/models/upload_chunk201_response_spec.rb +36 -0
  352. data/spec/models/user_input_spec.rb +2 -2
  353. data/spec/models/user_spec.rb +8 -2
  354. data/spec/models/user_update_input_spec.rb +2 -2
  355. data/spec/models/workspace_input_spec.rb +2 -2
  356. data/spec/models/workspace_spec.rb +8 -2
  357. data/spec/models/workspace_user_input_spec.rb +2 -2
  358. data/spec/spec_helper.rb +2 -2
  359. metadata +331 -75
  360. data/git_push.sh +0 -57
  361. data/spec/models/initiate_chunked_upload200_response_spec.rb +0 -48
  362. data/spec/models/initiate_remote_upload200_response_one_of_spec.rb +0 -36
  363. data/spec/models/initiate_remote_upload200_response_spec.rb +0 -32
  364. data/spec/models/upload_chunk200_response_spec.rb +0 -36
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #PostBoost API
3
3
 
4
- #The PostBoost REST API lets you publish, schedule, and analyze social media posts across 8+ 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`. ## 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 ```
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. ## 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.0.0
6
+ The version of the OpenAPI document: 1.8.0
7
7
  Contact: hi@postboost.co
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.9.0
@@ -20,10 +20,11 @@ module PostBoost
20
20
  @api_client = api_client
21
21
  end
22
22
  # Add post to queue
23
- # Add an existing post to the smart publishing queue.
23
+ # Add an existing post to the smart publishing queue. Each account of the post gets its own next free queue slot. Returns `422` when the post has no accounts, the posting schedule has no available times, or provider requirements are not met.
24
24
  # @param workspace_uuid [String] UUID of the workspace.
25
25
  # @param post_uuid [String] UUID of the post.
26
26
  # @param [Hash] opts the optional parameters
27
+ # @option opts [AddPostToQueueRequest] :add_post_to_queue_request
27
28
  # @return [ScheduleResult]
28
29
  def add_post_to_queue(workspace_uuid, post_uuid, opts = {})
29
30
  data, _status_code, _headers = add_post_to_queue_with_http_info(workspace_uuid, post_uuid, opts)
@@ -31,10 +32,11 @@ module PostBoost
31
32
  end
32
33
 
33
34
  # Add post to queue
34
- # Add an existing post to the smart publishing queue.
35
+ # Add an existing post to the smart publishing queue. Each account of the post gets its own next free queue slot. Returns `422` when the post has no accounts, the posting schedule has no available times, or provider requirements are not met.
35
36
  # @param workspace_uuid [String] UUID of the workspace.
36
37
  # @param post_uuid [String] UUID of the post.
37
38
  # @param [Hash] opts the optional parameters
39
+ # @option opts [AddPostToQueueRequest] :add_post_to_queue_request
38
40
  # @return [Array<(ScheduleResult, Integer, Hash)>] ScheduleResult data, response status code and response headers
39
41
  def add_post_to_queue_with_http_info(workspace_uuid, post_uuid, opts = {})
40
42
  if @api_client.config.debugging
@@ -58,12 +60,17 @@ module PostBoost
58
60
  header_params = opts[:header_params] || {}
59
61
  # HTTP header 'Accept' (if needed)
60
62
  header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
63
+ # HTTP header 'Content-Type'
64
+ content_type = @api_client.select_header_content_type(['application/json'])
65
+ if !content_type.nil?
66
+ header_params['Content-Type'] = content_type
67
+ end
61
68
 
62
69
  # form parameters
63
70
  form_params = opts[:form_params] || {}
64
71
 
65
72
  # http body (model)
66
- post_body = opts[:debug_body]
73
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'add_post_to_queue_request'])
67
74
 
68
75
  # return_type
69
76
  return_type = opts[:debug_return_type] || 'ScheduleResult'
@@ -89,10 +96,11 @@ module PostBoost
89
96
  end
90
97
 
91
98
  # Approve post
92
- # Approve a post that is pending review.
99
+ # Approve a post that is pending review. The approver may move the post with `date`/`time` (read in `timezone`) and set per-account times with `accounts_schedule`; without them the post keeps the time it was submitted with. Provider requirements are validated and reported as `422`.
93
100
  # @param workspace_uuid [String] UUID of the workspace.
94
101
  # @param post_uuid [String] UUID of the post.
95
102
  # @param [Hash] opts the optional parameters
103
+ # @option opts [ApprovePostRequest] :approve_post_request
96
104
  # @return [ScheduleResult]
97
105
  def approve_post(workspace_uuid, post_uuid, opts = {})
98
106
  data, _status_code, _headers = approve_post_with_http_info(workspace_uuid, post_uuid, opts)
@@ -100,10 +108,11 @@ module PostBoost
100
108
  end
101
109
 
102
110
  # Approve post
103
- # Approve a post that is pending review.
111
+ # Approve a post that is pending review. The approver may move the post with &#x60;date&#x60;/&#x60;time&#x60; (read in &#x60;timezone&#x60;) and set per-account times with &#x60;accounts_schedule&#x60;; without them the post keeps the time it was submitted with. Provider requirements are validated and reported as &#x60;422&#x60;.
104
112
  # @param workspace_uuid [String] UUID of the workspace.
105
113
  # @param post_uuid [String] UUID of the post.
106
114
  # @param [Hash] opts the optional parameters
115
+ # @option opts [ApprovePostRequest] :approve_post_request
107
116
  # @return [Array<(ScheduleResult, Integer, Hash)>] ScheduleResult data, response status code and response headers
108
117
  def approve_post_with_http_info(workspace_uuid, post_uuid, opts = {})
109
118
  if @api_client.config.debugging
@@ -127,12 +136,17 @@ module PostBoost
127
136
  header_params = opts[:header_params] || {}
128
137
  # HTTP header 'Accept' (if needed)
129
138
  header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
139
+ # HTTP header 'Content-Type'
140
+ content_type = @api_client.select_header_content_type(['application/json'])
141
+ if !content_type.nil?
142
+ header_params['Content-Type'] = content_type
143
+ end
130
144
 
131
145
  # form parameters
132
146
  form_params = opts[:form_params] || {}
133
147
 
134
148
  # http body (model)
135
- post_body = opts[:debug_body]
149
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'approve_post_request'])
136
150
 
137
151
  # return_type
138
152
  return_type = opts[:debug_return_type] || 'ScheduleResult'
@@ -158,7 +172,7 @@ module PostBoost
158
172
  end
159
173
 
160
174
  # Create post
161
- # Create a new post. Use `schedule: true` with `date` and `time` to schedule, `schedule_now: true` to publish immediately, or `queue: true` to add to the smart publishing queue.
175
+ # Create a new post. Use `schedule: true` with `date` and `time` to schedule, `schedule_now: true` to publish immediately, or `queue: true` to add to the smart publishing queue (each account gets its own queue slot). `date`, `time` and `accounts_schedule` are read in `timezone` when given, otherwise in the workspace timezone. Use `accounts_schedule` to give individual accounts their own departure time. Post bodies may reference mentions with `{{mention:<reference>}}` (see the Mentions endpoints). When the post is scheduled, provider requirements (for example a network that requires media) are validated up front and reported as `422`.
162
176
  # @param workspace_uuid [String] UUID of the workspace.
163
177
  # @param post_input [PostInput]
164
178
  # @param [Hash] opts the optional parameters
@@ -169,7 +183,7 @@ module PostBoost
169
183
  end
170
184
 
171
185
  # Create post
172
- # Create a new post. Use &#x60;schedule: true&#x60; with &#x60;date&#x60; and &#x60;time&#x60; to schedule, &#x60;schedule_now: true&#x60; to publish immediately, or &#x60;queue: true&#x60; to add to the smart publishing queue.
186
+ # Create a new post. Use &#x60;schedule: true&#x60; with &#x60;date&#x60; and &#x60;time&#x60; to schedule, &#x60;schedule_now: true&#x60; to publish immediately, or &#x60;queue: true&#x60; to add to the smart publishing queue (each account gets its own queue slot). &#x60;date&#x60;, &#x60;time&#x60; and &#x60;accounts_schedule&#x60; are read in &#x60;timezone&#x60; when given, otherwise in the workspace timezone. Use &#x60;accounts_schedule&#x60; to give individual accounts their own departure time. Post bodies may reference mentions with &#x60;{{mention:&lt;reference&gt;}}&#x60; (see the Mentions endpoints). When the post is scheduled, provider requirements (for example a network that requires media) are validated up front and reported as &#x60;422&#x60;.
173
187
  # @param workspace_uuid [String] UUID of the workspace.
174
188
  # @param post_input [PostInput]
175
189
  # @param [Hash] opts the optional parameters
@@ -232,6 +246,7 @@ module PostBoost
232
246
  end
233
247
 
234
248
  # Delete post
249
+ # Deletes a post. Use `delete_mode` to control whether to also remove the published content from social platforms.
235
250
  # @param workspace_uuid [String] UUID of the workspace.
236
251
  # @param post_uuid [String] UUID of the post.
237
252
  # @param [Hash] opts the optional parameters
@@ -243,6 +258,7 @@ module PostBoost
243
258
  end
244
259
 
245
260
  # Delete post
261
+ # Deletes a post. Use &#x60;delete_mode&#x60; to control whether to also remove the published content from social platforms.
246
262
  # @param workspace_uuid [String] UUID of the workspace.
247
263
  # @param post_uuid [String] UUID of the post.
248
264
  # @param [Hash] opts the optional parameters
@@ -380,6 +396,7 @@ module PostBoost
380
396
  end
381
397
 
382
398
  # Get post
399
+ # Returns a single post with all its versions and associated accounts.
383
400
  # @param workspace_uuid [String] UUID of the workspace.
384
401
  # @param post_uuid [String] UUID of the post.
385
402
  # @param [Hash] opts the optional parameters
@@ -390,6 +407,7 @@ module PostBoost
390
407
  end
391
408
 
392
409
  # Get post
410
+ # Returns a single post with all its versions and associated accounts.
393
411
  # @param workspace_uuid [String] UUID of the workspace.
394
412
  # @param post_uuid [String] UUID of the post.
395
413
  # @param [Hash] opts the optional parameters
@@ -446,6 +464,75 @@ module PostBoost
446
464
  return data, status_code, headers
447
465
  end
448
466
 
467
+ # Get post analytics
468
+ # Engagement metrics for a published post across its accounts (also works for trashed posts), with totals, trends and the best-performing account.
469
+ # @param workspace_uuid [String] UUID of the workspace.
470
+ # @param post_uuid [String] UUID of the post.
471
+ # @param [Hash] opts the optional parameters
472
+ # @return [PostAnalytics]
473
+ def get_post_analytics(workspace_uuid, post_uuid, opts = {})
474
+ data, _status_code, _headers = get_post_analytics_with_http_info(workspace_uuid, post_uuid, opts)
475
+ data
476
+ end
477
+
478
+ # Get post analytics
479
+ # Engagement metrics for a published post across its accounts (also works for trashed posts), with totals, trends and the best-performing account.
480
+ # @param workspace_uuid [String] UUID of the workspace.
481
+ # @param post_uuid [String] UUID of the post.
482
+ # @param [Hash] opts the optional parameters
483
+ # @return [Array<(PostAnalytics, Integer, Hash)>] PostAnalytics data, response status code and response headers
484
+ def get_post_analytics_with_http_info(workspace_uuid, post_uuid, opts = {})
485
+ if @api_client.config.debugging
486
+ @api_client.config.logger.debug 'Calling API: PostsApi.get_post_analytics ...'
487
+ end
488
+ # verify the required parameter 'workspace_uuid' is set
489
+ if @api_client.config.client_side_validation && workspace_uuid.nil?
490
+ fail ArgumentError, "Missing the required parameter 'workspace_uuid' when calling PostsApi.get_post_analytics"
491
+ end
492
+ # verify the required parameter 'post_uuid' is set
493
+ if @api_client.config.client_side_validation && post_uuid.nil?
494
+ fail ArgumentError, "Missing the required parameter 'post_uuid' when calling PostsApi.get_post_analytics"
495
+ end
496
+ # resource path
497
+ local_var_path = '/{workspaceUuid}/posts/{postUuid}/analytics'.sub('{' + 'workspaceUuid' + '}', CGI.escape(workspace_uuid.to_s)).sub('{' + 'postUuid' + '}', CGI.escape(post_uuid.to_s))
498
+
499
+ # query parameters
500
+ query_params = opts[:query_params] || {}
501
+
502
+ # header parameters
503
+ header_params = opts[:header_params] || {}
504
+ # HTTP header 'Accept' (if needed)
505
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
506
+
507
+ # form parameters
508
+ form_params = opts[:form_params] || {}
509
+
510
+ # http body (model)
511
+ post_body = opts[:debug_body]
512
+
513
+ # return_type
514
+ return_type = opts[:debug_return_type] || 'PostAnalytics'
515
+
516
+ # auth_names
517
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
518
+
519
+ new_options = opts.merge(
520
+ :operation => :"PostsApi.get_post_analytics",
521
+ :header_params => header_params,
522
+ :query_params => query_params,
523
+ :form_params => form_params,
524
+ :body => post_body,
525
+ :auth_names => auth_names,
526
+ :return_type => return_type
527
+ )
528
+
529
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
530
+ if @api_client.config.debugging
531
+ @api_client.config.logger.debug "API called: PostsApi#get_post_analytics\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
532
+ end
533
+ return data, status_code, headers
534
+ end
535
+
449
536
  # List posts
450
537
  # Returns a paginated list of posts in the workspace.
451
538
  # @param workspace_uuid [String] UUID of the workspace.
@@ -512,8 +599,83 @@ module PostBoost
512
599
  return data, status_code, headers
513
600
  end
514
601
 
602
+ # Retry publishing to one account
603
+ # Re-publishes a post to a single account whose publishing failed. Returns `422` when the account is not on the post, the post is still publishing, or the account did not fail.
604
+ # @param workspace_uuid [String] UUID of the workspace.
605
+ # @param post_uuid [String] UUID of the post.
606
+ # @param account_uuid [String] UUID of the social media account.
607
+ # @param [Hash] opts the optional parameters
608
+ # @return [RetryPostAccountResult]
609
+ def retry_post_account(workspace_uuid, post_uuid, account_uuid, opts = {})
610
+ data, _status_code, _headers = retry_post_account_with_http_info(workspace_uuid, post_uuid, account_uuid, opts)
611
+ data
612
+ end
613
+
614
+ # Retry publishing to one account
615
+ # Re-publishes a post to a single account whose publishing failed. Returns &#x60;422&#x60; when the account is not on the post, the post is still publishing, or the account did not fail.
616
+ # @param workspace_uuid [String] UUID of the workspace.
617
+ # @param post_uuid [String] UUID of the post.
618
+ # @param account_uuid [String] UUID of the social media account.
619
+ # @param [Hash] opts the optional parameters
620
+ # @return [Array<(RetryPostAccountResult, Integer, Hash)>] RetryPostAccountResult data, response status code and response headers
621
+ def retry_post_account_with_http_info(workspace_uuid, post_uuid, account_uuid, opts = {})
622
+ if @api_client.config.debugging
623
+ @api_client.config.logger.debug 'Calling API: PostsApi.retry_post_account ...'
624
+ end
625
+ # verify the required parameter 'workspace_uuid' is set
626
+ if @api_client.config.client_side_validation && workspace_uuid.nil?
627
+ fail ArgumentError, "Missing the required parameter 'workspace_uuid' when calling PostsApi.retry_post_account"
628
+ end
629
+ # verify the required parameter 'post_uuid' is set
630
+ if @api_client.config.client_side_validation && post_uuid.nil?
631
+ fail ArgumentError, "Missing the required parameter 'post_uuid' when calling PostsApi.retry_post_account"
632
+ end
633
+ # verify the required parameter 'account_uuid' is set
634
+ if @api_client.config.client_side_validation && account_uuid.nil?
635
+ fail ArgumentError, "Missing the required parameter 'account_uuid' when calling PostsApi.retry_post_account"
636
+ end
637
+ # resource path
638
+ local_var_path = '/{workspaceUuid}/posts/retry/{postUuid}/{accountUuid}'.sub('{' + 'workspaceUuid' + '}', CGI.escape(workspace_uuid.to_s)).sub('{' + 'postUuid' + '}', CGI.escape(post_uuid.to_s)).sub('{' + 'accountUuid' + '}', CGI.escape(account_uuid.to_s))
639
+
640
+ # query parameters
641
+ query_params = opts[:query_params] || {}
642
+
643
+ # header parameters
644
+ header_params = opts[:header_params] || {}
645
+ # HTTP header 'Accept' (if needed)
646
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
647
+
648
+ # form parameters
649
+ form_params = opts[:form_params] || {}
650
+
651
+ # http body (model)
652
+ post_body = opts[:debug_body]
653
+
654
+ # return_type
655
+ return_type = opts[:debug_return_type] || 'RetryPostAccountResult'
656
+
657
+ # auth_names
658
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
659
+
660
+ new_options = opts.merge(
661
+ :operation => :"PostsApi.retry_post_account",
662
+ :header_params => header_params,
663
+ :query_params => query_params,
664
+ :form_params => form_params,
665
+ :body => post_body,
666
+ :auth_names => auth_names,
667
+ :return_type => return_type
668
+ )
669
+
670
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
671
+ if @api_client.config.debugging
672
+ @api_client.config.logger.debug "API called: PostsApi#retry_post_account\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
673
+ end
674
+ return data, status_code, headers
675
+ end
676
+
515
677
  # Schedule post
516
- # Schedule an existing post. Set `postNow: true` to publish immediately.
678
+ # Schedule an existing post. Optionally move it with `date`/`time` (read in `timezone`) and give accounts their own times with `accounts_schedule`. Set `postNow: true` to publish immediately; publishing starts within the request and any per-account times are dropped. Provider requirements are validated and reported as `422`.
517
679
  # @param workspace_uuid [String] UUID of the workspace.
518
680
  # @param post_uuid [String] UUID of the post.
519
681
  # @param schedule_post_request [SchedulePostRequest]
@@ -525,7 +687,7 @@ module PostBoost
525
687
  end
526
688
 
527
689
  # Schedule post
528
- # Schedule an existing post. Set &#x60;postNow: true&#x60; to publish immediately.
690
+ # Schedule an existing post. Optionally move it with &#x60;date&#x60;/&#x60;time&#x60; (read in &#x60;timezone&#x60;) and give accounts their own times with &#x60;accounts_schedule&#x60;. Set &#x60;postNow: true&#x60; to publish immediately; publishing starts within the request and any per-account times are dropped. Provider requirements are validated and reported as &#x60;422&#x60;.
529
691
  # @param workspace_uuid [String] UUID of the workspace.
530
692
  # @param post_uuid [String] UUID of the post.
531
693
  # @param schedule_post_request [SchedulePostRequest]
@@ -593,6 +755,7 @@ module PostBoost
593
755
  end
594
756
 
595
757
  # Update post
758
+ # Replaces a post's versions, accounts, tags, and scheduling options. The post must not be in a published state. `timezone` is honoured: `date`, `time` and `accounts_schedule` are read in it. When the post stays scheduled, provider requirements are validated and reported as `422`.
596
759
  # @param workspace_uuid [String] UUID of the workspace.
597
760
  # @param post_uuid [String] UUID of the post.
598
761
  # @param post_input [PostInput]
@@ -604,6 +767,7 @@ module PostBoost
604
767
  end
605
768
 
606
769
  # Update post
770
+ # Replaces a post&#39;s versions, accounts, tags, and scheduling options. The post must not be in a published state. &#x60;timezone&#x60; is honoured: &#x60;date&#x60;, &#x60;time&#x60; and &#x60;accounts_schedule&#x60; are read in it. When the post stays scheduled, provider requirements are validated and reported as &#x60;422&#x60;.
607
771
  # @param workspace_uuid [String] UUID of the workspace.
608
772
  # @param post_uuid [String] UUID of the post.
609
773
  # @param post_input [PostInput]
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #PostBoost API
3
3
 
4
- #The PostBoost REST API lets you publish, schedule, and analyze social media posts across 8+ 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`. ## 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 ```
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. ## 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.0.0
6
+ The version of the OpenAPI document: 1.8.0
7
7
  Contact: hi@postboost.co
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.9.0
@@ -20,6 +20,7 @@ module PostBoost
20
20
  @api_client = api_client
21
21
  end
22
22
  # Create receipt
23
+ # Creates a billing receipt record for a workspace. Admin only.
23
24
  # @param receipt_input [ReceiptInput]
24
25
  # @param [Hash] opts the optional parameters
25
26
  # @return [Receipt]
@@ -29,6 +30,7 @@ module PostBoost
29
30
  end
30
31
 
31
32
  # Create receipt
33
+ # Creates a billing receipt record for a workspace. Admin only.
32
34
  # @param receipt_input [ReceiptInput]
33
35
  # @param [Hash] opts the optional parameters
34
36
  # @return [Array<(Receipt, Integer, Hash)>] Receipt data, response status code and response headers
@@ -86,6 +88,7 @@ module PostBoost
86
88
  end
87
89
 
88
90
  # Delete receipt
91
+ # Permanently deletes a single receipt. Admin only.
89
92
  # @param receipt_uuid [String] UUID of the receipt.
90
93
  # @param [Hash] opts the optional parameters
91
94
  # @return [Object]
@@ -95,6 +98,7 @@ module PostBoost
95
98
  end
96
99
 
97
100
  # Delete receipt
101
+ # Permanently deletes a single receipt. Admin only.
98
102
  # @param receipt_uuid [String] UUID of the receipt.
99
103
  # @param [Hash] opts the optional parameters
100
104
  # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
@@ -147,6 +151,7 @@ module PostBoost
147
151
  end
148
152
 
149
153
  # Delete receipts (bulk)
154
+ # Permanently deletes one or more receipt records. Admin only.
150
155
  # @param delete_receipts_bulk_request [DeleteReceiptsBulkRequest]
151
156
  # @param [Hash] opts the optional parameters
152
157
  # @return [Object]
@@ -156,6 +161,7 @@ module PostBoost
156
161
  end
157
162
 
158
163
  # Delete receipts (bulk)
164
+ # Permanently deletes one or more receipt records. Admin only.
159
165
  # @param delete_receipts_bulk_request [DeleteReceiptsBulkRequest]
160
166
  # @param [Hash] opts the optional parameters
161
167
  # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
@@ -213,6 +219,7 @@ module PostBoost
213
219
  end
214
220
 
215
221
  # Get receipt
222
+ # Returns a single receipt by UUID. Admin only.
216
223
  # @param receipt_uuid [String] UUID of the receipt.
217
224
  # @param [Hash] opts the optional parameters
218
225
  # @return [Receipt]
@@ -222,6 +229,7 @@ module PostBoost
222
229
  end
223
230
 
224
231
  # Get receipt
232
+ # Returns a single receipt by UUID. Admin only.
225
233
  # @param receipt_uuid [String] UUID of the receipt.
226
234
  # @param [Hash] opts the optional parameters
227
235
  # @return [Array<(Receipt, Integer, Hash)>] Receipt data, response status code and response headers
@@ -274,9 +282,11 @@ module PostBoost
274
282
  end
275
283
 
276
284
  # List receipts
285
+ # Returns a paginated list of billing receipts. Filter by workspace UUID or invoice number. Admin only.
277
286
  # @param [Hash] opts the optional parameters
278
287
  # @option opts [String] :workspace_uuid
279
288
  # @option opts [String] :invoice_number
289
+ # @option opts [Integer] :page Page number (15 items per page). (default to 1)
280
290
  # @return [ListReceipts200Response]
281
291
  def list_receipts(opts = {})
282
292
  data, _status_code, _headers = list_receipts_with_http_info(opts)
@@ -284,9 +294,11 @@ module PostBoost
284
294
  end
285
295
 
286
296
  # List receipts
297
+ # Returns a paginated list of billing receipts. Filter by workspace UUID or invoice number. Admin only.
287
298
  # @param [Hash] opts the optional parameters
288
299
  # @option opts [String] :workspace_uuid
289
300
  # @option opts [String] :invoice_number
301
+ # @option opts [Integer] :page Page number (15 items per page). (default to 1)
290
302
  # @return [Array<(ListReceipts200Response, Integer, Hash)>] ListReceipts200Response data, response status code and response headers
291
303
  def list_receipts_with_http_info(opts = {})
292
304
  if @api_client.config.debugging
@@ -299,6 +311,7 @@ module PostBoost
299
311
  query_params = opts[:query_params] || {}
300
312
  query_params[:'workspace_uuid'] = opts[:'workspace_uuid'] if !opts[:'workspace_uuid'].nil?
301
313
  query_params[:'invoice_number'] = opts[:'invoice_number'] if !opts[:'invoice_number'].nil?
314
+ query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
302
315
 
303
316
  # header parameters
304
317
  header_params = opts[:header_params] || {}
@@ -335,6 +348,7 @@ module PostBoost
335
348
  end
336
349
 
337
350
  # Update receipt
351
+ # Updates a receipt's transaction details, amount, or payment date. Admin only.
338
352
  # @param receipt_uuid [String] UUID of the receipt.
339
353
  # @param receipt_update_input [ReceiptUpdateInput]
340
354
  # @param [Hash] opts the optional parameters
@@ -345,6 +359,7 @@ module PostBoost
345
359
  end
346
360
 
347
361
  # Update receipt
362
+ # Updates a receipt&#39;s transaction details, amount, or payment date. Admin only.
348
363
  # @param receipt_uuid [String] UUID of the receipt.
349
364
  # @param receipt_update_input [ReceiptUpdateInput]
350
365
  # @param [Hash] opts the optional parameters
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #PostBoost API
3
3
 
4
- #The PostBoost REST API lets you publish, schedule, and analyze social media posts across 8+ 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`. ## 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 ```
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. ## 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.0.0
6
+ The version of the OpenAPI document: 1.8.0
7
7
  Contact: hi@postboost.co
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.9.0
@@ -20,6 +20,7 @@ module PostBoost
20
20
  @api_client = api_client
21
21
  end
22
22
  # Add generic subscription
23
+ # Assigns a non-Stripe (generic) subscription plan to the workspace, optionally granting a trial period. Used for AppSumo-style lifetime deals. Admin only.
23
24
  # @param workspace_uuid [String] UUID of the workspace.
24
25
  # @param add_generic_subscription_request [AddGenericSubscriptionRequest]
25
26
  # @param [Hash] opts the optional parameters
@@ -30,6 +31,7 @@ module PostBoost
30
31
  end
31
32
 
32
33
  # Add generic subscription
34
+ # Assigns a non-Stripe (generic) subscription plan to the workspace, optionally granting a trial period. Used for AppSumo-style lifetime deals. Admin only.
33
35
  # @param workspace_uuid [String] UUID of the workspace.
34
36
  # @param add_generic_subscription_request [AddGenericSubscriptionRequest]
35
37
  # @param [Hash] opts the optional parameters
@@ -92,8 +94,10 @@ module PostBoost
92
94
  end
93
95
 
94
96
  # Cancel subscription
97
+ # Cancels the workspace's Stripe subscription at the end of the current billing period, or right away with `immediately: true`. Works for active and past-due subscriptions. Admin only.
95
98
  # @param workspace_uuid [String] UUID of the workspace.
96
99
  # @param [Hash] opts the optional parameters
100
+ # @option opts [CancelSubscriptionRequest] :cancel_subscription_request
97
101
  # @return [Object]
98
102
  def cancel_subscription(workspace_uuid, opts = {})
99
103
  data, _status_code, _headers = cancel_subscription_with_http_info(workspace_uuid, opts)
@@ -101,8 +105,10 @@ module PostBoost
101
105
  end
102
106
 
103
107
  # Cancel subscription
108
+ # Cancels the workspace&#39;s Stripe subscription at the end of the current billing period, or right away with &#x60;immediately: true&#x60;. Works for active and past-due subscriptions. Admin only.
104
109
  # @param workspace_uuid [String] UUID of the workspace.
105
110
  # @param [Hash] opts the optional parameters
111
+ # @option opts [CancelSubscriptionRequest] :cancel_subscription_request
106
112
  # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
107
113
  def cancel_subscription_with_http_info(workspace_uuid, opts = {})
108
114
  if @api_client.config.debugging
@@ -122,12 +128,17 @@ module PostBoost
122
128
  header_params = opts[:header_params] || {}
123
129
  # HTTP header 'Accept' (if needed)
124
130
  header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
131
+ # HTTP header 'Content-Type'
132
+ content_type = @api_client.select_header_content_type(['application/json'])
133
+ if !content_type.nil?
134
+ header_params['Content-Type'] = content_type
135
+ end
125
136
 
126
137
  # form parameters
127
138
  form_params = opts[:form_params] || {}
128
139
 
129
140
  # http body (model)
130
- post_body = opts[:debug_body]
141
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'cancel_subscription_request'])
131
142
 
132
143
  # return_type
133
144
  return_type = opts[:debug_return_type] || 'Object'
@@ -153,6 +164,7 @@ module PostBoost
153
164
  end
154
165
 
155
166
  # Change subscription plan
167
+ # Switches the workspace to a different Stripe plan. Optionally prorates the change and bills immediately. Admin only.
156
168
  # @param workspace_uuid [String] UUID of the workspace.
157
169
  # @param change_subscription_plan_request [ChangeSubscriptionPlanRequest]
158
170
  # @param [Hash] opts the optional parameters
@@ -163,6 +175,7 @@ module PostBoost
163
175
  end
164
176
 
165
177
  # Change subscription plan
178
+ # Switches the workspace to a different Stripe plan. Optionally prorates the change and bills immediately. Admin only.
166
179
  # @param workspace_uuid [String] UUID of the workspace.
167
180
  # @param change_subscription_plan_request [ChangeSubscriptionPlanRequest]
168
181
  # @param [Hash] opts the optional parameters
@@ -299,6 +312,7 @@ module PostBoost
299
312
  end
300
313
 
301
314
  # Create subscription
315
+ # Manually creates a subscription record for the workspace (for external billing integrations). Admin only.
302
316
  # @param workspace_uuid [String] UUID of the workspace.
303
317
  # @param subscription_input [SubscriptionInput]
304
318
  # @param [Hash] opts the optional parameters
@@ -309,6 +323,7 @@ module PostBoost
309
323
  end
310
324
 
311
325
  # Create subscription
326
+ # Manually creates a subscription record for the workspace (for external billing integrations). Admin only.
312
327
  # @param workspace_uuid [String] UUID of the workspace.
313
328
  # @param subscription_input [SubscriptionInput]
314
329
  # @param [Hash] opts the optional parameters
@@ -371,6 +386,7 @@ module PostBoost
371
386
  end
372
387
 
373
388
  # Delete subscription
389
+ # Removes the subscription record from the workspace. Admin only.
374
390
  # @param workspace_uuid [String] UUID of the workspace.
375
391
  # @param [Hash] opts the optional parameters
376
392
  # @return [Object]
@@ -380,6 +396,7 @@ module PostBoost
380
396
  end
381
397
 
382
398
  # Delete subscription
399
+ # Removes the subscription record from the workspace. Admin only.
383
400
  # @param workspace_uuid [String] UUID of the workspace.
384
401
  # @param [Hash] opts the optional parameters
385
402
  # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
@@ -432,6 +449,7 @@ module PostBoost
432
449
  end
433
450
 
434
451
  # Get subscription
452
+ # Returns the active subscription for the workspace, or `null` if none exists. Admin only.
435
453
  # @param workspace_uuid [String] UUID of the workspace.
436
454
  # @param [Hash] opts the optional parameters
437
455
  # @return [Subscription]
@@ -441,6 +459,7 @@ module PostBoost
441
459
  end
442
460
 
443
461
  # Get subscription
462
+ # Returns the active subscription for the workspace, or &#x60;null&#x60; if none exists. Admin only.
444
463
  # @param workspace_uuid [String] UUID of the workspace.
445
464
  # @param [Hash] opts the optional parameters
446
465
  # @return [Array<(Subscription, Integer, Hash)>] Subscription data, response status code and response headers
@@ -493,6 +512,7 @@ module PostBoost
493
512
  end
494
513
 
495
514
  # Remove generic subscription
515
+ # Removes the generic (non-Stripe) subscription from the workspace. Returns `422` when the workspace has no generic subscription. Admin only.
496
516
  # @param workspace_uuid [String] UUID of the workspace.
497
517
  # @param [Hash] opts the optional parameters
498
518
  # @return [Object]
@@ -502,6 +522,7 @@ module PostBoost
502
522
  end
503
523
 
504
524
  # Remove generic subscription
525
+ # Removes the generic (non-Stripe) subscription from the workspace. Returns &#x60;422&#x60; when the workspace has no generic subscription. Admin only.
505
526
  # @param workspace_uuid [String] UUID of the workspace.
506
527
  # @param [Hash] opts the optional parameters
507
528
  # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
@@ -554,6 +575,7 @@ module PostBoost
554
575
  end
555
576
 
556
577
  # Resume subscription
578
+ # Resumes a previously canceled subscription before it expires. Admin only.
557
579
  # @param workspace_uuid [String] UUID of the workspace.
558
580
  # @param [Hash] opts the optional parameters
559
581
  # @return [Object]
@@ -563,6 +585,7 @@ module PostBoost
563
585
  end
564
586
 
565
587
  # Resume subscription
588
+ # Resumes a previously canceled subscription before it expires. Admin only.
566
589
  # @param workspace_uuid [String] UUID of the workspace.
567
590
  # @param [Hash] opts the optional parameters
568
591
  # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
@@ -615,6 +638,7 @@ module PostBoost
615
638
  end
616
639
 
617
640
  # Update subscription
641
+ # Updates the plan ID, status, or trial/pause dates of an existing subscription. Admin only.
618
642
  # @param workspace_uuid [String] UUID of the workspace.
619
643
  # @param subscription_update_input [SubscriptionUpdateInput]
620
644
  # @param [Hash] opts the optional parameters
@@ -625,6 +649,7 @@ module PostBoost
625
649
  end
626
650
 
627
651
  # Update subscription
652
+ # Updates the plan ID, status, or trial/pause dates of an existing subscription. Admin only.
628
653
  # @param workspace_uuid [String] UUID of the workspace.
629
654
  # @param subscription_update_input [SubscriptionUpdateInput]
630
655
  # @param [Hash] opts the optional parameters