postboost 1.43.0 → 1.44.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 (758) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -1
  3. data/docs/FreeToolPlanContentCalendarRequest.md +26 -0
  4. data/docs/FreeToolPlanContentCalendarRequestPostsPerWeek.md +38 -0
  5. data/docs/FreeToolPlanContentCalendarRequestTimes.md +38 -0
  6. data/docs/FreeToolPlanContentCalendarResponse.md +26 -0
  7. data/docs/FreeToolPlanContentCalendarResponseSlotsInner.md +28 -0
  8. data/docs/FreeToolsApi.md +65 -0
  9. data/lib/postboost/api/account_groups_api.rb +1 -1
  10. data/lib/postboost/api/accounts_api.rb +1 -1
  11. data/lib/postboost/api/activity_api.rb +1 -1
  12. data/lib/postboost/api/agents_api.rb +1 -1
  13. data/lib/postboost/api/ai_api.rb +1 -1
  14. data/lib/postboost/api/analytics_api.rb +1 -1
  15. data/lib/postboost/api/competitors_api.rb +1 -1
  16. data/lib/postboost/api/free_tools_api.rb +69 -1
  17. data/lib/postboost/api/hashtag_groups_api.rb +1 -1
  18. data/lib/postboost/api/inbox_api.rb +1 -1
  19. data/lib/postboost/api/media_api.rb +1 -1
  20. data/lib/postboost/api/mentions_api.rb +1 -1
  21. data/lib/postboost/api/posting_schedule_api.rb +1 -1
  22. data/lib/postboost/api/posts_api.rb +1 -1
  23. data/lib/postboost/api/receipts_api.rb +1 -1
  24. data/lib/postboost/api/subscriptions_api.rb +1 -1
  25. data/lib/postboost/api/tags_api.rb +1 -1
  26. data/lib/postboost/api/templates_api.rb +1 -1
  27. data/lib/postboost/api/users_api.rb +1 -1
  28. data/lib/postboost/api/webhooks_api.rb +1 -1
  29. data/lib/postboost/api/workspaces_api.rb +1 -1
  30. data/lib/postboost/api_client.rb +1 -1
  31. data/lib/postboost/api_error.rb +1 -1
  32. data/lib/postboost/configuration.rb +1 -1
  33. data/lib/postboost/models/account.rb +1 -1
  34. data/lib/postboost/models/account_analytics.rb +1 -1
  35. data/lib/postboost/models/account_analytics_initial_sync.rb +1 -1
  36. data/lib/postboost/models/account_connection_health.rb +1 -1
  37. data/lib/postboost/models/account_connection_health_reconnect_reason.rb +1 -1
  38. data/lib/postboost/models/account_errors_inner.rb +1 -1
  39. data/lib/postboost/models/account_errors_inner_one_of.rb +1 -1
  40. data/lib/postboost/models/account_group.rb +1 -1
  41. data/lib/postboost/models/account_group_input.rb +1 -1
  42. data/lib/postboost/models/account_health.rb +1 -1
  43. data/lib/postboost/models/account_health_daily_cap.rb +1 -1
  44. data/lib/postboost/models/account_schedule.rb +1 -1
  45. data/lib/postboost/models/add_competitor202_response.rb +1 -1
  46. data/lib/postboost/models/add_competitor409_response.rb +1 -1
  47. data/lib/postboost/models/add_generic_subscription_request.rb +1 -1
  48. data/lib/postboost/models/add_post_to_queue_request.rb +1 -1
  49. data/lib/postboost/models/agent_page_meta.rb +1 -1
  50. data/lib/postboost/models/agent_proposal.rb +1 -1
  51. data/lib/postboost/models/agent_proposal_decision.rb +1 -1
  52. data/lib/postboost/models/agent_run.rb +1 -1
  53. data/lib/postboost/models/ai_credits.rb +1 -1
  54. data/lib/postboost/models/ai_usage.rb +1 -1
  55. data/lib/postboost/models/ai_usage_text.rb +1 -1
  56. data/lib/postboost/models/analytics_period.rb +1 -1
  57. data/lib/postboost/models/analytics_summary.rb +1 -1
  58. data/lib/postboost/models/analytics_summary_data.rb +1 -1
  59. data/lib/postboost/models/api_activity.rb +1 -1
  60. data/lib/postboost/models/api_activity_outcome.rb +1 -1
  61. data/lib/postboost/models/api_key.rb +1 -1
  62. data/lib/postboost/models/api_key_ability.rb +1 -1
  63. data/lib/postboost/models/api_key_input.rb +1 -1
  64. data/lib/postboost/models/approve_agent_proposal200_response.rb +1 -1
  65. data/lib/postboost/models/approve_agent_proposal409_response.rb +1 -1
  66. data/lib/postboost/models/approve_inbox_reply_draft403_response.rb +1 -1
  67. data/lib/postboost/models/approve_post_request.rb +1 -1
  68. data/lib/postboost/models/best_posting_times.rb +1 -1
  69. data/lib/postboost/models/best_posting_times_times_inner.rb +1 -1
  70. data/lib/postboost/models/blog_to_social200_response.rb +1 -1
  71. data/lib/postboost/models/blog_to_social429_response.rb +1 -1
  72. data/lib/postboost/models/blog_to_social_caption.rb +1 -1
  73. data/lib/postboost/models/blog_to_social_input.rb +1 -1
  74. data/lib/postboost/models/blog_to_social_media.rb +1 -1
  75. data/lib/postboost/models/blog_to_social_response.rb +1 -1
  76. data/lib/postboost/models/brand_voice.rb +1 -1
  77. data/lib/postboost/models/brand_voice_input.rb +1 -1
  78. data/lib/postboost/models/brand_voice_meta.rb +1 -1
  79. data/lib/postboost/models/cancel_subscription422_response.rb +1 -1
  80. data/lib/postboost/models/cancel_subscription422_response_errors.rb +1 -1
  81. data/lib/postboost/models/cancel_subscription_request.rb +1 -1
  82. data/lib/postboost/models/change_subscription_plan_request.rb +1 -1
  83. data/lib/postboost/models/channel_account.rb +1 -1
  84. data/lib/postboost/models/checkout_subscription200_response.rb +1 -1
  85. data/lib/postboost/models/checkout_subscription_request.rb +1 -1
  86. data/lib/postboost/models/coded_error.rb +1 -1
  87. data/lib/postboost/models/competitor.rb +1 -1
  88. data/lib/postboost/models/competitor_detail.rb +1 -1
  89. data/lib/postboost/models/competitor_input.rb +1 -1
  90. data/lib/postboost/models/competitor_media.rb +1 -1
  91. data/lib/postboost/models/competitor_snapshot.rb +1 -1
  92. data/lib/postboost/models/complete_chunked_upload_request.rb +1 -1
  93. data/lib/postboost/models/connect_channel_input.rb +1 -1
  94. data/lib/postboost/models/connect_link.rb +1 -1
  95. data/lib/postboost/models/create_account_group201_response.rb +1 -1
  96. data/lib/postboost/models/create_agent201_response.rb +1 -1
  97. data/lib/postboost/models/create_api_key201_response.rb +1 -1
  98. data/lib/postboost/models/create_api_key201_response_data.rb +1 -1
  99. data/lib/postboost/models/create_connect_link_request.rb +1 -1
  100. data/lib/postboost/models/create_hashtag_group201_response.rb +1 -1
  101. data/lib/postboost/models/create_inbox_reply_draft201_response.rb +1 -1
  102. data/lib/postboost/models/create_media_folder_request.rb +1 -1
  103. data/lib/postboost/models/create_mention201_response.rb +1 -1
  104. data/lib/postboost/models/create_post201_response.rb +1 -1
  105. data/lib/postboost/models/create_recycling_rule201_response.rb +1 -1
  106. data/lib/postboost/models/create_report_export201_response.rb +1 -1
  107. data/lib/postboost/models/create_reseller_client201_response.rb +1 -1
  108. data/lib/postboost/models/create_rss_feed201_response.rb +1 -1
  109. data/lib/postboost/models/create_template201_response.rb +1 -1
  110. data/lib/postboost/models/create_webhook_subscription201_response.rb +1 -1
  111. data/lib/postboost/models/create_webhook_subscription201_response_data.rb +1 -1
  112. data/lib/postboost/models/delete_agent200_response.rb +1 -1
  113. data/lib/postboost/models/delete_media_bulk_request.rb +1 -1
  114. data/lib/postboost/models/delete_media_bulk_request_items_inner.rb +1 -1
  115. data/lib/postboost/models/delete_media_folder_request.rb +1 -1
  116. data/lib/postboost/models/delete_mode.rb +1 -1
  117. data/lib/postboost/models/delete_post_request.rb +1 -1
  118. data/lib/postboost/models/delete_posts_bulk_request.rb +1 -1
  119. data/lib/postboost/models/delete_receipts_bulk_request.rb +1 -1
  120. data/lib/postboost/models/delete_result.rb +1 -1
  121. data/lib/postboost/models/delete_user400_response.rb +1 -1
  122. data/lib/postboost/models/delete_users_bulk_request.rb +1 -1
  123. data/lib/postboost/models/delete_workspaces_bulk_request.rb +1 -1
  124. data/lib/postboost/models/free_tool_build_utm_url_request.rb +1 -1
  125. data/lib/postboost/models/free_tool_build_utm_url_response.rb +1 -1
  126. data/lib/postboost/models/free_tool_calculate_aspect_ratio_request.rb +1 -1
  127. data/lib/postboost/models/free_tool_calculate_aspect_ratio_response.rb +1 -1
  128. data/lib/postboost/models/free_tool_calculate_aspect_ratio_response_matches_inner.rb +1 -1
  129. data/lib/postboost/models/free_tool_calculate_aspect_ratio_response_rounding.rb +1 -1
  130. data/lib/postboost/models/free_tool_calculate_crop_request.rb +1 -1
  131. data/lib/postboost/models/free_tool_calculate_crop_response.rb +1 -1
  132. data/lib/postboost/models/free_tool_calculate_crop_response_crop.rb +1 -1
  133. data/lib/postboost/models/free_tool_calculate_crop_response_image.rb +1 -1
  134. data/lib/postboost/models/free_tool_calculate_crop_response_output.rb +1 -1
  135. data/lib/postboost/models/free_tool_calculate_engagement_rate_request.rb +1 -1
  136. data/lib/postboost/models/free_tool_calculate_engagement_rate_response.rb +1 -1
  137. data/lib/postboost/models/free_tool_check_link_preview_request.rb +1 -1
  138. data/lib/postboost/models/free_tool_check_link_preview_response.rb +1 -1
  139. data/lib/postboost/models/free_tool_check_link_preview_response_image.rb +1 -1
  140. data/lib/postboost/models/free_tool_check_link_preview_response_previews_value.rb +1 -1
  141. data/lib/postboost/models/free_tool_check_link_preview_response_redirects_inner.rb +1 -1
  142. data/lib/postboost/models/free_tool_check_link_preview_response_tags.rb +1 -1
  143. data/lib/postboost/models/free_tool_check_post_request.rb +1 -1
  144. data/lib/postboost/models/free_tool_check_post_request_media.rb +1 -1
  145. data/lib/postboost/models/free_tool_check_post_response.rb +1 -1
  146. data/lib/postboost/models/free_tool_check_post_response_networks_inner.rb +1 -1
  147. data/lib/postboost/models/free_tool_check_post_response_networks_inner_errors_inner.rb +1 -1
  148. data/lib/postboost/models/free_tool_check_youtube_thumbnail_request.rb +1 -1
  149. data/lib/postboost/models/free_tool_check_youtube_thumbnail_response.rb +1 -1
  150. data/lib/postboost/models/free_tool_check_youtube_thumbnail_response_checks_inner.rb +1 -1
  151. data/lib/postboost/models/free_tool_clean_text_request.rb +1 -1
  152. data/lib/postboost/models/free_tool_clean_text_response.rb +1 -1
  153. data/lib/postboost/models/free_tool_clean_text_response_changes_inner.rb +1 -1
  154. data/lib/postboost/models/free_tool_clean_text_response_flags_inner.rb +1 -1
  155. data/lib/postboost/models/free_tool_count_characters_request.rb +1 -1
  156. data/lib/postboost/models/free_tool_count_characters_response.rb +1 -1
  157. data/lib/postboost/models/free_tool_count_characters_response_networks_inner.rb +1 -1
  158. data/lib/postboost/models/free_tool_error.rb +1 -1
  159. data/lib/postboost/models/free_tool_format_instagram_caption_request.rb +1 -1
  160. data/lib/postboost/models/free_tool_format_instagram_caption_response.rb +1 -1
  161. data/lib/postboost/models/free_tool_format_linked_in_post_request.rb +1 -1
  162. data/lib/postboost/models/free_tool_format_linked_in_post_response.rb +1 -1
  163. data/lib/postboost/models/free_tool_generate_caption_request.rb +1 -1
  164. data/lib/postboost/models/free_tool_generate_caption_response.rb +1 -1
  165. data/lib/postboost/models/free_tool_generate_fancy_text_request.rb +1 -1
  166. data/lib/postboost/models/free_tool_generate_fancy_text_response.rb +1 -1
  167. data/lib/postboost/models/free_tool_generate_fancy_text_response_styles_inner.rb +1 -1
  168. data/lib/postboost/models/free_tool_generate_hashtags_request.rb +1 -1
  169. data/lib/postboost/models/free_tool_generate_hashtags_response.rb +1 -1
  170. data/lib/postboost/models/free_tool_generate_hooks_request.rb +1 -1
  171. data/lib/postboost/models/free_tool_generate_hooks_response.rb +1 -1
  172. data/lib/postboost/models/free_tool_generate_hooks_response_hooks_inner.rb +1 -1
  173. data/lib/postboost/models/free_tool_generate_qr_code_request.rb +1 -1
  174. data/lib/postboost/models/free_tool_generate_qr_code_request_utm.rb +1 -1
  175. data/lib/postboost/models/free_tool_generate_qr_code_response.rb +1 -1
  176. data/lib/postboost/models/free_tool_generate_social_posts_from_blog_request.rb +1 -1
  177. data/lib/postboost/models/free_tool_generate_social_posts_from_blog_response.rb +1 -1
  178. data/lib/postboost/models/free_tool_generate_social_posts_from_blog_response_posts_inner.rb +1 -1
  179. data/lib/postboost/models/free_tool_generate_social_posts_from_blog_response_source.rb +1 -1
  180. data/lib/postboost/models/free_tool_generate_social_posts_from_blog_response_warnings_inner.rb +1 -1
  181. data/lib/postboost/models/free_tool_get_best_times_to_post_response.rb +1 -1
  182. data/lib/postboost/models/free_tool_get_best_times_to_post_response_networks_inner.rb +1 -1
  183. data/lib/postboost/models/free_tool_get_hook_templates_response.rb +1 -1
  184. data/lib/postboost/models/free_tool_get_hook_templates_response_hooks_inner.rb +1 -1
  185. data/lib/postboost/models/free_tool_get_image_sizes_response.rb +1 -1
  186. data/lib/postboost/models/free_tool_get_image_sizes_response_sizes_inner.rb +1 -1
  187. data/lib/postboost/models/free_tool_get_image_sizes_response_sources_inner.rb +1 -1
  188. data/lib/postboost/models/free_tool_get_video_specs_response.rb +1 -1
  189. data/lib/postboost/models/free_tool_get_video_specs_response_specs_inner.rb +1 -1
  190. data/lib/postboost/models/free_tool_get_video_specs_response_specs_inner_limits.rb +1 -1
  191. data/lib/postboost/models/free_tool_list.rb +1 -1
  192. data/lib/postboost/models/free_tool_list_item.rb +1 -1
  193. data/lib/postboost/models/free_tool_plan_content_calendar_request.rb +338 -0
  194. data/lib/postboost/models/free_tool_plan_content_calendar_request_posts_per_week.rb +635 -0
  195. data/lib/postboost/models/free_tool_plan_content_calendar_request_times.rb +558 -0
  196. data/lib/postboost/models/free_tool_plan_content_calendar_response.rb +256 -0
  197. data/lib/postboost/models/free_tool_plan_content_calendar_response_slots_inner.rb +262 -0
  198. data/lib/postboost/models/free_tool_preview_post_request.rb +1 -1
  199. data/lib/postboost/models/free_tool_preview_post_response.rb +1 -1
  200. data/lib/postboost/models/free_tool_preview_post_response_networks_inner.rb +1 -1
  201. data/lib/postboost/models/free_tool_split_thread_request.rb +1 -1
  202. data/lib/postboost/models/free_tool_split_thread_response.rb +1 -1
  203. data/lib/postboost/models/free_tool_split_thread_response_posts_inner.rb +1 -1
  204. data/lib/postboost/models/get_account_health200_response.rb +1 -1
  205. data/lib/postboost/models/get_brand_voice200_response.rb +1 -1
  206. data/lib/postboost/models/get_competitor200_response.rb +1 -1
  207. data/lib/postboost/models/get_inbox_conversation200_response.rb +1 -1
  208. data/lib/postboost/models/get_posting_schedule200_response.rb +1 -1
  209. data/lib/postboost/models/get_remote_upload_status200_response.rb +1 -1
  210. data/lib/postboost/models/get_report_branding200_response.rb +1 -1
  211. data/lib/postboost/models/get_repurpose_run200_response.rb +1 -1
  212. data/lib/postboost/models/guardrail_error.rb +1 -1
  213. data/lib/postboost/models/hashtag_group.rb +1 -1
  214. data/lib/postboost/models/hashtag_group_input.rb +1 -1
  215. data/lib/postboost/models/image_alt_text200_response.rb +1 -1
  216. data/lib/postboost/models/image_alt_text_input.rb +1 -1
  217. data/lib/postboost/models/image_alt_text_response.rb +1 -1
  218. data/lib/postboost/models/image_credit_balance.rb +1 -1
  219. data/lib/postboost/models/image_edit_input.rb +1 -1
  220. data/lib/postboost/models/image_generate200_response.rb +1 -1
  221. data/lib/postboost/models/image_generate429_response.rb +1 -1
  222. data/lib/postboost/models/image_generate_input.rb +1 -1
  223. data/lib/postboost/models/image_generation_response.rb +1 -1
  224. data/lib/postboost/models/image_prompt200_response.rb +1 -1
  225. data/lib/postboost/models/image_prompt429_response.rb +1 -1
  226. data/lib/postboost/models/image_prompt_input.rb +1 -1
  227. data/lib/postboost/models/image_prompt_response.rb +1 -1
  228. data/lib/postboost/models/image_variations200_response.rb +1 -1
  229. data/lib/postboost/models/image_variations_input.rb +1 -1
  230. data/lib/postboost/models/image_variations_response.rb +1 -1
  231. data/lib/postboost/models/inbox_author.rb +1 -1
  232. data/lib/postboost/models/inbox_conversation.rb +1 -1
  233. data/lib/postboost/models/inbox_conversation_account.rb +1 -1
  234. data/lib/postboost/models/inbox_conversation_update.rb +1 -1
  235. data/lib/postboost/models/inbox_message.rb +1 -1
  236. data/lib/postboost/models/inbox_message_author.rb +1 -1
  237. data/lib/postboost/models/inbox_reply_draft.rb +1 -1
  238. data/lib/postboost/models/inbox_reply_draft_approve.rb +1 -1
  239. data/lib/postboost/models/inbox_reply_draft_edit.rb +1 -1
  240. data/lib/postboost/models/inbox_reply_draft_input.rb +1 -1
  241. data/lib/postboost/models/initiate_chunked_upload201_response.rb +1 -1
  242. data/lib/postboost/models/initiate_chunked_upload_request.rb +1 -1
  243. data/lib/postboost/models/initiate_remote_upload201_response.rb +1 -1
  244. data/lib/postboost/models/initiate_remote_upload201_response_one_of.rb +1 -1
  245. data/lib/postboost/models/initiate_remote_upload_request.rb +1 -1
  246. data/lib/postboost/models/learn_brand_voice_input.rb +1 -1
  247. data/lib/postboost/models/learn_brand_voice_response.rb +1 -1
  248. data/lib/postboost/models/learn_brand_voice_response_meta.rb +1 -1
  249. data/lib/postboost/models/list_account_groups200_response.rb +1 -1
  250. data/lib/postboost/models/list_accounts200_response.rb +1 -1
  251. data/lib/postboost/models/list_agent_proposals200_response.rb +1 -1
  252. data/lib/postboost/models/list_agent_runs200_response.rb +1 -1
  253. data/lib/postboost/models/list_agents200_response.rb +1 -1
  254. data/lib/postboost/models/list_api_activity200_response.rb +1 -1
  255. data/lib/postboost/models/list_api_keys200_response.rb +1 -1
  256. data/lib/postboost/models/list_competitors200_response.rb +1 -1
  257. data/lib/postboost/models/list_hashtag_groups200_response.rb +1 -1
  258. data/lib/postboost/models/list_inbox_conversations200_response.rb +1 -1
  259. data/lib/postboost/models/list_inbox_reply_drafts200_response.rb +1 -1
  260. data/lib/postboost/models/list_media200_response.rb +1 -1
  261. data/lib/postboost/models/list_media_folders200_response.rb +1 -1
  262. data/lib/postboost/models/list_mentions200_response.rb +1 -1
  263. data/lib/postboost/models/list_my_workspaces200_response.rb +1 -1
  264. data/lib/postboost/models/list_posts200_response.rb +1 -1
  265. data/lib/postboost/models/list_receipts200_response.rb +1 -1
  266. data/lib/postboost/models/list_recycling_rules200_response.rb +1 -1
  267. data/lib/postboost/models/list_recycling_runs200_response.rb +1 -1
  268. data/lib/postboost/models/list_report_exports200_response.rb +1 -1
  269. data/lib/postboost/models/list_reseller_clients200_response.rb +1 -1
  270. data/lib/postboost/models/list_rss_feeds200_response.rb +1 -1
  271. data/lib/postboost/models/list_tags200_response.rb +1 -1
  272. data/lib/postboost/models/list_templates200_response.rb +1 -1
  273. data/lib/postboost/models/list_users200_response.rb +1 -1
  274. data/lib/postboost/models/list_webhook_subscriptions200_response.rb +1 -1
  275. data/lib/postboost/models/list_workspaces200_response.rb +1 -1
  276. data/lib/postboost/models/media.rb +1 -1
  277. data/lib/postboost/models/media_base64_input.rb +1 -1
  278. data/lib/postboost/models/media_folder.rb +1 -1
  279. data/lib/postboost/models/media_folder_input.rb +1 -1
  280. data/lib/postboost/models/media_folder_ref.rb +1 -1
  281. data/lib/postboost/models/mention.rb +1 -1
  282. data/lib/postboost/models/mention_identity.rb +1 -1
  283. data/lib/postboost/models/mention_identity_input.rb +1 -1
  284. data/lib/postboost/models/mention_input.rb +1 -1
  285. data/lib/postboost/models/message_only.rb +1 -1
  286. data/lib/postboost/models/pagination_meta.rb +1 -1
  287. data/lib/postboost/models/pagination_meta_links.rb +1 -1
  288. data/lib/postboost/models/pagination_meta_meta.rb +1 -1
  289. data/lib/postboost/models/poll_rss_feed200_response.rb +1 -1
  290. data/lib/postboost/models/post.rb +1 -1
  291. data/lib/postboost/models/post_analytics.rb +1 -1
  292. data/lib/postboost/models/post_content.rb +1 -1
  293. data/lib/postboost/models/post_input.rb +1 -1
  294. data/lib/postboost/models/post_options_instagram.rb +1 -1
  295. data/lib/postboost/models/post_options_tik_tok.rb +1 -1
  296. data/lib/postboost/models/post_options_youtube.rb +1 -1
  297. data/lib/postboost/models/post_status.rb +1 -1
  298. data/lib/postboost/models/post_version.rb +1 -1
  299. data/lib/postboost/models/post_version_options.rb +1 -1
  300. data/lib/postboost/models/post_warning.rb +1 -1
  301. data/lib/postboost/models/post_warnings.rb +1 -1
  302. data/lib/postboost/models/posting_schedule.rb +1 -1
  303. data/lib/postboost/models/posting_schedule_day.rb +1 -1
  304. data/lib/postboost/models/posting_schedule_day_times_inner.rb +1 -1
  305. data/lib/postboost/models/posting_schedule_input.rb +1 -1
  306. data/lib/postboost/models/posting_time_slot.rb +1 -1
  307. data/lib/postboost/models/posting_times.rb +1 -1
  308. data/lib/postboost/models/posting_times_best_inner.rb +1 -1
  309. data/lib/postboost/models/posting_times_day_intervals_inner_inner.rb +1 -1
  310. data/lib/postboost/models/posting_times_days_inner.rb +1 -1
  311. data/lib/postboost/models/preflight_result.rb +1 -1
  312. data/lib/postboost/models/public_workspace.rb +1 -1
  313. data/lib/postboost/models/public_workspace_pivot.rb +1 -1
  314. data/lib/postboost/models/publish_progress.rb +1 -1
  315. data/lib/postboost/models/queue_slots.rb +1 -1
  316. data/lib/postboost/models/receipt.rb +1 -1
  317. data/lib/postboost/models/receipt_input.rb +1 -1
  318. data/lib/postboost/models/receipt_update_input.rb +1 -1
  319. data/lib/postboost/models/recommended_posting_times.rb +1 -1
  320. data/lib/postboost/models/reconnect_link.rb +1 -1
  321. data/lib/postboost/models/recycling_rule.rb +1 -1
  322. data/lib/postboost/models/recycling_rule_input.rb +1 -1
  323. data/lib/postboost/models/recycling_rule_settings.rb +1 -1
  324. data/lib/postboost/models/recycling_rule_update.rb +1 -1
  325. data/lib/postboost/models/recycling_run.rb +1 -1
  326. data/lib/postboost/models/remove_generic_subscription422_response.rb +1 -1
  327. data/lib/postboost/models/remove_user_from_workspace_request.rb +1 -1
  328. data/lib/postboost/models/report_branding.rb +1 -1
  329. data/lib/postboost/models/report_branding_input.rb +1 -1
  330. data/lib/postboost/models/report_export.rb +1 -1
  331. data/lib/postboost/models/report_export_input.rb +1 -1
  332. data/lib/postboost/models/repurpose_content200_response.rb +1 -1
  333. data/lib/postboost/models/repurpose_content202_response.rb +1 -1
  334. data/lib/postboost/models/repurpose_content500_response.rb +1 -1
  335. data/lib/postboost/models/repurpose_input.rb +1 -1
  336. data/lib/postboost/models/repurpose_input_theme.rb +1 -1
  337. data/lib/postboost/models/repurpose_result.rb +1 -1
  338. data/lib/postboost/models/repurpose_result_media.rb +1 -1
  339. data/lib/postboost/models/repurpose_result_source.rb +1 -1
  340. data/lib/postboost/models/repurpose_run.rb +1 -1
  341. data/lib/postboost/models/repurpose_run_accepted.rb +1 -1
  342. data/lib/postboost/models/repurpose_slide.rb +1 -1
  343. data/lib/postboost/models/reseller_client.rb +1 -1
  344. data/lib/postboost/models/reseller_client_input.rb +1 -1
  345. data/lib/postboost/models/reseller_client_usage.rb +1 -1
  346. data/lib/postboost/models/retry_post_account_result.rb +1 -1
  347. data/lib/postboost/models/rss_feed.rb +1 -1
  348. data/lib/postboost/models/rss_feed_input.rb +1 -1
  349. data/lib/postboost/models/rss_feed_update.rb +1 -1
  350. data/lib/postboost/models/run_agent202_response.rb +1 -1
  351. data/lib/postboost/models/schedule_post_request.rb +1 -1
  352. data/lib/postboost/models/schedule_result.rb +1 -1
  353. data/lib/postboost/models/subscription.rb +1 -1
  354. data/lib/postboost/models/subscription_input.rb +1 -1
  355. data/lib/postboost/models/subscription_status.rb +1 -1
  356. data/lib/postboost/models/subscription_update_input.rb +1 -1
  357. data/lib/postboost/models/tag.rb +1 -1
  358. data/lib/postboost/models/tag_input.rb +1 -1
  359. data/lib/postboost/models/template.rb +1 -1
  360. data/lib/postboost/models/template_content_item.rb +1 -1
  361. data/lib/postboost/models/template_input.rb +1 -1
  362. data/lib/postboost/models/template_input_content_inner.rb +1 -1
  363. data/lib/postboost/models/update_media_request.rb +1 -1
  364. data/lib/postboost/models/update_post200_response.rb +1 -1
  365. data/lib/postboost/models/upload_chunk201_response.rb +1 -1
  366. data/lib/postboost/models/user.rb +1 -1
  367. data/lib/postboost/models/user_input.rb +1 -1
  368. data/lib/postboost/models/user_update_input.rb +1 -1
  369. data/lib/postboost/models/webhook_envelope.rb +1 -1
  370. data/lib/postboost/models/webhook_event_name.rb +1 -1
  371. data/lib/postboost/models/webhook_event_payload.rb +1 -1
  372. data/lib/postboost/models/webhook_subscription.rb +1 -1
  373. data/lib/postboost/models/webhook_subscription_input.rb +1 -1
  374. data/lib/postboost/models/workspace.rb +1 -1
  375. data/lib/postboost/models/workspace_agent.rb +1 -1
  376. data/lib/postboost/models/workspace_agent_input.rb +1 -1
  377. data/lib/postboost/models/workspace_agent_settings.rb +1 -1
  378. data/lib/postboost/models/workspace_agent_update.rb +1 -1
  379. data/lib/postboost/models/workspace_input.rb +1 -1
  380. data/lib/postboost/models/workspace_user_input.rb +1 -1
  381. data/lib/postboost/models/x_usage.rb +1 -1
  382. data/lib/postboost/models/x_usage_counter.rb +1 -1
  383. data/lib/postboost/version.rb +2 -2
  384. data/lib/postboost.rb +6 -1
  385. data/postboost.gemspec +1 -1
  386. data/spec/api/account_groups_api_spec.rb +1 -1
  387. data/spec/api/accounts_api_spec.rb +1 -1
  388. data/spec/api/activity_api_spec.rb +1 -1
  389. data/spec/api/agents_api_spec.rb +1 -1
  390. data/spec/api/ai_api_spec.rb +1 -1
  391. data/spec/api/analytics_api_spec.rb +1 -1
  392. data/spec/api/competitors_api_spec.rb +1 -1
  393. data/spec/api/free_tools_api_spec.rb +13 -1
  394. data/spec/api/hashtag_groups_api_spec.rb +1 -1
  395. data/spec/api/inbox_api_spec.rb +1 -1
  396. data/spec/api/media_api_spec.rb +1 -1
  397. data/spec/api/mentions_api_spec.rb +1 -1
  398. data/spec/api/posting_schedule_api_spec.rb +1 -1
  399. data/spec/api/posts_api_spec.rb +1 -1
  400. data/spec/api/receipts_api_spec.rb +1 -1
  401. data/spec/api/subscriptions_api_spec.rb +1 -1
  402. data/spec/api/tags_api_spec.rb +1 -1
  403. data/spec/api/templates_api_spec.rb +1 -1
  404. data/spec/api/users_api_spec.rb +1 -1
  405. data/spec/api/webhooks_api_spec.rb +1 -1
  406. data/spec/api/workspaces_api_spec.rb +1 -1
  407. data/spec/models/account_analytics_initial_sync_spec.rb +1 -1
  408. data/spec/models/account_analytics_spec.rb +1 -1
  409. data/spec/models/account_connection_health_reconnect_reason_spec.rb +1 -1
  410. data/spec/models/account_connection_health_spec.rb +1 -1
  411. data/spec/models/account_errors_inner_one_of_spec.rb +1 -1
  412. data/spec/models/account_errors_inner_spec.rb +1 -1
  413. data/spec/models/account_group_input_spec.rb +1 -1
  414. data/spec/models/account_group_spec.rb +1 -1
  415. data/spec/models/account_health_daily_cap_spec.rb +1 -1
  416. data/spec/models/account_health_spec.rb +1 -1
  417. data/spec/models/account_schedule_spec.rb +1 -1
  418. data/spec/models/account_spec.rb +1 -1
  419. data/spec/models/add_competitor202_response_spec.rb +1 -1
  420. data/spec/models/add_competitor409_response_spec.rb +1 -1
  421. data/spec/models/add_generic_subscription_request_spec.rb +1 -1
  422. data/spec/models/add_post_to_queue_request_spec.rb +1 -1
  423. data/spec/models/agent_page_meta_spec.rb +1 -1
  424. data/spec/models/agent_proposal_decision_spec.rb +1 -1
  425. data/spec/models/agent_proposal_spec.rb +1 -1
  426. data/spec/models/agent_run_spec.rb +1 -1
  427. data/spec/models/ai_credits_spec.rb +1 -1
  428. data/spec/models/ai_usage_spec.rb +1 -1
  429. data/spec/models/ai_usage_text_spec.rb +1 -1
  430. data/spec/models/analytics_period_spec.rb +1 -1
  431. data/spec/models/analytics_summary_data_spec.rb +1 -1
  432. data/spec/models/analytics_summary_spec.rb +1 -1
  433. data/spec/models/api_activity_outcome_spec.rb +1 -1
  434. data/spec/models/api_activity_spec.rb +1 -1
  435. data/spec/models/api_key_ability_spec.rb +1 -1
  436. data/spec/models/api_key_input_spec.rb +1 -1
  437. data/spec/models/api_key_spec.rb +1 -1
  438. data/spec/models/approve_agent_proposal200_response_spec.rb +1 -1
  439. data/spec/models/approve_agent_proposal409_response_spec.rb +1 -1
  440. data/spec/models/approve_inbox_reply_draft403_response_spec.rb +1 -1
  441. data/spec/models/approve_post_request_spec.rb +1 -1
  442. data/spec/models/best_posting_times_spec.rb +1 -1
  443. data/spec/models/best_posting_times_times_inner_spec.rb +1 -1
  444. data/spec/models/blog_to_social200_response_spec.rb +1 -1
  445. data/spec/models/blog_to_social429_response_spec.rb +1 -1
  446. data/spec/models/blog_to_social_caption_spec.rb +1 -1
  447. data/spec/models/blog_to_social_input_spec.rb +1 -1
  448. data/spec/models/blog_to_social_media_spec.rb +1 -1
  449. data/spec/models/blog_to_social_response_spec.rb +1 -1
  450. data/spec/models/brand_voice_input_spec.rb +1 -1
  451. data/spec/models/brand_voice_meta_spec.rb +1 -1
  452. data/spec/models/brand_voice_spec.rb +1 -1
  453. data/spec/models/cancel_subscription422_response_errors_spec.rb +1 -1
  454. data/spec/models/cancel_subscription422_response_spec.rb +1 -1
  455. data/spec/models/cancel_subscription_request_spec.rb +1 -1
  456. data/spec/models/change_subscription_plan_request_spec.rb +1 -1
  457. data/spec/models/channel_account_spec.rb +1 -1
  458. data/spec/models/checkout_subscription200_response_spec.rb +1 -1
  459. data/spec/models/checkout_subscription_request_spec.rb +1 -1
  460. data/spec/models/coded_error_spec.rb +1 -1
  461. data/spec/models/competitor_detail_spec.rb +1 -1
  462. data/spec/models/competitor_input_spec.rb +1 -1
  463. data/spec/models/competitor_media_spec.rb +1 -1
  464. data/spec/models/competitor_snapshot_spec.rb +1 -1
  465. data/spec/models/competitor_spec.rb +1 -1
  466. data/spec/models/complete_chunked_upload_request_spec.rb +1 -1
  467. data/spec/models/connect_channel_input_spec.rb +1 -1
  468. data/spec/models/connect_link_spec.rb +1 -1
  469. data/spec/models/create_account_group201_response_spec.rb +1 -1
  470. data/spec/models/create_agent201_response_spec.rb +1 -1
  471. data/spec/models/create_api_key201_response_data_spec.rb +1 -1
  472. data/spec/models/create_api_key201_response_spec.rb +1 -1
  473. data/spec/models/create_connect_link_request_spec.rb +1 -1
  474. data/spec/models/create_hashtag_group201_response_spec.rb +1 -1
  475. data/spec/models/create_inbox_reply_draft201_response_spec.rb +1 -1
  476. data/spec/models/create_media_folder_request_spec.rb +1 -1
  477. data/spec/models/create_mention201_response_spec.rb +1 -1
  478. data/spec/models/create_post201_response_spec.rb +1 -1
  479. data/spec/models/create_recycling_rule201_response_spec.rb +1 -1
  480. data/spec/models/create_report_export201_response_spec.rb +1 -1
  481. data/spec/models/create_reseller_client201_response_spec.rb +1 -1
  482. data/spec/models/create_rss_feed201_response_spec.rb +1 -1
  483. data/spec/models/create_template201_response_spec.rb +1 -1
  484. data/spec/models/create_webhook_subscription201_response_data_spec.rb +1 -1
  485. data/spec/models/create_webhook_subscription201_response_spec.rb +1 -1
  486. data/spec/models/delete_agent200_response_spec.rb +1 -1
  487. data/spec/models/delete_media_bulk_request_items_inner_spec.rb +1 -1
  488. data/spec/models/delete_media_bulk_request_spec.rb +1 -1
  489. data/spec/models/delete_media_folder_request_spec.rb +1 -1
  490. data/spec/models/delete_mode_spec.rb +1 -1
  491. data/spec/models/delete_post_request_spec.rb +1 -1
  492. data/spec/models/delete_posts_bulk_request_spec.rb +1 -1
  493. data/spec/models/delete_receipts_bulk_request_spec.rb +1 -1
  494. data/spec/models/delete_result_spec.rb +1 -1
  495. data/spec/models/delete_user400_response_spec.rb +1 -1
  496. data/spec/models/delete_users_bulk_request_spec.rb +1 -1
  497. data/spec/models/delete_workspaces_bulk_request_spec.rb +1 -1
  498. data/spec/models/free_tool_build_utm_url_request_spec.rb +1 -1
  499. data/spec/models/free_tool_build_utm_url_response_spec.rb +1 -1
  500. data/spec/models/free_tool_calculate_aspect_ratio_request_spec.rb +1 -1
  501. data/spec/models/free_tool_calculate_aspect_ratio_response_matches_inner_spec.rb +1 -1
  502. data/spec/models/free_tool_calculate_aspect_ratio_response_rounding_spec.rb +1 -1
  503. data/spec/models/free_tool_calculate_aspect_ratio_response_spec.rb +1 -1
  504. data/spec/models/free_tool_calculate_crop_request_spec.rb +1 -1
  505. data/spec/models/free_tool_calculate_crop_response_crop_spec.rb +1 -1
  506. data/spec/models/free_tool_calculate_crop_response_image_spec.rb +1 -1
  507. data/spec/models/free_tool_calculate_crop_response_output_spec.rb +1 -1
  508. data/spec/models/free_tool_calculate_crop_response_spec.rb +1 -1
  509. data/spec/models/free_tool_calculate_engagement_rate_request_spec.rb +1 -1
  510. data/spec/models/free_tool_calculate_engagement_rate_response_spec.rb +1 -1
  511. data/spec/models/free_tool_check_link_preview_request_spec.rb +1 -1
  512. data/spec/models/free_tool_check_link_preview_response_image_spec.rb +1 -1
  513. data/spec/models/free_tool_check_link_preview_response_previews_value_spec.rb +1 -1
  514. data/spec/models/free_tool_check_link_preview_response_redirects_inner_spec.rb +1 -1
  515. data/spec/models/free_tool_check_link_preview_response_spec.rb +1 -1
  516. data/spec/models/free_tool_check_link_preview_response_tags_spec.rb +1 -1
  517. data/spec/models/free_tool_check_post_request_media_spec.rb +1 -1
  518. data/spec/models/free_tool_check_post_request_spec.rb +1 -1
  519. data/spec/models/free_tool_check_post_response_networks_inner_errors_inner_spec.rb +1 -1
  520. data/spec/models/free_tool_check_post_response_networks_inner_spec.rb +1 -1
  521. data/spec/models/free_tool_check_post_response_spec.rb +1 -1
  522. data/spec/models/free_tool_check_youtube_thumbnail_request_spec.rb +1 -1
  523. data/spec/models/free_tool_check_youtube_thumbnail_response_checks_inner_spec.rb +1 -1
  524. data/spec/models/free_tool_check_youtube_thumbnail_response_spec.rb +1 -1
  525. data/spec/models/free_tool_clean_text_request_spec.rb +1 -1
  526. data/spec/models/free_tool_clean_text_response_changes_inner_spec.rb +1 -1
  527. data/spec/models/free_tool_clean_text_response_flags_inner_spec.rb +1 -1
  528. data/spec/models/free_tool_clean_text_response_spec.rb +1 -1
  529. data/spec/models/free_tool_count_characters_request_spec.rb +1 -1
  530. data/spec/models/free_tool_count_characters_response_networks_inner_spec.rb +1 -1
  531. data/spec/models/free_tool_count_characters_response_spec.rb +1 -1
  532. data/spec/models/free_tool_error_spec.rb +1 -1
  533. data/spec/models/free_tool_format_instagram_caption_request_spec.rb +1 -1
  534. data/spec/models/free_tool_format_instagram_caption_response_spec.rb +1 -1
  535. data/spec/models/free_tool_format_linked_in_post_request_spec.rb +1 -1
  536. data/spec/models/free_tool_format_linked_in_post_response_spec.rb +1 -1
  537. data/spec/models/free_tool_generate_caption_request_spec.rb +1 -1
  538. data/spec/models/free_tool_generate_caption_response_spec.rb +1 -1
  539. data/spec/models/free_tool_generate_fancy_text_request_spec.rb +1 -1
  540. data/spec/models/free_tool_generate_fancy_text_response_spec.rb +1 -1
  541. data/spec/models/free_tool_generate_fancy_text_response_styles_inner_spec.rb +1 -1
  542. data/spec/models/free_tool_generate_hashtags_request_spec.rb +1 -1
  543. data/spec/models/free_tool_generate_hashtags_response_spec.rb +1 -1
  544. data/spec/models/free_tool_generate_hooks_request_spec.rb +1 -1
  545. data/spec/models/free_tool_generate_hooks_response_hooks_inner_spec.rb +1 -1
  546. data/spec/models/free_tool_generate_hooks_response_spec.rb +1 -1
  547. data/spec/models/free_tool_generate_qr_code_request_spec.rb +1 -1
  548. data/spec/models/free_tool_generate_qr_code_request_utm_spec.rb +1 -1
  549. data/spec/models/free_tool_generate_qr_code_response_spec.rb +1 -1
  550. data/spec/models/free_tool_generate_social_posts_from_blog_request_spec.rb +1 -1
  551. data/spec/models/free_tool_generate_social_posts_from_blog_response_posts_inner_spec.rb +1 -1
  552. data/spec/models/free_tool_generate_social_posts_from_blog_response_source_spec.rb +1 -1
  553. data/spec/models/free_tool_generate_social_posts_from_blog_response_spec.rb +1 -1
  554. data/spec/models/free_tool_generate_social_posts_from_blog_response_warnings_inner_spec.rb +1 -1
  555. data/spec/models/free_tool_get_best_times_to_post_response_networks_inner_spec.rb +1 -1
  556. data/spec/models/free_tool_get_best_times_to_post_response_spec.rb +1 -1
  557. data/spec/models/free_tool_get_hook_templates_response_hooks_inner_spec.rb +1 -1
  558. data/spec/models/free_tool_get_hook_templates_response_spec.rb +1 -1
  559. data/spec/models/free_tool_get_image_sizes_response_sizes_inner_spec.rb +1 -1
  560. data/spec/models/free_tool_get_image_sizes_response_sources_inner_spec.rb +1 -1
  561. data/spec/models/free_tool_get_image_sizes_response_spec.rb +1 -1
  562. data/spec/models/free_tool_get_video_specs_response_spec.rb +1 -1
  563. data/spec/models/free_tool_get_video_specs_response_specs_inner_limits_spec.rb +1 -1
  564. data/spec/models/free_tool_get_video_specs_response_specs_inner_spec.rb +1 -1
  565. data/spec/models/free_tool_list_item_spec.rb +1 -1
  566. data/spec/models/free_tool_list_spec.rb +1 -1
  567. data/spec/models/free_tool_plan_content_calendar_request_posts_per_week_spec.rb +96 -0
  568. data/spec/models/free_tool_plan_content_calendar_request_spec.rb +60 -0
  569. data/spec/models/free_tool_plan_content_calendar_request_times_spec.rb +96 -0
  570. data/spec/models/free_tool_plan_content_calendar_response_slots_inner_spec.rb +66 -0
  571. data/spec/models/free_tool_plan_content_calendar_response_spec.rb +60 -0
  572. data/spec/models/free_tool_preview_post_request_spec.rb +1 -1
  573. data/spec/models/free_tool_preview_post_response_networks_inner_spec.rb +1 -1
  574. data/spec/models/free_tool_preview_post_response_spec.rb +1 -1
  575. data/spec/models/free_tool_split_thread_request_spec.rb +1 -1
  576. data/spec/models/free_tool_split_thread_response_posts_inner_spec.rb +1 -1
  577. data/spec/models/free_tool_split_thread_response_spec.rb +1 -1
  578. data/spec/models/get_account_health200_response_spec.rb +1 -1
  579. data/spec/models/get_brand_voice200_response_spec.rb +1 -1
  580. data/spec/models/get_competitor200_response_spec.rb +1 -1
  581. data/spec/models/get_inbox_conversation200_response_spec.rb +1 -1
  582. data/spec/models/get_posting_schedule200_response_spec.rb +1 -1
  583. data/spec/models/get_remote_upload_status200_response_spec.rb +1 -1
  584. data/spec/models/get_report_branding200_response_spec.rb +1 -1
  585. data/spec/models/get_repurpose_run200_response_spec.rb +1 -1
  586. data/spec/models/guardrail_error_spec.rb +1 -1
  587. data/spec/models/hashtag_group_input_spec.rb +1 -1
  588. data/spec/models/hashtag_group_spec.rb +1 -1
  589. data/spec/models/image_alt_text200_response_spec.rb +1 -1
  590. data/spec/models/image_alt_text_input_spec.rb +1 -1
  591. data/spec/models/image_alt_text_response_spec.rb +1 -1
  592. data/spec/models/image_credit_balance_spec.rb +1 -1
  593. data/spec/models/image_edit_input_spec.rb +1 -1
  594. data/spec/models/image_generate200_response_spec.rb +1 -1
  595. data/spec/models/image_generate429_response_spec.rb +1 -1
  596. data/spec/models/image_generate_input_spec.rb +1 -1
  597. data/spec/models/image_generation_response_spec.rb +1 -1
  598. data/spec/models/image_prompt200_response_spec.rb +1 -1
  599. data/spec/models/image_prompt429_response_spec.rb +1 -1
  600. data/spec/models/image_prompt_input_spec.rb +1 -1
  601. data/spec/models/image_prompt_response_spec.rb +1 -1
  602. data/spec/models/image_variations200_response_spec.rb +1 -1
  603. data/spec/models/image_variations_input_spec.rb +1 -1
  604. data/spec/models/image_variations_response_spec.rb +1 -1
  605. data/spec/models/inbox_author_spec.rb +1 -1
  606. data/spec/models/inbox_conversation_account_spec.rb +1 -1
  607. data/spec/models/inbox_conversation_spec.rb +1 -1
  608. data/spec/models/inbox_conversation_update_spec.rb +1 -1
  609. data/spec/models/inbox_message_author_spec.rb +1 -1
  610. data/spec/models/inbox_message_spec.rb +1 -1
  611. data/spec/models/inbox_reply_draft_approve_spec.rb +1 -1
  612. data/spec/models/inbox_reply_draft_edit_spec.rb +1 -1
  613. data/spec/models/inbox_reply_draft_input_spec.rb +1 -1
  614. data/spec/models/inbox_reply_draft_spec.rb +1 -1
  615. data/spec/models/initiate_chunked_upload201_response_spec.rb +1 -1
  616. data/spec/models/initiate_chunked_upload_request_spec.rb +1 -1
  617. data/spec/models/initiate_remote_upload201_response_one_of_spec.rb +1 -1
  618. data/spec/models/initiate_remote_upload201_response_spec.rb +1 -1
  619. data/spec/models/initiate_remote_upload_request_spec.rb +1 -1
  620. data/spec/models/learn_brand_voice_input_spec.rb +1 -1
  621. data/spec/models/learn_brand_voice_response_meta_spec.rb +1 -1
  622. data/spec/models/learn_brand_voice_response_spec.rb +1 -1
  623. data/spec/models/list_account_groups200_response_spec.rb +1 -1
  624. data/spec/models/list_accounts200_response_spec.rb +1 -1
  625. data/spec/models/list_agent_proposals200_response_spec.rb +1 -1
  626. data/spec/models/list_agent_runs200_response_spec.rb +1 -1
  627. data/spec/models/list_agents200_response_spec.rb +1 -1
  628. data/spec/models/list_api_activity200_response_spec.rb +1 -1
  629. data/spec/models/list_api_keys200_response_spec.rb +1 -1
  630. data/spec/models/list_competitors200_response_spec.rb +1 -1
  631. data/spec/models/list_hashtag_groups200_response_spec.rb +1 -1
  632. data/spec/models/list_inbox_conversations200_response_spec.rb +1 -1
  633. data/spec/models/list_inbox_reply_drafts200_response_spec.rb +1 -1
  634. data/spec/models/list_media200_response_spec.rb +1 -1
  635. data/spec/models/list_media_folders200_response_spec.rb +1 -1
  636. data/spec/models/list_mentions200_response_spec.rb +1 -1
  637. data/spec/models/list_my_workspaces200_response_spec.rb +1 -1
  638. data/spec/models/list_posts200_response_spec.rb +1 -1
  639. data/spec/models/list_receipts200_response_spec.rb +1 -1
  640. data/spec/models/list_recycling_rules200_response_spec.rb +1 -1
  641. data/spec/models/list_recycling_runs200_response_spec.rb +1 -1
  642. data/spec/models/list_report_exports200_response_spec.rb +1 -1
  643. data/spec/models/list_reseller_clients200_response_spec.rb +1 -1
  644. data/spec/models/list_rss_feeds200_response_spec.rb +1 -1
  645. data/spec/models/list_tags200_response_spec.rb +1 -1
  646. data/spec/models/list_templates200_response_spec.rb +1 -1
  647. data/spec/models/list_users200_response_spec.rb +1 -1
  648. data/spec/models/list_webhook_subscriptions200_response_spec.rb +1 -1
  649. data/spec/models/list_workspaces200_response_spec.rb +1 -1
  650. data/spec/models/media_base64_input_spec.rb +1 -1
  651. data/spec/models/media_folder_input_spec.rb +1 -1
  652. data/spec/models/media_folder_ref_spec.rb +1 -1
  653. data/spec/models/media_folder_spec.rb +1 -1
  654. data/spec/models/media_spec.rb +1 -1
  655. data/spec/models/mention_identity_input_spec.rb +1 -1
  656. data/spec/models/mention_identity_spec.rb +1 -1
  657. data/spec/models/mention_input_spec.rb +1 -1
  658. data/spec/models/mention_spec.rb +1 -1
  659. data/spec/models/message_only_spec.rb +1 -1
  660. data/spec/models/pagination_meta_links_spec.rb +1 -1
  661. data/spec/models/pagination_meta_meta_spec.rb +1 -1
  662. data/spec/models/pagination_meta_spec.rb +1 -1
  663. data/spec/models/poll_rss_feed200_response_spec.rb +1 -1
  664. data/spec/models/post_analytics_spec.rb +1 -1
  665. data/spec/models/post_content_spec.rb +1 -1
  666. data/spec/models/post_input_spec.rb +1 -1
  667. data/spec/models/post_options_instagram_spec.rb +1 -1
  668. data/spec/models/post_options_tik_tok_spec.rb +1 -1
  669. data/spec/models/post_options_youtube_spec.rb +1 -1
  670. data/spec/models/post_spec.rb +1 -1
  671. data/spec/models/post_status_spec.rb +1 -1
  672. data/spec/models/post_version_options_spec.rb +1 -1
  673. data/spec/models/post_version_spec.rb +1 -1
  674. data/spec/models/post_warning_spec.rb +1 -1
  675. data/spec/models/post_warnings_spec.rb +1 -1
  676. data/spec/models/posting_schedule_day_spec.rb +1 -1
  677. data/spec/models/posting_schedule_day_times_inner_spec.rb +1 -1
  678. data/spec/models/posting_schedule_input_spec.rb +1 -1
  679. data/spec/models/posting_schedule_spec.rb +1 -1
  680. data/spec/models/posting_time_slot_spec.rb +1 -1
  681. data/spec/models/posting_times_best_inner_spec.rb +1 -1
  682. data/spec/models/posting_times_day_intervals_inner_inner_spec.rb +1 -1
  683. data/spec/models/posting_times_days_inner_spec.rb +1 -1
  684. data/spec/models/posting_times_spec.rb +1 -1
  685. data/spec/models/preflight_result_spec.rb +1 -1
  686. data/spec/models/public_workspace_pivot_spec.rb +1 -1
  687. data/spec/models/public_workspace_spec.rb +1 -1
  688. data/spec/models/publish_progress_spec.rb +1 -1
  689. data/spec/models/queue_slots_spec.rb +1 -1
  690. data/spec/models/receipt_input_spec.rb +1 -1
  691. data/spec/models/receipt_spec.rb +1 -1
  692. data/spec/models/receipt_update_input_spec.rb +1 -1
  693. data/spec/models/recommended_posting_times_spec.rb +1 -1
  694. data/spec/models/reconnect_link_spec.rb +1 -1
  695. data/spec/models/recycling_rule_input_spec.rb +1 -1
  696. data/spec/models/recycling_rule_settings_spec.rb +1 -1
  697. data/spec/models/recycling_rule_spec.rb +1 -1
  698. data/spec/models/recycling_rule_update_spec.rb +1 -1
  699. data/spec/models/recycling_run_spec.rb +1 -1
  700. data/spec/models/remove_generic_subscription422_response_spec.rb +1 -1
  701. data/spec/models/remove_user_from_workspace_request_spec.rb +1 -1
  702. data/spec/models/report_branding_input_spec.rb +1 -1
  703. data/spec/models/report_branding_spec.rb +1 -1
  704. data/spec/models/report_export_input_spec.rb +1 -1
  705. data/spec/models/report_export_spec.rb +1 -1
  706. data/spec/models/repurpose_content200_response_spec.rb +1 -1
  707. data/spec/models/repurpose_content202_response_spec.rb +1 -1
  708. data/spec/models/repurpose_content500_response_spec.rb +1 -1
  709. data/spec/models/repurpose_input_spec.rb +1 -1
  710. data/spec/models/repurpose_input_theme_spec.rb +1 -1
  711. data/spec/models/repurpose_result_media_spec.rb +1 -1
  712. data/spec/models/repurpose_result_source_spec.rb +1 -1
  713. data/spec/models/repurpose_result_spec.rb +1 -1
  714. data/spec/models/repurpose_run_accepted_spec.rb +1 -1
  715. data/spec/models/repurpose_run_spec.rb +1 -1
  716. data/spec/models/repurpose_slide_spec.rb +1 -1
  717. data/spec/models/reseller_client_input_spec.rb +1 -1
  718. data/spec/models/reseller_client_spec.rb +1 -1
  719. data/spec/models/reseller_client_usage_spec.rb +1 -1
  720. data/spec/models/retry_post_account_result_spec.rb +1 -1
  721. data/spec/models/rss_feed_input_spec.rb +1 -1
  722. data/spec/models/rss_feed_spec.rb +1 -1
  723. data/spec/models/rss_feed_update_spec.rb +1 -1
  724. data/spec/models/run_agent202_response_spec.rb +1 -1
  725. data/spec/models/schedule_post_request_spec.rb +1 -1
  726. data/spec/models/schedule_result_spec.rb +1 -1
  727. data/spec/models/subscription_input_spec.rb +1 -1
  728. data/spec/models/subscription_spec.rb +1 -1
  729. data/spec/models/subscription_status_spec.rb +1 -1
  730. data/spec/models/subscription_update_input_spec.rb +1 -1
  731. data/spec/models/tag_input_spec.rb +1 -1
  732. data/spec/models/tag_spec.rb +1 -1
  733. data/spec/models/template_content_item_spec.rb +1 -1
  734. data/spec/models/template_input_content_inner_spec.rb +1 -1
  735. data/spec/models/template_input_spec.rb +1 -1
  736. data/spec/models/template_spec.rb +1 -1
  737. data/spec/models/update_media_request_spec.rb +1 -1
  738. data/spec/models/update_post200_response_spec.rb +1 -1
  739. data/spec/models/upload_chunk201_response_spec.rb +1 -1
  740. data/spec/models/user_input_spec.rb +1 -1
  741. data/spec/models/user_spec.rb +1 -1
  742. data/spec/models/user_update_input_spec.rb +1 -1
  743. data/spec/models/webhook_envelope_spec.rb +1 -1
  744. data/spec/models/webhook_event_name_spec.rb +1 -1
  745. data/spec/models/webhook_event_payload_spec.rb +1 -1
  746. data/spec/models/webhook_subscription_input_spec.rb +1 -1
  747. data/spec/models/webhook_subscription_spec.rb +1 -1
  748. data/spec/models/workspace_agent_input_spec.rb +1 -1
  749. data/spec/models/workspace_agent_settings_spec.rb +1 -1
  750. data/spec/models/workspace_agent_spec.rb +1 -1
  751. data/spec/models/workspace_agent_update_spec.rb +1 -1
  752. data/spec/models/workspace_input_spec.rb +1 -1
  753. data/spec/models/workspace_spec.rb +1 -1
  754. data/spec/models/workspace_user_input_spec.rb +1 -1
  755. data/spec/models/x_usage_counter_spec.rb +1 -1
  756. data/spec/models/x_usage_spec.rb +1 -1
  757. data/spec/spec_helper.rb +1 -1
  758. metadata +21 -1
@@ -0,0 +1,635 @@
1
+ =begin
2
+ #PostBoost API
3
+
4
+ #The PostBoost REST API lets you publish, schedule, and analyze social media posts on every supported network from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account's daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
5
+
6
+ The version of the OpenAPI document: 1.44.0
7
+ Contact: hi@postboost.co
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.9.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module PostBoost
17
+ # Posts per week for each network you plan for (0 or missing = none).
18
+ class FreeToolPlanContentCalendarRequestPostsPerWeek
19
+ attr_accessor :instagram
20
+
21
+ attr_accessor :facebook
22
+
23
+ attr_accessor :linkedin
24
+
25
+ attr_accessor :x
26
+
27
+ attr_accessor :tiktok
28
+
29
+ attr_accessor :youtube
30
+
31
+ attr_accessor :pinterest
32
+
33
+ attr_accessor :threads
34
+
35
+ attr_accessor :bluesky
36
+
37
+ attr_accessor :mastodon
38
+
39
+ attr_accessor :gbp
40
+
41
+ # Attribute mapping from ruby-style variable name to JSON key.
42
+ def self.attribute_map
43
+ {
44
+ :'instagram' => :'instagram',
45
+ :'facebook' => :'facebook',
46
+ :'linkedin' => :'linkedin',
47
+ :'x' => :'x',
48
+ :'tiktok' => :'tiktok',
49
+ :'youtube' => :'youtube',
50
+ :'pinterest' => :'pinterest',
51
+ :'threads' => :'threads',
52
+ :'bluesky' => :'bluesky',
53
+ :'mastodon' => :'mastodon',
54
+ :'gbp' => :'gbp'
55
+ }
56
+ end
57
+
58
+ # Returns all the JSON keys this model knows about
59
+ def self.acceptable_attributes
60
+ attribute_map.values
61
+ end
62
+
63
+ # Attribute type mapping.
64
+ def self.openapi_types
65
+ {
66
+ :'instagram' => :'Integer',
67
+ :'facebook' => :'Integer',
68
+ :'linkedin' => :'Integer',
69
+ :'x' => :'Integer',
70
+ :'tiktok' => :'Integer',
71
+ :'youtube' => :'Integer',
72
+ :'pinterest' => :'Integer',
73
+ :'threads' => :'Integer',
74
+ :'bluesky' => :'Integer',
75
+ :'mastodon' => :'Integer',
76
+ :'gbp' => :'Integer'
77
+ }
78
+ end
79
+
80
+ # List of attributes with nullable: true
81
+ def self.openapi_nullable
82
+ Set.new([
83
+ ])
84
+ end
85
+
86
+ # Initializes the object
87
+ # @param [Hash] attributes Model attributes in the form of hash
88
+ def initialize(attributes = {})
89
+ if (!attributes.is_a?(Hash))
90
+ fail ArgumentError, "The input argument (attributes) must be a hash in `PostBoost::FreeToolPlanContentCalendarRequestPostsPerWeek` initialize method"
91
+ end
92
+
93
+ # check to see if the attribute exists and convert string to symbol for hash key
94
+ attributes = attributes.each_with_object({}) { |(k, v), h|
95
+ if (!self.class.attribute_map.key?(k.to_sym))
96
+ fail ArgumentError, "`#{k}` is not a valid attribute in `PostBoost::FreeToolPlanContentCalendarRequestPostsPerWeek`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
97
+ end
98
+ h[k.to_sym] = v
99
+ }
100
+
101
+ if attributes.key?(:'instagram')
102
+ self.instagram = attributes[:'instagram']
103
+ else
104
+ self.instagram = 0
105
+ end
106
+
107
+ if attributes.key?(:'facebook')
108
+ self.facebook = attributes[:'facebook']
109
+ else
110
+ self.facebook = 0
111
+ end
112
+
113
+ if attributes.key?(:'linkedin')
114
+ self.linkedin = attributes[:'linkedin']
115
+ else
116
+ self.linkedin = 0
117
+ end
118
+
119
+ if attributes.key?(:'x')
120
+ self.x = attributes[:'x']
121
+ else
122
+ self.x = 0
123
+ end
124
+
125
+ if attributes.key?(:'tiktok')
126
+ self.tiktok = attributes[:'tiktok']
127
+ else
128
+ self.tiktok = 0
129
+ end
130
+
131
+ if attributes.key?(:'youtube')
132
+ self.youtube = attributes[:'youtube']
133
+ else
134
+ self.youtube = 0
135
+ end
136
+
137
+ if attributes.key?(:'pinterest')
138
+ self.pinterest = attributes[:'pinterest']
139
+ else
140
+ self.pinterest = 0
141
+ end
142
+
143
+ if attributes.key?(:'threads')
144
+ self.threads = attributes[:'threads']
145
+ else
146
+ self.threads = 0
147
+ end
148
+
149
+ if attributes.key?(:'bluesky')
150
+ self.bluesky = attributes[:'bluesky']
151
+ else
152
+ self.bluesky = 0
153
+ end
154
+
155
+ if attributes.key?(:'mastodon')
156
+ self.mastodon = attributes[:'mastodon']
157
+ else
158
+ self.mastodon = 0
159
+ end
160
+
161
+ if attributes.key?(:'gbp')
162
+ self.gbp = attributes[:'gbp']
163
+ else
164
+ self.gbp = 0
165
+ end
166
+ end
167
+
168
+ # Show invalid properties with the reasons. Usually used together with valid?
169
+ # @return Array for valid properties with the reasons
170
+ def list_invalid_properties
171
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
172
+ invalid_properties = Array.new
173
+ if !@instagram.nil? && @instagram > 14
174
+ invalid_properties.push('invalid value for "instagram", must be smaller than or equal to 14.')
175
+ end
176
+
177
+ if !@instagram.nil? && @instagram < 0
178
+ invalid_properties.push('invalid value for "instagram", must be greater than or equal to 0.')
179
+ end
180
+
181
+ if !@facebook.nil? && @facebook > 14
182
+ invalid_properties.push('invalid value for "facebook", must be smaller than or equal to 14.')
183
+ end
184
+
185
+ if !@facebook.nil? && @facebook < 0
186
+ invalid_properties.push('invalid value for "facebook", must be greater than or equal to 0.')
187
+ end
188
+
189
+ if !@linkedin.nil? && @linkedin > 14
190
+ invalid_properties.push('invalid value for "linkedin", must be smaller than or equal to 14.')
191
+ end
192
+
193
+ if !@linkedin.nil? && @linkedin < 0
194
+ invalid_properties.push('invalid value for "linkedin", must be greater than or equal to 0.')
195
+ end
196
+
197
+ if !@x.nil? && @x > 14
198
+ invalid_properties.push('invalid value for "x", must be smaller than or equal to 14.')
199
+ end
200
+
201
+ if !@x.nil? && @x < 0
202
+ invalid_properties.push('invalid value for "x", must be greater than or equal to 0.')
203
+ end
204
+
205
+ if !@tiktok.nil? && @tiktok > 14
206
+ invalid_properties.push('invalid value for "tiktok", must be smaller than or equal to 14.')
207
+ end
208
+
209
+ if !@tiktok.nil? && @tiktok < 0
210
+ invalid_properties.push('invalid value for "tiktok", must be greater than or equal to 0.')
211
+ end
212
+
213
+ if !@youtube.nil? && @youtube > 14
214
+ invalid_properties.push('invalid value for "youtube", must be smaller than or equal to 14.')
215
+ end
216
+
217
+ if !@youtube.nil? && @youtube < 0
218
+ invalid_properties.push('invalid value for "youtube", must be greater than or equal to 0.')
219
+ end
220
+
221
+ if !@pinterest.nil? && @pinterest > 14
222
+ invalid_properties.push('invalid value for "pinterest", must be smaller than or equal to 14.')
223
+ end
224
+
225
+ if !@pinterest.nil? && @pinterest < 0
226
+ invalid_properties.push('invalid value for "pinterest", must be greater than or equal to 0.')
227
+ end
228
+
229
+ if !@threads.nil? && @threads > 14
230
+ invalid_properties.push('invalid value for "threads", must be smaller than or equal to 14.')
231
+ end
232
+
233
+ if !@threads.nil? && @threads < 0
234
+ invalid_properties.push('invalid value for "threads", must be greater than or equal to 0.')
235
+ end
236
+
237
+ if !@bluesky.nil? && @bluesky > 14
238
+ invalid_properties.push('invalid value for "bluesky", must be smaller than or equal to 14.')
239
+ end
240
+
241
+ if !@bluesky.nil? && @bluesky < 0
242
+ invalid_properties.push('invalid value for "bluesky", must be greater than or equal to 0.')
243
+ end
244
+
245
+ if !@mastodon.nil? && @mastodon > 14
246
+ invalid_properties.push('invalid value for "mastodon", must be smaller than or equal to 14.')
247
+ end
248
+
249
+ if !@mastodon.nil? && @mastodon < 0
250
+ invalid_properties.push('invalid value for "mastodon", must be greater than or equal to 0.')
251
+ end
252
+
253
+ if !@gbp.nil? && @gbp > 14
254
+ invalid_properties.push('invalid value for "gbp", must be smaller than or equal to 14.')
255
+ end
256
+
257
+ if !@gbp.nil? && @gbp < 0
258
+ invalid_properties.push('invalid value for "gbp", must be greater than or equal to 0.')
259
+ end
260
+
261
+ invalid_properties
262
+ end
263
+
264
+ # Check to see if the all the properties in the model are valid
265
+ # @return true if the model is valid
266
+ def valid?
267
+ warn '[DEPRECATED] the `valid?` method is obsolete'
268
+ return false if !@instagram.nil? && @instagram > 14
269
+ return false if !@instagram.nil? && @instagram < 0
270
+ return false if !@facebook.nil? && @facebook > 14
271
+ return false if !@facebook.nil? && @facebook < 0
272
+ return false if !@linkedin.nil? && @linkedin > 14
273
+ return false if !@linkedin.nil? && @linkedin < 0
274
+ return false if !@x.nil? && @x > 14
275
+ return false if !@x.nil? && @x < 0
276
+ return false if !@tiktok.nil? && @tiktok > 14
277
+ return false if !@tiktok.nil? && @tiktok < 0
278
+ return false if !@youtube.nil? && @youtube > 14
279
+ return false if !@youtube.nil? && @youtube < 0
280
+ return false if !@pinterest.nil? && @pinterest > 14
281
+ return false if !@pinterest.nil? && @pinterest < 0
282
+ return false if !@threads.nil? && @threads > 14
283
+ return false if !@threads.nil? && @threads < 0
284
+ return false if !@bluesky.nil? && @bluesky > 14
285
+ return false if !@bluesky.nil? && @bluesky < 0
286
+ return false if !@mastodon.nil? && @mastodon > 14
287
+ return false if !@mastodon.nil? && @mastodon < 0
288
+ return false if !@gbp.nil? && @gbp > 14
289
+ return false if !@gbp.nil? && @gbp < 0
290
+ true
291
+ end
292
+
293
+ # Custom attribute writer method with validation
294
+ # @param [Object] instagram Value to be assigned
295
+ def instagram=(instagram)
296
+ if instagram.nil?
297
+ fail ArgumentError, 'instagram cannot be nil'
298
+ end
299
+
300
+ if instagram > 14
301
+ fail ArgumentError, 'invalid value for "instagram", must be smaller than or equal to 14.'
302
+ end
303
+
304
+ if instagram < 0
305
+ fail ArgumentError, 'invalid value for "instagram", must be greater than or equal to 0.'
306
+ end
307
+
308
+ @instagram = instagram
309
+ end
310
+
311
+ # Custom attribute writer method with validation
312
+ # @param [Object] facebook Value to be assigned
313
+ def facebook=(facebook)
314
+ if facebook.nil?
315
+ fail ArgumentError, 'facebook cannot be nil'
316
+ end
317
+
318
+ if facebook > 14
319
+ fail ArgumentError, 'invalid value for "facebook", must be smaller than or equal to 14.'
320
+ end
321
+
322
+ if facebook < 0
323
+ fail ArgumentError, 'invalid value for "facebook", must be greater than or equal to 0.'
324
+ end
325
+
326
+ @facebook = facebook
327
+ end
328
+
329
+ # Custom attribute writer method with validation
330
+ # @param [Object] linkedin Value to be assigned
331
+ def linkedin=(linkedin)
332
+ if linkedin.nil?
333
+ fail ArgumentError, 'linkedin cannot be nil'
334
+ end
335
+
336
+ if linkedin > 14
337
+ fail ArgumentError, 'invalid value for "linkedin", must be smaller than or equal to 14.'
338
+ end
339
+
340
+ if linkedin < 0
341
+ fail ArgumentError, 'invalid value for "linkedin", must be greater than or equal to 0.'
342
+ end
343
+
344
+ @linkedin = linkedin
345
+ end
346
+
347
+ # Custom attribute writer method with validation
348
+ # @param [Object] x Value to be assigned
349
+ def x=(x)
350
+ if x.nil?
351
+ fail ArgumentError, 'x cannot be nil'
352
+ end
353
+
354
+ if x > 14
355
+ fail ArgumentError, 'invalid value for "x", must be smaller than or equal to 14.'
356
+ end
357
+
358
+ if x < 0
359
+ fail ArgumentError, 'invalid value for "x", must be greater than or equal to 0.'
360
+ end
361
+
362
+ @x = x
363
+ end
364
+
365
+ # Custom attribute writer method with validation
366
+ # @param [Object] tiktok Value to be assigned
367
+ def tiktok=(tiktok)
368
+ if tiktok.nil?
369
+ fail ArgumentError, 'tiktok cannot be nil'
370
+ end
371
+
372
+ if tiktok > 14
373
+ fail ArgumentError, 'invalid value for "tiktok", must be smaller than or equal to 14.'
374
+ end
375
+
376
+ if tiktok < 0
377
+ fail ArgumentError, 'invalid value for "tiktok", must be greater than or equal to 0.'
378
+ end
379
+
380
+ @tiktok = tiktok
381
+ end
382
+
383
+ # Custom attribute writer method with validation
384
+ # @param [Object] youtube Value to be assigned
385
+ def youtube=(youtube)
386
+ if youtube.nil?
387
+ fail ArgumentError, 'youtube cannot be nil'
388
+ end
389
+
390
+ if youtube > 14
391
+ fail ArgumentError, 'invalid value for "youtube", must be smaller than or equal to 14.'
392
+ end
393
+
394
+ if youtube < 0
395
+ fail ArgumentError, 'invalid value for "youtube", must be greater than or equal to 0.'
396
+ end
397
+
398
+ @youtube = youtube
399
+ end
400
+
401
+ # Custom attribute writer method with validation
402
+ # @param [Object] pinterest Value to be assigned
403
+ def pinterest=(pinterest)
404
+ if pinterest.nil?
405
+ fail ArgumentError, 'pinterest cannot be nil'
406
+ end
407
+
408
+ if pinterest > 14
409
+ fail ArgumentError, 'invalid value for "pinterest", must be smaller than or equal to 14.'
410
+ end
411
+
412
+ if pinterest < 0
413
+ fail ArgumentError, 'invalid value for "pinterest", must be greater than or equal to 0.'
414
+ end
415
+
416
+ @pinterest = pinterest
417
+ end
418
+
419
+ # Custom attribute writer method with validation
420
+ # @param [Object] threads Value to be assigned
421
+ def threads=(threads)
422
+ if threads.nil?
423
+ fail ArgumentError, 'threads cannot be nil'
424
+ end
425
+
426
+ if threads > 14
427
+ fail ArgumentError, 'invalid value for "threads", must be smaller than or equal to 14.'
428
+ end
429
+
430
+ if threads < 0
431
+ fail ArgumentError, 'invalid value for "threads", must be greater than or equal to 0.'
432
+ end
433
+
434
+ @threads = threads
435
+ end
436
+
437
+ # Custom attribute writer method with validation
438
+ # @param [Object] bluesky Value to be assigned
439
+ def bluesky=(bluesky)
440
+ if bluesky.nil?
441
+ fail ArgumentError, 'bluesky cannot be nil'
442
+ end
443
+
444
+ if bluesky > 14
445
+ fail ArgumentError, 'invalid value for "bluesky", must be smaller than or equal to 14.'
446
+ end
447
+
448
+ if bluesky < 0
449
+ fail ArgumentError, 'invalid value for "bluesky", must be greater than or equal to 0.'
450
+ end
451
+
452
+ @bluesky = bluesky
453
+ end
454
+
455
+ # Custom attribute writer method with validation
456
+ # @param [Object] mastodon Value to be assigned
457
+ def mastodon=(mastodon)
458
+ if mastodon.nil?
459
+ fail ArgumentError, 'mastodon cannot be nil'
460
+ end
461
+
462
+ if mastodon > 14
463
+ fail ArgumentError, 'invalid value for "mastodon", must be smaller than or equal to 14.'
464
+ end
465
+
466
+ if mastodon < 0
467
+ fail ArgumentError, 'invalid value for "mastodon", must be greater than or equal to 0.'
468
+ end
469
+
470
+ @mastodon = mastodon
471
+ end
472
+
473
+ # Custom attribute writer method with validation
474
+ # @param [Object] gbp Value to be assigned
475
+ def gbp=(gbp)
476
+ if gbp.nil?
477
+ fail ArgumentError, 'gbp cannot be nil'
478
+ end
479
+
480
+ if gbp > 14
481
+ fail ArgumentError, 'invalid value for "gbp", must be smaller than or equal to 14.'
482
+ end
483
+
484
+ if gbp < 0
485
+ fail ArgumentError, 'invalid value for "gbp", must be greater than or equal to 0.'
486
+ end
487
+
488
+ @gbp = gbp
489
+ end
490
+
491
+ # Checks equality by comparing each attribute.
492
+ # @param [Object] Object to be compared
493
+ def ==(o)
494
+ return true if self.equal?(o)
495
+ self.class == o.class &&
496
+ instagram == o.instagram &&
497
+ facebook == o.facebook &&
498
+ linkedin == o.linkedin &&
499
+ x == o.x &&
500
+ tiktok == o.tiktok &&
501
+ youtube == o.youtube &&
502
+ pinterest == o.pinterest &&
503
+ threads == o.threads &&
504
+ bluesky == o.bluesky &&
505
+ mastodon == o.mastodon &&
506
+ gbp == o.gbp
507
+ end
508
+
509
+ # @see the `==` method
510
+ # @param [Object] Object to be compared
511
+ def eql?(o)
512
+ self == o
513
+ end
514
+
515
+ # Calculates hash code according to all attributes.
516
+ # @return [Integer] Hash code
517
+ def hash
518
+ [instagram, facebook, linkedin, x, tiktok, youtube, pinterest, threads, bluesky, mastodon, gbp].hash
519
+ end
520
+
521
+ # Builds the object from hash
522
+ # @param [Hash] attributes Model attributes in the form of hash
523
+ # @return [Object] Returns the model itself
524
+ def self.build_from_hash(attributes)
525
+ return nil unless attributes.is_a?(Hash)
526
+ attributes = attributes.transform_keys(&:to_sym)
527
+ transformed_hash = {}
528
+ openapi_types.each_pair do |key, type|
529
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
530
+ transformed_hash["#{key}"] = nil
531
+ elsif type =~ /\AArray<(.*)>/i
532
+ # check to ensure the input is an array given that the attribute
533
+ # is documented as an array but the input is not
534
+ if attributes[attribute_map[key]].is_a?(Array)
535
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
536
+ end
537
+ elsif !attributes[attribute_map[key]].nil?
538
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
539
+ end
540
+ end
541
+ new(transformed_hash)
542
+ end
543
+
544
+ # Deserializes the data based on type
545
+ # @param string type Data type
546
+ # @param string value Value to be deserialized
547
+ # @return [Object] Deserialized data
548
+ def self._deserialize(type, value)
549
+ case type.to_sym
550
+ when :Time
551
+ Time.parse(value)
552
+ when :Date
553
+ Date.parse(value)
554
+ when :String
555
+ value.to_s
556
+ when :Integer
557
+ value.to_i
558
+ when :Float
559
+ value.to_f
560
+ when :Boolean
561
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
562
+ true
563
+ else
564
+ false
565
+ end
566
+ when :Object
567
+ # generic object (usually a Hash), return directly
568
+ value
569
+ when /\AArray<(?<inner_type>.+)>\z/
570
+ inner_type = Regexp.last_match[:inner_type]
571
+ value.map { |v| _deserialize(inner_type, v) }
572
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
573
+ k_type = Regexp.last_match[:k_type]
574
+ v_type = Regexp.last_match[:v_type]
575
+ {}.tap do |hash|
576
+ value.each do |k, v|
577
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
578
+ end
579
+ end
580
+ else # model
581
+ # models (e.g. Pet) or oneOf
582
+ klass = PostBoost.const_get(type)
583
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
584
+ end
585
+ end
586
+
587
+ # Returns the string representation of the object
588
+ # @return [String] String presentation of the object
589
+ def to_s
590
+ to_hash.to_s
591
+ end
592
+
593
+ # to_body is an alias to to_hash (backward compatibility)
594
+ # @return [Hash] Returns the object in the form of hash
595
+ def to_body
596
+ to_hash
597
+ end
598
+
599
+ # Returns the object in the form of hash
600
+ # @return [Hash] Returns the object in the form of hash
601
+ def to_hash
602
+ hash = {}
603
+ self.class.attribute_map.each_pair do |attr, param|
604
+ value = self.send(attr)
605
+ if value.nil?
606
+ is_nullable = self.class.openapi_nullable.include?(attr)
607
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
608
+ end
609
+
610
+ hash[param] = _to_hash(value)
611
+ end
612
+ hash
613
+ end
614
+
615
+ # Outputs non-array value in the form of hash
616
+ # For object, use to_hash. Otherwise, just return the value
617
+ # @param [Object] value Any valid value
618
+ # @return [Hash] Returns the value in the form of hash
619
+ def _to_hash(value)
620
+ if value.is_a?(Array)
621
+ value.compact.map { |v| _to_hash(v) }
622
+ elsif value.is_a?(Hash)
623
+ {}.tap do |hash|
624
+ value.each { |k, v| hash[k] = _to_hash(v) }
625
+ end
626
+ elsif value.respond_to? :to_hash
627
+ value.to_hash
628
+ else
629
+ value
630
+ end
631
+ end
632
+
633
+ end
634
+
635
+ end